Bernt Hansen <be...@norang.ca> writes: > Dan Davison <dandavis...@gmail.com> writes: > >> Bernt Hansen <be...@norang.ca> writes: >> >>> * lisp/org.el: Skip source block fontification during export when language >>> is not defined >>> --- >>> This may not be the correct fix for this issue but it works for me. >> >> Hi Bernt, >> >> I've checked in a slightly different version[1] of this fix. Thanks for >> the report; it wasn't nice to have been throwing errors every time an >> unrecognised (e.g. partial) language string was entered, even if most of >> the time font-lock was subduing these errors. >> >> Dan >> >> Footnotes: >> [1] I've made the org-src fontification function test, early on, whether >> the language major-mode function exists. If it doesn't then it returns >> immediately. > > Thanks Dan, > > Your fix works for me :). > > I'm confused about _why_ I'm getting these errors though - I was > expecting fontification only to apply to #+begin_src blocks and I'm only > using a few languages in that document (sh, org, emacs-lisp, ditaa, and dot). > > Unless it's picking up on the begin_src in the following text
Hi Bernt, I was wondering about the same thing. How about hacking the org-src-font-lock-fontify-block function so that it throws an error with a helpful message when the language string is unrecognised? I just tried this on your document with C-c C-e h and it didn't throw anything, but maybe in your setup it will? (Check the *Messages* buffer, it may be that font-lock handles the error). I've prepended the below with "$ " to stop patchwork from grabbing it. $ diff --git a/lisp/org-src.el b/lisp/org-src.el $ index f55e292..0d796b4 100644 $ --- a/lisp/org-src.el $ +++ b/lisp/org-src.el $ @@ -781,7 +781,9 @@ fontification of code blocks see `org-src-fontify-block' and $ (add-text-properties $ start end $ '(font-lock-fontified t fontified t font-lock-multiline t)) $ - (set-buffer-modified-p modified))))) $ + (set-buffer-modified-p modified)) $ + (error "Unrecognised language: %s line: %d" $ + lang (line-number-at-pos (point)))))) Dan > > ,---- > | I use this to create =#+begin_*= blocks like > | - =#+begin_example= > | - =#+begin_ditaa= > | - =#+begin_dot= > | - =#+begin_src= > | - etc. > `---- > > I wasn't able to determine the source line of the problem from the stack > dump information. Is there any way to determine what part of the > document is causing this (other than manually bisecting and exporting > with missing sections) ? > > Regards, > Bernt > > _______________________________________________ > 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 _______________________________________________ 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