emacs 也有ycm
肯定是有解决方法的,不过可能不“简洁”了。顺便说点其他东西吧,可以一起讨论~
一般的解决问题都是降低问题的复杂度,把问题变得很简单,最后解决。在扩展Emacs、Vim功能时,常遇到的问题是“如何引入我需要的功能,并且不引入额外的复杂度”。这些额外的问题包括
- 是否平台兼容
- 是否依赖其他软件包
很多插件都是这样,要用 A 必须 使用 B,要用 B 必须在本地进行编译,最后 A 只在 *nix 下工作良好。比如Vim 里有款 模仿 org-mode 的软件,但是这个vim插件却依赖 Emacs…
插件和按键绑定就是引入的复杂性元素,和写代码相似,应该尽量避免加入新的信息,因为需要付出维护信息的额外成本。
有个拿正则表达式开玩笑的话是这么说的,“如果你有一个问题需要用正则表达式来解决,那么你要解决的问题就从一个变成两个了”,这个笑话一方面是在抱怨正则语法规范太杂乱了,不同的工具正则都有些差别,导致了松散的设计,不利于记忆;另一方面,**正则表达式就像C++,或者Emacs,可以有无限多的细节值得优化,无限多的功能可以去探索。**一个验证邮箱的正则可以很复杂(考虑了太多诡异的特殊情况),也可以很简单。
工程师都是有追求完美的冲动的,但是这个世界是不完美的,就好像要表示浮点数就必须舍弃一些精确性,要降低某些算法的时间复杂度就不能兼顾空间复杂度。
相比之下,实事求是才是工程师最好的品质。
目前感觉够用了,有时间去试试看
用 evil
我是先从 vim 入坑的,极度喜欢 vim 的编辑效率,然后见了 emacs lisp 之后又入了 emacs 的大坑,再后来,用上了 evil,从此就是一个 emacs + vim 编辑方式,对于 elisp 灰常喜欢.
用习惯了 Emacs 编辑模式,就不怎么想用 vim 了 偶尔用 vim 经常会和 Emacs 习惯打架。比如在 vim的 normal 模式下经常会按 p 进行向上操作,结果粘贴了一堆东西,赶紧按 u 撤退。无比尴尬😅
楼主提到的纵向选择 , Emacs 有对应的 rectangle-mark-mode
,还有 multiple-cursors
spacemacs: 按 [ SPC 向上插空行, ] SPC 向下插空行,激活的是 evil-unimpaired 的 insert-space
前几天用了一个月vim,回来后总是习惯性按j和k哈哈哈
emacs的移动真的会手指痛。之前头铁不信,搞了几天,尾指是真的痛。可能我按得太用力了。 现在换meow了。。。
你说的 “尾指” 是指小拇指? 不要用小拇指,它很脆弱。
用 emacs 按键,我基本都是在机械键盘上用靠近小拇指根部的手掌肌肉去按压 Ctrl 键的,不会痛。
我用3年了,没问题。
在macBook 上,就用大拇指去按 Ctrl 键。
另外,M-x 是也很常用。
这点上看从小练琴还是有点好处 从没想过锻炼的手指的独立性和力量对于使用emacs居然还有作用
一开始,我也是用Emacs原生的操作方式。用了两年。
后来觉得暴躁的时候,按Ctrl真的有点危险,就用evil了。
我感觉编辑器最主要不是简洁复杂, 最主要是操作习惯和性能, emacs真是太符合我的操作习惯了, 而vim尝试了很久都无法习惯, 且配置语言比较难用, 比elisp差太多(包括语法和文档). 编辑性能上两者差不多.
vim阵营现在有lua了,lua挺猛的,生态起的好快
有点难 哈哈哈
多尝试几次,很快就可以适应了。习惯后,都感觉不到 Ctrl 的存在了。