闲聊,学习emacs的时候该怎样少走弯路

如果是要立马干活,开箱即用,可以考虑 IntelliJ + GitHub - MarcoIeni/intellimacs: Spacemacs' like key bindings for IntelliJ platform.

或者 VSCode + GitHub - VSpaceCode/VSpaceCode: Spacemacs like keybindings for Visual Studio Code

如果你是工作党,建议掌握基础 vim + spacemacs快捷键,然后直接用上面两个组合就可以干活了。

然后周末或者摸鱼时间,配置 Emacs,使用同一套键位,折腾起来更舒服。

然后只要不是写 java, ios, android, unity这些,Emacs随便搜一下,都有大把的配置可以借鉴。这些“弯路”有时间就去慢慢折腾好了。不要因为折腾Emacs而影响本职工作。

Emacs <-> 悬崖勒马(五笔用户早就悟了) :joy: (因为Emacs太好玩了,容易上瘾,不知不觉时间就没了 :joy:)

如果是学生党,与其浪费时间打游戏,睡觉,不如花时间在折腾各种配置上。但是,还是要考虑投入产出比,Emacs基础配置弄好了,能写代码就行了,配置出语法高亮,自动补全,一键编译运行就够了。如果只是刷刷题,写点小项目,就不要去配置 workspace, layout, theme了,以后这些东西,都可以在工作之后,慢慢找时间折腾。

学一点 Elisp,学好英语,准备好梯子,用得不爽了,就配置两下(不要太发散,可以约定1-2小时为上限),自己写或者抄大佬作业都行。

Emacs最主要的是用得开心,你当下喜欢的配置或者快捷键可能会因为你年纪的增长,阅历的增加而有所改变。你现在迷恋 Spacemacs/DoomEmacs或者Centaur,总有一天你会想有一套属于自己的配置,自己冠名的配置,其他人的配置可以当作学习资料。

11 个赞

赞同,这就像野生老虎和家猫的区别。

确实我每次打emacs一不小心打出悬崖勒马(唯一候选项自动上屏)几个字的时候都感觉怪怪的,要停一下,感觉那里不对,又说不出来.

5 个赞

乐死我了,我半天都没反应过来 :joy_cat:

会的太多也是一种麻烦,现阶段我还是先专注C/C++Python好了 :slightly_smiling_face:

额,要不再给几个练习??
光看得懂,不会用就成鸡肋了 :slightly_smiling_face:

emmm, 当下用不上的东西就不用学。

可以先把emacs当terminal用,比如阅读manual,可以直接M-x man:

然后输入查询,由于能用emacs的键位浏览,所以体验本棒。

然后,安装vterm,emacs先当个命令行工具,融入日常之中。

P.S. 有精力学学ps, pr,视频方向的技能,在学校多记录留几段美好回忆,万一红了,不等毕业就能当老板了。编程,笑

Doom真香!!

  • emacs != vscode/idea等IDE
  • emacs是个lisp processor,可以通过扩展,做任何文本处理的事儿
  • 学生应该以练习写代码写项目为主要实践,实现这个目的,跟使用emacs几乎没有关系,用太多时间折腾emacs不是一件好事
  • 学了elisp之后,emacs的魔法大门才会向你敞开
  • 如果只是装插件用,用emacs,和用vscode/idea没什么区别
  • 如果你使用emacs时很烦,那么说明目前emacs不适合你
2 个赞

学了elisp之后,emacs魔门才会向你敞开

2 个赞

入坑Emacs两年了,没有放弃Emacs的原因是因为对他的好感
当初在各种编辑器中选择的时候对IDE都不知道怎么用,写个单文件项目要设置一堆东西(说的就是Eclispse)
Emacs的简洁吸引了我,在学会Emacs的过程中顺便把C/C++学会了
都两年了,该进一步发展了,但是吗

开源世界就是这样, 一言不合就另起炉灶, 各种fork满天飞, 这是开源的弊端(社区分裂, 发展不出良好的生态)也是开源的优势(不存在吃老本一家独大固步自封). 作为开发者, 要练就佛系心态, 学会取舍和选择, 一个不行换第二个.

就像想装Linux不知道选哪个发行版,学Emacs的时候不知道以谁为标准,不知道该怎么学

你不用太在意 emacs 的配置是不是能写所有你会的语言,只要适用你正在写的语言就好。

1 个赞

如果你不想了解eclipse默认生成的一堆文件,那任何一个可以打开单文件的编辑器+语言编译工具链,都能满足需求。同样,裸配置的emacs也可以胜任。

不选择是最好的选择。选哪个都一样。不可能因为选择了A,而没有选择B,后续的学习和提升就被大大的影响了。


你心里可能有一个想法:我只有找到最好的工具(emacs/某个Linux发行版)才能做好编程实践,于是开始试验工具的好坏,但作为过来人,我觉得这个想法本身就是误入歧途的信号,编程实践跟工具关系不大,无论是哪个流行的工具,都能很好的完成我们的编程任务。

这是二三十年前的开发者无论如何也得不到的幸福,我们不应该因此得到了一种“甜蜜的苦恼”。

我昨天看了一名Netflix工程师在 PyCon 2015 的分享, David Beazley - Python Concurrency From the Ground Up: LIVE! - PyCon 2015 - YouTube ,还有他自己发布的python技术视频: Build Your Own Async - YouTube

他和python之父那种人一样,都不用流行配置,只是把emacs当作编辑器,也不影响他们的工作流啊。从他们身上,我认识到我应该怎么去看待emacs这一个工具。

陈斌那篇《一年学会emacs》,我觉得很实用。你需要什么,你再去构建什么。实践岀真知。别人非常需要的功能,我可能完全不需要。我很讨厌花红柳绿的文件图标,但现在的流行emacs和vim配置常常把它当作一个吸引新用户的feature。我以前也喜欢,但今年开始就不喜欢了,我通过反思发现,干净整洁比第一眼的颜值更重要。

找到具体的目标去做,做着做着,迷惑和烦恼有可能在某一刻就突然消失了。

我就是这样,在公司里尝试用vim/emacs的org mode尝试处理日常的各种文本数据,才知道它们的好处。在学校的时候,因为没有这么多文本要处理,我根本就没体验到这些工具的真正作用,那时候的认知可以说是非常片面的。

1 个赞

我可不想回到打字用鼠标和方向键的时候 :kissing_smiling_eyes:

你用什么都行,但这一点,在现代编程活动中,其实并不重要。

2 个赞

如楼上诸位所说,弯路不可避免,除非不走路。

放弃一步到位的想法吧,占好立足点,再逐个击破。最初我完全是把 Emacs 当成 GUI Vim 来用,于是当天就能拿来搬砖。而且没必要上来就自己从头开锤,使用别人配置反而更能帮自己确定想要什么。

1 个赞

我用 emacs 一样会用鼠标和方向键。。。

1 个赞

额,比如说?

比如我找文件的时候就用方向键上下。。。

1 个赞

你不是用evil的吗,用vim的方向键还是自带的?