emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: pinard@iro.umontreal.ca (François Pinard)
To: nicholas.dokos@hp.com
Cc: emacs-orgmode@gnu.org
Subject: Re: Agenda buffer and relative links
Date: Fri, 06 Jan 2012 06:55:48 -0500	[thread overview]
Message-ID: <87zke1kptn.fsf@iro.umontreal.ca> (raw)
In-Reply-To: <8067.1325825020@alphaville.dokosmarshall.org> (Nick Dokos's message of "Thu, 05 Jan 2012 23:43:40 -0500")

Nick Dokos <nicholas.dokos@hp.com> writes:

> François Pinard <pinard@iro.umontreal.ca> wrote:

>> When Org mode defines a link for me, it sometimes changes it so it
>> becomes relative.  [...] This is OK in general, but not always.
>> [...]  I have feeling that there is something deeper which might
>> likely affect many Org mode users, and for which I have no general
>> solution to offer.

> Check
>    (info "(org) Handling links")
> in the manual, particularly the doc for C-u C-c C-l.

Hi, Nick, and gang.

Yes, I knew about prefixes to C-c C-l, which may be used to force links
to be absolute.  Systematic use of C-u C-u C-c C-l instead of C-c C-l
would be tedious, that's why I think there is a deeper problem about the
current defaults.

There is a virtue in relative links which I recognize.  So having an
option to force all links to be absolute might not be a solution.
Having all links relative just cannot work.  Letting the user properly
manage is quite error-prone, and fairly annoying at least.

If you put a gun on my head and say "suggest something", without much
time to think, I would go something that way:

* cutting part of a buffer containing links, links should be
  turned absolute before going in the clipboard or kill ring,

* pasting text containing links, links should be turned relative
  whenever it makes sense to do so.

What is "making sense", above?

* if a file receiving the link is not part of the agenda files, the
  current algorithm is OK,

* if a file receiving the link is part of the agenda files, and that
  agenda file is directly under org-directory, the current algorithm
  is OK,

* if a file receiving the link is part of the agenda files, and that
  agenda file is not directly under org-directory, make the link
  absolute,

This would have consequences:

* the agenda buffer should automatically be cd'ed to org-directory,

* adding (removing) a file to (from) the list of agenda-files becomes a
  complex operation, requiring all links to be adjusted.

All of the above is surely very debatable, and other people may likely
devise other approaches.  That's why I say it may require deeper
thought.  I would only like to stress that there is a problem.

François


P.S. I have lot of links, and I often move contents around in files.
Adjusting links while doing so has been a bit painful all along.  So
far, I used mixes of Python scripts, editionswith Vim, or sometimes
editions with Emacs in fundamental mode.  And I wrote a cross-checking
and diagnosis tool which I run at least daily, at backup time.

  reply	other threads:[~2012-01-06 11:55 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-06  3:39 Agenda buffer and relative links François Pinard
2012-01-06  4:43 ` Nick Dokos
2012-01-06 11:55   ` François Pinard [this message]
2012-01-06 13:16     ` Sebastien Vauban
2012-01-07 17:39       ` François Pinard
2012-01-07 19:26         ` François Pinard
2012-01-07 20:58           ` Sebastien Vauban

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=87zke1kptn.fsf@iro.umontreal.ca \
    --to=pinard@iro.umontreal.ca \
    --cc=emacs-orgmode@gnu.org \
    --cc=nicholas.dokos@hp.com \
    /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).