Doom Emacs 四个都包含了,不知道 paredit 是被谁依赖进来的。
paredit 应该是被 smartparens 超越了,smartparens 据说有性能问题,spacemacs 特意加了个关闭它的选项,doom emacs 里默认没启用 smartparens 自带的按键绑定,不知何故。
parinfer 看着很炫,lispy 跟 evil 搭配挺不错。
Doom Emacs 四个都包含了,不知道 paredit 是被谁依赖进来的。
paredit 应该是被 smartparens 超越了,smartparens 据说有性能问题,spacemacs 特意加了个关闭它的选项,doom emacs 里默认没启用 smartparens 自带的按键绑定,不知何故。
parinfer 看着很炫,lispy 跟 evil 搭配挺不错。
如果是 lisp 的话优先 paredit。其他时候 smartparens。
racket用paredit,其他的用自带的electric-pair+evil-surround.
paredit体验上是通杀的,但有些feature要调整一下才能在其他语言更好的使用
两位都是 emacs 老手😄
smartparens可以替代paredit而且支持更多语言,有个自定义参数可以设置成paredit快捷键,也有它自己的快捷键,但是比较难用。doom emacs默认没有激活它的快捷键。
Doom emacs里配置的 lispy mode会自动关闭 smartparens,现在把 doom 的parinfer, lispy都打开了,好像没有冲突……
parinfer真是特别🐂!
怎么都删除不掉括号,新手表示用得还不太顺手。
lisp 用 paredit,其他之前用 smartparens,没注意到性能问题,但最近出了一个 typo 引起的 bug,作者失踪了很久。因此我换到自带的 electric-pair-mode 了,稍微改一下断言就可以替代 smartparens。
awesome-pair 是继承paredit基因,对其他语言(特别是JavaScript、Vue)支持比较好,几乎所有语言开箱即用,大家可以尝试一下 awesome-pair, 有问题我也会修比较快(除非LaTex这种我不会的东西),因为我每天都在用 awesome-pair.
这个是很悲剧,括号放错位置了,想调整下都搞不定。。。
paredit 代码里说他主要注重代码直观,并没太在意性能, smartparens 也有性能问题,所以 spacemacs 提供了一个选项关闭它,我目前还没发现问题。
smartparens 和 paredit 除了自动输入匹配的括号、引号,还有 s-exp 整体编辑功能,这个是 electric-pair-mode 没有的,不过 smartparens 默认没有激活 s-exp 整体编辑功能。
smartparens 的广告:GitHub - Fuco1/smartparens: Minor mode for Emacs that deals with parens pairs and tries to be smart about it.
Other Emacs projects that deal with pairs include:
Smartparens aims to provide a superset of these features, in all programming languages.
看代码和文档,比 smartparens 功能少,smartparens 发展的比较庞大了,但是威力又不明显,估计好多人都没启用 smartparens 的 s-exp 操作功能而同时用 paredit 和 smartparens,paredit 太知名了,但其实比 paredit 更强,不局限于 lisp 系。
lispy 和 parinfer 很明显,前者和 evil 搭配很舒服,后者更是非常特别了,写 lisp 写出 python 的缩进感😄️
借楼询问下,哪个功能可以可以将括号fold/折叠起来没?
上面提到的都是自动插入匹配括号、引号,整体操作 s-exp 的,没有折叠功能。
参考下 Doom 用的包,快捷键跟 vim 一样,zo,zc,很方便:
.emacs.d/modules/editor/fold/packages.el:
;; -*- no-byte-compile: t; -*-
;;; editor/fold/packages.el
(package! hideshow :built-in t)
(package! vimish-fold :pin "a6501cbfe3db791f9ca17fd986c7202a87f3adb8")
(when (featurep! :editor evil)
(package! evil-vimish-fold :pin "b6e0e6b91b8cd047e80debef1a536d9d49eef31a"))
刚刚从doom退出来,doom非常顺手,就是偶尔编辑文件卡顿。 目前在徒手配置最小满足编辑需求。
做为 parinfer-mode 的作者,我放弃 parinfer 的主要原因是因为做不出性能够好的实现。-
你还不如分析下为啥卡顿。。。
如果你开了 lsp 的话,试试在 ~/.doom.d/config.el 里加上这句:
(use-package! lsp-mode
:config
(setq lsp-enable-file-watchers nil)) ; https://emacs-lsp.github.io/lsp-mode/page/performance/#ignore-watch-foldersfiles
我是不想从头打造了,看看 doom emacs 的实现要考虑多少不同插件之间的配合啊,这些从头到尾你都调试一遍的话,那代价太大了。。。很可能是打造了半天各种不满意又舍不得丢弃,鸡肋了🤣
哇,厉害了,居然是你写的。。。
我用了 parinfer-rust-mode,目前看还好。
我用 electric-pair
是不是很土?以前用smartparens,太复杂,偶尔卡顿
对,parinfer-rust-mode 可以的
这个高端,emacs自带而且还能自动 quote string里的引号,smartparens居然不支持!
parinfer-mode 是不是在melpa下架了?