我是想在org mode下增加一下行间距,这样看着舒适一些。用的代码是
(add-hook 'org-mode-hook
(lambda()
(setq-local line-spacing 0.45))
但实际效果是这样:
代码行距的确增加了,非常愉快。但是那个链接的下划线也变远了,这就很不爽了。对比vscode,
改了一下行间距,下划线依然紧贴字体。不知各位可否指教一二?
我是想在org mode下增加一下行间距,这样看着舒适一些。用的代码是
(add-hook 'org-mode-hook
(lambda()
(setq-local line-spacing 0.45))
但实际效果是这样:
代码行距的确增加了,非常愉快。但是那个链接的下划线也变远了,这就很不爽了。对比vscode,
改了一下行间距,下划线依然紧贴字体。不知各位可否指教一二?
你应该是还有其他额外的设置。
如果仅仅设置 line-spacing
,文字跟光标应该是顶端对齐,下划线也不会远离。
emacs -Q --eval '(progn
(switch-to-buffer "*.org")
(org-mode)
(setq-local line-spacing 0.45)
(insert "[[link]]"))'
你这个应该是 spacemacs 的锅了:
提问还是应该寿命系统、版本、环境等信息。
好不容易登录上账号,之前想回复一直登不上。。
我其实用的doom emacs。我估计是doom的锅。我把我自己的personal customization全删了,就加这一个设置,也出问题。已经给doom提交issue了。
我按你上一楼提供的方法做了实验,结果和你一模一样。很有用,多谢提醒。我把这个实验结果一并发到issue里去了。
回头看看Henrik Lissner怎么说吧。我看了看doom关于org那块的配置,反正我是没看出有什么问题。不知道是不是他的其他位置搞的鬼。
Spacemacs/Doom 应该对字体/样式做了类似的优化,所有存在同样的问题。
在 Spacemacs 中可以通过以下方式设置合适的行间距:
(with-current-buffer "*.org"
(kill-local-variable 'line-spacing) ;; Clear interference
(setq-local default-text-properties '(line-spacing 0.25 line-height 1.45)))
有意思。我回头试试doom行不行。多谢。
Error (org-mode-hook): Error running hook (kill-local-variable 'line-spacing) because: (invalid-function (kill-local-variable 'line-spacing)) 这是我在doom里实验的结果。 我的代码是
(if (display-graphic-p)
(add-hook! 'org-mode-hook
'((kill-local-variable 'line-spacing)
(setq-local default-text-properties '(line-spacing 0.45)))))
不知道 add-hook!
是什么,正常的 add-hook
是这样:
(add-hook 'org-mode-hook
(lambda ()
(kill-local-variable 'line-spacing) ;; 如果之前设置的 local 变量没有
;; 删除,可能会导致后面的设置无效。
(setq-local default-text-properties
'(line-spacing 0.25 ;; 必须两项组合,
line-height 1.45 ;; 才能起到效果。
))))
kill-local-variable
是 C 函数,不会不存在。
突然好奇,他们是做了什么x
可能是调了字体垂直居中吧,比如 mode-line
各种符号大小不一,如果不居中就会很难看。
这样…
原来还可以调垂直方向的啊(
只是猜测,究竟发生了什么不知道。Spacemas/Doom 我都不用,它们往 core 里塞太多东西了。即使 init.el 什么都不加,光运行 core 就是能得到一份完备的配置。要是 core 里面有问题,像我这样只会「二分法」除错的人只能吐血了。
你这个下划线和字体没分离么?我怎么看着分开了呢,跟那个白板emacs的不一样
那是因为还有 0.25 的间距,改成 0 就没有了。
我重新debug了一下,把你的复制进我的配置,有用了。
感谢指点。
之前没成功可能是因为我抄漏了什么东西,或者doom自己定义的add-hook!
我用错了。
以及,确实line-spacing和line-height一起用才行,单独line-height是不存在的,单独line-spacing是我那个结果。line-spacing哪怕是0也得写上去。
建议把你在 doom 提的 issue 链接附上。