次のスニペットを使用して、Emacs バッファーの両端に 1 文字のマージンを設定しています ( zev! のおかげです)。
(add-hook 'window-configuration-change-hook
(lambda ()
(set-window-margins (car (get-buffer-window-list (current-buffer) nil t)) 1 1)))
ただし、非常に広い左右のマージン (たとえば 30 文字) を提供する別の構成も必要です。おそらくすべてのバッファで、これら 2 つの状態を切り替えるホットキーを割り当てるにはどうすればよいですか?
私は次のことを試しました:
(global-set-key [(control f10)]
(add-hook 'window-configuration-change-hook
(lambda ()
(set-window-margins (car (get-buffer-window-list (current-buffer) nil t)) 30 30))))
しかし、このエラーが発生しました:
Wrong type argument: commandp, ((lambda nil (set-window-margins (car (get-buffer-window-list (current-buffer) nil t)) 30 30)) (lambda nil (set-window-margins (car (get-buffer-window-list (current-buffer) nil t)) 1 1)) frame-local-variables-check)
どこが間違っていますか?説明をありがとう。乾杯!
編集:
このような広いマージンを提供する暗室モードをよく知っています。しかし、私の XP では問題なく動作するようには見えません。