Hi Chris Just for completeness - and because I had little previous experience with using =org-babel= stuff - I attempted to write a small =sh= source block that parses the current =org-mode= file and builds an appropriate "emph" entry in the listings =lstset=:
========================================================================================== #+startup: beamer #+LaTeX_CLASS: beamer #+BEAMER_HEADER_EXTRA: \usetheme{Madrid}\usecolortheme{default} #+source: parse-classes #+begin_src sh :var fileName=(buffer-file-name) :exports none :results output latex for class in `sed -n 's/.*class \([a-zA-Z0-9_]*\)(.*):/\1/p' $fileName`; do str="$str,$class" done cat <<EOF \\definecolor{keywords}{RGB}{255,0,90} \\definecolor{comments}{RGB}{60,179,113} \\lstset{ language=Python, keywordstyle=\\color{keywords}, commentstyle=\\color{comments}, procnamestyle=\\color{blue}\bfseries, emph={${str:1}}, emphstyle=\\color{blue}\bfseries } EOF #+end_src * test ** Panels in the UI (part 1) Scripting the UI is pretty much the same as scripting the operator, but it goes to a separate location.. *** Panel operator :B_block: :PROPERTIES: :BEAMER_env: block :END: #+BEGIN_SRC python :exports code class ReferenceDeskPanel(bpy.types.Panel): pass #+END_SRC #+BEGIN_SRC python :exports code class ReferenceDeskPanel23(bpy.types.Panel): pass #+END_SRC ========================================================================================== There are two somewhat inconvenient issues with this approach: - One has to evaluate the =parse-classes= source block before export, via a =C-c C-c=. This allows the results to be added directly to buffer as LaTeX source code. This was the only way I could figure out how to get it to work - maybe someone else has a clever work around? Part of the problem is that by the point that the code would be evaluated, you are already within the body of the LaTeX document. It would be nice if there were a =#+begin_latex_document= command which would allow for anything before this command to be in the document's preamble, and anything afterwords to follow the LaTeX command =\begin{document}=. Maybe this is a feature request? - One cannot use listings ability to use /class numbers/ to mark particular emphasis because they get interpreted by =org-mode= as footnotes. For example, say you wanted all the /class/ emphasis words to be blue, but you wanted all /def/ emphasis words to be red. In LaTeX one could write #+begin_latex \lstset{ emph={def}, emphstyle=\color{red}, emph={[2]class}, emphstyle=\color{blue} #+end_latex This can't be done with the above =parse-classes= code. Anyway, it's a bit long-winded and probably moot seeing as how you decided to use =minted=, but I thought I'd give it a shot. Chris On Mon, Feb 14, 2011 at 11:12 AM, Christopher Allan Webber < cweb...@dustycloud.org> wrote: > Dan, all this information is super helpful. Thanks! My presentation is > going to look great now, I think! > > I really appreciate your help! > - cwebb > > -- > 𝓒𝓱𝓻𝓲𝓼𝓽𝓸𝓹𝓱𝓮𝓻 𝓐𝓵𝓵𝓪𝓷 𝓦𝓮𝓫𝓫𝓮𝓻 > > _______________________________________________ > 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