Emacs의 특정 버퍼에서 줄 번호 열 글꼴 비율을 변경하는 방법은 무엇입니까?

Emacs의 특정 버퍼에서 줄 번호 열 글꼴 비율을 변경하는 방법은 무엇입니까?

내가 사용하고 있는 (global-display-line-numbers-mode) 코드와 제안된 코드https://unix.stackexchange.com/a/593889/441805 버퍼 텍스트 글꼴 비율에 따라 줄 번호 열 글꼴 비율을 조정합니다.

(defun post-text-scale-callback ()
  ;; fix line number text size
  (set-face-attribute 'line-number nil 
                      :height (floor (* (face-attribute 'default :height)
                                        (expt text-scale-mode-step text-scale-mode-amount)))))
(add-hook 'text-scale-mode-hook 'post-text-scale-callback)

그러나 이는 행 번호 열 글꼴 비율이 이제 각 버퍼에서 변경된다는 단점이 있습니다. 나는 이맥스 28.0.50을 사용하고 있습니다

답변1

text-scale-adjust의 코드를 보면 face-remap.el이 작업을 수행하는 쉬운 방법이 있다고 생각됩니다.

(add-hook 'text-scale-mode-hook (lambda() (face-remap--remap-face 'line-number)))

이는 기본적으로 line-number버퍼 부분에 대해 동일한 작업을 수행하고 및 부분에 text-scale-adjust대해 동일한 작업을 수행합니다.defaultheader-line

현재 버퍼에 대해서만 조정됩니다.

관련 정보