Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Emacs:只加载必要的yasnippet

Emacs:只加载必要的yasnippet
EN

Stack Overflow用户
提问于 2013-04-27 08:17:41
回答 2查看 1K关注 0票数 3

假设我有两个yasnippet的子目录:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
~/.emacs.d/yasnippets/perl-mode
~/.emacs.d/yasnippets/php-mode

目前,我在.emacs中使用以下代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(defvar *my-emacs-lib-dir* "~/.emacs.d/")
(load (concat *my-emacs-lib-dir* "plugins/yasnippet/yasnippet"))
(setq yas/snippet-dirs nil)
(yas/initialize)

;; Develop and keep personal snippets under ~/emacs.d/yasnippets
(setq yas/root-directory (concat *my-emacs-lib-dir* "yasnippets"))
(yas/load-directory yas/root-directory)

因此,它加载~/.emacs.d/yasnippet的所有子目录中的所有yasnippet。

有没有可能让它按需加载yasnippet?如果我打开一个php文件,但是php-mode的代码片段没有加载,那就加载它们。但不是在启动时加载所有内容。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-27 10:24:13

如果我没记错,在新版本中,代码段的加载将按需执行,如果您将使用推荐的加载顺序:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(add-to-list 'load-path "~/path-to-yasnippet")
(require 'yasnippet)
(yas-global-mode 1)

您还可以对yas-load-directory函数使用可选的use-jit标志,这将强制按需从该目录加载代码段。请参阅此函数的说明(C-h f yas-load-directory)

票数 3
EN

Stack Overflow用户

发布于 2013-04-27 08:51:48

也许像这样的东西能行得通。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(defvar yas/loaded-php-snippets nil)

(defun yas/load-php-snippets()
   (if (not yas/loaded-php-snippets)
    (progn
      (yas/load-directory  (concat yas/root-directory) "/php-mode")
      (setq yas/loaded-php-snippets t))))

(add-hook 'php-mode-hook 'yas/loaded-php-snippets)

这只是一个例子,但可以想象的是,可以在mode-hooks和yas加载目录之间有映射,如果还没有加载特定的目录,则只加载它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16249885

复制
相关文章
只在必要时间生产必要数量的必要产品—丰田JIT
众所周知,JIT(Just In Time)是丰田生产方式的两大支柱之一,其强调的是“只在必要的时间,生产必要数量的必要产品”,但是这听起来容易,做起来难。要实现JIT,必须深刻理解JIT的内涵,然后分阶段去实施:
用户9972271
2022/12/21
5520
redis只加载AOF文件
如果同时配置写AOF和RDB两种文件,但在redis启动时,只会加载AOF,除非配置只写RDB,才会加载RDB文件,也因此AOF文件必须是全量数据,所以会越来越大,这缺点也将是redis优化的一个方向,即AOF只保存相对于RDB的增量,这样AOF文件将大大减小。相关源码如下所示:
一见
2018/08/02
4260
如何在 Emacs 进行文学编程
笔者自使用 Emacs 以来,最离不开的功能就是在 org mode 中进行文学编程,来做快速的数据分析以及文档撰写。
飞驰的西瓜
2023/03/01
7520
如何在 Emacs 进行文学编程
预加载之——js 文件如何实现只加载不执行
性能优化很常见的一个方式是提前加载文件,本文讨论如何在其他依赖未加载情况下提前加载一个.js文件。
前端知知
2022/09/29
6.1K0
只在必要时保存服务器控件视图状态
自动视图状态管理是服务器控件的功能,该功能使服务器控件可以在往返过程上重新填充它们的属性值(您不需要编写任何代码)。但是,因为服务器控件的视图状态在隐藏的窗体字段中往返于服务器,所以该功能确实会对性能产生影响。您应该知道在哪些情况下视图状态会有所帮助,在哪些情况下它影响页的性能。例如,如果您将服务器控件绑定到每个往返过程上的数据,则将用从数据绑定操作获得的新值替换保存的视图状态。在这种情况下,禁用视图状态可以节省处理时间。
Java架构师必看
2021/03/22
6290
Emacs Lisp
然后为了印证我的所学,我自己写了一个小函数,用于这篇文章中输入两个由 ~~~ 来标识的代码块
franket
2021/08/10
2.2K0
【Android】再来一篇Fragment的懒加载(只加载一次哦)
2017-7-14更新: 目前有人使用后出现了诸如首次打开显示空白界面,但点击有反应;或来回切换又变空白界面的问题。这些问题我暂时还不知道该怎么解决,后期有时间时会具体去分析下问题该怎么解决。所以你如果要使用该代码,希望考虑一下,我自己的小应用目前是没碰到这些问题。
请叫我大苏
2018/05/17
1.6K0
Made with Emacs
最近在看 sacha chua 的 Emacs News[1] 时,无意间看到一个『 Made with Emacs 』的图片,觉得很有趣:
飞驰的西瓜
2023/09/06
1760
Made with Emacs
GPG in Emacs
Pretty Good Privacy (PGP) 是一款诞生于 1991 年的,一款用于认证、加密的一款软件,现如今已经有了标准化协议 OpenPGP,最常用的实现是 GnuPG,一般提到 GPG 时都是指的 GnuPG。
飞驰的西瓜
2022/07/26
9800
GPG in Emacs
Emacs的Server Client模式
Emacs的server/client模式只需要加载一次配置文件,所以打开文件会快一些。
ExASIC
2022/03/29
9370
Emacs Lisp
前言Lisp 是一门很古老的语言LISP 是具有悠久历史的计算机编程语言家族,有独特和完全括号的前缀符号表示法,起源于1958年,是现今第二悠久而仍广泛使用的高级编程语言,只有 FORTRAN 编程语言比它更早一年,LISP 编程语族已经演变出许多种方言,现代最著名的通用编程语种是 Common Lisp 和 Scheme , 以上解释来自 WIKIEmacs Lisp 是 Lisp 的一个分支Emacs Lisp,一种直译式的脚本语言,为LISP的方言之一,GNU Emacs与XEmacs文字编辑器都使用
franket
2022/07/10
6210
Emacs Lisp
然后为了印证我的所学,我自己写了一个小函数,用于这篇文章中输入两个由 ~~~ 来标识的代码块
franket
2021/08/10
2.4K0
Emacs 折腾记
作为一名在 Windows 下使用了多年 gVim 的少年,已然把它在我需要的地方都收拾得服服贴贴,可以说 Vim 经过配置配置,上得厅堂下得厨房,基本能满足我的所有幻想。
mzlogin
2020/04/16
1.9K0
Emacs 个人使用
使用 Emacs 已经有两三年的时间了,从最开始自己配置了一个垃圾版,到后来使用的 spacemacs ,再到后来又重新配置了一个个人简单版,再到又配置了一个综合版,个人版最大的问题就是慢,启动几十个配置比大神们配置的启动几百个还要慢,但是最大的优势就是符合我的使用习惯,可以用我最喜欢的方式配置,也可以把我认为没用的配置删除掉。
zucchiniy
2020/05/22
7960
Emacs 显示行数
2  复制 linum.el 到“/usr/share/emacs/site-lisp/”或者其他 load-path路径下
阳光岛主
2019/02/19
2.5K0
Emacs 折腾记
作为一名在 Windows 下使用了多年 gVim 的少年,已然把它在我需要的地方都收拾得服服贴贴,可以说 Vim 经过配置配置,上得厅堂下得厨房,基本能满足我的所有幻想。
零式的天空
2022/03/28
1.3K0
Emacs的verilog-mode介绍
RTL顶层自动连线听说过吗?想学吗?我们今天就来介绍自动连线的神器——emacs verilog-mode。
ExASIC
2022/03/29
1.3K0
005. 与 Emacs 高手陈斌闲聊 Emacs
本期节目请来了一位使用 Emacs 近十年的资深用户陈斌[1],他是著名文章《一年成为 Emacs 高手》[2]的作者,同时也是一位拥有近二十年软件开发经验的前辈。
飞驰的西瓜
2022/07/26
1K0
005. 与 Emacs 高手陈斌闲聊 Emacs
C++核心准则Enum.7: 只在必要时定义枚举的底层类型
The default is the easiest to read and write. int is the default integer type. int is compatible with C enums.
面向对象思考
2020/03/25
8440
Emacs 扩展 Evil 功能
今天在修改代码的过程中,发现有一些地方,想使用多光标来修改,但是在使用的时候,感觉不太会用 evil mc ,中间切换到了 multiple-cursors 包上,但是在 evil 模式下使用,因为模式切换的情况,修改代码的时候会弹出一些奇怪的提示,因为模式的切换的问题,所以又换到了 evil-mc 上。
zucchiniy
2020/05/22
1.7K0

相似问题

Emacs Yasnippet安装

10

Emacs使用Yasnippet显示效果

22

Emacs yasnippet镜像/转换

18

用于rails的emacs yasnippet

12

不同编码方式的Emacs Yasnippet

15
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文