emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] [PATCH] Revised my #+index preprocessor to fontify index entries


From: Carsten Dominik
Subject: Re: [O] [PATCH] Revised my #+index preprocessor to fontify index entries.
Date: Thu, 5 May 2011 10:30:56 +0200

On 4.5.2011, at 15:10, Robert Goldman wrote:

> On 5/4/11 May 4 -3:03 AM, Carsten Dominik wrote:
>> Hi Robert,
>> 
>> I am rejecting this part of the patch for now.  More thinking is needed here,
>> also about special characters etc.  No sure yet what the right course will 
>> be,
>> but this is much too limited.
> 
> Carsten,
> 
> I don't fully understand the latex exporter, but I believe that
> somewhere in it, LaTeX contexts are protected from translation.
> Question:  would it be possible to somehow mark the argument to \index{}
> as being NOT protected?  If we could do that, I suspect the rest of the
> processing would run its course.
> 
> I am working on a manual so correct indexing of monospaced entries is
> critical to me! ;-)

I took another look, and your idea actually works, because the function you 
used does
do quite complete formatting.  I have put this part back into the code.

- Carsten

> 
> Best,
> r
> 
>> 
>> - Carsten
>> 
>> 
>> On May 1, 2011, at 6:01 PM, address@hidden wrote:
>> 
>>> From: Robert P. Goldman <address@hidden>
>>> 
>>> ---
>>> The previous patch wasn't quite right because, e.g., it would index
>>> #+INDEX: =Class=
>>> as 
>>> \\index{=Class=}
>>> instead of
>>> \\index{\texttt{Class}}
>>> This patch attempts to fix that.
>>> 
>>> Question:  would you prefer to have this reformulated as some kind of 
>>> unified patch
>>> with the earlier one?
>>> 
>>> lisp/org-latex.el |   12 +++++++++---
>>> 1 files changed, 9 insertions(+), 3 deletions(-)
>>> 
>>> diff --git a/lisp/org-latex.el b/lisp/org-latex.el
>>> index 731d6e6..b8f7019 100644
>>> --- a/lisp/org-latex.el
>>> +++ b/lisp/org-latex.el
>>> @@ -1,4 +1,4 @@
>>> -;;; org-latex.el --- LaTeX exporter for org-mode
>>> +;; org-latex.el --- LaTeX exporter for org-mode
>>> ;;
>>> ;; Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
>>> ;;
>>> @@ -2331,9 +2331,15 @@ The conversion is made depending of STRING-BEFORE 
>>> and STRING-AFTER."
>>>       (let ((case-fold-search t))
>>>      (re-search-forward "^[ \t]*#\\+index:[ \t]*\\(.*?\\)[ \t]*$" nil t))
>>>       (> (match-end 1) (match-beginning 1)))
>>> +    ;;      (message "Found a #+INDEX match...")
>>>    (let ((entry (match-string 1)))
>>> -;;      (message "Found a #+INDEX match...")
>>> -      (replace-match (format "\\index{%s}" entry) t t)))
>>> +      (replace-match (format "\\index{%s}" entry) t t)
>>> +      ;; now process font directives in the index entry
>>> +      (re-search-forward "^[ \t]*\\\\index{\\([^}]\\)}" nil t)
>>> +      ;; (message (format "Trying to fontify string %s" (match-string 1)))
>>> +      (save-restriction
>>> +   (narrow-to-region (match-beginning 1) (match-end 1))
>>> +   (org-export-latex-fontify))))
>>> 
>>>  ;; Convert center
>>>  (goto-char (point-min))
>>> -- 
>>> 1.7.3.5
>>> 
>>> 
>> 
>> - Carsten
>> 
>> 
>> 
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]