On Mon, Jul 5, 2010 at 7:40 PM, Jason Dunsmore wrote: > Carsten Dominik writes: > > >> Hi > >> > >> my emacs is crashing quite regularly when I am using org-babel. Is > >> there a way to get a traceback or something similar which I could > >> submit to get an idea what is causing it? > > > > I think this has probably nothing to do with org-babel. More likely, > > you are using org-indent-mode, on an Emacs version where it does not > > work. Check the Org manual for the exact version of Emacs you need. > > I was bitten by this same bug. I narrowed it down to org-indent, but I > had no idea I should look in the manual to see which version of emacs > org-indent was compatible with. > > Here's a patch that will make emacs display an error if org-indent is > loaded with an incompatible version of emacs: > > --8<---------------cut here---------------start------------->8--- > diff --git a/lisp/org-indent.el b/lisp/org-indent.el > index 77411af..0ef8456 100644 > --- a/lisp/org-indent.el > +++ b/lisp/org-indent.el > @@ -131,6 +131,18 @@ FIXME: How to update when broken?" > (setq org-indent-mode nil) > (if org-indent-mode > (progn > + (destructuring-bind (maj min bld) > + (mapcar 'string-to-number (split-string emacs-version > "[.]")) > + (let ((msg "Emacs 23.1.50.3 or greater is recommended for > org-indent > + (when (< maj 23) > + (display-warning 'org msg :warning)) > + (when (= maj 23) > + (unless (>= bld 50) > + (display-warning 'org msg :warning))) > + (when (and (= maj 23) > + (= bld 50)) > + (unless (>= min 1) > + (display-warning 'org msg :warning))))) > (org-set-local 'indent-tabs-mode nil) > (or org-indent-strings (org-indent-initialize)) > (when org-indent-mode-turns-off-org-adapt-indentation > --8<---------------cut here---------------end--------------->8--- > > Perhaps this would be better as a separate function: > > --8<---------------cut here---------------start------------->8--- > (defun org-version-check (version feature level) > (destructuring-bind (rmaj rmin rbld) > (mapcar 'string-to-number (split-string version "[.]")) > (destructuring-bind (maj min bld) > (mapcar 'string-to-number (split-string emacs-version "[.]")) > (let ((msg (format "Emacs %s or greater is recommended for %s" version > feature))) > (when (< maj rmaj) > (display-warning 'org msg level)) > (when (= maj rmaj) > (unless (>= min rmin) > (display-warning 'org msg level))) > (when (and (= maj rmaj) > (= min rmin)) > (unless (>= bld rbld) > (display-warning 'org msg level))))))) > --8<---------------cut here---------------end--------------->8--- > > It could then be called with: > > (org-version-check "23.1.50" "org-indent" :warning) > > I made it display a warning because org-indent seems to work almost > perfectly with the version of emacs I'm running (23.1.1). > I think that is a brilliant idea, especially as the repositories from ubuntu do not yet include emacs 23.2. Cheers, Rainer > Regards, > Jason > > _______________________________________________ > Emacs-orgmode mailing list > Please use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode > -- NEW GERMAN FAX NUMBER!!! Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Natural Sciences Building Office Suite 2039 Stellenbosch University Main Campus, Merriman Avenue Stellenbosch South Africa Cell: +27 - (0)83 9479 042 Fax: +27 - (0)86 516 2782 Fax: +49 - (0)321 2125 2244 email: Rainer@krugs.de Skype: RMkrug Google: R.M.Krug@gmail.com