[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] [PATCH] Revised my #+index preprocessor to fontify index entries
From: |
Robert Goldman |
Subject: |
Re: [O] [PATCH] Revised my #+index preprocessor to fontify index entries. |
Date: |
Wed, 04 May 2011 08:10:32 -0500 |
User-agent: |
Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.17) Gecko/20110414 Thunderbird/3.1.10 |
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! ;-)
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
>
>
>