如图,设置了org-document-title的underline为t,结果在最后一个字符后面多了一截下划线出来。打开whitespace-mode查看,这个多的部分是在换行符后面的
在evil-mode下,光标移动不到这个空白上,退出evil-mode,光标可以移动上去,describe-char说这是LF。所以LF会显示为一个空白,并且当face设置了underline的时候,LF也会被underline,这个行为有选项能控制吗?能否不显示出这个空白?
如图,设置了org-document-title的underline为t,结果在最后一个字符后面多了一截下划线出来。打开whitespace-mode查看,这个多的部分是在换行符后面的
在evil-mode下,光标移动不到这个空白上,退出evil-mode,光标可以移动上去,describe-char说这是LF。所以LF会显示为一个空白,并且当face设置了underline的时候,LF也会被underline,这个行为有选项能控制吗?能否不显示出这个空白?
这个没什么用的吧,删了就好,一行行的删除太麻烦,要写个脚本,批量删除,我所有的org文件都没有这个,可能有但我也发现不了,因为点保存时的时候每行都执行了rtrim()
。不过我的代码是php的,不能通用
whitespace-cleanup
不起作用吗?
我也有这个问题, 我用 C-u C-x =
显示出来就是换行符. 可能要去看看 org 高亮的部分让他不要包含回车
是的,不起作用,whitespace-mode看起来,那后面什么都没有
我的光标都定位不到那里去,没法describe-char
我试着把org相关的插件都关了,只保留org,还是同样的现象。
如果我给 org-document-title 加个 box,打开文档的时候能看到一个动态的过程:
有可能只是下划线的显示出bug了,那里其实并没有字符,你开fundermental-mode确认下?
对,那里确实没有字符
我发现如果关掉evil-mode,光标是可以移动过去的,这时候describe char,显示这个位置就是换行 (C-j)
这时候问题变成了:为什么C-j会占一个位置?并且还会被加上下划线?我试了emacs -q,结果是一样的
最终在org-mode下,通过font-lock解决了
给换行定义一个单独的font-lock,禁止underline
(defface org-dont-underline-eol '((t :underline nil))
"Avoid underlining of eol char")
(defun org-dont-underline-eol ()
"Remove underlining eol"
(font-lock-add-keywords 'org-mode '(("\n" 0 'org-dont-underline-eol t))))