这个弄的差不多了 https://github.com/ran9er/init.emacs/bl ... ux-line.elFermat618 写了:这个大赞,要整就整好看点的。kardinal 写了:lisp 的缩进并不是固定步长,比如多数语言每级缩进4个或者8个空格之类……
这也是 lisp 难于阅读的一个原因吧(其实固定缩进的话,括号多点顶多呕吐,还不至于头晕)
如果按照普通的标准,固定每几列显示一条缩进线,对于 lisp 来说意义不大,因此……
看图
问题:
1、每个空格都要处理,因此速度可能慢一点
2、修改后会造成混乱,因为缩进线不是固定位置的,依赖上级缩进。
indent-column-list 只保存当前行操作所需要的位置,而全部保存的话又有点夸张……这个还得好好研究下
……所以,其实这部分还不能正常工作
另外,那个lambda都显示成λ了啊。
lisp 版本的改进了划线的方式,现在应该比固定缩进的版本还要快
但是在缩进处进行修改后,刷新要慢点,这个和 font-lock 的机制有关吧?? 好像挺复杂,反正我还没有整明白
在图形界面和字符界面下画不同的线
图形界面下是生成 xpm 图片
字符界面下直接用 “|” 划线
改进了提示线的位置,原来的位置是 tab-width * x ,但是这样效果不是太好
现在的位置和 scite 里面一样,是 tab-width * x + 1
lambda显示成 λ 是很简单的,我还把 ";; " 显示成了“参考标记”(这个符号我不会打,从 emacs 往外复制粘贴的时候还是";; ",只是显示为“参考标记”)
任意字符都可以显示,甚至可以把几个字符重叠显示……