大家是如何管理跨编辑器的 snippet 的?

2019-12-19 13:48:02 +08:00
 hikerpig

之前使用 vim 的时候,写了好些 UltiSnips 的代码片段,现在多数时候在用 vscode,把以前的 snippet 全转移过来是在有点费劲。

想问大家,有没有一站式的 snippet 管理或者转换方案,写一次 snippet 各个编辑器都能用的?基本上 snippet 语法只需要支持简单的变量替换就可以。

据大家说 Dash 的 snippet 管理很好用,还有 TextExpander 之类的,我没试过。一是这二者都是 Mac 上的付费软。二是我比较倾向于使用编辑器自己生态下的 expander 相关机制或插件(UltiSnips 之于 Vim, yas 之于 Emacs,vscode 和 atom 自己的 snippet 管理之类),所以只想找一个 snippet 文件管理和语法互转的方案。

3898 次点击
所在节点    程序员
18 条回复
coderQiQin
2019-12-19 14:15:19 +08:00
gitsbox
TabGre
2019-12-19 14:15:51 +08:00
现在用 alfred
hikerpig
2019-12-19 15:29:50 +08:00
@coderQiQin gistbox 似乎没有变量展开的功能?我感觉它和 gist 一样,比较适合做一个既定代码片段的说明。
BBCCBB
2019-12-19 15:33:21 +08:00
楼主,这是个挣 star 的好机会, 靠你写个这种插件了!!
GoLand
2019-12-19 15:54:37 +08:00
有个叫 SnippetsLab 的软件,挺好用。
hikerpig
2019-12-19 16:10:36 +08:00
@GoLand 看了眼 setapp 里有。但还是和 gistbox 相似的问题,与我寻求的 expandable snippets 不太 match。
jdhao
2019-12-19 16:18:04 +08:00
楼主可以贴一下自己的 vim snippets 嘛
alexzuo
2019-12-19 16:32:51 +08:00
dash 好像有这个功能
hikerpig
2019-12-19 18:59:49 +08:00
刚发现了有个国人写的 vscode 插件 https://github.com/corvofeng/Vsnips,可以部分解决我的问题(现在在 osx 下由于一个小问题会报错,暂时用不了)。
hikerpig
2019-12-19 19:04:58 +08:00
@jdhao 其实也没啥哈哈哈,一些鸡毛蒜皮的博客 md 文件开头模板,代码分块注释等零碎的东西。

UltiSnips 默认给出的 snippet 里,可以运行 python 函数,倒是挺诱人的
corvofeng
2019-12-19 20:30:02 +08:00
@hikerpig 不好意思平时没有 Mac, 可以提个 issue 吗, 我看看能不能解决
hikerpig
2019-12-19 21:09:00 +08:00
@corvofeng 哈哈哈大佬现身,我下午就提了,还扔了个截图
zhuangzhuang1988
2019-12-19 21:31:24 +08:00
几年能切换多少次编辑器
hikerpig
2019-12-19 21:41:01 +08:00
@zhuangzhuang1988 骑墙党流下了不争气的眼泪。要说其实总共也没多少 snippet,但有两个编辑器切着用的话新加一个片段要写两次,而且格式完全不同还是挺烦的。
搜了一圈发现的确没啥统一的方案,估计需求略小众。
更一体化和小白友好的就是各种像 alfred 一样直接与与系统交互的应用了。
xudaolong
2019-12-19 21:52:48 +08:00
用我写得 codeexpander (#^.^#)
xudaolong
2019-12-19 21:54:24 +08:00
我写得 codeexpander 完全符合你得要求 而且同步 gist 去中心化
impony
2019-12-20 09:12:09 +08:00
Dash
hikerpig
2019-12-20 11:04:35 +08:00
Vsnips 在 OSX 上修好了,当前阶段问题解决。

看了一圈的感觉是,写一个 snippet 解释引擎应该不是个很费力的事情,所以现在不同的插件作者都喜欢自己撸一套,顺带加上自己的喜好需求以及对应编辑器的一些独特功能。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/630497

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX