mirror of
https://git.savannah.gnu.org/git/emacs/org-mode.git
synced 2024-11-21 06:55:35 +00:00
Release 4.33
This commit is contained in:
parent
9b9f2f6070
commit
7cde0aa391
16
README
16
README
@ -1,18 +1,4 @@
|
||||
The is the distribution of org-mode, version 3.14
|
||||
The is a distribution of org-mode
|
||||
|
||||
The homepage of org-mode is at http://www.astro.uva.nl/~domnik/Tools/org/
|
||||
|
||||
INSTALLATION
|
||||
------------
|
||||
|
||||
The installation instructions are in the documentation, org.pdf
|
||||
|
||||
FILES IN THE DISTRIBUTION
|
||||
-------------------------
|
||||
|
||||
org.el The Emacs lisp code
|
||||
org.texi Documentation source file
|
||||
org.pdf Documentation in PDF format
|
||||
org Documentation in Info format
|
||||
orgcard.pdf Refcard, PDF format
|
||||
orgcard.tex TeX source for refcard.pdf
|
||||
|
134
org-publish.el
134
org-publish.el
@ -6,7 +6,7 @@
|
||||
;; Keywords: hypermedia, outlines
|
||||
;; Version:
|
||||
|
||||
;; $Id: org-publish.el,v 1.61 2006/05/19 12:03:51 dto Exp $
|
||||
;; $Id: org-publish.el,v 1.64 2006/05/19 19:45:34 dto Exp dto $
|
||||
|
||||
;; This file is free software; you can redistribute it and/or modify
|
||||
;; it under the terms of the GNU General Public License as published by
|
||||
@ -152,11 +152,8 @@
|
||||
|
||||
;;; Code:
|
||||
|
||||
;; these lines get code for function "eshell/cp" loaded
|
||||
(require 'eshell)
|
||||
(require 'esh-maint)
|
||||
(require 'em-unix)
|
||||
(require 'org)
|
||||
(eval-when-compile
|
||||
(require 'cl))
|
||||
|
||||
(defgroup org-publish nil
|
||||
"Options for publishing a set of Org-mode and related files."
|
||||
@ -315,60 +312,35 @@ whether file should be published."
|
||||
(let ((timestamp (org-publish-timestamp-filename filename)))
|
||||
(set-file-times timestamp)))
|
||||
|
||||
;;;; Getting project information out of org-publish-project-alist
|
||||
|
||||
;;;; Utilities
|
||||
(defun org-publish-meta-project-p (element)
|
||||
"Tell whether an ELEMENT of org-publish-project-alist is a metaproject."
|
||||
(plist-get (cdr element) :components))
|
||||
|
||||
|
||||
(defun org-publish-get-project (project-name)
|
||||
"Return project object for project PROJECT-NAME."
|
||||
(let ((project (assoc project-name org-publish-project-alist)))
|
||||
(if project
|
||||
(cdr project)
|
||||
nil)))
|
||||
|
||||
|
||||
(defun org-publish-get-project-component (project-name component-name)
|
||||
"Return plist for project component COMPONENT-NAME within project PROJECT-NAME."
|
||||
(let* ((components (org-publish-get-project project-name))
|
||||
(c nil)
|
||||
(plist nil))
|
||||
(while (setq c (pop components))
|
||||
(when (and (stringp (car c)) (string= component-name (car c)))
|
||||
(setq plist (cdr c))))
|
||||
plist))
|
||||
|
||||
|
||||
(defun org-publish-composite-project-p (element)
|
||||
"Tell whether an ELEMENT of org-publish-project-alist is composite."
|
||||
(listp (car (cdr element))))
|
||||
|
||||
|
||||
(defun org-publish-iterate-project-plists (action &optional project-name)
|
||||
"Call function ACTION for each project component.
|
||||
ACTION should accept two arguments: the name of the enclosing
|
||||
project, and the property list associated with the project
|
||||
component. If PROJECT-NAME is set, iterate only over components
|
||||
of that project."
|
||||
(let ((alist (if project-name
|
||||
`((,project-name ,@(org-publish-get-project project-name)))
|
||||
(defun org-publish-get-plists (&optional project-name)
|
||||
"Return a list of property lists for project PROJECT-NAME.
|
||||
When argument is not given, return all property lists for all projects."
|
||||
(let ((alist (if project-name
|
||||
(list (assoc project-name org-publish-project-alist))
|
||||
org-publish-project-alist))
|
||||
(project nil))
|
||||
(project nil)
|
||||
(plists nil))
|
||||
(while (setq project (pop alist))
|
||||
(if (org-publish-composite-project-p project)
|
||||
;;
|
||||
;; handle composite project
|
||||
(let ((components (cdr project))
|
||||
(c nil))
|
||||
(while (setq c (pop components))
|
||||
(let ((plist (cdr c)))
|
||||
(funcall action (car project) plist))))
|
||||
;;
|
||||
;; handle normal project
|
||||
(let ((plist (cdr project)))
|
||||
(funcall action (car project) plist))))))
|
||||
|
||||
|
||||
(if (org-publish-meta-project-p project)
|
||||
;; meta project
|
||||
(let* ((components (plist-get (cdr project) :components))
|
||||
(components-plists (mapcar 'org-publish-get-plists components)))
|
||||
(setq plists (append plists components-plists)))
|
||||
;; normal project
|
||||
(let ((p (cdr project)))
|
||||
(setq p (plist-put p :project-name (car project)))
|
||||
(setq plists (append plists (list (cdr project)))))))
|
||||
;;
|
||||
plists))
|
||||
|
||||
|
||||
(defun org-publish-get-base-files (plist &optional exclude-regexp)
|
||||
"Return a list of all files in project defined by PLIST.
|
||||
If EXCLUDE-REGEXP is set, this will be used to filter out
|
||||
@ -401,22 +373,24 @@ matching filenames."
|
||||
Filename should contain full path. Returns name of project, or
|
||||
nil if not found."
|
||||
(let ((found nil))
|
||||
(org-publish-iterate-project-plists
|
||||
(lambda (project-name project-plist)
|
||||
(let ((files (org-publish-get-base-files project-plist)))
|
||||
(mapcar
|
||||
(lambda (plist)
|
||||
(let ((files (org-publish-get-base-files plist)))
|
||||
(if (member (expand-file-name filename) files)
|
||||
(setq found project-name)))))
|
||||
(setq found (plist-get plist :project-name)))))
|
||||
(org-publish-get-plists))
|
||||
found))
|
||||
|
||||
|
||||
(defun org-publish-get-plist-from-filename (filename)
|
||||
"Return publishing configuration plist for file FILENAME."
|
||||
(let ((found nil))
|
||||
(org-publish-iterate-project-plists
|
||||
(lambda (project-name project-plist)
|
||||
(let ((files (org-publish-get-base-files project-plist)))
|
||||
(mapcar
|
||||
(lambda (plist)
|
||||
(let ((files (org-publish-get-base-files plist)))
|
||||
(if (member (expand-file-name filename) files)
|
||||
(setq found project-plist)))))
|
||||
(setq found plist))))
|
||||
(org-publish-get-plists))
|
||||
found))
|
||||
|
||||
|
||||
@ -427,6 +401,7 @@ nil if not found."
|
||||
"Publish an org file to HTML.
|
||||
PLIST is the property list for the given project.
|
||||
FILENAME is the filename of the org file to be published."
|
||||
(require 'org)
|
||||
(let* ((arg (plist-get plist :headline-levels)))
|
||||
(progn
|
||||
(find-file filename)
|
||||
@ -439,11 +414,15 @@ FILENAME is the filename of the org file to be published."
|
||||
"Publish a file with no transformation of any kind.
|
||||
PLIST is the property list for the given project.
|
||||
FILENAME is the filename of the file to be published."
|
||||
;; make sure eshell/cp code is loaded
|
||||
(require 'eshell)
|
||||
(require 'esh-maint)
|
||||
(require 'em-unix)
|
||||
(let ((destination (file-name-as-directory (plist-get plist :publishing-directory))))
|
||||
(eshell/cp filename destination)))
|
||||
|
||||
|
||||
;;;; Publishing files, projects, and indices
|
||||
;;;; Publishing files, sets of files, and indices
|
||||
|
||||
|
||||
(defun org-publish-file (filename)
|
||||
@ -458,8 +437,8 @@ FILENAME is the filename of the file to be published."
|
||||
(org-publish-update-timestamp filename))))
|
||||
|
||||
|
||||
(defun org-publish-project-plist (plist)
|
||||
"Publish all base files in project defined by PLIST.
|
||||
(defun org-publish-plist (plist)
|
||||
"Publish all files in set defined by PLIST.
|
||||
If :auto-index is set, publish the index too."
|
||||
(let* ((exclude-regexp (plist-get plist :exclude))
|
||||
(publishing-function (or (plist-get plist :publishing-function) 'org-publish-org-to-html))
|
||||
@ -482,7 +461,7 @@ FILENAME is the filename of the file to be published."
|
||||
|
||||
|
||||
(defun org-publish-org-index (plist &optional index-filename)
|
||||
"Create an index of pages in project PLIST.
|
||||
"Create an index of pages in set defined by PLIST.
|
||||
Optionally set the filename of the index with INDEX-FILENAME;
|
||||
default is 'index.org'."
|
||||
(let* ((dir (file-name-as-directory (plist-get plist :base-directory)))
|
||||
@ -505,7 +484,12 @@ default is 'index.org'."
|
||||
"]]\n")))))
|
||||
(write-file index-filename)
|
||||
(kill-buffer (current-buffer)))))
|
||||
|
||||
|
||||
|
||||
;(defun org-publish-meta-index (meta-plist &optional index-filename)
|
||||
; "Create an index for a metaproject."
|
||||
; (let* ((plists (
|
||||
|
||||
|
||||
;;;; Interactive publishing functions
|
||||
|
||||
@ -514,11 +498,9 @@ default is 'index.org'."
|
||||
(defun org-publish (project-name &optional force)
|
||||
"Publish the project PROJECT-NAME."
|
||||
(interactive "sProject name: \nP")
|
||||
(let ((org-publish-use-timestamps-flag (if force nil t)))
|
||||
(org-publish-iterate-project-plists
|
||||
(lambda (ignore project-plist)
|
||||
(org-publish-project-plist project-plist))
|
||||
project-name)))
|
||||
(let ((org-publish-use-timestamps-flag (if force nil t))
|
||||
(plists (org-publish-get-plists project-name)))
|
||||
(mapcar 'org-publish-plist plists)))
|
||||
|
||||
|
||||
;;;###autoload
|
||||
@ -549,11 +531,9 @@ With prefix argument, force publish the file."
|
||||
With prefix argument, force publish all files."
|
||||
(interactive "P")
|
||||
(let ((org-publish-use-timestamps-flag
|
||||
(if force nil t)))
|
||||
(org-publish-iterate-project-plists
|
||||
(lambda (project-name project-plist)
|
||||
(org-publish-project-plist project-plist)))))
|
||||
|
||||
(if force nil t))
|
||||
(plists (org-publish-get-plists)))
|
||||
(mapcar 'org-publish-plist plists)))
|
||||
|
||||
|
||||
|
||||
|
346
org.texi
346
org.texi
@ -5,7 +5,7 @@
|
||||
@c @setfilename ../info/org
|
||||
@settitle Org Mode Manual
|
||||
|
||||
@set VERSION 4.30
|
||||
@set VERSION 4.33
|
||||
@set DATE May 2006
|
||||
|
||||
@dircategory Emacs
|
||||
@ -85,7 +85,7 @@ Software Foundation raise funds for GNU development.''
|
||||
* Tags:: Tagging headlines and matching sets of tags
|
||||
* Agenda views:: Collecting information into views
|
||||
* Exporting:: Sharing and publishing of notes
|
||||
* Publishing::
|
||||
* Publishing:: Create a web site of linked Org-mode files
|
||||
* Miscellaneous:: All the rest which did not fit elsewhere
|
||||
* Index:: The fast road to specific information
|
||||
* Key Index:: Key bindings and where they are described
|
||||
@ -209,9 +209,9 @@ Configuration
|
||||
* Project alist:: The central configuration variable
|
||||
* File sources and destinations:: From here to there
|
||||
* Selecting files:: What files are part of the project?
|
||||
* Publishing action::
|
||||
* Publishing action:: Setting the function doing the publishing
|
||||
* Publishing options:: Tweaking HTML export
|
||||
* Links:: Linking between files of a project
|
||||
* Publishing links:: Which links keep working after publishing?
|
||||
* Project page index:: Publishing a list of project files
|
||||
|
||||
Sample configuration
|
||||
@ -555,7 +555,7 @@ creation of a new headline, use a prefix arg, or first press @key{RET}
|
||||
to get to the beginning of the next line. When this command is used in
|
||||
the middle of a line, the line is split and the rest of the line becomes
|
||||
the new headline. If the command is used at the beginning of a
|
||||
headline, the new headline is created before the current line. It at
|
||||
headline, the new headline is created before the current line. If at
|
||||
the beginning of any other line, the content of that line is made the
|
||||
new heading.
|
||||
@kindex M-S-@key{RET}
|
||||
@ -658,7 +658,7 @@ If the match is in a headline, the headline is made visible. If the
|
||||
match is in the body of an entry, headline and body are made visible.
|
||||
In order to provide minimal context, also the full hierarchy of
|
||||
headlines above the match is shown, as well as the headline following
|
||||
the match. Each match is also highlighted, the highlights disappear
|
||||
the match. Each match is also highlighted; the highlights disappear
|
||||
when the buffer is changed with an editing command.
|
||||
@end table
|
||||
@noindent
|
||||
@ -676,7 +676,7 @@ For example:
|
||||
@noindent will define the key @kbd{C-c a f} as a shortcut for creating
|
||||
a sparse tree matching the string @samp{FIXME}.
|
||||
|
||||
Other commands are using sparse trees as well. For example @kbd{C-c
|
||||
Other commands use sparse trees as well. For example @kbd{C-c
|
||||
C-v} creates a sparse TODO tree (@pxref{TODO basics}).
|
||||
|
||||
@kindex C-c C-x v
|
||||
@ -699,7 +699,7 @@ part of the document and print the resulting file.
|
||||
|
||||
Headlines define both the structure of the Org-mode file, and also lists
|
||||
(for example, TODO items (@pxref{TODO items}) should be created using
|
||||
headline levels). However, when taking notes, the plain text is
|
||||
headline levels). When taking notes, however, the plain text is
|
||||
sometimes easier to read with hand-formatted lists. Org-mode supports
|
||||
editing such lists, and the HTML exporter (@pxref{Exporting}) does
|
||||
parse and format them.
|
||||
@ -710,7 +710,7 @@ bullet, lines must be indented or they will be seen as top-level
|
||||
headlines. Also, when you are hiding leading stars to get a clean
|
||||
outline view, plain list items starting with a star are visually
|
||||
indistinguishable from true headlines. In short: even though @samp{*}
|
||||
is supported, it may be better to not use it for plain list items} as
|
||||
is supported, it may be better not to use it for plain list items} as
|
||||
bullets. Ordered list items start with @samp{1.} or @samp{1)}. Items
|
||||
belonging to the same list must have the same indentation on the first
|
||||
line. In particular, if an ordered list reaches number @samp{10.}, then
|
||||
@ -735,18 +735,18 @@ But in the end, not individual scenes matter but the film as a whole.
|
||||
@end example
|
||||
|
||||
Org-mode supports these lists by tuning filling and wrapping commands
|
||||
to correctly deal with them.
|
||||
to deal with them correctly.
|
||||
|
||||
@cindex checkboxes
|
||||
Every item in a plain list can be made a checkbox by starting it with
|
||||
the string @samp{[_]}. The checkbox status can conveniently be toggled
|
||||
the string @samp{[ ]}. The checkbox status can conveniently be toggled
|
||||
with @kbd{C-c C-c}.
|
||||
|
||||
@example
|
||||
* Shopping list
|
||||
- [_] Milk
|
||||
- [X] Butter
|
||||
- [_] bred
|
||||
* Stupid mistakes when distributing a new version
|
||||
- [ ] update also Emacs CVS
|
||||
- [X] forget to update index.html on the website
|
||||
- [X] leaving a `(debug)' form in the code
|
||||
@end example
|
||||
|
||||
The following commands act on items when the cursor is in the first line
|
||||
@ -757,8 +757,8 @@ of an item (the line with the bullet or number).
|
||||
@item @key{TAB}
|
||||
Items can be folded just like headline levels if you set the variable
|
||||
@code{org-cycle-include-plain-lists}. The level of an item is then
|
||||
given by the indentation of the bullet/number. However, items are
|
||||
always subordinate to real headlines, the hierarchies remain
|
||||
given by the indentation of the bullet/number. Items are always
|
||||
subordinate to real headlines, however; the hierarchies remain
|
||||
completely separated.
|
||||
@kindex M-@key{RET}
|
||||
@item M-@key{RET}
|
||||
@ -769,8 +769,15 @@ item. If this command is executed in the @emph{whitespace before a bullet or
|
||||
number}, the new item is created @emph{before} the current item. If the
|
||||
command is executed in the white space before the text that is part of
|
||||
an item but does not contain the bullet, a bullet is added to the
|
||||
current line. If the current item has a checkbox, so will the newly
|
||||
created item.
|
||||
current line.
|
||||
@kindex M-S-@key{RET}
|
||||
@item M-S-@key{RET}
|
||||
Insert a new item with a checkbox.
|
||||
@kindex S-@key{up}
|
||||
@kindex S-@key{down}
|
||||
@item S-@key{up}
|
||||
@itemx S-@key{down}
|
||||
Jump to the previous/next item in the current list.
|
||||
@kindex M-S-@key{up}
|
||||
@kindex M-S-@key{down}
|
||||
@item M-S-@key{up}
|
||||
@ -864,7 +871,7 @@ If not, lines are split at whitespace into fields. You can use a prefix
|
||||
argument to indicate the minimum number of consecutive spaces required
|
||||
to identify a field separator (default: just one).@*
|
||||
If there is no active region, this command creates an empty Org-mode
|
||||
table. However, it's easier to just start typing, like
|
||||
table. But it's easier just to start typing, like
|
||||
@kbd{|Name|Phone|Age @key{RET} |- @key{TAB}}.
|
||||
|
||||
@tsubheading{Re-aligning and field motion}
|
||||
@ -1048,7 +1055,7 @@ it off with
|
||||
(setq org-enable-table-editor nil)
|
||||
@end lisp
|
||||
|
||||
@noindent The only table command which then still works is
|
||||
@noindent Then the only table command that still works is
|
||||
@kbd{C-c C-c} to do a manual re-align.
|
||||
|
||||
@node Narrow columns, Table calculations, Built-in table editor, Tables
|
||||
@ -1167,8 +1174,8 @@ described below, see @ref{Advanced features}.
|
||||
A formula can contain an optional mode string after a semicolon. This
|
||||
string consists of flags to influence calc's modes@footnote{By
|
||||
default, Org-mode uses the standard calc modes (precision 12, angular
|
||||
units degrees, fraction and symbolic modes off). However, the display
|
||||
format has been changed to @code{(float 5)} to keep tables compact.
|
||||
units degrees, fraction and symbolic modes off). The display format,
|
||||
however, has been changed to @code{(float 5)} to keep tables compact.
|
||||
The default settings can be configured using the variable
|
||||
@code{org-calc-default-modes}.} during execution, e.g. @samp{p20} to
|
||||
switch the internal precision to 20 digits, @samp{n3}, @samp{s3},
|
||||
@ -1194,13 +1201,13 @@ taylor($3,x=7,2) @r{taylor series of $3, at x=7, second degree}
|
||||
|
||||
@node Lisp formulas, Column formulas, Formula syntax, Table calculations
|
||||
@subsection Emacs Lisp forms as formulas
|
||||
@cindex Lisp forms, as table fomulas
|
||||
@cindex Lisp forms, as table formulas
|
||||
|
||||
It is also possible to write a formula in Emacs lisp, this can be useful
|
||||
It is also possible to write a formula in Emacs lisp; this can be useful
|
||||
for string manipulation and control structures. If a formula starts
|
||||
with a single quote followed by an opening parenthesis, then it is
|
||||
evaluated as a lisp form. The evaluation should return either a string
|
||||
or a number. Just like with @file{calc} formulas, you can provide a
|
||||
or a number. Just as with @file{calc} formulas, you can provide a
|
||||
format specifier after a semicolon. A few examples:
|
||||
|
||||
@example
|
||||
@ -1280,7 +1287,7 @@ features:
|
||||
|
||||
@noindent @b{Important}: Please note that for these special tables,
|
||||
recalculating the table with @kbd{C-u C-c *} will only affect rows
|
||||
which are marked @samp{#} or @samp{*}, and named fields. The column
|
||||
that are marked @samp{#} or @samp{*}, and named fields. The column
|
||||
formulas are not applied in rows with empty first field.
|
||||
|
||||
@cindex marking characters, tables
|
||||
@ -1377,7 +1384,7 @@ Detailed information will be displayed.
|
||||
@node Appetizer, , Editing/debugging formulas, Table calculations
|
||||
@subsection Appetizer
|
||||
|
||||
Finally, just to wet your appetite on what can be done with the fantastic
|
||||
Finally, just to whet your appetite on what can be done with the fantastic
|
||||
@file{calc} package, here is a table that computes the Taylor series
|
||||
for a couple of functions (homework: try that with Excel :-)
|
||||
|
||||
@ -1403,7 +1410,7 @@ for a couple of functions (homework: try that with Excel :-)
|
||||
@cindex minor mode for tables
|
||||
|
||||
If you like the intuitive way the Org-mode table editor works, you
|
||||
might want to use it also in other modes like text-mode or mail-mode.
|
||||
might also want to use it in other modes like text-mode or mail-mode.
|
||||
The minor mode Orgtbl-mode makes this possible. You can always toggle
|
||||
the mode with @kbd{M-x orgtbl-mode}. To turn it on by default, for
|
||||
example in mail mode, use
|
||||
@ -1447,7 +1454,7 @@ possible.
|
||||
@cindex hyperlinks
|
||||
|
||||
Just like HTML, Org-mode provides links inside a file, and external
|
||||
links to other files, Usenet articles, emails and much more.
|
||||
links to other files, Usenet articles, emails, and much more.
|
||||
|
||||
@menu
|
||||
* Link format:: How links in Org-mode are formatted
|
||||
@ -1465,7 +1472,7 @@ links to other files, Usenet articles, emails and much more.
|
||||
@cindex format, of links
|
||||
|
||||
Org-mode will recognize plain URL-like links and activate them as
|
||||
clickable links. However, the general link format looks like this:
|
||||
clickable links. The general link format, however, looks like this:
|
||||
|
||||
@example
|
||||
[[link][description]] @r{or alternatively} [[link]]
|
||||
@ -1485,7 +1492,7 @@ If you place the cursor at the beginning or just behind the end of the
|
||||
displayed text and press @key{BACKSPACE}, you will remove the
|
||||
(invisible) bracket at that location. This makes the link incomplete
|
||||
and the internals are again displayed as plain text. Inserting the
|
||||
missing bracket does hide the link internals again. To show the
|
||||
missing bracket hides the link internals again. To show the
|
||||
internal structure of all links, use the menu entry
|
||||
@code{Org->Hyperlinks->Literal links}.
|
||||
|
||||
@ -1500,16 +1507,18 @@ the current file. Links such as @samp{[[My Target]]} or @samp{[[My
|
||||
Target][Find my target]]} lead to a text search in the current file.
|
||||
The link can be followed with @kbd{C-c C-o} when the cursor is on the
|
||||
link, or with a mouse click (@pxref{Handling links}). The preferred
|
||||
match for such a link is a dedicated target: The same string in double
|
||||
angular brackets. Targets may be located anywhere, often it is
|
||||
convenient to put them into a comment line, for example
|
||||
match for such a link is a dedicated target: the same string in double
|
||||
angular brackets. Targets may be located anywhere; often it is
|
||||
convenient to put them into a comment line. For example
|
||||
|
||||
@example
|
||||
# <<My Target>>
|
||||
@end example
|
||||
|
||||
@noindent In HTML export (@pxref{HTML export}), such targets will become
|
||||
named anchors for direct access through @samp{http} links.
|
||||
named anchors for direct access through @samp{http} links@footnote{Note
|
||||
that text before the first headline will never be exported, so the first
|
||||
such target must be after the first headline.}.
|
||||
|
||||
If no dedicated target exists, Org-mode will search for the words in the
|
||||
link. In the above example the search would be for @samp{my target}.
|
||||
@ -1580,30 +1589,35 @@ text search such that @samp{CamelCaseLink} is equivalent to
|
||||
@cindex MH-E links
|
||||
@cindex USENET links
|
||||
@cindex SHELL links
|
||||
@cindex Info links
|
||||
@cindex elisp links
|
||||
|
||||
Org-mode supports links to files, websites, Usenet and email messages;
|
||||
and BBDB database entries. External links are URL-like locators. The
|
||||
following list shows examples for each link type.
|
||||
Org-mode supports links to files, websites, Usenet and email messages,
|
||||
and BBDB database entries. External links are URL-like locators. They
|
||||
start with a short identifying string followed by a colon. There can be
|
||||
no space after the colon. The following list shows examples for each
|
||||
link type.
|
||||
|
||||
@example
|
||||
http://www.astro.uva.nl/~dominik @r{on the web}
|
||||
file:/home/dominik/images/jupiter.jpg @r{file, absolute path}
|
||||
file:papers/last.pdf @r{file, relative path}
|
||||
news:comp.emacs @r{Usenet link}
|
||||
mailto:adent@@galaxy.net @r{Mail link}
|
||||
vm:folder @r{VM folder link}
|
||||
vm:folder#id @r{VM message link}
|
||||
vm://myself@@some.where.org/folder#id @r{VM on remote machine}
|
||||
wl:folder @r{WANDERLUST folder link}
|
||||
wl:folder#id @r{WANDERLUST message link}
|
||||
mhe:folder @r{MH-E folder link}
|
||||
mhe:folder#id @r{MH-E message link}
|
||||
rmail:folder @r{RMAIL folder link}
|
||||
rmail:folder#id @r{RMAIL message link}
|
||||
gnus:group @r{GNUS group link}
|
||||
gnus:group#id @r{GNUS article link}
|
||||
bbdb:Richard Stallman @r{BBDB link}
|
||||
shell:ls *.org @r{A shell command}
|
||||
http://www.astro.uva.nl/~dominik @r{on the web}
|
||||
file:/home/dominik/images/jupiter.jpg @r{file, absolute path}
|
||||
file:papers/last.pdf @r{file, relative path}
|
||||
news:comp.emacs @r{Usenet link}
|
||||
mailto:adent@@galaxy.net @r{Mail link}
|
||||
vm:folder @r{VM folder link}
|
||||
vm:folder#id @r{VM message link}
|
||||
vm://myself@@some.where.org/folder#id @r{VM on remote machine}
|
||||
wl:folder @r{WANDERLUST folder link}
|
||||
wl:folder#id @r{WANDERLUST message link}
|
||||
mhe:folder @r{MH-E folder link}
|
||||
mhe:folder#id @r{MH-E message link}
|
||||
rmail:folder @r{RMAIL folder link}
|
||||
rmail:folder#id @r{RMAIL message link}
|
||||
gnus:group @r{GNUS group link}
|
||||
gnus:group#id @r{GNUS article link}
|
||||
bbdb:Richard Stallman @r{BBDB link}
|
||||
shell:ls *.org @r{A shell command}
|
||||
elisp:(find-file-other-frame "Elisp.org") @r{An elisp form to evaluate}
|
||||
@end example
|
||||
|
||||
A link should be enclosed in double brackets and may contain a
|
||||
@ -1618,7 +1632,7 @@ format}), for example:
|
||||
@cindex plain text external links
|
||||
Org-mode also finds external links in the normal text and activates them
|
||||
as links. If spaces must be part of the link (for example in
|
||||
@samp{bbdb:Richard Stallman}) or to remove ambiguities about the end of
|
||||
@samp{bbdb:Richard Stallman}), or you need to remove ambiguities about the end of
|
||||
the link, enclose them in angular brackets.
|
||||
|
||||
@node Handling links, Search options, External links, Hyperlinks
|
||||
@ -1637,7 +1651,7 @@ stored for later insertion into an Org-mode buffer (see below). For
|
||||
Org-mode files, if there is a @samp{<<target>>} at the cursor, the link
|
||||
points to the target. Otherwise it points to the current headline. For
|
||||
VM, RMAIL, WANDERLUST, MH-E, GNUS and BBDB buffers, the link will
|
||||
indicate to the current article/entry. For W3 and W3M buffers, the link
|
||||
indicate the current article/entry. For W3 and W3M buffers, the link
|
||||
goes to the current URL. For any other files, the link will point to
|
||||
the file, with a search string (@pxref{Search options}) pointing to the
|
||||
contents of the current line. If there is an active region, the
|
||||
@ -1680,7 +1694,7 @@ is used, if possible with @samp{~/} for your home directory. You can
|
||||
force an absolute path with two @kbd{C-u} prefixes.
|
||||
|
||||
@item C-c C-l @r{with cursor on existing link}
|
||||
When the cursor is on an existing link, @kbd{C-c C-l} allows to edit the
|
||||
When the cursor is on an existing link, @kbd{C-c C-l} allows you to edit the
|
||||
link and description parts of the link.
|
||||
|
||||
@cindex following links
|
||||
@ -1690,7 +1704,7 @@ Open link at point. This will launch a web browser for URLs (using
|
||||
@command{browse-url-at-point}), run vm/mh-e/wanderlust/rmail/gnus/bbdb
|
||||
for the corresponding links, and execute the command in a shell link.
|
||||
When the cursor is on an internal link, this commands runs the
|
||||
corresponding search. When the cursor is on a TAGS list in a headline,
|
||||
corresponding search. When the cursor is on a TAG list in a headline,
|
||||
it creates the corresponding TAGS view. If the cursor is on a time
|
||||
stamp, it compiles the agenda for that date. Furthermore, it will visit
|
||||
text files in @samp{file:} links with Emacs and select a suitable
|
||||
@ -1703,7 +1717,7 @@ override the default application and visit the file with Emacs, use a
|
||||
@kindex mouse-1
|
||||
@item mouse-2
|
||||
@itemx mouse-1
|
||||
On links, @kbd{mouse-2} will open the link just like @kbd{C-c C-o}
|
||||
On links, @kbd{mouse-2} will open the link just as @kbd{C-c C-o}
|
||||
would. Under Emacs 22, also @kbd{mouse-1} will follow a link.
|
||||
|
||||
@kindex mouse-3
|
||||
@ -1757,7 +1771,7 @@ Jump to line 255.
|
||||
Search for a link target @samp{<<My Target>>}, or do a text search for
|
||||
@samp{my target}, similar to the search in internal links, see
|
||||
@ref{Internal links}. In HTML export (@pxref{HTML export}), such a file
|
||||
link will become an html reference to the corresponding named anchor in
|
||||
link will become an HTML reference to the corresponding named anchor in
|
||||
the linked file.
|
||||
@item *My Target
|
||||
In an Org-mode file, restrict search to headlines.
|
||||
@ -1772,7 +1786,7 @@ sparse tree with the matches.
|
||||
|
||||
As a degenerate case, a file link with an empty file name can be used
|
||||
to search the current file. For example, @code{<file:::find me>} does
|
||||
a search for @samp{find me} in the current file, just like
|
||||
a search for @samp{find me} in the current file, just as
|
||||
@samp{[[find me]]} would.
|
||||
|
||||
@node Custom searches, Remember, Search options, Hyperlinks
|
||||
@ -1808,7 +1822,7 @@ store quick notes with little interruption of your work flow. See
|
||||
@uref{http://www.emacswiki.org/cgi-bin/wiki/RememberMode} for more
|
||||
information. The notes produced by @emph{Remember} can be stored in
|
||||
different ways, and Org-mode files are a good target. Org-mode allows
|
||||
to file away notes either to a default file, or directly to the correct
|
||||
you to file away notes either to a default file, or directly to the correct
|
||||
location in your Org-mode outline tree. The following customization
|
||||
will tell @emph{Remember} to use org files as target, and to create
|
||||
annotations compatible with Org-mode links.
|
||||
@ -1938,6 +1952,12 @@ Rotate the TODO state of the current item between
|
||||
|
||||
The same rotation can also be done ``remotely'' from the timeline and
|
||||
agenda buffers with the @kbd{t} command key (@pxref{Agenda commands}).
|
||||
@kindex S-@key{right}
|
||||
@kindex S-@key{left}
|
||||
@item S-@key{right}
|
||||
@itemx S-@key{left}
|
||||
Select the following/preceding TODO state, similar to cycling. Mostly
|
||||
useful if more than two TODO states are possible (@pxref{TODO extensions}).
|
||||
@kindex C-c C-v
|
||||
@cindex sparse tree, for TODO
|
||||
@item C-c C-v
|
||||
@ -2012,7 +2032,7 @@ of working on an item, for example:
|
||||
@end lisp
|
||||
|
||||
@cindex completion, of TODO keywords
|
||||
Changing these variables becomes only effective in a new Emacs session.
|
||||
Changing these variables only becomes effective in a new Emacs session.
|
||||
With this setup, the command @kbd{C-c C-t} will cycle an entry from
|
||||
TODO to FEEDBACK, then to VERIFY, and finally to DONE. You may also
|
||||
use a prefix argument to quickly select a specific state. For example
|
||||
@ -2081,7 +2101,7 @@ anywhere in the file:
|
||||
|
||||
@cindex DONE, final TODO keyword
|
||||
Remember that the last keyword must always mean that the item is DONE
|
||||
(you may use a different word, though). Also note that in each file,
|
||||
(although you may use a different word). Also note that in each file,
|
||||
only one of the two aspects of TODO keywords can be used. After
|
||||
changing one of these lines, use @kbd{C-c C-c} with the cursor still
|
||||
in the line to make the changes known to Org-mode@footnote{Org-mode
|
||||
@ -2122,7 +2142,7 @@ difference only in the agenda (@pxref{Weekly/Daily agenda}).
|
||||
@table @kbd
|
||||
@kindex @kbd{C-c ,}
|
||||
@item @kbd{C-c ,}
|
||||
Set the priority of the current item. The command prompts for a
|
||||
Set the priority of the current headline. The command prompts for a
|
||||
priority character @samp{A}, @samp{B} or @samp{C}. When you press
|
||||
@key{SPC} instead, the priority cookie is removed from the headline.
|
||||
The priorities can also be changed ``remotely'' from the timeline and
|
||||
@ -2132,10 +2152,9 @@ agenda buffer with the @kbd{,} command (@pxref{Agenda commands}).
|
||||
@kindex S-@key{down}
|
||||
@item S-@key{up}
|
||||
@itemx S-@key{down}
|
||||
Increase/decrease priority of current item. Note that these keys are
|
||||
also used to modify time stamps (@pxref{Creating timestamps}).
|
||||
Furthermore, these keys are also used by CUA-mode
|
||||
(@pxref{Conflicts}).
|
||||
Increase/decrease priority of current headline. Note that these keys
|
||||
are also used to modify time stamps (@pxref{Creating timestamps}).
|
||||
Furthermore, these keys are also used by CUA-mode (@pxref{Conflicts}).
|
||||
@end table
|
||||
|
||||
@node Timestamps, Tags, TODO items, Top
|
||||
@ -2165,15 +2184,15 @@ of an org-tree entry. Its presence allows entries to be shown on specific
|
||||
dates in the agenda (@pxref{Weekly/Daily agenda}). We distinguish:
|
||||
|
||||
@table @var
|
||||
@item Plain time stamp
|
||||
@cindex timestamp
|
||||
@item TIMESTAMP
|
||||
A simple time stamp just assigns a date/time to an item. This is just
|
||||
like writing down an appointment in a paper agenda, or like writing down
|
||||
an event in a diary, when you want to take not of when something
|
||||
happened. In the timeline and agenda displays, the headline of an entry
|
||||
associated with a plain time stamp will be shown exactly on that date.
|
||||
|
||||
@item TIMERANGE
|
||||
@item Time stamp range
|
||||
@cindex timerange
|
||||
Two time stamps connected by @samp{--} denote a time range. The
|
||||
headline will be shown on the first and last day of the range, and on
|
||||
@ -2185,7 +2204,7 @@ example:
|
||||
<2004-08-23 Mon>--<2004-08-26 Thu>
|
||||
@end example
|
||||
|
||||
@item SCHEDULED
|
||||
@item Time stamp with SCHEDULED keyword
|
||||
@cindex SCHEDULED keyword
|
||||
If a time stamp is preceded by the word @samp{SCHEDULED:}, it means you
|
||||
are planning to start working on that task on the given date. So this is
|
||||
@ -2200,7 +2219,7 @@ automatically be forwarded until completed.
|
||||
SCHEDULED: <2004-12-25 Sat>
|
||||
@end example
|
||||
|
||||
@item DEADLINE
|
||||
@item Time stamp with DEADLINE keyword
|
||||
@cindex DEADLINE keyword
|
||||
If a time stamp is preceded by the word @samp{DEADLINE:}, the task
|
||||
(most likely a TODO item) is supposed to be finished on that date, and
|
||||
@ -2214,6 +2233,12 @@ continuing until the entry is marked DONE. An example:
|
||||
The editor in charge is <bbdb:Ford Prefect>
|
||||
DEADLINE: <2004-02-29 Sun>
|
||||
@end example
|
||||
@item Time stamp with CLOSED keyword
|
||||
@cindex CLOSED keyword
|
||||
When @code{org-log-done} is non-nil, Org-mode will automatically insert
|
||||
a special time stamp each time a TODO entry is marked done
|
||||
(@pxref{Progress logging}). This time stamp is enclosed in square
|
||||
brackets instead of angular brackets.
|
||||
@end table
|
||||
|
||||
@node Creating timestamps, , Time stamps, Timestamps
|
||||
@ -2260,7 +2285,10 @@ Access the agenda for the date given by the time stamp at point
|
||||
|
||||
@kindex C-c C-d
|
||||
@item C-c C-d
|
||||
Insert @samp{DEADLINE} keyword along with a stamp.
|
||||
Insert @samp{DEADLINE} keyword along with a stamp. The insertion will
|
||||
happen in the line directly following the headline.
|
||||
@c FIXME Any CLOSED timestamp will be removed.????????
|
||||
|
||||
@kindex C-c C-w
|
||||
@cindex sparse tree, for deadlines
|
||||
@item C-c C-w
|
||||
@ -2272,7 +2300,9 @@ all deadlines due tomorrow.
|
||||
|
||||
@kindex C-c C-s
|
||||
@item C-c C-s
|
||||
Insert @samp{SCHEDULED} keyword along with a stamp.
|
||||
Insert @samp{SCHEDULED} keyword along with a stamp. The insertion will
|
||||
happen in the line directly following the headline. Any CLOSED
|
||||
timestamp will be removed.
|
||||
|
||||
@kindex S-@key{left}
|
||||
@kindex S-@key{right}
|
||||
@ -2350,9 +2380,9 @@ Choose date in calendar (only if nothing typed into minibuffer).
|
||||
@cindex matching, tags
|
||||
@cindex sparse tree, tag based
|
||||
|
||||
If you wish to implement a system to cross-correlate information, an
|
||||
excellent way is to assign @i{tags} to headline. Org-mode has
|
||||
extensive support for using tags.
|
||||
If you wish to implement a system of labels and contexts for
|
||||
cross-correlating information, an excellent way is to assign @i{tags} to
|
||||
headlines. Org-mode has extensive support for using tags.
|
||||
|
||||
Every headline can contain a list of tags, at the end of the headline.
|
||||
Tags are normal words containing letters, numbers, @samp{_}, and
|
||||
@ -2384,8 +2414,8 @@ the final heading will have the tags @samp{:WORK:}, @samp{:BOSS:},
|
||||
@samp{:NOTES:}, and @samp{:ACTION:}. When executing tag searches and
|
||||
Org-mode finds that a certain headline matches the search criterion, it
|
||||
will not check any sublevel headline, assuming that these likely also
|
||||
match, and that the list of matches can become very long. However, this
|
||||
may not be what you want, and you can influence inheritance and
|
||||
match, and that the list of matches can become very long. This may
|
||||
not be what you want, however, and you can influence inheritance and
|
||||
searching using the variables @code{org-use-tag-inheritance} and
|
||||
@code{org-tags-match-list-sublevels}.
|
||||
|
||||
@ -2394,25 +2424,75 @@ searching using the variables @code{org-use-tag-inheritance} and
|
||||
@cindex setting tags
|
||||
|
||||
@kindex M-@key{TAB}
|
||||
As Org-mode deals with plain text files, tags can simply be typed into
|
||||
the buffer. After a colon, @kbd{M-@key{TAB}} offers completion on all
|
||||
tags being used in the current buffer. There is also a special command
|
||||
for inserting tags:
|
||||
Tags can simply be typed into the buffer at the end of a headline.
|
||||
After a colon, @kbd{M-@key{TAB}} offers completion on tags. There is
|
||||
also a special command for inserting tags:
|
||||
|
||||
@table @kbd
|
||||
@kindex C-c C-c
|
||||
@item C-c C-c
|
||||
@cindex completion, of tags
|
||||
Enter new tags for the current headline. The minibuffer will prompt for
|
||||
a list of tags and offer completion with respect to all other tags used
|
||||
in the current buffer. Several tags, separated by colons, may be
|
||||
specified at the prompt. After pressing @key{RET}, the tags will be
|
||||
inserted and aligned to @code{org-tags-column}. When called with a
|
||||
@kbd{C-u} prefix, all tags in the current buffer will be aligned to that
|
||||
column, just to make things look nice. TAGS are automatically realigned
|
||||
after promotion, demotion, and TODO state changes (@pxref{TODO basics}).
|
||||
Enter new tags for the current headline. Org-mode will either offer
|
||||
completion or a special single-key interface for setting tags, see
|
||||
below. After pressing @key{RET}, the tags will be inserted and aligned
|
||||
to @code{org-tags-column}. When called with a @kbd{C-u} prefix, all
|
||||
tags in the current buffer will be aligned to that column, just to make
|
||||
things look nice. TAGS are automatically realigned after promotion,
|
||||
demotion, and TODO state changes (@pxref{TODO basics}).
|
||||
@end table
|
||||
|
||||
Org will support tag insertion based on a @emph{list of tags}. By
|
||||
default this list is constructed dynamically, containing all tags
|
||||
currently used in the buffer. You may also globally specify a hard list
|
||||
of tags with the variable @code{org-tag-alist}. Finally you can set
|
||||
the allowed tags for a given file with lines like
|
||||
|
||||
@example
|
||||
#+TAGS: @@WORK @@HOME @@TENNISCLUB
|
||||
#+TAGS: Laptop Car PC Sailboat
|
||||
@end example
|
||||
|
||||
The default method Org-mode uses to support setting tags is completion.
|
||||
However, it also implements a much better method: @emph{fast tag
|
||||
selection}. This method allows to select and deselect tags with a
|
||||
single key per tag. To function efficiently, you need to assign unique
|
||||
keys to all tags. This can be done globally with
|
||||
|
||||
@lisp
|
||||
(setq org-tag-alist '(("@@WORK" . ?w) ("@@HOME" . ?h) ("Laptop" . ?l)))
|
||||
@end lisp
|
||||
|
||||
@noindent or on a per-file basis with
|
||||
|
||||
@example
|
||||
#+TAGS: @@WORK(w) @@HOME(h) @@TENNISCLUB(t)
|
||||
#+TAGS: Laptop(l) Car(c) PC(p) Sailboat(s)
|
||||
@end example
|
||||
|
||||
@noindent Don't forget to press @kbd{C-c C-c} with the cursor in one of
|
||||
these lines to activate any changes.
|
||||
|
||||
If selection keys have been configured, pressing @kbd{C-c C-c} will
|
||||
automatically present you with a special interface, listing inherited
|
||||
tags, the tags of the current headline, and a list of all legal tags
|
||||
with corresponding keys. Pressing keys for the tags will add or remove
|
||||
them from the list of tags in the current line. @key{SPC} clears all
|
||||
tags for this line, @kbd{RET} accepts the modified set, and @kbd{C-g}
|
||||
aborts without installing changes. This method lets you assing tags to
|
||||
a headline with very few keys. With the above setup, you could clear
|
||||
the current tags and set @samp{@@HOME}, @samp{Laptop} and @samp{PC} tags
|
||||
with just the following keys: @kbd{C-c C-c @key{SPC} h l p @key{RET}}.
|
||||
|
||||
What if you have globally defined your preferred set of tags using the
|
||||
variable @code{org-tag-alist}, but would like to use a dynamic tag list
|
||||
in a specific file? Just add and empty TAGS option line to that file:
|
||||
|
||||
@example
|
||||
#+TAGS:
|
||||
@end example
|
||||
|
||||
|
||||
|
||||
@node Tag searches, , Setting tags, Tags
|
||||
@section Tag searches
|
||||
@cindex tag searches
|
||||
@ -2984,7 +3064,7 @@ on my keyboard.
|
||||
@item i
|
||||
Insert a new entry into the diary. Prompts for the type of entry
|
||||
(day, weekly, monthly, yearly, anniversary, cyclic) and creates a new
|
||||
entry in the diary, just like @kbd{i d} etc. would do in the calendar.
|
||||
entry in the diary, just as @kbd{i d} etc. would do in the calendar.
|
||||
The date is taken from the cursor position.
|
||||
|
||||
@tsubheading{Calendar commands}
|
||||
@ -3038,7 +3118,7 @@ visit org files will not be removed.
|
||||
|
||||
Org-mode documents can be exported into a variety of other formats. For
|
||||
printing and sharing of notes, ASCII export produces a readable and
|
||||
simple version of an Org-mode file. HTML export allows to publish a
|
||||
simple version of an Org-mode file. HTML export allows you to publish a
|
||||
notes file on the web, while the XOXO format provides a solid base for
|
||||
exchange with a broad range of other applications. To incorporate
|
||||
entries with associated times like deadlines or appointments into a
|
||||
@ -3131,13 +3211,26 @@ at a different level, specify it with a prefix argument. For example,
|
||||
creates two levels of headings and does the rest as items.
|
||||
|
||||
If you want to include HTML tags which should be interpreted as such,
|
||||
mark them with a @samp{@@} like in @samp{@@<b>bold text@@</b>}.
|
||||
mark them with @samp{@@} as in @samp{@@<b>bold text@@</b>}.
|
||||
Plain @samp{<} and @samp{>} are always transformed to @samp{<} and
|
||||
@samp{>} in HTML export.
|
||||
|
||||
@cindex links, in HTML export
|
||||
@cindex internal links, in HTML export
|
||||
@cindex external links, in HTML export
|
||||
Internal links (@pxref{Internal links}) will continue to work in HTML
|
||||
files only if they match a dedicated @samp{<<target>>}. Automatic links
|
||||
created by radio targets (@pxref{Radio targets}) will also work in the
|
||||
HTML file. Links to external files will still work if the HTML file is
|
||||
in the same directory as the Org-mode file. Links to other @file{.org}
|
||||
files will be translated into HTML links under the assumption that an
|
||||
HTML version also exists of the linked file. For information related to
|
||||
linking files while publishing them to a publishing directory see
|
||||
@ref{Publishing links}.
|
||||
|
||||
You can also give style information for the exported file. The HTML
|
||||
exporter asigns the following CSS classes to appropriate parts of the
|
||||
document - your style specifications may change these.
|
||||
exporter assigns the following CSS classes to appropriate parts of the
|
||||
document - your style specifications may change these:
|
||||
@example
|
||||
.todo @r{TODO keywords}
|
||||
.done @r{the DONE keyword}
|
||||
@ -3147,9 +3240,7 @@ document - your style specifications may change these.
|
||||
.target @r{target for links}
|
||||
@end example
|
||||
|
||||
|
||||
The
|
||||
default specification can be configured through the option
|
||||
The default style specification can be configured through the option
|
||||
@code{org-export-html-style}. If you want to use a file-local style,
|
||||
you may use file variables, best wrapped into a COMMENT section at the
|
||||
end of the outline tree. For example:
|
||||
@ -3370,7 +3461,7 @@ you can:
|
||||
@cindex section-numbers
|
||||
@cindex table of contents
|
||||
@cindex linebreak preservation
|
||||
@cindex quoted html tags
|
||||
@cindex quoted HTML tags
|
||||
@cindex fixed-width sections
|
||||
@cindex tables
|
||||
@cindex @TeX{}-like syntax for sub- and superscripts
|
||||
@ -3381,7 +3472,7 @@ H: @r{set the number of headline levels for export}
|
||||
num: @r{turn on/off section-numbers}
|
||||
toc: @r{turn on/off table of contents}
|
||||
\n: @r{turn on/off linebreak-preservation}
|
||||
@@: @r{turn on/off quoted html tags}
|
||||
@@: @r{turn on/off quoted HTML tags}
|
||||
:: @r{turn on/off fixed-width sections}
|
||||
|: @r{turn on/off tables}
|
||||
^: @r{turn on/off @TeX{}-like syntax for sub- and superscripts.}
|
||||
@ -3396,7 +3487,7 @@ Org-mode includes@footnote{@file{org-publish.el} is not yet part of
|
||||
emacs, so if you are using @file{org.el} as it comes with Emacs, you
|
||||
need to download this file separately. Also make sure org.el is at
|
||||
least version 4.27.} a publishing management system
|
||||
that allows you to configure automatic html conversion of
|
||||
that allows you to configure automatic HTML conversion of
|
||||
@emph{projects} composed of interlinked org files. This system is
|
||||
called @emph{org-publish}. You can also configure org-publish to
|
||||
automatically upload your exported HTML pages and related attachments,
|
||||
@ -3421,9 +3512,9 @@ and many other properties of a project.
|
||||
* Project alist:: The central configuration variable
|
||||
* File sources and destinations:: From here to there
|
||||
* Selecting files:: What files are part of the project?
|
||||
* Publishing action::
|
||||
* Publishing action:: Setting the function doing the publishing
|
||||
* Publishing options:: Tweaking HTML export
|
||||
* Links:: Linking between files of a project
|
||||
* Publishing links:: Which links keep working after publishing?
|
||||
* Project page index:: Publishing a list of project files
|
||||
@end menu
|
||||
|
||||
@ -3513,7 +3604,7 @@ You can write your own publishing function, but @code{org-publish}
|
||||
provides one for attachments (files that only need to be copied):
|
||||
@code{org-publish-attachment}.
|
||||
|
||||
@node Publishing options, Links, Publishing action, Configuration
|
||||
@node Publishing options, Publishing links, Publishing action, Configuration
|
||||
@subsection Options for the HTML exporter
|
||||
|
||||
The property list can be used to set many export options for the HTML
|
||||
@ -3551,10 +3642,10 @@ respective variable for details.
|
||||
|
||||
When a property is given a value in org-publish-project-alist, its
|
||||
setting overrides the value of the corresponding user variable (if any)
|
||||
during publishing. However, options set within a file (@pxref{Export
|
||||
options}) override everything.
|
||||
during publishing. options set within a file (@pxref{Export
|
||||
options}), however, override everything.
|
||||
|
||||
@node Links, Project page index, Publishing options, Configuration
|
||||
@node Publishing links, Project page index, Publishing options, Configuration
|
||||
@subsection Links between published files
|
||||
|
||||
To create a link from one Org-mode file to another, you would use
|
||||
@ -3569,7 +3660,7 @@ careful with relative pathnames, and provided you have also configured
|
||||
org-publish to upload the related files, these links will work
|
||||
too. @ref{Complex example} for an example of this usage.
|
||||
|
||||
@node Project page index, , Links, Configuration
|
||||
@node Project page index, , Publishing links, Configuration
|
||||
@subsection Project page index
|
||||
|
||||
The following properties may be used to control publishing of an
|
||||
@ -3824,6 +3915,10 @@ oddeven @r{allow all outline levels}
|
||||
These lines that the TODO keywords and their interpretation in the
|
||||
current file. The corresponding variables are @code{org-todo-keywords}
|
||||
and @code{org-todo-interpretation}.
|
||||
@item #+TAGS: TAG1(c1) TAG2(c2)
|
||||
These lines (several such lines are allowed) specify the legal tags in
|
||||
this file, and (potionally) the corresponding @emph{fast tag selection}
|
||||
keys. The corresponding variable is @code{org-tag-alist}.
|
||||
@item #+CATEGORY:
|
||||
This line sets the category for the agenda file. The category applies
|
||||
for all subsequent lines until the next @samp{#+CATEGORY} line, or the
|
||||
@ -3843,7 +3938,7 @@ The key @kbd{C-c C-c} has many purposes in org-mode, which are all
|
||||
mentioned scattered throughout this manual. One specific function of
|
||||
this key is to add @emph{tags} to a headline (@pxref{Tags}). In many
|
||||
other circumstances it means something like @emph{Hey Org-mode, look
|
||||
here and update according to what you see here}. Here is a summary what
|
||||
here and update according to what you see here}. Here is a summary of what
|
||||
this means in different contexts.
|
||||
|
||||
@itemize @minus
|
||||
@ -4094,7 +4189,7 @@ Would I let you down like that? If you must, you can do this
|
||||
org-link-format "<%s>")
|
||||
@end lisp
|
||||
|
||||
@item @b{When I am executing shell links I always get a
|
||||
@item @b{When I am executing shell/elisp links I always get a
|
||||
confirmation prompt and need to type @kbd{yes @key{RET}}, that's 4 key
|
||||
presses! Can I get rid of this?}@*
|
||||
@c
|
||||
@ -4105,10 +4200,11 @@ potentially dangerous commands. For example, imagine a link
|
||||
@samp{[[shell:rm -rf ~/*][Google Search]]}. In an Org-mode buffer, this
|
||||
command would look like @samp{Google Search}, but really it would remove
|
||||
your home directory. If you wish, you can make it easier to respond to
|
||||
the query by setting @code{org-confirm-shell-links} to @code{y-or-n-p}.
|
||||
Then a single @kbd{y} keypress will be enough to confirm shell links.
|
||||
It is also possible to turn off this check entirely, but I do not
|
||||
recommend to do this. Be warned.
|
||||
the query by setting @code{org-confirm-shell-link-function} and/or
|
||||
@code{org-confirm-elisp-link-function} to @code{y-or-n-p}. Then a
|
||||
single @kbd{y} keypress will be enough to confirm those links. It is
|
||||
also possible to turn off this check entirely, but I do not recommend to
|
||||
do this. Be warned.
|
||||
|
||||
@item @b{All these stars are driving me mad, I just find the Emacs
|
||||
outlines unreadable. Can't you just put white space and a single star as a
|
||||
@ -4213,7 +4309,7 @@ You may also select specific files with
|
||||
|
||||
If you now launch the calendar and press @kbd{d} to display a diary, the
|
||||
headlines of entries containing a timestamp, date range, schedule, or
|
||||
deadline referring to the selected date will be listed. Just like in
|
||||
deadline referring to the selected date will be listed. Just like
|
||||
Org-mode's agenda view, the diary for @emph{today} contains additional
|
||||
entries for overdue deadlines and scheduled items. See also the
|
||||
documentation of the @command{org-diary} function. Under XEmacs, it is
|
||||
@ -4253,14 +4349,14 @@ This package implements extended mouse functionality for Org-mode. It
|
||||
allows you to cycle visibility and to edit the document structure with
|
||||
the mouse. Best of all, it provides a context-sensitive menu on
|
||||
@key{mouse-3} that changes depending on the context of a mouse-click.
|
||||
@file{org-mouse.el} is freely avaliable at @url{http://www.cl.cam.ac.uk/~pz215/files/org-mouse.el}.
|
||||
@file{org-mouse.el} is freely available at @url{http://www.cl.cam.ac.uk/~pz215/files/org-mouse.el}.
|
||||
@cindex @file{org-publish.el}
|
||||
@item @file{org-publish.el} by David O'Toole
|
||||
This package provides facilities for publishing related sets of Org-mode
|
||||
files together with linked files like images as a webpages. It is
|
||||
highly configurable and can be used for other publishing purposes as
|
||||
well. As of Org-mode version 4.30, @file{org-publish.el} is part of
|
||||
the Org-mode distribution. However, it is not yet part of Emacs due to
|
||||
the Org-mode distribution. It is not yet part of Emacs, however, due to
|
||||
a pending copyright assignment. In the mean time, @file{org-publish.el}
|
||||
can be downloaded from David's site:
|
||||
@url{http://dto.freeshell.org/e/org-publish.el}.
|
||||
@ -4382,7 +4478,7 @@ Recalculating a table line applies the formulas from left to right.
|
||||
If a formula uses @emph{calculated} fields further down the row,
|
||||
multiple recalculation may be needed to get all fields consistent.
|
||||
@item
|
||||
Several words in a rom may @b{*be made bold*}, but this does not work if
|
||||
Several words in a row may @b{*be made bold*}, but this does not work if
|
||||
the string is distributed over two lines.
|
||||
@item
|
||||
The exporters work well, but could be made more efficient.
|
||||
@ -4427,6 +4523,8 @@ Kai Grossjohann pointed out key-binding conflicts caused by Org-mode.
|
||||
@item
|
||||
Stefan Monnier provided a patch to keep the Emacs-Lisp compiler happy.
|
||||
@item
|
||||
Todd Neal provided patches for links to Info files and elisp forms.
|
||||
@item
|
||||
Tim O'Callaghan suggested in-file links, search options for
|
||||
general file links, and TAGS.
|
||||
@item
|
||||
@ -4469,7 +4567,7 @@ system.
|
||||
John Wiegley wrote @file{emacs-wiki.el} and @file{planner.el}. The
|
||||
development of Org-mode was fully independent, and both systems are
|
||||
really different beasts in their basic ideas and implementation details.
|
||||
However, I have later looked at John's code and learned from his
|
||||
I later looked at John's code, however, and learned from his
|
||||
implementation of (i) links where the link itself is hidden and only a
|
||||
description is shown, and (ii) popping up a calendar to select a date.
|
||||
@item
|
||||
|
BIN
orgcard.pdf
BIN
orgcard.pdf
Binary file not shown.
11
orgcard.tex
11
orgcard.tex
@ -1,5 +1,5 @@
|
||||
% Reference Card for Org Mode
|
||||
\def\orgversionnumber{4.30}
|
||||
\def\orgversionnumber{4.33}
|
||||
\def\year{2006}
|
||||
%
|
||||
%**start of header
|
||||
@ -294,6 +294,7 @@ are preserved on all copies.
|
||||
\key{previous heading, same level}{C-c C-b}
|
||||
\key{backward to higher level heading}{C-c C-u}
|
||||
\key{jump to another place in document}{C-c C-j}
|
||||
\key{previous/next plain list item}{S-UP/DOWN$^3$}
|
||||
|
||||
\section{Structure Editing}
|
||||
|
||||
@ -380,7 +381,7 @@ To set archive location for current file, add a line like$^2$:
|
||||
\key{open file links in emacs (\kbd{C-u} : in emacs)}{C-c C-o}
|
||||
\key{open link at point (3: in emacs)}{mouse-2/3}
|
||||
%\key{open file links in emacs}{mouse-3}
|
||||
\key{record a position in mark ring}{C-c \%}
|
||||
%\key{record a position in mark ring}{C-c \%}
|
||||
\key{jump back to last followed link(s)}{C-c \&}
|
||||
|
||||
{\bf Internal Links}
|
||||
@ -397,16 +398,18 @@ To set archive location for current file, add a line like$^2$:
|
||||
\key{\kbd{file:papers/last.pdf}}{\rm file, relative}
|
||||
\key{\kbd{file:projects.org::*that text}}{\rm find headline}
|
||||
\key{\kbd{file:projects.org::find me}}{\rm find tgt/string}
|
||||
\key{\kbd{file:projects.org::/regexp/}}{\rm regexp search}
|
||||
%\key{\kbd{file:projects.org::/regexp/}}{\rm regexp search}
|
||||
\key{\kbd{http://www.astro.uva.nl/~dominik}}{\rm on the web}
|
||||
\key{\kbd{mailto:adent@galaxy.net}}{\rm EMail address}
|
||||
\key{\kbd{news:comp.emacs}}{\rm Usenet group}
|
||||
\key{\kbd{bbdb:Richard Stallman}}{\rm BBDB person}
|
||||
\key{\kbd{shell:ls *.org}}{\rm shell command}
|
||||
\key{\kbd{gnus:group}}{\rm GNUS group}
|
||||
\key{\kbd{gnus:group\#id}}{\rm GNUS message}
|
||||
\key{\kbd{vm|wl|mhe|rmail:folder}}{\rm Mail folder}
|
||||
\key{\kbd{vm|wl|mhe|rmail:folder\#id}}{\rm Mail message}
|
||||
\key{\kbd{info:emacs:Regexps}}{\rm Info file:node}
|
||||
\key{\kbd{shell:ls *.org}}{\rm shell command}
|
||||
\key{\kbd{elisp:(calendar)}}{\rm elisp form}
|
||||
\metax{\kbd{[[external link][description]]}}{\rm optional link text}
|
||||
%\key{\kbd{vm://myself@some.where.org/folder\#id}}{\rm VM remote}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user