1 ; (eval-after-load "ess"
2 ; '(mapcar 'ess-noweb-make-variable-permanent-local
4 ; ess-local-process-name ;; also made permanent in ess-mode, but let it be
8 ; ess-noweb-chunk-vector
11 ; ess-noweb-default-code-mode
12 ; ess-noweb-last-chunk-index)))
14 (require 'ess_remote_eval)
16 (defun ess-change-directory (path)
17 "Set the current working directory to PATH for both *R* and Emacs."
18 (interactive "DDirectory to change to: ")
20 (when (file-exists-p path)
21 (ess-command (concat "setwd(\"" path "\")\n"))
22 ;; use file-name-as-directory to ensure it has trailing /
23 (setq default-directory (file-name-as-directory path))))
24 (add-hook 'ess-mode-hook 'flyspell-prog-mode)
25 ;;; outlining support for ess modes
26 (add-hook 'ess-mode-hook
29 (setq outline-regexp "\\(^#\\{4,5\\} \\)\\|\\(^[a-zA-Z0-9_\.]+ ?<- ?function\\)")
30 (defun outline-level ()
31 (cond ((looking-at "^##### ") 1)
32 ((looking-at "^#### ") 2)
33 ((looking-at "^[a-zA-Z0-9_\.]+ ?<- ?function(.*{") 3)
36 (add-hook 'ess-mode-hook
38 (local-set-key (kbd "C-c C-R")
39 'dla/ess-region-remote-eval)))
41 ;;; Don't restore history or save workspace image
42 '(inferior-R-args "--no-restore-history --no-save")
44 (provide 'ess_configuration)