Release 4.36

This commit is contained in:
Carsten Dominik 2008-01-31 11:31:59 +01:00
parent 63f95c5c41
commit 9cf9c9f451
7 changed files with 836 additions and 470 deletions

257
org
View File

@ -5,7 +5,7 @@ START-INFO-DIR-ENTRY
* Org Mode: (org). outline-based notes management and organizer
END-INFO-DIR-ENTRY
This manual is for Org-mode (version 4.34).
This manual is for Org-mode (version 4.36).
Copyright (C) 2004, 2005, 2006 Free Software Foundation
@ -27,7 +27,7 @@ File: org, Node: Top, Next: Introduction, Prev: (dir), Up: (dir)
Org Mode Manual
***************
This manual is for Org-mode (version 4.34).
This manual is for Org-mode (version 4.36).
Copyright (C) 2004, 2005, 2006 Free Software Foundation
@ -1102,7 +1102,7 @@ applying the equation.
Instead of typing an equation into the field, you may also use the
command `C-c ='. It prompts for a formula (with default taken from the
`#+TBLFM:' line) and applies it to the current field. A numerical
prefix (e.g. `C-5 C-c =') will apply it to that many subsequent fields
prefix (e.g. `C-5 C-c =') will apply it to that many consecutive fields
in the current column.
To recompute all the fields in a line, use the command `C-c *'. It
@ -1333,7 +1333,7 @@ instead of `[[link][description]]' and `link' is displayed instead of
`[[link]]'. Links will be highlighted in the face `org-link', which by
default is an underlined face. You can directly edit the visible part
of a link. Note that this can be either the `link' part (if there is
not description) or the `description' part. To edit also the invisible
no description) or the `description' part. To edit also the invisible
`link' part, use `C-c C-l' with the cursor on the link.
If you place the cursor at the beginning or just behind the end of
@ -1977,7 +1977,7 @@ the agenda (*note Weekly/Daily agenda::). We distinguish:
PLAIN TIME STAMP
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
writing down an event in a diary, when you want to take note 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.
@ -2202,39 +2202,56 @@ allowed tags for a given file with lines like
#+TAGS: @WORK @HOME @TENNISCLUB
#+TAGS: Laptop Car PC Sailboat
The default method Org-mode uses to support setting tags is
completion. However, it also implements a much better method: _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
The default support method is minibuffer completion. However,
Org-mode also implements a much better method: _fast tag selection_.
This method allows to select and deselect tags with a single key per
tag. To function efficiently, you should assign unique keys to all
tags. This can be done globally with
(setq org-tag-alist '(("@WORK" . ?w) ("@HOME" . ?h) ("Laptop" . ?l)))
or on a per-file basis with
#+TAGS: @WORK(w) @HOME(h) @TENNISCLUB(t)
#+TAGS: Laptop(l) Car(c) PC(p) Sailboat(s)
#+TAGS: @WORK(w) @HOME(h) @TENNISCLUB(t) Laptop(l) PC(p)
You can also group together tags that are mutually exclusive. With
curly braces(1)
#+TAGS: { @WORK(w) @HOME(h) @TENNISCLUB(t) } Laptop(l) PC(p)
you indicate that at most one of `@WORK', `@HOME', and `@SAILBOAT'
should be selected.
Don't forget to press `C-c C-c' with the cursor in one of these lines
to activate any changes.
If selection keys have been configured, pressing `C-c C-c' will
If at least one tag has a selection key, pressing `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. <SPC> clears all tags
for this line, `RET' accepts the modified set, and `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 `@HOME', `Laptop' and `PC' tags with just the following
keys: `C-c C-c <SPC> h l p <RET>'.
with corresponding keys(2). Pressing keys for the tags will add or
remove them from the list of tags in the current line. Selecting a tag
in a group of mutually exclusive tags will turn off any other tags from
that group. <SPC> clears all tags for this line, `RET' accepts the
modified set, and `C-g' aborts without installing changes. This method
lets you assign tags to a headline with very few keys. With the above
setup, you could clear the current tags and set `@HOME', `Laptop' and
`PC' tags with just the following keys: `C-c C-c <SPC> h l p <RET>'.
Switching from `@HOME' to `@WORK' would be done with `C-c C-c w <RET>'.
What if you have globally defined your preferred set of tags using
the variable `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:
in a specific file? Just add an empty TAGS option line to that file:
#+TAGS:
---------- Footnotes ----------
(1) In `org-mode-alist' use `'(:startgroup)' and `'(:endgroup)',
respectively. Several groups are allowed.
(2) Keys will automatically assigned to tags which have no
configured keys.

File: org, Node: Tag searches, Prev: Setting tags, Up: Tags
@ -2840,7 +2857,7 @@ File: org, Node: ASCII export, Next: HTML export, Prev: Exporting, Up: Expor
9.1 ASCII export
================
ASCII export produces an simple and very readable version of an Org-mode
ASCII export produces a simple and very readable version of an Org-mode
file.
`C-c C-x a'
@ -2860,7 +2877,13 @@ example,
C-1 C-c C-x a
creates only top level headlines and does the rest as items.
creates only top level headlines and does the rest as items. When
headlines are converted to items, the indentation of the text following
the headline is changed to fit nicely under the item. This is done with
the assumption that the first bodyline indicates the base indenation of
the body text. Any indenation larger than this is adjusted to preserve
the layout relative to the first line. Should there be lines with less
indentation than the first, these are left alone.

File: org, Node: HTML export, Next: XOXO export, Prev: ASCII export, Up: Exporting
@ -2868,9 +2891,9 @@ File: org, Node: HTML export, Next: XOXO export, Prev: ASCII export, Up: Exp
9.2 HTML export
===============
Org-mode contains an HTML exporter with extensive HTML formatting, in
ways similar to John Grubers _markdown_ language, but with additional
support for tables.
Org-mode contains an HTML (XHTML 1.0 strict) exporter with extensive
HTML formatting, in ways similar to John Grubers _markdown_ language,
but with additional support for tables.
`C-c C-x h'
Export as HTML file `myfile.html'.
@ -3063,6 +3086,9 @@ formatted output.
`C-c :'
Toggle fixed-width for entry (QUOTE) or region, see below.
* A double backslash _at the end of a line_ enforces a line break at
this position.
If these conversions conflict with your habits of typing ASCII text,
they can all be turned off with corresponding variables (see the
customization group `org-export-general', and the following section
@ -3167,17 +3193,15 @@ forms:
or
("project-name"
("component1" :property value :property value ...)
("component2" :property value :property value ...)
...)
("project-name" :components ("project-name" "project-name" ...))
In both cases, projects are configured by specifying property values.
A project defines the set of files that will be published, as well as
the publishing configuration to use when publishing those files. When
a project takes the second form listed above, the individual property
lists are taken to be "components" of the project, which group together
files requiring different publishing options.
a project takes the second form listed above, the individual members of
the "components" property are taken to be components of the project,
which group together files requiring different publishing options. When
you publish such a "meta-project" all the components will also publish.

File: org, Node: File sources and destinations, Next: Selecting files, Prev: Project alist, Up: Configuration
@ -3228,7 +3252,7 @@ the publishing function.
The function must accept two arguments: a property list containing at
least a `:publishing-directory' property, and the name of the file to
be published. I should take the specified file, make the necessary
be published. It should take the specified file, make the necessary
transformation (if any) and place the result into the destination
folder. You can write your own publishing function, but `org-publish'
provides one for attachments (files that only need to be copied):
@ -3369,8 +3393,7 @@ same. You can accomplish this by setting up an "images" folder in the
right place on the webserver, and publishing images to it.
(setq org-publish-project-alist
'(("website"
("orgfiles"
'(("orgfiles"
:base-directory "~/org/"
:base-extension "org"
:publishing-directory "/ssh:user@host:~/html/notebook/"
@ -3394,7 +3417,8 @@ right place on the webserver, and publishing images to it.
:base-directory "~/other/"
:base-extension "css\\|el"
:publishing-directory "/ssh:user@host:~/html/other/"
:publishing-function org-publish-attachment))))
:publishing-function org-publish-attachment)
("website" :components ("orgfiles" "images" "other"))))

File: org, Node: Triggering publication, Prev: Sample configuration, Up: Publishing
@ -3534,7 +3558,7 @@ file is visited again in a new Emacs session.
`#+TAGS: TAG1(c1) TAG2(c2)'
These lines (several such lines are allowed) specify the legal
tags in this file, and (potionally) the corresponding _fast tag
tags in this file, and (potentially) the corresponding _fast tag
selection_ keys. The corresponding variable is `org-tag-alist'.
`#+CATEGORY:'
@ -3547,8 +3571,8 @@ file is visited again in a new Emacs session.
line.
`#+TITLE:, #+AUTHOR:, #+EMAIL:, #+LANGUAGE:, #+TEXT:, #+OPTIONS:'
These lines provide setting for exporting files. For more details
see *Note Export options::.
These lines provide settings for exporting files. For more
details see *Note Export options::.

File: org, Node: The very busy C-c C-c key, Next: Clean view, Prev: Summary of in-buffer settings, Up: Miscellaneous
@ -3731,7 +3755,7 @@ File: org, Node: FAQ, Next: Interaction, Prev: TTY keys, Up: Miscellaneous
(add-to-list 'auto-mode-alist '("README$" . org-mode))
3. I would like to use editing features of org-mode in other modes,
is his possible?
is this possible?
Not really. For tables there is `orgtbl-mode' which implements the
table editor as a minor mode. For other features you need to
switch to Org-mode temporarily, or prepare text in a different
@ -3905,13 +3929,6 @@ File: org, Node: Extensions, Next: Cooperation, Prev: Interaction, Up: Inter
The following extensions for Org-mode have been written by other people:
`org-checklet.el' by Frank Ruell
Provides checklist of items which can be either checked or
unchecked. This is similar to the TODO functionality in Org-mode,
but never shows up in the agenda. `org-checklet' is freely
available at
`http://www.emacswiki.org/cgi-bin/emacs/org-checklet.el'.
`org-mouse.el' by Piotr Zielinski
This package implements extended mouse functionality for Org-mode.
It allows you to cycle visibility and to edit the document
@ -4121,8 +4138,8 @@ Org-mode would not be what it is without your input.
* Linking to VM/BBDB/GNUS was inspired by Tom Shannon's
`organizer-mode.el'.
* David O'Toole wrote `org-publish.el' and came up with lots is
ideas for small changes.
* David O'Toole wrote `org-publish.el' and drafted the manual
chapter about publishing.
* Ju"rgen Vollmer contributed code generating the table of contents
in HTML output.
@ -4315,6 +4332,7 @@ File: org, Node: Index, Next: Key Index, Prev: Miscellaneous, Up: Top
* keymapp nil error: FAQ. (line 6)
* keyword options: Per file keywords. (line 6)
* linebreak preservation: Export options. (line 25)
* linebreak, forced: Enhancing text. (line 37)
* link completion: Handling links. (line 28)
* link format: Link format. (line 6)
* links, external: External links. (line 6)
@ -4348,11 +4366,10 @@ File: org, Node: Index, Next: Key Index, Prev: Miscellaneous, Up: Top
* options, for export: Export options. (line 6)
* ordered lists: Plain lists. (line 6)
* org-agenda, command: Weekly/Daily agenda. (line 9)
* org-checklet.el: Extensions. (line 8)
* org-mode, turning on: Installation and activation.
(line 30)
* org-mouse.el: Extensions. (line 13)
* org-publish.el: Extensions. (line 21)
* org-mouse.el: Extensions. (line 8)
* org-publish.el: Extensions. (line 14)
* orgtbl-mode: orgtbl-mode. (line 6)
* outline tree: Headlines. (line 6)
* outline-mode: Outlines. (line 6)
@ -4724,14 +4741,14 @@ Node: Formula syntax38979
Ref: Formula syntax-Footnote-141884
Node: Lisp formulas42184
Node: Column formulas42973
Node: Advanced features44734
Node: Named-field formulas47988
Node: Editing/debugging formulas48628
Node: Appetizer50386
Node: orgtbl-mode51489
Node: table.el51980
Node: Hyperlinks52957
Node: Link format53662
Node: Advanced features44735
Node: Named-field formulas47989
Node: Editing/debugging formulas48629
Node: Appetizer50387
Node: orgtbl-mode51490
Node: table.el51981
Node: Hyperlinks52958
Node: Link format53663
Node: Internal links54956
Ref: Internal links-Footnote-156945
Node: Radio targets57077
@ -4754,63 +4771,65 @@ Ref: Per file keywords-Footnote-179663
Node: Priorities79891
Node: Timestamps81107
Node: Time stamps81428
Node: Creating timestamps84201
Node: Tags87522
Node: Tag inheritance88284
Node: Setting tags89221
Node: Tag searches91942
Node: Agenda views93151
Node: Agenda files94690
Ref: Agenda files-Footnote-195650
Ref: Agenda files-Footnote-295799
Node: Agenda dispatcher95991
Node: Weekly/Daily agenda98121
Node: Categories99256
Node: Time-of-day specifications99904
Node: Calendar/Diary integration101880
Node: Sorting of agenda items103257
Node: Global TODO list104089
Node: Matching headline tags105450
Node: Timeline106393
Node: Agenda commands107266
Node: Exporting112734
Node: ASCII export113867
Node: HTML export114737
Node: XOXO export117552
Node: iCalendar export117991
Node: Text interpretation119814
Node: Comment lines120291
Node: Enhancing text120760
Node: Export options122591
Node: Publishing124193
Ref: Publishing-Footnote-1124989
Node: Configuration125185
Node: Project alist125906
Node: File sources and destinations126964
Node: Selecting files127516
Node: Publishing action128269
Node: Publishing options129383
Node: Publishing links131422
Node: Project page index132225
Node: Sample configuration133003
Node: Simple example133495
Node: Complex example134168
Node: Triggering publication136202
Node: Miscellaneous136858
Node: Completion137617
Node: Customization138613
Node: Summary of in-buffer settings139220
Node: The very busy C-c C-c key142460
Node: Clean view143975
Node: TTY keys146552
Node: FAQ148153
Node: Interaction155950
Node: Extensions156410
Node: Cooperation157980
Node: Conflicts159674
Node: Bugs161266
Node: Acknowledgments163164
Node: Index166603
Node: Key Index188922
Node: Creating timestamps84202
Node: Tags87523
Node: Tag inheritance88285
Node: Setting tags89222
Ref: Setting tags-Footnote-192352
Ref: Setting tags-Footnote-292464
Node: Tag searches92544
Node: Agenda views93753
Node: Agenda files95292
Ref: Agenda files-Footnote-196252
Ref: Agenda files-Footnote-296401
Node: Agenda dispatcher96593
Node: Weekly/Daily agenda98723
Node: Categories99858
Node: Time-of-day specifications100506
Node: Calendar/Diary integration102482
Node: Sorting of agenda items103859
Node: Global TODO list104691
Node: Matching headline tags106052
Node: Timeline106995
Node: Agenda commands107868
Node: Exporting113336
Node: ASCII export114469
Node: HTML export115755
Node: XOXO export118589
Node: iCalendar export119028
Node: Text interpretation120851
Node: Comment lines121328
Node: Enhancing text121797
Node: Export options123721
Node: Publishing125323
Ref: Publishing-Footnote-1126119
Node: Configuration126315
Node: Project alist127036
Node: File sources and destinations128107
Node: Selecting files128659
Node: Publishing action129412
Node: Publishing options130527
Node: Publishing links132566
Node: Project page index133369
Node: Sample configuration134147
Node: Simple example134639
Node: Complex example135312
Node: Triggering publication137388
Node: Miscellaneous138044
Node: Completion138803
Node: Customization139799
Node: Summary of in-buffer settings140406
Node: The very busy C-c C-c key143648
Node: Clean view145163
Node: TTY keys147740
Node: FAQ149341
Node: Interaction157139
Node: Extensions157599
Node: Cooperation158851
Node: Conflicts160545
Node: Bugs162137
Node: Acknowledgments164035
Node: Index167473
Node: Key Index189792

End Tag Table

View File

@ -1,12 +1,12 @@
;;; org-publish.el --- publish related org-mode files as a website
;; Copyright (C) 2006 David O'Toole
;; Copyright (C) 2006 Free Software Foundation, Inc.
;; Author: David O'Toole <dto@gnu.org>
;; Keywords: hypermedia, outlines
;; Version:
;; $Id: org-publish.el,v 1.64 2006/05/19 19:45:34 dto Exp dto $
;; $Id: org-publish.el,v 1.69 2006/06/03 17:17:53 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
@ -23,8 +23,6 @@
;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
;; Boston, MA 02110-1301, USA.
;; This file is NOT part of GNU Emacs.
;;; Commentary:
;; Requires at least version 4.27 of org.el
@ -61,6 +59,10 @@
;; (autoload 'org-publish "org-publish-current-file" nil t)
;; (autoload 'org-publish "org-publish-current-project" nil t)
;; NOTE: When org-publish.el is included with org.el, those forms are
;; already in the file org-install.el, and hence don't need to be put
;; in your emacs initialization file in this case.
;;; Usage:
;;
;; The program's main configuration variable is
@ -103,28 +105,28 @@
;; (setq org-publish-project-alist
;; (list
;; '("website" .
;; (("orgfiles" :base-directory "~/org/"
;; :base-extension "org"
;; :publishing-directory "/ssh:user@host:~/html/notebook/"
;; :publishing-function org-publish-org-to-html
;; :exclude "PrivatePage.org" ;; regexp
;; :headline-levels 3
;; :with-section-numbers nil
;; :table-of-contents nil
;; :style "<link rel=stylesheet href=\"../other/mystyle.css\" type=\"text/css\">"
;; :auto-preamble t
;; :auto-postamble nil)
;; '("orgfiles" :base-directory "~/org/"
;; :base-extension "org"
;; :publishing-directory "/ssh:user@host:~/html/notebook/"
;; :publishing-function org-publish-org-to-html
;; :exclude "PrivatePage.org" ;; regexp
;; :headline-levels 3
;; :with-section-numbers nil
;; :table-of-contents nil
;; :style "<link rel=stylesheet href=\"../other/mystyle.css\" type=\"text/css\">"
;; :auto-preamble t
;; :auto-postamble nil)
;;
;; ("images" :base-directory "~/images/"
;; :base-extension "jpg\\|gif\\|png"
;; :publishing-directory "/ssh:user@host:~/html/images/"
;; :publishing-function org-publish-attachment)
;; ("images" :base-directory "~/images/"
;; :base-extension "jpg\\|gif\\|png"
;; :publishing-directory "/ssh:user@host:~/html/images/"
;; :publishing-function org-publish-attachment)
;;
;; ("other" :base-directory "~/other/"
;; :base-extension "css"
;; :publishing-directory "/ssh:user@host:~/html/other/"
;; :publishing-function org-publish-attachment)))))
;; ("other" :base-directory "~/other/"
;; :base-extension "css"
;; :publishing-directory "/ssh:user@host:~/html/other/"
;; :publishing-function org-publish-attachment)
;; ("website" :components ("orgfiles" "images" "other"))))
;; For more information, see the documentation for the variable
;; `org-publish-project-alist'.
@ -136,6 +138,8 @@
;;; List of user-visible changes since version 1.27
;; 1.65: Remove old "composite projects". They're redundant.
;; 1.64: Allow meta-projects with :components
;; 1.57: Timestamps flag is now called "org-publish-use-timestamps-flag"
;; 1.52: Properly set default for :index-filename
;; 1.48: Composite projects allowed.
@ -165,17 +169,19 @@
"Association list to control publishing behavior.
Each element of the alist is a publishing 'project.' The CAR of
each element is a string, uniquely identifying the project. The
CDR of each element is either a property list with configuration
options for the publishing process (see below), or a list of the
following form:
CDR of each element is in one of the following forms:
((\"component1\" :property value :property value ... )
(\"component2\" :property value :property value ... ))
(:property value :property value ... )
OR,
(:components (\"project-1\" \"project-2\" ...))
When the CDR of an element of org-publish-project-alist is in
this second form, the elements of this list are taken to be
components of the project, which group together files requiring
different publishing options.
this second form, the elements of the list after :components are
taken to be components of the project, which group together files
requiring different publishing options. When you publish such a
project with M-x org-publish, the components all publish.
When a property is given a value in org-publish-project-alist, its
setting overrides the value of the corresponding user variable
@ -312,11 +318,8 @@ 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
(defun org-publish-meta-project-p (element)
"Tell whether an ELEMENT of org-publish-project-alist is a metaproject."
(plist-get (cdr element) :components))
;;;; Getting project information out of org-publish-project-alist
(defun org-publish-get-plists (&optional project-name)
@ -326,21 +329,24 @@ When argument is not given, return all property lists for all projects."
(list (assoc project-name org-publish-project-alist))
org-publish-project-alist))
(project nil)
(plists nil))
(plists nil)
(components nil))
(while (setq project (pop alist))
(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)))
(if (setq components (plist-get (cdr project) :components))
;; meta project. annotate each plist with name of enclosing project
(setq plists
(append plists
(mapcar (lambda (p)
(plist-put p :project-name (car project)))
(mapcan 'org-publish-get-plists components))))
;; normal project
(let ((p (cdr project)))
(setq p (plist-put p :project-name (car project)))
(setq plists (append plists (list (cdr project)))))))
;;
plists))
;;
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
@ -442,7 +448,6 @@ FILENAME is the filename of the file to be published."
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))
(buf (current-buffer))
(index-p (plist-get plist :auto-index))
(index-filename (or (plist-get plist :index-filename) "index.org"))
(index-function (or (plist-get plist :index-function) 'org-publish-org-index))
@ -455,9 +460,7 @@ FILENAME is the filename of the file to be published."
;; check timestamps
(when (org-publish-needed-p f)
(funcall publishing-function plist f)
(org-publish-update-timestamp f))))
;; back to original buffer
(switch-to-buffer buf)))
(org-publish-update-timestamp f))))))
(defun org-publish-org-index (plist &optional index-filename)

821
org.el

File diff suppressed because it is too large Load Diff

BIN
org.pdf

Binary file not shown.

125
org.texi
View File

@ -1,12 +1,11 @@
\input texinfo
@c %**start of header
@setfilename org
@c @setfilename ../info/org
@setfilename ../info/org
@settitle Org Mode Manual
@set VERSION 4.34
@set DATE May 2006
@set VERSION 4.36
@set DATE June 2006
@dircategory Emacs
@direntry
@ -1243,7 +1242,7 @@ Instead of typing an equation into the field, you may also use the
command @kbd{C-c =}. It prompts for a formula (with default taken
from the @samp{#+TBLFM:} line) and applies it to the current field. A
numerical prefix (e.g. @kbd{C-5 C-c =}) will apply it to that many
subsequent fields in the current column.
consecutive fields in the current column.
@cindex recomputing table fields
To recompute all the fields in a line, use the command @kbd{C-c *}.
@ -1485,7 +1484,7 @@ of @samp{[[link][description]]} and @samp{link} is displayed instead of
@samp{[[link]]}. Links will be highlighted in the face @code{org-link},
which by default is an underlined face. You can directly edit the
visible part of a link. Note that this can be either the @samp{link}
part (if there is not description) or the @samp{description} part. To
part (if there is no description) or the @samp{description} part. To
edit also the invisible @samp{link} part, use @kbd{C-c C-l} with the
cursor on the link.
@ -2189,7 +2188,7 @@ dates in the agenda (@pxref{Weekly/Daily agenda}). We distinguish:
@cindex 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
an event in a diary, when you want to take note 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.
@ -2453,11 +2452,11 @@ the allowed tags for a given file with lines like
#+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
The default support method is minibuffer completion. However, Org-mode
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 should assign unique keys to all tags. This
can be done globally with
@lisp
(setq org-tag-alist '(("@@WORK" . ?w) ("@@HOME" . ?h) ("Laptop" . ?l)))
@ -2466,27 +2465,44 @@ keys to all tags. This can be done globally with
@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)
#+TAGS: @@WORK(w) @@HOME(h) @@TENNISCLUB(t) Laptop(l) PC(p)
@end example
@noindent
You can also group together tags that are mutually exclusive. With
curly braces@footnote{In @code{org-mode-alist} use
@code{'(:startgroup)} and @code{'(:endgroup)}, respectively. Several
groups are allowed.}
@example
#+TAGS: @{ @@WORK(w) @@HOME(h) @@TENNISCLUB(t) @} Laptop(l) PC(p)
@end example
@noindent you indicate that at most one of @samp{@@WORK}, @samp{@@HOME},
and @samp{@@SAILBOAT} should be selected.
@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
If at least one tag has a selection key, 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}}.
with corresponding keys@footnote{Keys will automatically assigned to
tags which have no configured keys.}. Pressing keys for the tags will
add or remove them from the list of tags in the current line. Selecting
a tag in a group of mutually exclusive tags will turn off any other tags
from that group. @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 assign 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}}. Switching from
@samp{@@HOME} to @samp{@@WORK} would be done with @kbd{C-c C-c w
@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:
in a specific file? Just add an empty TAGS option line to that file:
@example
#+TAGS:
@ -3141,7 +3157,7 @@ produced. @xref{Text interpretation}, for more details.
@section ASCII export
@cindex ASCII export
ASCII export produces an simple and very readable version of an Org-mode
ASCII export produces a simple and very readable version of an Org-mode
file.
@cindex region, active
@ -3170,15 +3186,21 @@ at a different level, specify it with a prefix argument. For example,
@end example
@noindent
creates only top level headlines and does the rest as items.
creates only top level headlines and does the rest as items. When
headlines are converted to items, the indentation of the text following
the headline is changed to fit nicely under the item. This is done with
the assumption that the first bodyline indicates the base indenation of
the body text. Any indenation larger than this is adjusted to preserve
the layout relative to the first line. Should there be lines with less
indentation than the first, these are left alone.
@node HTML export, XOXO export, ASCII export, Exporting
@section HTML export
@cindex HTML export
Org-mode contains an HTML exporter with extensive HTML formatting, in
ways similar to John Grubers @emph{markdown} language, but with
additional support for tables.
Org-mode contains an HTML (XHTML 1.0 strict) exporter with extensive
HTML formatting, in ways similar to John Grubers @emph{markdown}
language, but with additional support for tables.
@cindex region, active
@cindex active region
@ -3358,8 +3380,6 @@ the first headline will not be exported either.
Toggle the COMMENT keyword at the beginning of an entry.
@end table
@node Enhancing text, Export options, Comment lines, Text interpretation
@subsection Enhancing text for export
@cindex enhancing text
@ -3418,6 +3438,11 @@ fixed-width font.
@item C-c :
Toggle fixed-width for entry (QUOTE) or region, see below.
@end table
@cindex linebreak, forced
@item
A double backslash @emph{at the end of a line} enforces a line break at
this position.
@end itemize
If these conversions conflict with your habits of typing ASCII text,
@ -3531,18 +3556,18 @@ the two following forms:
@r{or}
("project-name"
("component1" :property value :property value ...)
("component2" :property value :property value ...)
...)
("project-name" :components ("project-name" "project-name" ...))
@end lisp
In both cases, projects are configured by specifying property values.
A project defines the set of files that will be published, as well as
the publishing configuration to use when publishing those files.
When a project takes the second form listed above, the individual
property lists are taken to be "components" of the project, which
group together files requiring different publishing options.
the publishing configuration to use when publishing those files. When
a project takes the second form listed above, the individual members
of the ``components'' property are taken to be components of the
project, which group together files requiring different publishing
options. When you publish such a ``meta-project'' all the components
will also publish.
@node File sources and destinations, Selecting files, Project alist, Configuration
@subsection Sources and destinations for files
@ -3598,7 +3623,7 @@ specify the publishing function.
The function must accept two arguments: a property list containing at
least a @code{:publishing-directory} property, and the name of the file
to be published. I should take the specified file, make the necessary
to be published. It should take the specified file, make the necessary
transformation (if any) and place the result into the destination folder.
You can write your own publishing function, but @code{org-publish}
provides one for attachments (files that only need to be copied):
@ -3737,8 +3762,7 @@ right place on the webserver, and publishing images to it.
@lisp
(setq org-publish-project-alist
'(("website"
("orgfiles"
'(("orgfiles"
:base-directory "~/org/"
:base-extension "org"
:publishing-directory "/ssh:user@@host:~/html/notebook/"
@ -3762,7 +3786,8 @@ right place on the webserver, and publishing images to it.
:base-directory "~/other/"
:base-extension "css\\|el"
:publishing-directory "/ssh:user@@host:~/html/other/"
:publishing-function org-publish-attachment))))
:publishing-function org-publish-attachment)
("website" :components ("orgfiles" "images" "other"))))
@end lisp
@node Triggering publication, , Sample configuration, Publishing
@ -3917,7 +3942,7 @@ 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}
this file, and (potentially) 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
@ -3926,7 +3951,7 @@ end of the file.
@item #+TBLFM:
This line contains the formulas for the table directly above the line.
@item #+TITLE:, #+AUTHOR:, #+EMAIL:, #+LANGUAGE:, #+TEXT:, #+OPTIONS:
These lines provide setting for exporting files. For more details see
These lines provide settings for exporting files. For more details see
@ref{Export options}.
@end table
@ -4133,7 +4158,7 @@ turn it on for all @file{README} files?}
@end lisp
@item @b{I would like to use editing features of org-mode in other
modes, is his possible?}@*
modes, is this possible?}@*
@c
Not really. For tables there is @code{orgtbl-mode} which implements the
table editor as a minor mode. For other features you need to switch to
@ -4337,12 +4362,6 @@ with other code out there.
The following extensions for Org-mode have been written by other people:
@table @asis
@cindex @file{org-checklet.el}
@item @file{org-checklet.el} by Frank Ruell
Provides checklist of items which can be either checked or unchecked.
This is similar to the TODO functionality in Org-mode, but never shows
up in the agenda. @file{org-checklet} is freely available at
@url{http://www.emacswiki.org/cgi-bin/emacs/org-checklet.el}.
@cindex @file{org-mouse.el}
@item @file{org-mouse.el} by Piotr Zielinski
This package implements extended mouse functionality for Org-mode. It
@ -4557,8 +4576,8 @@ other things.
Linking to VM/BBDB/GNUS was inspired by @i{Tom Shannon}'s
@file{organizer-mode.el}.
@item
@i{David O'Toole} wrote @file{org-publish.el} and came up with lots is
ideas for small changes.
@i{David O'Toole} wrote @file{org-publish.el} and drafted the manual
chapter about publishing.
@item
@i{J@"urgen Vollmer} contributed code generating the table of contents
in HTML output.

Binary file not shown.

View File

@ -1,5 +1,5 @@
% Reference Card for Org Mode
\def\orgversionnumber{4.34}
\def\orgversionnumber{4.36}
\def\year{2006}
%
%**start of header