Доста често се оказвам с куп R процеси, работещи в ESS буфери. Има удобна Lisp функция ess-request-a-process
, която пита за R процес и го извежда на преден план. Единственият недостатък е, че някак си по подразбиране е S, така че всеки път, когато се каня да направя превключване, трябва да пиша R, ad nauseam.
Опитах да персонализирам променливата ess-language
, но дори и да задам стойност на „R“, т.е. 4 за текущата сесия, или дори да запазя настройки за бъдеща сесия, веднага щом напиша C-c C-k
, автоматично S се появява още веднъж. Много е досадно и наистина не искам да завърша с C-x C-b
и след това C-s
за желаната R сесия! =)
Дори се опитах да задам (setq-default ess-language "R")
в .emacs
, но без успех...
Между другото, използвам Emacs v. 23.1.1 на Linux Mint и Emacs v. 23.2 на Arch Linux, с ESS v. 5.12. Ако това е уместно, стартирам Emacs от терминал с аргумент -nw
. Ето моето .emacs
:
;; start server
(server-start)
;; load ESS
(require 'ess-site)
(require 'ess-rutils)
;; set HTML help as default
(setq inferior-ess-r-help-command "help(\"%s\", help_type = \"html\")\n")
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(ess-help-kill-bogus-buffers t)
'(ess-rutils-keys nil)
'(show-paren-mode t))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)
(put 'upcase-region 'disabled nil)
И така... как да настрояRведнъж завинаги? (Не използвам S/S+/SAS)