随着Yasnippet近日从MELPA更新,我希望能够结束只有片段xxx,并todo附带文本模式。第一个扩展为x,另一个扩展为t,这让我很困扰,因为我在组织模式下编写数学文本,我需要自己写几个x's 和t's,然后按TAB退出括号。
从yas-buffer-local-condition来看,如果#condition:片段中有指令,我似乎可以做一些事情,但提到的片段没有。
如果我只是删除文件,我就可以了,但不幸的是,它们会在 Yasnippet 的每次更新时重新出现。
一种可能的解决方案是通过向每个片段添加一行代码来控制片段的键绑定# binding: C-I a b c- 例如,或# binding: C-I d e f\xc2\xa0\xc2\xa0C-I该组合相当于 Tab 键,并且以下字母之间的空格意味着它们一次一个地被按下。此外,还可以修改以下代码行以反映不同的键: # key: a_b_c和# key: d_e_f。
该变量yas-snippet-dirs可用于控制片段的位置。将片段移动到不同的位置可能是一个好主意,这样它们就不会被未来的更新所触及(例如,el-get)。
这xxx片段如下所示:
原来的
\n# -*- mode: snippet -*-\n# name: xxx\n# key: x\n# --\n`(yas-with-comment "XXX: ")`\nRun Code Online (Sandbox Code Playgroud)\n修改的
\n# -*- mode: snippet -*-\n# name: xxx\n# key: a_b_c\n# binding: C-I a b c \n# --\n`(yas-with-comment "XXX: ")`\nRun Code Online (Sandbox Code Playgroud)\n这todo片段如下所示:
原来的
\n# -*- mode: snippet -*-\n# name: todo\n# key: t\n# --\n`(yas-with-comment "TODO: ")`\nRun Code Online (Sandbox Code Playgroud)\n修改的
\n# -*- mode: snippet -*-\n# name: todo\n# key: d_e_f\n# binding: C-I d e f\n# --\n`(yas-with-comment "TODO: ")`\nRun Code Online (Sandbox Code Playgroud)\n对于那些好奇的人来说,这个函数yas-with-comment看起来像这样
# -*- mode: snippet -*-\n# name: xxx\n# key: x\n# --\n`(yas-with-comment "XXX: ")`\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
899 次 |
| 最近记录: |