全部学习汇总: GitHub - GreyZhang/editors_skills: Summary for some common editor skills I used.
李杀在emacs以及lisp的使用上算是网络上的顶尖级高手了,很多网络上的高手都提过参考过他的一些代码或者设计。我只是一个使用者,从好奇的角度做一点简单的基础信息涉猎。其实我并不是有很大的欲望去成为他们那样的高手,我只是想通过他们的东西品味一下他们背后的故事。
开始的这几条还是很容易理解的,大部分的emacs配置在最初的时候都是关掉了启动界面。既然这是大家都在做的一件事情,多少有点好奇为什么emacs发布的时候不把这个变成默认的行为?!
另外,这个设置了编辑器的显示背景,对眼睛应该有一些好处的色调。我记得之前看过一次李杀的网站,那时候看到的护眼颜色好像是honeydew还是什么?刚刚查看了一下,果真有这样的一种颜色。而这种颜色的名称在css脚本中是很常用的。我找到了一个网页信息,拷贝了常用的颜色如下:
#FFFFFF
#FFFFF0
#FFFFE0
#FFFF00
#FFFAFA
#FFFAF0
#FFFACD
#FFF8DC
#FFF5EE
#FFF0F5
#FFEFD5
#FFEBCD
#FFE4E1
#FFE4C4
#FFE4B5
#FFDEAD
#FFDAB9
#FFD700
#FFC0CB
#FFB6C1
#FFA500
#FFA07A
#FF8C00
#FF7F50
#FF69B4
#FF6347
#FF4500
#FF1493
#FF00FF
#FF00FF
#FF0000
#FDF5E6
#FAFAD2
#FAF0E6
#FAEBD7
#FA8072
#F8F8FF
#F5FFFA
#F5F5F5
#F5F5DC
#F5DEB3
#F4A460
#F0FFFF
#F0FFF0
#F0F8FF
#F0E68C
#F08080
#EEE8AA
#EE82EE
#E9967A
#E6E6FA
#E0FFFF
#DEB887
#DDA0DD
#DCDCDC
#DC143C
#DB7093
#DAA520
#DA70D6
#D8BFD8
#D3D3D3
#D3D3D3
#D2B48C
#D2691E
#CD853F
#CD5C5C
#C71585
#C0C0C0
#BDB76B
#BC8F8F
#BA55D3
#B8860B
#B22222
#B0E0E6
#B0C4DE
#AFEEEE
#ADFF2F
#ADD8E6
#A9A9A9
#A9A9A9
#A52A2A
#A0522D
#9932CC
#98FB98
#9400D3
#9370DB
#90EE90
#8FBC8F
#8B4513
#8B008B
#8B0000
#8A2BE2
#87CEFA
#87CEEB
#808080
#808080
#808000
#800080
#800000
#7FFFD4
#7FFF00
#7CFC00
#7B68EE
#778899
#778899
#708090
#708090
#6B8E23
#6A5ACD
#696969
#696969
#66CDAA
#6495ED
#5F9EA0
#556B2F
#4B0082
#48D1CC
#483D8B
#4682B4
#4169E1
#40E0D0
#3CB371
#32CD32
#2F4F4F
#2F4F4F
#2E8B57
#228B22
#20B2AA
#1E90FF
#191970
#00FFFF
#00FFFF
#00FF7F
#00FF00
#00FA9A
#00CED1
#00BFFF
#008B8B
#008080
#008000
#006400
#0000FF
#0000CD
#00008B
#000080
#000000
这个配置的另一部分,主要是设置了UTF-8的编码格式。
最初仅仅是查看emacs内置的函数帮助,在这个函数上没有找到特别准确的说明。查看了网上的elisp手册后,找到了一个可以理解的说明。
结合这部分,可以理解为什么前面的(save-some-buffers t)可以实现全部文件的保存了。
这几条除了通过拷贝的方式进行备份这一条说明之外,其他的之前都是用过的。最近访问过的文件查询这个功能我觉得必须得是一个配置项,有时候工程管理的功能弱化跟不上的时候可以用来顶替一下。
这个模式开启之后,在home目录下生成了一个.emacs.desktop文件,里面保存了一些编辑器的操作信息。这个配置是我第一次接触,但是感觉是体验很好的一个配置。能够让下一次的emacs使用跟上次的结束保持一定的联系感。
几个显示类的配置功能,其中行号选择跟之前用过的linum-mode不同,这两个可以并存。并存的效果如下:
显示的时候出现2个行号。关于行列位置的选择,在下面的工具条的位置。
第一部分的配置多少有一些没看懂意图,第二部分的设置目的很明确。目录的窗口操作的时候,增加了一些递归处理作为默认行为。
配置的考虑很周全,支持了emoji和中文。
这一部分的理解和测试基本都是撞墙,没有找到很合适的方法。而这个默认的配置跟vim的操作模式相差太大,开始使用这个配置的emacs进行增加备注的注释出现了很多错误。看起来,简单的理解之后后面必然还是得回到evil模式。
关于ido的使用,在注释掉以及保留的情况下进行对比操作,我常用的功能之中没有找到差异。但是关于文件位置保存的功能,我觉得还是很实用的。之前以为这是保存桌面的效果,看起来之前的访问体验应该是这两个功能的结合。
这几个功能还是很好理解的,一部分是实现选择替换修改,另一个这是能够提示括号的配对情况。
空白处理以及粘贴的bug的处理。看得出来高手与我这种一般用户的差异了,我发现类似的bug的时候一般都是尝试去适应。
关于缩进的处理。
查看了配置的目录,暂时没发现有安装或者使用插件的地方。
第一部分主要是关于扩展或者不全的功能,第二部分这是方便考虑。如果后面我的配置一直坚持使用evil的话,相关的功能还是使用vim的那一套就好。而便捷配置这部分,之前用的多的可能只有第一条。
关于上面提到的我自己的spacemacs的配置需要修改的部分,我已经做了测试的确是生效了。这个功能比我之前自己实现的野路子要好的多了。
浏览器的配置,没必要学习。emacs还是定位为一个编辑器好一些,最多扩展为IDE,不要去考虑OS的替换。
不过,作为乐子的确试了下emacs是可以浏览网页的。
这样,从李杀网站上看到的这个初始的简单配置就基本看完了。其实都是原始的emacs内置功能的配置,暂时还没有用到任何其他的插件。