[ESS] options don't work
Deepayan Sarkar
deepayan.sarkar at gmail.com
Wed Apr 29 08:11:29 CEST 2009
On 4/28/09, Kasper Daniel Hansen <khansen at stat.berkeley.edu> wrote:
> Hi Terry
>
> This looks pretty strange. I am not an expert on indentation, but I can
> provide you with my setup, that gives me an indentation level of 4. Btw.,
> querying for the indentation level yields
>
> ess-indent-level is a variable defined in `ess-cust.el'.
> Its value is 4
> Local in buffer example.yeast.R; global value is 2
>
> so the opposite of yours. I am using Carbon Emacs on the mac in case that
> there may be a hidden global setting in that Emacs distribution.
>
> The lines in my .emacs that deals with indentation and ESS are
>
> (require 'ess-site)
> (setq ess-nuke-trailing-whitespace-p t)
> (setq ess-eval-visibly-p nil)
> (setq inferior-R-args "--no-save --no-restore") ;; R start flags
>
> (add-hook 'c-mode-hook
> (lambda ()
> (c-set-style "bsd")
> (setq c-basic-offset 4)
> ))
> (add-hook 'perl-model-hook
> (lambda ()
> (setq perl-indent-level 4)))
> (add-hook 'c++-mode-hook
> (lambda ()
> (setq indent-tabs-mode nil)))
> (add-hook 'inferior-ess-mode-hook
> (lambda ()
> (setq comint-scroll-to-bottom-on-output
> 'others)
> (setq indent-tabs-mode nil)
> ))
> (add-hook 'ess-mode-hook
> (lambda ()
> (ess-set-style 'C++)
> (setq indent-tabs-mode nil)
> (setq comint-scroll-to-bottom-on-output
> 'others)
> (add-hook 'local-write-file-hooks
> (lambda ()
> (ess-nuke-trailing-whitespace)))
> ))
See also the last part of
http://cran.fhcrc.org/doc/manuals/R-ints.html#R-coding-standards
I have that in my .emacs, and it works for me with both Emacs21 and Emacs22.
-Deepayan
>
> Kasper
>
>
> On Apr 28, 2009, at 20:02 , Terry Therneau wrote:
>
>
> > I've asked for help on this before, tried everything I can think of,
> > and am tearing my hair.
> > After a new machine, upgrade to Ubuntu 8.10, my indentation options
> > for ESS are being ignored. This is when I open a file with name
> > whatever.R (I don't use emacs to run R, just to edit.)
> >
> > Emacs starting message:
> > This is GNU Emacs 22.2.1 (i486-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
> > of 2008-09-05 on vernadsky, modified by Ubuntu
> >
> > ESS version 5.3.11, installed with Synaptic Package Manager from the
> > Iowa State CRAN mirror
> >
> > If I open a file, say "charlie.R", it shows the buffer to be in ESS[S]
> > mode. A query of the value of ess-indent-level via cntl-h v gives
> >
> > ess-indent-level is a variable defined in `ess-cust.el'.
> > Its value is 2
> > Local in buffer charlie.R; global value is 4
> >
> >
> >
> > Below is my entire .emacs file from my home directory, after stripping
> > out anything that I thought could possibly interact.
> > The options to map function keys (which I've used for years and years
> > and years) work just fine.
> > Someone please help. I've essentially lost the use of emacs on my
> > home machine, and have no clue whatsoever about why.
> > WHY does it ignore the global value that I set?
> >
> > ;; Set up the keyboard so the delete key on both the regular keyboard
> > ;; and the keypad delete the character under the cursor and to the right
> > ;; under X, instead of the default, backspace behavior.
> > (global-set-key [delete] 'delete-char)
> > (global-set-key [kp-delete] 'delete-char)
> >
> > ;; turn on font-lock mode
> > (global-font-lock-mode t)
> > ;; enable visual feedback on selections
> > (setq-default transient-mark-mode t)
> >
> > ;; always end a file with a newline
> > (setq require-final-newline t)
> >
> > ;; stop at the end of the file, not just add lines
> > (setq next-line-add-newlines nil)
> >
> > ;(when window-system
> > ;; use extended compound-text coding for X clipboard
> > ; (set-selection-coding-system
> 'compound-text-with-extensions))
> >
> > ;; Do my preferred keypad bindings, like the old ge ones
> > (if (eq window-system 'x)
> > (progn
> > (setq show-paren-mode t)
> > ;; define functions of keypad
> > (global-set-key [f2] 'find-file)
> > (global-set-key [f3] 'find-alternate-file)
> > (global-set-key [f4] 'save-buffer)
> > (global-set-key [f5] 'kill-buffer)
> > (global-set-key [kp-0] 'copy-region-as-kill) ; 0
> > (global-set-key [kp-1] 'isearch-forward) ; 1
> > (global-set-key [kp-2] 'forward-word) ; 2
> > (global-set-key [kp-3] 'isearch-backward) ; 3
> > (global-set-key [kp-4] 'beginning-of-line) ; 4
> > (global-set-key [kp-5] 'spell-word) ; 5
> > (global-set-key [kp-6] 'end-of-line) ; 6
> > (global-set-key [kp-7] 'overwrite-mode) ; 7
> > (global-set-key [kp-8] 'undo) ; 8
> > (global-set-key [kp-9] 'delete-char) ; 9
> > (global-set-key [kp-subtract] 'kill-line) ; -
> > (global-set-key [kp-separator] 'kill-word) ; ,
> > (global-set-key [kp-decimal] 'set-mark-command) ; .
> > (global-set-key [kp-enter] 'execute-extended-command) ; Enter
> > ))
> >
> > ;;; ESS variables
> > (setq ess-tab-always-indent nil)
> > (setq ess-auto-newline nil)
> > (setq ess-indent-level 4)
> > (setq ess-brace-offset 4)
> > (setq ess-close-brace-offset 4)
> > (setq ess-continued-statement-offset 4)
> > (setq ess-arg-function-offset nil)
> > (setq ess-expression-offset nil)
> > (setq ess-else-offset 0)
> > (setq ess-return-indent nil)
> > (setq ess-fancy-comments nil)
> > (define-key ess-mode-map [return] 'newline) ; turn off "electric" newline
> > (define-key ess-mode-map "_" 'self-insert-command)
> >
> > Terry Therneau
> >
> > ______________________________________________
> > ESS-help at stat.math.ethz.ch mailing list
> > https://stat.ethz.ch/mailman/listinfo/ess-help
> >
>
> ______________________________________________
> ESS-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/ess-help
>
More information about the ESS-help
mailing list