gpt4 book ai didi

emacs - Emacs Powerline 中的截断(模式行)

转载 作者:行者123 更新时间:2023-12-04 10:11:00 24 4
gpt4 key购买 nike

有没有办法在(优秀的)Emacs Powerline 中截断一些元素?我特别在考虑默认模式行中的 which-func-mode 部分。最好只看到函数名称或部分名称的前 N ​​个字符(在 Org 模式下),N 是要定义的。

附带的问题是:如果框架太窄(例如 80 个字符宽),我们能否简单地让组件被禁用(即不显示)?

最佳答案

通常你可以相应地自定义which-func-format,例如:

(setq which-func-format
`("["
(:propertize (:eval (my-which-func-current))
local-map ,which-func-keymap
face which-func
mouse-face mode-line-highlight
help-echo "mouse-1: go to beginning\n\
mouse-2: toggle rest visibility\n\
mouse-3: go to end")
"]")
)

其中 my-which-func-current 是一个相应地截断当前函数名称的函数:

(defun my-which-func-current ()
(let ((current (gethash (selected-window) which-func-table)))
(if current
(truncate-string-to-width current 20 nil nil "…")
which-func-unknown)))

此方法适用于标准模式行,以及任何支持标准模式行数据的模式行扩展包。我知道智能模式线可以,但我不确定电力线。我不使用这些软件包中的任何一个。

关于emacs - Emacs Powerline 中的截断(模式行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25720108/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com