Как остановить emacs от замены нижней панели с помощью
ess-mode
Это " Emacs говорит статистика."Этот режим полезен для редактирования программ для R или Splus (два отдельных пакета статистики).
В моем буфере, когда бы я ни набрал _
символ заменяется <-
, что очень неприятно. Есть ли оператор Emacs lisp, чтобы отключить это поведение?
emacs: 22.1.1 ess-mode release (неизвестно)
5 ответов:
с ЕСС это (смотрите раздел "изменения / новые функции в 5.2.0"):
ESS[S]: нажатие подчеркивания ("_") один раз вставляет "
от http://www.r-bloggers.com/a-small-customization-of-ess/ и как изменить привязку smart assign key ("_"к"
чтобы назначить ": "на"
(setq ess-smart-S-assign-key ":") (ess-toggle-S-assign nil) (ess-toggle-S-assign nil) (ess-toggle-underscore nil) ; leave underscore key alone!
Так как функция полезна. Вы можете назначить его другому ключу, который менее используется вами в R, он автоматически отменит его из подчеркивания. Я лично назначаю его
";"
добавив следующую строку .файл emacs.(setq ess-smart-S-assign-key ";")
моя версия emacs - это установочный файл 24.3 All-in-one от Vincent Goulet.(Установлен на windows 7)
надеюсь, что это помогает
Edit В emacs 25.2 выше не работают, вместо этого добавьте следующее .в Emacs файл
(setq ess-smart-S-assign-key ";") (ess-toggle-S-assign nil) (ess-toggle-S-assign nil)
более поздняя версия, которая, казалось, работала для меня, и намного менее многословна (вы по существу сохраняете нормальные подчеркивания, но можете установить свой собственный ключ для этого умного поведения!):
(global-set-key (kbd "C-;") (lambda () (interactive) (insert " <- "))) (ess-toggle-underscore nil)
вставьте свой выбор короткой клавиши вместо
C-;
.
как Михал Марчик и эта нить списка рассылки R предложил добавить эту строку в
~/.emacs
:(ess-toggle-underscore nil)
затем перезагрузите его с
M-x load-file
и типа~/.emacs
.но если вы загружаете файл снова, например, если вы добавляете другую настройку, то он переключает его обратно в исходное состояние. Поэтому переключите его дважды, первый заставляя его по умолчанию:
(ess-toggle-underscore t) (ess-toggle-underscore nil)
это, как говорится, Мне нравится решение Drummermean лучше, но это также возвращается к умолчанию, если вы добавляете его в
~/.emacs
и загрузите его дважды. Так что заставьте переключатель по умолчанию перед:(ess-toggle-underscore t) (global-set-key (kbd "M--") (lambda () (interactive) (insert " <- "))) (ess-toggle-underscore nil)
я привязал смарт-задание к
Opt-[minus]
какRStudio
(на Mac).