Это сложный предмет (который я не совсем понимаю - будьте осторожны, покупатель!). Проблема в том, что существует большое концептуальное расстояние между org-capture
и функцией, которая фактически выполняет разделение окна, функцией с именем split-window-sensibly
. Итак, есть много мест, где вы могли бы предположительно вмешаться в изменение поведения, но проблема в том, что все, что вы делаете таким образом, может нарушить множество других вещей, которые не имеют ничего общего с захватом.
Do c строка для split-window-sensibly
(do C-h f split-window-sensibly RET
, чтобы прочитать ее) упоминает две переменные, однако:
По умолчанию процедуры display-buffer
вызывают эту функцию для разделения самого большого или наименее использованного окна. Чтобы изменить значение по умолчанию, настройте параметр split-window-preferred-function
.
. Вы можете заставить эту функцию не разбивать WINDOW по горизонтали, установив (или привязав) переменную split-width-threshold
к нулю. Если, кроме того, вы установите split-height-threshold
на ноль, вероятность того, что эта функция действительно разбивает WINDOW по вертикали, возрастает.
Чтобы не разбивать WINDOW по вертикали, установите (или привяжите) переменную split-height-threshold
к nil. Кроме того, вы можете установить для параметра `split-width-threshold 'значение 0, чтобы повысить вероятность горизонтального разделения.
Поэтому я бы рекомендовал вам определить свою собственную функцию org-capture, которая устанавливает эти переменные используя let-bind перед вызовом "реального" `org-capture:
(defun my-org-capture ()
(interactive)
(let ((split-width-threshold nil)
(split-height-threshold 0))
(org-capture)))
и используйте it вместо« реального ». Например, вы можете привязать его к тому, что рекомендует руководство по режиму организации, выполнив
(global-set-key (kbd "C-c c") 'my-org-capture)
(или изменив любую используемую вами привязку клавиш).
Преимущество этого в том, что это только изменяет способ вызова org-capture
, поэтому практически нет шансов сломать что-нибудь еще. И при необходимости вы можете легко отменить изменение.