【问题标题】:VSCode prefix regex (or match suffix)VSCode 前缀正则表达式(或匹配后缀)
【发布时间】:2020-05-19 18:23:50
【问题描述】:

我正在尝试迁移到 VSCode(从 Vim)进行 LaTeX 排版。由于 VSCode 对扩展的广泛支持,我已经能够从 Vim 转发我以前的大部分偏好,但是 UltiSnips Vim 插件中有一个我无法匹配的功能。

我希望能够根据单词的后缀而不是整个单词来制作sn-ps。例如,我想要一个将t 映射到选项卡上的\text{$1} 的sn-p,无论t 之前出现的字符如何。如果出现 planet 这个词并且我的光标在最后一个 t 上,我希望它在选项卡上展开,即使整个词不匹配。

这在 VSCode 中可行吗?我在 StackOverflow(以及 VSCode 网站本身)上看到了几篇文章,解释了如何在 sn-p 的 body 中使用正则表达式和其他技巧,但我一直找不到在前缀中执行此操作的方法。

【问题讨论】:

  • 我认为这在 vscode 中是不可能的 - 它似乎回溯到非单词字符,即它使用当前单词。所以你必须使用键绑定的方式来插入一个 sn-p 或Insert Snippet 命令。
  • 感谢您提供的信息,这有点令人失望,但我会考虑为我最常用的一些 sn-ps 制作一些键绑定。

标签: visual-studio-code code-snippets vscode-snippets


【解决方案1】:

我最近遇到了HyperSnips 扩展,它解决了您的问题。在您的 latex.hsnips 文件中:

snippet t "expand t to \text{$1}" i
    \text{$1}
endsnippet

现在,t,即使在单词内或单词末尾也可以触发 Tab 上的替换值。

请参阅https://stackoverflow.com/a/62562886/836330 了解更多信息。

【讨论】:

  • 很好的发现,感谢您的回复!这正是我想要的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多