[ESS] Skeleton pair insert not working after upgrade.
Rodney Sparapani
rsparapa at mcw.edu
Mon Sep 21 20:31:08 CEST 2009
Marc Schwartz wrote:
> Rodney,
>
> Just an FYI, that none of my ESS installation has been byte compiled, so
> there would not be a presumptive conflict between the .el and .elc
> versions of a given emacs lisp file. So modifying the .el file should
> have been sufficient and the lack of a behavior change after doing so,
> gave rise to my thinking that using the fully modified code base might
> be required given dependencies elsewhere.
>
> The historical reason for this, in my case, is that when I was on Fedora
> Linux, I went between Emacs version 22 and 23 until 23 became stable
> enough to use all the time. Since byte compiling was not binary
> compatible between the two versions, I simply did not byte compile. I
> have, for better or worse, continued that habit, even now on OSX as I
> have not found a material performance impact, at least in my typical use.
>
> Regards,
>
> Marc
Weird. I don't byte-compile under OS X either (I use the simple
installation instructions). Anyways, I think I see how to fix {
with skeleton-pair. It's just an either-or thing:
(defun ess-electric-brace (arg)
"Insert character and correct line's indentation."
(interactive "P")
;; skeleton-pair takes precedence
(if (and (boundp 'skeleton-pair) skeleton-pair (fboundp
'skeleton-pair-insert-maybe))
(skeleton-pair-insert-maybe "{")
;; else
(let (insertpos)
(if (and (not arg)
(eolp)
(or (save-excursion
(skip-chars-backward " \t")
(bolp))
(if ess-auto-newline (progn (ess-indent-line) (newline) t) nil)))
(progn
(insert last-command-char)
(ess-indent-line)
(if ess-auto-newline
(progn
(newline)
;; (newline) may have done auto-fill
(setq insertpos (- (point) 2))
(ess-indent-line)))
(save-excursion
(if insertpos (goto-char (1+ insertpos)))
(delete-char -1))))
(if insertpos
(save-excursion
(goto-char insertpos)
(self-insert-command (prefix-numeric-value arg)))
(self-insert-command (prefix-numeric-value arg))))))
Now, checked in. Will appear in ESS 5.5 RSN :o)
--
Rodney Sparapani Center for Patient Care & Outcomes Research (PCOR)
Sr. Biostatistician http://www.mcw.edu/pcor
4 wheels good, 2 wheels better! Medical College of Wisconsin (MCW)
WWLD?: What Would Lombardi Do? Milwaukee, WI, USA
More information about the ESS-help
mailing list