Как избежать переключения (автоматически?) На буферы только для чтения в Emacs - PullRequest
1 голос
/ 18 октября 2011

У меня есть достаточное количество буферов, открытых в Emacs, и переключаюсь между ними, используя C-x b.Однако довольно часто я возвращаюсь к ранее доступному буферу, который теперь имеет права только для чтения.Он может быть переключен обратно на M-x toggle-read-only.Интересно, почему я (автоматически?) Получаю буфер только для чтения, когда возвращаюсь к нему, и как этого можно избежать.

У меня открыт только один экземпляр Emacs, и я не изменяю файлылежащие в основе буферы в то же время.

Ответы [ 3 ]

4 голосов
/ 18 октября 2011

Возврат в буфер определенно не делает его доступным только для чтения.

Вы можете оставить совет по поводу переключения только для чтения, чтобы увидеть, есть ли где-нибудь непреднамеренный вызов.

(defadvice toggle-read-only (around invoke-debugger activate)
  "invoke debugger to see the call stack"
  (debug ""))

Если это не поможет, вы даже можете добавить совет на setq и войти в отладчик, когда присваивается buffer-read-only.

1 голос
/ 26 апреля 2012

Я полагаю, что это случается довольно часто на клавиатурах AZERTY, где Q и S смежны, и один переключает буфер в режим только для чтения вместо его сохранения.

0 голосов
/ 18 октября 2011

Это не стандартное поведение emacs.Предоставьте еще некоторые данные в виде версии / платформы emacs и т. Д. Посмотрите на файлы инициализации (включая .emacs), которые по какой-то причине имеют буферный доступ только для чтения.В любом случае, вы можете избежать этого, добавив хук к переключателю-буферу (или Ch k Cx b).Использовать только для чтения с отрицательным аргументом.

...