Emacs org-mode: как отключить визуальный перенос строк только для буферов Agenda?

Emacs org-mode: как отключить визуальный перенос строк только для буферов Agenda?

Я активировал режим визуальной строки в Emacs с помощью M-x global-visual-line-mode.

Однако (только) в буферах повестки дня я хотел бы автоматически использовать truncate long linesвместо этого.

Как это включить? Нужно ли мне изменять команды повестки дня?

решение1

Хук — это список функций, запускаемых в определенном случае. Большинство режимов, если не все, имеют по крайней мере один хук, обычно называемый <mode-name>-mode-hook, к которому можно добавлять функции с помощью add-hookи удалять функции с помощью remove-hook.

Вы можете увидеть, существует ли хук, и проверить его значение с помощью C-hv<mode-name>-mode-hookRET.

В вашем случае вы хотите настроить org-agenda-mode-hook.

(add-hook 'org-agenda-mode-hook
          (lambda ()
            (visual-line-mode -1)
            (toggle-truncate-lines 1)))

Связанный контент