[O] external/central ``macro'' definitions (for instance link abbrev's)?
Hi, I like to achieve the following. I do a org-document which I separate into different files (one per chapter or similar). They are all included into some "main.org". In that setup, I'd like to use some centrally defined links, like #+LINK: toollib ../../src/lib or similar, as an abbrev in hyperlinks like [[toollib:somefile][somefile]] Now, the #+LINK mechanism works fine as such. But I want that it works for all used *.org files that constituted the overall document /without/ repeating the definition. Something like #+INCLUDE "definitions.org" at the beginning of each file, so that if something changes, I need to adapt only "definitions.org", not all files making use of that shared links. Is there a way to achieve that? Thanks, Martin
Re: [O] external/central ``macro'' definitions (for instance link abbrev's)?
On Saturday, 26 Mar 2016 at 11:43, Martin Steffen wrote: [...] > Now, the #+LINK mechanism works fine as such. But I want that it works > for all used *.org files that constituted the overall document /without/ > repeating the definition. Something like > > #+INCLUDE "definitions.org" > > at the beginning of each file, so that if something changes, I need to > adapt only "definitions.org", not all files making use of that shared links. Have you tried that? Org supports include files: #+include: "definitions.org" (note :) [[info:org#Include%20files][info:org#Include files]] -- : Eric S Fraga (0xFFFCF67D), Emacs 25.0.92.1, Org release_8.3.4-668-g809a83
Re: [O] external/central ``macro'' definitions (for instance link abbrev's)?
Eric S Fraga ucl.ac.uk> writes: > > On Saturday, 26 Mar 2016 at 11:43, Martin Steffen wrote: > > [...] > > > Now, the #+LINK mechanism works fine as such. But I want that it works > > for all used *.org files that constituted the overall document /without/ > > repeating the definition. Something like > > > > #+INCLUDE "definitions.org" > > > > at the beginning of each file, so that if something changes, I need to > > adapt only "definitions.org", not all files making use of that shared links. > > Have you tried that? Org supports include files: > > #+include: "definitions.org" > > (note :) > > [[info:org#Include%20files][info:org#Include files]] > yes, that's what I am using: org's support for including files. And the file content /is/ properly included. It seems mainly a mechanism for "export" which is the main purpose. I realize that my original post was perhaps unprecise. What I was looking after is this ``awareness'' of those definitions (using the #+INCLUDE mechanism) /not just/ for export. I was missing it /from within emacs itself/, i.e., from within org-mode. I am using org-mode to document some software. For that, having those ``links''pointing to pieces of code is great. When generating HTML or other formats, that allows to jumpt to it etc, that seems to work fine. However, one way of browsing the documentation is /in emacs itself/ (using org-mode). Following links seems to be done by C-c C-o (``org-open-at-point''). The mechanism seems to be aware of links of the form [[fileurl:file]] where fileurl is defined using the #+LINK mechanism. However, it only seems to work if one /literally/ adds a #LINK-definition to the file, resp. /all/ files where one wants that (and refreshes the local org-setting, after changing). But, as far as the org-internal browsing is concerned (without exporting), I cannot easily follow those ``symbolically defined'' links if I collect them in one specific central file. Note, if I export the orignal org-file as org-file, the newly exported orgfile has the links expanded and then visiting it with emacs allows to follow the links, but it's nice to have some fast browings while working on/reading the original files. Martin
Re: [O] external/central ``macro'' definitions (for instance link abbrev's)?
On Saturday, 26 Mar 2016 at 13:53, Martin Steffen wrote: [...] > I realize that my original post was perhaps unprecise. What I was looking > after is this ``awareness'' of those definitions (using the #+INCLUDE > mechanism) /not just/ for export. I was missing it Ah, I see. Yes, I believe that functionality is not present in org. What you can do is define the link types in elisp instead but these would be global definitions... cf. org-add-link-type. -- : Eric S Fraga (0xFFFCF67D), Emacs 25.0.92.1, Org release_8.3.4-668-g809a83