emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Bernt Hansen <bernt@norang.ca>
To: Francesco Pizzolante
	<public-fpz-djc/iPCCuDYQheJpep6IedvLeJWuRmrY@plane.gmane.org>
Cc: mailing-list-org-mode <public-emacs-orgmode-mXXj517/zsQ@plane.gmane.org>
Subject: Re: LaTeX export of section links
Date: Fri, 20 Nov 2009 07:42:56 -0500	[thread overview]
Message-ID: <87aayhqsdr.fsf@gollum.intra.norang.ca> (raw)
In-Reply-To: <873a49e8g6.fsf@missioncriticalit.com> (Francesco Pizzolante's message of "Fri\, 20 Nov 2009 12\:34\:17 +0100")



Francesco Pizzolante
<fpz-djc/iPCCuDYQheJpep6IedvLeJWuRmrY@public.gmane.org> writes:

> Hi,
>
> I have a few questions about links to sections.
>
> I've read that it is better to user IDs and CUSTOM_IDs to links to section...
>
> Here's a small example with 4 cases:
>
> --8<---------------cut here---------------start------------->8---
> * First
>   :PROPERTIES:
>   :CUSTOM_ID: heading-a
>   :END:
>
>   Hello Toto!
>
> * Second
> # <<heading-b>>
>
>   Hello Tata!
>
> * Third
> #+CUSTOM_ID: heading-c
>
>   Hello Titi!
>
> * Fourth
> #+ID: heading-d
>
>   Hello Tete!
>
> [[heading-a]]
> [[heading-b]]
> [[heading-c]]
> [[heading-d]]
> --8<---------------cut here---------------end--------------->8---
>
> Which give the following LaTeX code:
>
> --8<---------------cut here---------------start------------->8---
> \section{First}
> \label{sec-1}
> \label{heading-a}
>
>
>   Hello Toto!
>
> \section{Second}
> \label{sec-2}
> \label{heading-b}
>
>
>   Hello Tata!
>
> \section{Third}
> \label{sec-3}
>
>
>   Hello Titi!
>
> \section{Fourth}
> \label{sec-4}
>
>
>   Hello Tete!
>
> \hyperref[sec-1]{heading-a}
> \hyperref[sec-2]{heading-b}
> \hyperref[sec-3]{heading-c}
> \hyperref[sec-4]{heading-d}
> --8<---------------cut here---------------end--------------->8---
>
> The first and second cases both generate labels which are not used in LaTeX.
>
> The third and fourth cases are very elegant as they use only aliases (which
> are dropped from the LaTeX code).
>
> My questions are:
>
> - what's the difference between using ID and CUSTOM_ID?
>
> - the cases "Third" and "Fourth" are the more elegant from my point of view.
>   Is this the right way of doing?
>
> - what's the difference between cases "First" and "Second" (I mean between
>   using PROPERTIES and # <<X>>)?
>
> - in the documentation (section 4.2), we talk about "CUSTOM_ID property" does
>   it mean that we should use it as in case 1?

I use the CUSTOM_ID property for HTML exports (not LaTeX).

The ID property is automatically generated for me when I link to a task
and is a unique identifier for that heading across all of my org files.

,----
| * Some Task
|   :PROPERTIES:
|   :ID:       1329fa08-3c1d-4b73-b984-bef414b0dd3d
|   :END:
`----

This allows me to have more than one 'Some Task' in my files and each
will have a unique ID so that linking to it finds the correct one.

CUSTOM_IDs are a way to create links using a user-defined name.  I use
this for my org-mode document at http://doc.norang.ca/org-mode.html so
that I can reference a section by name such as
http://doc.norang.ca/org-mode.html#Publishing

If I later insert a section before Publishing the link still goes to the
correct place.  Without the CUSTOM_ID property I get a link like
http://doc.norang.ca/org-mode.html#sec-13 which may stop working if the
document sections are moved around.

I'm not sure what this buys you in LaTeX since I don't think the
CUSTOM_ID names are exposed in the links (correct me if I'm wrong).

I don't think the

#+CUSTOM_ID: name
#+ID: name

forms are valid.  These should be properties.  The above names are
probably just ignored during the export process.

HTH,
Bernt

  reply	other threads:[~2009-11-20 12:43 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-20 11:34 LaTeX export of section links Francesco Pizzolante
2009-11-20 12:42 ` Bernt Hansen [this message]
2009-11-20 14:13 ` Carsten Dominik
     [not found]   ` <361B87B2-29D2-465C-84BE-A82376059D35-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2009-11-20 15:14     ` Francesco Pizzolante
2009-11-20 15:18       ` Carsten Dominik
     [not found]         ` <224945F4-65E4-4904-9065-ADF3FE9F4DD2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2009-11-20 15:23           ` Francesco Pizzolante

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87aayhqsdr.fsf@gollum.intra.norang.ca \
    --to=bernt@norang.ca \
    --cc=public-emacs-orgmode-mXXj517/zsQ@plane.gmane.org \
    --cc=public-fpz-djc/iPCCuDYQheJpep6IedvLeJWuRmrY@plane.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).