emacs-orgmode
[Top][All Lists]
Advanced

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

[Orgmode] Re: footnote renumber bug


From: Matthew Lundin
Subject: [Orgmode] Re: footnote renumber bug
Date: Thu, 02 Jul 2009 10:48:23 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux)

Andreas Röhler <address@hidden> writes:

> Karl Maihofer wrote:
>> Andreas Roehler schrieb:
>>   
>>> after reopening a file with two footnotes inside,
>>> inserting a third footnote between first and second, it
>>> fails to renumber it.
>>>     
>>
>> Did you try the new "C-u C-c C-x f S" feature of the latest git-version?
>>   
>
> No. Just  check this feature for curiosity,  as I  dealt with that bug
> at common footnote.el
>  
>> Org does not renumber footnotes automatically when they are inserted.
>> You have to use the command above to do that.
>>   
>
> IMO a decent program should renumber automatically.
> Patched footnote.el meanwhile does if called with footnote-init.
> Unfortunately your footnote-machine is written fairly different from
> footnote.el.
> Otherwise I'd send a patch.
>

There is nothing preventing a user from using footnote.el (and your
patch) within org mode instead of the built in org-footnote-action.
Simply set up a hook to load footnote-mode for org files.

But the lack of automatic renumbering in org-footnote is *not* a bug.
Unlike footnote.el, org-mode views footnote notation primarily as
markup, not as some form of "final output." The source text simply
contains footnote markup, which can be exported as normalized footnotes.
And of course, at any point, user has the option of normalizing
footnotes in the source text if he/she so desires.

Footnote.el, by contrast, was designed for short email messages in which
there is no distinction between source text and exported text. Though it
serves this limited purpose admirably, it offers only a very rudimentary
numbering system rather than a complete markup solution. For any complex
writing (e.g., a research paper with dozens of footnotes), footnote.el
is well-nigh impossible to use. There are simply too many chances of
broken or mixed up links.

Org-mode's handling of footnotes is considerably more robust. Several
different types of footnote styles are available:

 - numbered[1]

 - labeled[fn:label]

 - inline[fn::Here is an inline footnote.]

Footnotes:

[1] Numbered

[fn:label] Here is a labeled footnote. 

------

All of these can be mixed together in the same document. Upon export to
pdf, ascii, or html they will be properly sorted and numbered, but the
labels in the source will remain the same, ensuring that the source text
remains *exactly* as the user wants it to be. 

At any point, however, the user can sort and/or renumber the footnotes
in the source text. For instance, the footnotes above can very quickly
and easily converted to the following:

,----
|
|  - numbered[1]
| 
|  - labeled[2]
| 
|  - inline[3]
| 
| Footnotes:
| 
| [1] Numbered
| 
| [2] Here is a labeled footnote.
| 
| [3] Here is an inline footnote.
`----

The key here, however, is that the process is completely under the
user's control. Footnotes will not be sorted or reorganized in the
source text unless the user desires it. In my view, this is the proper
behavior for a robust markup system. The whole point of markup is to
avoid the sorts of automated, global alterations of the source text that
are characteristic of word-processors.

With labeled footnotes in org-footnote, I can rearrange my text and rest
assured that none of my footnote links will be broken. And if I delete a
footnote reference without deleting its corresponding definition (or
vice-versa), org-mode will alert me to the problem when I export or sort
the footnotes.

All this is to explain why the lack of automatic renumbering is *not* a
bug. And of course, anyone who prefers a different behavior can easily
use footnote.el instead.

Regards,
Matt






reply via email to

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