|
@@ -1,4 +1,4 @@
|
|
|
-# -*- mode: org; org-export-publishing-directory: "tmp"; fill-column: 65 -*-
|
|
|
+# -*- mode: org; fill-column: 65 -*-
|
|
|
|
|
|
#+STARTUP: hidestars
|
|
|
|
|
@@ -20,7 +20,10 @@
|
|
|
** Details
|
|
|
|
|
|
*** Keybindings in Remember buffers can be configured
|
|
|
- Remember buffers are normally in Org-mode, which makes it
|
|
|
+
|
|
|
+ The remember buffers created with Org's extensions are in
|
|
|
+ Org-mode, which is nice to prepare snippets that will
|
|
|
+ actually be sotred in Org-mode files. However, this makes it
|
|
|
hard to configure key bindings without modifying the Org-mode
|
|
|
keymap. There is now a minor mode active in these buffers,
|
|
|
`org-remember-mode', and its keymap org-remember-mode-map can
|
|
@@ -33,55 +36,77 @@
|
|
|
(add-hook
|
|
|
'org-remember-mode-hook
|
|
|
(lambda ()
|
|
|
- (define-key org-remember-mode-map "\C-x\C-s" 'org-remember-finalize)))
|
|
|
+ (define-key org-remember-mode-map
|
|
|
+ "\C-x\C-s" 'org-remember-finalize)))
|
|
|
#+end_src
|
|
|
|
|
|
- You can also use this to free the =C-c C-c= binding (by
|
|
|
- binding this key to nil in the minor mode map), so that you
|
|
|
- can use =C-c C-c= again to set tags.
|
|
|
+ If you wish, you can also use this to free the =C-c C-c=
|
|
|
+ binding (by binding this key to nil in the minor mode map),
|
|
|
+ so that you can use =C-c C-c= again to set tags.
|
|
|
|
|
|
*** Support for ido completion
|
|
|
- You can not get the completion interface from /ido.el/ for
|
|
|
+
|
|
|
+ You can now get the completion interface from /ido.el/ for
|
|
|
many of Org's internal completion commands by turning on the
|
|
|
- variable `org-completion-use-ido'. =ido=mode= must also be
|
|
|
+ variable =org-completion-use-ido=. =ido=mode= must also be
|
|
|
active before you can use this.
|
|
|
-*** New face for datelines in agenda column view
|
|
|
+
|
|
|
+*** New face for date lines in agenda column view
|
|
|
+
|
|
|
When column view is active in the agenda, and when you have
|
|
|
summarizing properties, the date lines become normal column
|
|
|
lines and the separation between different days becomes
|
|
|
harder to see. If this bothers you, you can now customize
|
|
|
the face =org-agenda-column-dateline=.
|
|
|
+
|
|
|
*** Invisible targets become now anchors in headlines.
|
|
|
+
|
|
|
These anchors can be used to jump to a directly with an HTML
|
|
|
link, just like the =sec-xxx= ids. For example, the
|
|
|
following will make a http link
|
|
|
- =//domain/path-to-my-file#dummy= work:
|
|
|
+ =//domain/path-to-my-file.html#dummy= work:
|
|
|
|
|
|
#+begin_src org
|
|
|
,# <<dummy>>
|
|
|
,*** a headline
|
|
|
#+end_src
|
|
|
|
|
|
-*** New contributed file org-exp-blocks.el
|
|
|
+*** New contributed file /org-exp-blocks.el/
|
|
|
|
|
|
This new file implements special export behavior of
|
|
|
- user-defined blocks, and it has some defaults to export
|
|
|
- commends and ASCII graphics.
|
|
|
+ user-defined blocks. The currently supported blocks are
|
|
|
|
|
|
- For ASCII art, it needs the java program ditaa.jar by Stathis
|
|
|
- Sideris. Thanks to Stathis for this excellent program, and
|
|
|
- for allowing us to bundle it with Org-mode.
|
|
|
+ - comment :: Comment blocks with author-specific markup
|
|
|
+ - ditaa :: conversion of ASCII art into pretty png files
|
|
|
+ using Stathis Sideris' /ditaa.jar/ program
|
|
|
+ - dot :: creation of graphs in the /dot/ language
|
|
|
+ - R :: Sweave type exporting using the R program
|
|
|
+
|
|
|
+ For more details and examples, see the file commentary in
|
|
|
+ /org-exp-blocks.el/.
|
|
|
|
|
|
Kudos to Eric Schulte for this new functionality, after
|
|
|
- org-plot.el already his second major contribution.
|
|
|
+ org-plot.el already his second major contribution. Thanks to
|
|
|
+ Stathis for this excellent program, and for allowing us to
|
|
|
+ bundle it with Org-mode.
|
|
|
+
|
|
|
+*** New contributed file /org-eval-light.el/
|
|
|
+ This module gives contrib over execution Emacs Lisp code
|
|
|
+ blocks included in a file.
|
|
|
+
|
|
|
+ Thanks to Eric Schulte also for this file.
|
|
|
|
|
|
*** Link translation
|
|
|
|
|
|
You can now configure Org to understand many links created
|
|
|
with the Emacs Planner package, so you can cut text from
|
|
|
planner pages and paste them into Org-mode files without
|
|
|
- having to re-write the links. The following customization es
|
|
|
- needed to make this work
|
|
|
+ having to re-write the links. Among other things, this means
|
|
|
+ that the command =org-open-at-point-global= which follows
|
|
|
+ links not only in Org-mode, but in arbitrary files like
|
|
|
+ source code files etc, will work also with links created by
|
|
|
+ planner. The following customization es needed to make all of
|
|
|
+ this work
|
|
|
|
|
|
#+begin_src emacs-lisp
|
|
|
(setq org-link-translation-function
|
|
@@ -828,1173 +853,6 @@
|
|
|
This was a request by Chris Randle.
|
|
|
|
|
|
|
|
|
-* Version 6.06
|
|
|
-
|
|
|
-** Overview
|
|
|
-
|
|
|
- - New, more CSS-like setup for HTML style information
|
|
|
- - Attributes in hyperlinks, for example alt and title for images
|
|
|
- - Simplified way to specify file links
|
|
|
- - Modified behavior of time stamps in iCalendar export
|
|
|
- - New way to compare times during a property search
|
|
|
- - New option `org-open-directory-means-index'
|
|
|
- - New parameters :prefix and :prefix1 for include files
|
|
|
- - New option :index-style for org-publish
|
|
|
- - New structure for the timestamp directory for org-publish.
|
|
|
-
|
|
|
-** Incompatible changes
|
|
|
-
|
|
|
-*** New structure for the timestamp directory for org-publish.
|
|
|
-
|
|
|
- The timestamp directory now uses SHA1 hashed versions of the
|
|
|
- path to each publishing file. This should be a consistent
|
|
|
- and system-independent way to handle things. The change
|
|
|
- means that your next publishing command will publish each and
|
|
|
- every file again, but just once, until new time stamps are in
|
|
|
- place.
|
|
|
-
|
|
|
-** Details
|
|
|
-
|
|
|
-*** New setup for HTML style information
|
|
|
-
|
|
|
- In order to create a more CSS-like setup of the HTML style
|
|
|
- information, the following changes have been made:
|
|
|
- - The default style has moved to a constant,
|
|
|
- =org-export-html-style-default= and should not be changed
|
|
|
- anymore.
|
|
|
- - The default of the variable =org-export-html-style= is now
|
|
|
- just the empty string. This variable should receive
|
|
|
- settings that are Org-wide. When using org-publish, this
|
|
|
- variable is associated with the =:style= property and can
|
|
|
- be used to establish project-wide settings.
|
|
|
- - There is a new variable =org-export-html-style-extra= that
|
|
|
- should be used for file-local settings. Org-publish can, if
|
|
|
- necessary, access this variable with the =:style-extra=
|
|
|
- property.
|
|
|
- - When a file is published, the values of
|
|
|
- - org-export-html-style-default
|
|
|
- - org-export-html-style
|
|
|
- - org-export-html-style-extra
|
|
|
- are all inserted into the HTML header, in the given
|
|
|
- sequence.
|
|
|
-
|
|
|
- This follows a proposal by Rustom Mody.
|
|
|
-
|
|
|
-*** Attributes in hyperlinks
|
|
|
-
|
|
|
- You can now set attributes in hyperlinks that will be used
|
|
|
- when publishing to HTML. For example, if you want to use the
|
|
|
- ALT and TITLE attributes of an inlined image, here is who to
|
|
|
- do this:
|
|
|
-
|
|
|
- : [[./img/a.jpg{{alt="This is image A" title="Image with no action"}}]]
|
|
|
-
|
|
|
- Thanks to Charles Chen for this idea.
|
|
|
-
|
|
|
-*** Simplified way to specify file links
|
|
|
-
|
|
|
- In a link, you can now leave out the "file:" prefix if you
|
|
|
- write an absolute file name like =/Users/dominik/.emacs= or
|
|
|
- =~/.emacs=, or if you write a relative file name by using
|
|
|
- =./= or =../= to start the file path. You cannot write a
|
|
|
- plain file name, because plain text is interpreted as an
|
|
|
- internal link.
|
|
|
-
|
|
|
- So for example, a link to an image /A.jpg/ with a thumbnail
|
|
|
- /B.jpg/ can now be written like
|
|
|
-
|
|
|
-#+begin_src org
|
|
|
-[[./A.jpg][./B.jpg] ]
|
|
|
-#+end_src
|
|
|
-
|
|
|
-*** Changes in iCalendar export
|
|
|
-
|
|
|
- Deadline and scheduling time stamps are now treated
|
|
|
- differently in iCalendar export. The default behavior is now
|
|
|
- the following:
|
|
|
-
|
|
|
- - a DEADLINE that appears in an entry that is a TODO item is
|
|
|
- used as the item's DUE date. Therefore, such a deadline
|
|
|
- will no longer show up in the calendar.
|
|
|
-
|
|
|
- - a DEADLINE that appears in an item that is *not* a TODO
|
|
|
- item is exported as an EVENT and will show up in the
|
|
|
- calendar.
|
|
|
-
|
|
|
- - a SCHEDULED timestamp in a TODO item will be used as the
|
|
|
- items DTSTART. Therefore, such a timestamp will not show
|
|
|
- up in the calendar.
|
|
|
-
|
|
|
- - a SCHEDULED timestamp in an item that is not a TODO has no
|
|
|
- effect on iCalendar export at all. It will be ignored.
|
|
|
-
|
|
|
- Of course this would not be Emacs if you could not configure
|
|
|
- exactly what you want. Take a look at the variables
|
|
|
- =org-icalendar-use-deadlines= and
|
|
|
- =org-icalendar-use-scheduled= if you want to go back to the
|
|
|
- old behavior or even do something completely different.
|
|
|
-
|
|
|
- Thanks to Karen Cooke for triggering this change.
|
|
|
-
|
|
|
-*** New way to compare times during a property search
|
|
|
-
|
|
|
- If the comparison value in a property search is a string that
|
|
|
- is enclosed in angular brackets, a time comparison will be
|
|
|
- done. For example
|
|
|
-
|
|
|
- : +DEADLINE>="<2008-12-24 15:20>"
|
|
|
-
|
|
|
- looks for entries with a deadline on or after that time.
|
|
|
- Special allowed values are "<now>" (with time) and "<today>"
|
|
|
- (date only).
|
|
|
-
|
|
|
- This is based on a request by Manish.
|
|
|
-
|
|
|
-*** New option `org-open-directory-means-index'
|
|
|
-
|
|
|
- When set, a link pointing to a directory will actually open
|
|
|
- the index.org file in that directory. This is a good setting
|
|
|
- inside a publishing project. When not set, you get a
|
|
|
- finder/explorer window for that directory, or dired,
|
|
|
- depending on system and setup.
|
|
|
-
|
|
|
- This follows a request by Richard Riley.
|
|
|
-
|
|
|
-*** New parameters :prefix and :prefix1 for include files
|
|
|
-
|
|
|
- These parameters specify prefixes for each line of included
|
|
|
- text. :prefix1 is only for the first line, :prefix for all
|
|
|
- other lines.
|
|
|
-
|
|
|
- This follows a proposal by Richard Riley.
|
|
|
-
|
|
|
-*** New option :index-style for org-publish
|
|
|
-
|
|
|
- This option can be used to switch the style of the index
|
|
|
- produced by org-publish. Can be `list' (index is just an
|
|
|
- itemized list of the titles of the files involved) or `tree'
|
|
|
- (the directory structure of the source files is reflected in
|
|
|
- the index). The default is `tree'.
|
|
|
-
|
|
|
- Thanks to Manuel Hermenegildo for the patch.
|
|
|
-
|
|
|
-*** In the Agenda, inclusion of archives can now be toggled
|
|
|
- - Pressing =v= will toggle inclusion of trees with the
|
|
|
- ARCHIVE tag, this includes obviously the archive sibling.
|
|
|
- - Pressing `C-u v' will include trees with ARCHIVE tag, and
|
|
|
- will also include all archive files that are currently
|
|
|
- associated with your agenda files.
|
|
|
-
|
|
|
- This was triggered by a proposal by Manuel Hermenegildo.
|
|
|
-
|
|
|
-* Version 6.05
|
|
|
-
|
|
|
-If I were to name my releases, this one would be called "Adam".
|
|
|
-Adam, you definitely owe me a beer :-). And I owe you one, too -
|
|
|
-thanks for all the great ideas.
|
|
|
-
|
|
|
-** Overview
|
|
|
-
|
|
|
- - Use cursor position in agenda for remember, scheduling and deadlines
|
|
|
- - New API for mapping a function over all or selected entries
|
|
|
- - Remember templates can be filed to beginning/end of a file
|
|
|
- - Visiting a filed remember buffer immediately
|
|
|
- - BBDB anniversaries are now links
|
|
|
- - Column view in the agenda now cleans the ITEM field
|
|
|
- - The format of section numbers in exported files is configurable
|
|
|
- - Direct, single key access to allowed values in column view
|
|
|
- - New hook to hack exported iCalendar files
|
|
|
- - Log mode in agenda now shows end time for CLOCK line
|
|
|
-
|
|
|
-** Incompatible changes
|
|
|
-
|
|
|
-*** `C-c C-x C-k' now calls `org-mark-entry-for-agenda-action'
|
|
|
- It used to call =org-cut-special=, but that is also at bound
|
|
|
- to the key =C-c C-x C-w=.
|
|
|
-** Details
|
|
|
-
|
|
|
-*** Making use of the cursor position in the agenda
|
|
|
-
|
|
|
- The date at the cursor in the agenda (and also in the
|
|
|
- calendar) can now be used to schedule entries, or to set the
|
|
|
- date in a remember template correctly. It is also designed
|
|
|
- to make it easier to move an entry to a date picked in the
|
|
|
- agenda. Thanks to Thomas Baumann for starting the thread
|
|
|
- that led to this development.
|
|
|
-
|
|
|
-**** Calling remember with the cursor date in the agenda
|
|
|
-
|
|
|
- If you want to use the date at the agenda cursor in a
|
|
|
- remember template, start remember from the agenda with the
|
|
|
- keys =k r=. While the template is being filled in, the
|
|
|
- default date for all time stamps, and also for all
|
|
|
- interactive escapes like =%^t= is now the date at the cursor
|
|
|
- in the agenda. The exact same command can also be used from
|
|
|
- the calendar if you prefer that.
|
|
|
-
|
|
|
-**** Picking a date for scheduling/deadline in the agenda
|
|
|
-
|
|
|
- You may now pick the date for scheduling an item or for
|
|
|
- setting a deadline in the agenda, where you have the best
|
|
|
- overview over free time slots. This is a two step process.
|
|
|
-
|
|
|
- 1. First you pick the entry that should be acted upon. In
|
|
|
- the agenda, you use the keys =k m=. In an org-mode file,
|
|
|
- this is on =C-c C-x C-k=.
|
|
|
-
|
|
|
- 2. Then you find the agenda date you want to apply. When the
|
|
|
- cursor is anywhere in the block belonging to that date,
|
|
|
- press =k s= to schedule, or =k d= to put a deadline. The
|
|
|
- agenda is not updated immediately, press =r= if you want
|
|
|
- it to show the affected entry in the right place.
|
|
|
-
|
|
|
-*** New API for mapping a function over all or selected entries
|
|
|
-
|
|
|
- Org has sophisticated mapping capabilities to find all
|
|
|
- entries satisfying certain criteria. Internally, this
|
|
|
- functionality is used to produce agenda views, but there is
|
|
|
- also an API that can be used to execute arbitrary functions
|
|
|
- for each or selected entries. The main entry point for this
|
|
|
- API is:
|
|
|
-
|
|
|
-#+begin_example
|
|
|
--- Function: org-map-entries func &optional match scope &rest skip
|
|
|
- Call FUNC at each headline selected by MATCH in SCOPE.
|
|
|
-
|
|
|
- FUNC is a function or a lisp form. The function will be
|
|
|
- called without arguments, with the cursor positioned at
|
|
|
- the beginning of the headline. The return values of all
|
|
|
- calls to the function will be collected and returned as
|
|
|
- a list.
|
|
|
-
|
|
|
- MATCH is a tags/property/todo match as it is used in the
|
|
|
- agenda tags view. Only headlines that are matched by
|
|
|
- this query will be considered during the iteration.
|
|
|
- When MATCH is nil or t, all headlines will be visited by
|
|
|
- the iteration.
|
|
|
-
|
|
|
- SCOPE determines the scope of this command, it can
|
|
|
- specify a file, all agenda files, the current tree and
|
|
|
- much more.
|
|
|
-
|
|
|
- The remaining args are treated as settings for the
|
|
|
- skipping facilities of the scanner.
|
|
|
-#+end_example
|
|
|
-
|
|
|
-The function given to that mapping routine can really do anything
|
|
|
-you like. Here is a simple example that will turn all entries in
|
|
|
-the current file with a tag =TOMORROW= into TODO entries with the
|
|
|
-keyword =UPCOMING=. Entries in comment trees and in archive
|
|
|
-trees will be ignored.
|
|
|
-
|
|
|
-#+begin_src emacs-lisp
|
|
|
-(org-map-entries
|
|
|
- '(org-todo "UPCOMING")
|
|
|
- "+TOMORROW" 'file 'archive 'comment)
|
|
|
-#+end_src
|
|
|
-
|
|
|
- The following example counts the number of entries with TODO
|
|
|
-keyword =WAITING=, in all agenda files.
|
|
|
-
|
|
|
-#+begin_src emacs-lisp
|
|
|
-(length (org-map-entries t "/+WAITING" nil 'agenda))
|
|
|
-#+end_src
|
|
|
-
|
|
|
-*** Changes in Remember templates
|
|
|
-
|
|
|
-**** Remember templates can now use the cursor date in the agenda
|
|
|
- Use =k r= to start remember from the agenda, with enforcing
|
|
|
- the cursor date as default for any time stamps created by
|
|
|
- the template.
|
|
|
-
|
|
|
-**** Filing remember templates to the beginning or end of a file
|
|
|
- You may now set the heading part of a remember template
|
|
|
- definition to `top' or `bottom'. The template will then be
|
|
|
- filed as a level 1 entry to the beginning or end of the
|
|
|
- target file, respectively. Thanks to Adam Spiers for this
|
|
|
- proposal.
|
|
|
-
|
|
|
-**** You can jump to the location of a note immediately after filing it
|
|
|
- Just include the =%&= escape anywhere in the template. An
|
|
|
- interesting combination now is to use =%!%&=, which will
|
|
|
- immediately file and visit the note, which is equivalent to
|
|
|
- generating the note directly in the target location. Thanks
|
|
|
- to Adam Spiers for this proposal.
|
|
|
-
|
|
|
-*** BBDB anniversaries are now links.
|
|
|
- If you are using =%%(bbdb-anniversaries)= to list
|
|
|
- anniversaries in the agenda, you can now directly access the
|
|
|
- entry that triggered a listed anniversary from the agenda.
|
|
|
- Just click the anniversary - it is a link now. Thanks to
|
|
|
- Thomas Baumann for a patch to this effect.
|
|
|
-
|
|
|
-*** Column view in the agenda now cleans the ITEM field
|
|
|
- See the new variable
|
|
|
- =org-agenda-columns-remove-prefix-from-item=. Thanks to Adam
|
|
|
- Spiers for this proposal.
|
|
|
-
|
|
|
-*** The format of section number in exported files is configurable
|
|
|
-
|
|
|
- See the new variable `org-export-section-number-format'.
|
|
|
- Thanks to Adam Spiers for this proposal.
|
|
|
-
|
|
|
-*** Direct access to allowed values in column view
|
|
|
-
|
|
|
- In column view, if you press a key 1-9 or 0, the
|
|
|
- corresponding values from the list of allowed values for that
|
|
|
- field at point will be directly selected. Thanks to Levin Du
|
|
|
- for this proposal and a patch to this effect.
|
|
|
-
|
|
|
-*** New hook to hack exported iCalendar files
|
|
|
- The new hook `org-before-save-iCalendar-file-hook' runs just
|
|
|
- before the buffer with a created iCalendar export is saved.
|
|
|
- This is what I settled for after a long discussion with Adam
|
|
|
- Spiers about doing some special filtering automatically.
|
|
|
-
|
|
|
-*** Log mode in agenda now shows end time for CLOCK lines
|
|
|
- When turning on log mode in the agenda with =l=, clock lines
|
|
|
- will now also list the end time, not only the starting time.
|
|
|
- Thanks to Tian Qiu for bringing this up again.
|
|
|
-*** Fixes and additions for org-publish
|
|
|
- - the :include and :index-title properties in org-publish
|
|
|
- work now as advertized
|
|
|
- - the #+TITLE of a page will be used in the index
|
|
|
- - new :completion-function property can define a hook to be
|
|
|
- run after publishing a file.
|
|
|
-
|
|
|
- Thanks to Manuel Hermenegildo for a patch to this effect.
|
|
|
-
|
|
|
-* Version 6.04
|
|
|
-
|
|
|
-** Overview
|
|
|
-
|
|
|
-- Statistics cookies [/] and [%] for TODO entries
|
|
|
-- Editing source code example in the proper mode
|
|
|
-- iCalendar now defines proper UIDs for entries
|
|
|
-- New properties for customizing subtree export
|
|
|
-
|
|
|
-** Incompatible changes
|
|
|
-
|
|
|
-- The default of the variable `org-tags-match-list-sublevels' is
|
|
|
- now `t'. The main reason for this is that it is easier to
|
|
|
- explain in the manual and will lead to fewer surprises.
|
|
|
-
|
|
|
-- The former CONTRIB directory is now called "contrib". This was
|
|
|
- already the case in the git distribution, but the tar and zip
|
|
|
- archives still did this wrong.
|
|
|
-
|
|
|
-** Details
|
|
|
-
|
|
|
-*** Statistics for TODO entries
|
|
|
-
|
|
|
-The [/] and [%] cookies have already provided statistics for
|
|
|
-checkboxes. Now they do the same also for TODO entries. If a
|
|
|
-headline contains either cookie, changing the TODO state of any
|
|
|
-direct child will trigger an update of this cookie. Children
|
|
|
-that are neither TODO nor DONE are ignored.
|
|
|
-
|
|
|
-There have already been requests to automatically switch the
|
|
|
-parent headline to DONE when all children are done. I am not
|
|
|
-making this a default feature, because one needs to make many
|
|
|
-decisions about which keyword to use, etc. Instead of a complex
|
|
|
-customization variable, I am providing a hook that can be used.
|
|
|
-This hook will be called each time a TODO statistics cookie is
|
|
|
-updated, with the cursor in the corresponding line. Each
|
|
|
-function in the hook will receive two arguments, the number of
|
|
|
-done entries, and the number of not-done entries, and you can use
|
|
|
-the hook to change the state of the headline. Here is an example
|
|
|
-implementation:
|
|
|
-
|
|
|
-#+begin_src emacs-lisp
|
|
|
-(defun org-summary-todo (n-done n-not-done)
|
|
|
- "Switch entry to DONE when all sub-entries are done, to TODO otherwise."
|
|
|
- (let (org-log-done org-log-states) ; turn off logging
|
|
|
- (org-todo (if (= n-not-done 0) "DONE" "TODO"))))
|
|
|
-
|
|
|
-(add-hook 'org-after-todo-statistics-hook 'org-summary-todo)
|
|
|
-#+end_src
|
|
|
-
|
|
|
-*** Editing source code example in the proper mode
|
|
|
-
|
|
|
-If you are writing a document with source code examples, you can
|
|
|
-include these examples into a =#+BEGIN_SRC lang ... #+END_SRC= or
|
|
|
-(with the org-mtags module loaded) a =<src...= structure. =lang=
|
|
|
-stands for the Emacs mode used for editing the language, this
|
|
|
-could be =emacs-lisp= for Emacs Lisp mode examples, or =org= for
|
|
|
-Org mode examples. You can now use the key "C-c '" (that is C-c
|
|
|
-followed by the single quote) to edit the example in its native
|
|
|
-mode. This works by creating an indirect buffer, narrowing it to
|
|
|
-the example and setting the appropriate mode. You need to exit
|
|
|
-editing by pressing "C-c '" again. This is important, because
|
|
|
-lines that have syntactic meaning in Org will be quoted by
|
|
|
-calling this command.
|
|
|
-
|
|
|
-"C-c '" also edits include files, the setupfile in a =#+setufile=
|
|
|
-line, and all those little foreign snippets like:
|
|
|
-
|
|
|
-#+begin_src org
|
|
|
-,#+HTML: this code can be edited in html-mode
|
|
|
-
|
|
|
-,#+BEGIN_HTML
|
|
|
-,Same here
|
|
|
-,#+BEGIN_HTML
|
|
|
-
|
|
|
-,#+LaTeX: this code can be edited in latex-mode
|
|
|
-
|
|
|
-,#+BEGIN_LaTeX
|
|
|
-,Same here
|
|
|
-,#+BEGIN_LaTeX
|
|
|
-
|
|
|
-,#+BEGIN_SRC fortran
|
|
|
-,Here we can edit in fortran-mode
|
|
|
-,#+END_SRC
|
|
|
-#+end_src
|
|
|
-
|
|
|
-*** iCalendar now defines proper UIDs for entries
|
|
|
-
|
|
|
-This is necessary for synchronization services. The UIDs are
|
|
|
-created using the the org-id.el module which is now part of the
|
|
|
-Org core. If you set the variable
|
|
|
-
|
|
|
-: (setq org-icalendar-store-UID t)
|
|
|
-
|
|
|
-then all created UIDs will be stored in the entry as an =:ID:=
|
|
|
-property. This is off by default because it creates lots of
|
|
|
-property drawers even if you only play with iCalendar export.
|
|
|
-But if you plan to use synchronization, you really need to turn
|
|
|
-this on.
|
|
|
-
|
|
|
-Diary sexp entries do not yet receive proper persistent UIDs,
|
|
|
-because they are transformed to iCalendar format by icalendar.el
|
|
|
-which creates fresh UIDs each time, based on the current time.
|
|
|
-
|
|
|
-An interesting aspect of Org is that a single outline node can
|
|
|
-give rise to multiple iCalendar entries (as a timestamp, a
|
|
|
-deadline, a scheduled item, and as a TODO item). Therefore, Org
|
|
|
-adds prefixes "TS-", "DL-" "CS-", and "TD-" to the UID during
|
|
|
-iCalendar export, depending on what triggered the inclusion of
|
|
|
-the entry. In this way the UID remains unique, but a
|
|
|
-synchronization program can still figure out from which entry all
|
|
|
-the different instances originate.
|
|
|
-
|
|
|
-*** New properties for customizing subtree export.
|
|
|
-
|
|
|
-When exporting a subtree by selecting it before calling the
|
|
|
-export command, you can now use the properties =EXPORT_TITLE=,
|
|
|
-=EXPORT_TEXT=, and =EXPORT_OPTIONS= to overrule the global
|
|
|
-=#+TITLE=, =#+TEXT=, and =#+OPTIONS= settings. You can also set
|
|
|
-an export file name with =EXPORT_FILE_NAME= that will overrule
|
|
|
-the file name derived from the buffer's file name. As far as the
|
|
|
-options are concerned, the global =#+OPTIONS= will still be read,
|
|
|
-and only the options you give in the property will be
|
|
|
-overwritten. For example:
|
|
|
-
|
|
|
-#+begin_src org
|
|
|
-,#+OPTIONS: skip:nil
|
|
|
-,* Computer Tricks
|
|
|
-, :PROPERTIES:
|
|
|
-, :EXPORT_FILE_NAME: ct.html
|
|
|
-, :EXPORT_TITLE: Steve's collected computer tricks
|
|
|
-, :EXPORT_OPTIONS: h:2 toc:nil
|
|
|
-, :END:
|
|
|
-#+end_src
|
|
|
-
|
|
|
-*** New way to define tags for an entire file.
|
|
|
-
|
|
|
- Tags that are defined in a line like
|
|
|
- : #+FILETAGS: work urgent
|
|
|
- are inherited by all entries in the file.
|
|
|
-
|
|
|
- Thanks to Manuel Hermenegildo for this proposal.
|
|
|
-
|
|
|
-* Version 6.03
|
|
|
-
|
|
|
-** Overview
|
|
|
-
|
|
|
- - Description lists are now supported natively
|
|
|
- - Block quotes for export
|
|
|
- - Fontified code examples in HTML export
|
|
|
- - Include files for export
|
|
|
- - Text before the first headline is now exported by default
|
|
|
- - In-buffer options may now be collected in an external file
|
|
|
- - The in-buffer settings keywords may now be lower case
|
|
|
- - Completion of structure elements
|
|
|
- - Startup visibility can now be influenced by properties
|
|
|
- - Clock task history, moving entries with the running clock
|
|
|
- - BBDB anniversaries much faster
|
|
|
- - New contrib files: org-eval.el and org-mtags.el
|
|
|
-
|
|
|
-** Incompatible changes
|
|
|
-
|
|
|
-- The text before the first headline is now exported by default
|
|
|
-
|
|
|
- Previously, the default was to not include text in an org-mode
|
|
|
- buffer before the first headline. From now on, the default it to
|
|
|
- include it. If you like the old default better, customize the
|
|
|
- variable =org-export-skip-text-before-1st-heading= or set the
|
|
|
- value on a per-file basis with
|
|
|
-
|
|
|
-#+begin_src org
|
|
|
-#+OPTIONS: skip:t
|
|
|
-#+end_src
|
|
|
-
|
|
|
-** Details
|
|
|
-
|
|
|
-*** Description lists are now supported natively
|
|
|
-
|
|
|
- A plain list will be exported as a description list if the
|
|
|
- first item in the list has a /term/ and the /description/,
|
|
|
- separated by " :: ". For example
|
|
|
-
|
|
|
- : Emacs software by Carsten Dominik
|
|
|
- : - RefTeX :: Support for LaTeX Labels, References, Citations
|
|
|
- : - CDLaTeX :: more LaTeX functionality for Emacs
|
|
|
- : - TeXmathp :: checking LaTeX buffers for Math mode.
|
|
|
- : - ORG :: An Emacs mode for notes and projet planning.
|
|
|
- : - CONSTANTS :: An Emacs package for inserting the definition of
|
|
|
- : natural constants and units into a buffer.
|
|
|
- : - IDLWAVE :: The Emacs modes for editing and
|
|
|
- : running IDL and WAVE CL files.
|
|
|
-
|
|
|
- will be rendered as
|
|
|
-
|
|
|
- Emacs software by Carsten Dominik
|
|
|
- - RefTeX :: Support for LaTeX Labels, References, Citations
|
|
|
- - CDLaTeX :: more LaTeX functionality for Emacs
|
|
|
- - TeXmathp :: checking LaTeX buffers for Math mode.
|
|
|
- - ORG :: An Emacs mode for notes and projet planning.
|
|
|
- - CONSTANTS :: An Emacs package for inserting the definition of
|
|
|
- natural constants and units into a buffer.
|
|
|
- - IDLWAVE :: The Emacs modes for editing and
|
|
|
- running IDL and WAVE CL files.
|
|
|
-
|
|
|
- This works now in the HTML exporter, we still need to supoort
|
|
|
- it with the LaTeX and ASCII exporters.
|
|
|
-
|
|
|
-*** Block quotes for export
|
|
|
-
|
|
|
- For quoting an entire paragraph as a citation, use
|
|
|
-
|
|
|
-#+begin_src org
|
|
|
-,#+BEGIN_QUOTE
|
|
|
-Everything should be made as simple as possible,
|
|
|
-but not any simpler -- Albert Einstein
|
|
|
-,#+BEGIN_QUOTE
|
|
|
-#+end_src
|
|
|
-
|
|
|
- which will render as
|
|
|
-
|
|
|
-#+BEGIN_QUOTE
|
|
|
-Everything should be made as simple as possible,
|
|
|
-but not any simpler -- Albert Einstein
|
|
|
-#+BEGIN_QUOTE
|
|
|
-
|
|
|
-*** Fontified code examples in HTML export
|
|
|
-
|
|
|
- You can now get code examples fontified like they would be
|
|
|
- fontified in an Emacs Buffer, and export the result to HTML.
|
|
|
- To do so, wrap the code examples into the following
|
|
|
- structure:
|
|
|
-
|
|
|
-#+begin_src org
|
|
|
-,#+BEGIN_SRC emacs-lisp
|
|
|
-(defun org-xor (a b)
|
|
|
- "Exclusive or."
|
|
|
- (if a (not b) b))
|
|
|
-,#+END_SRC
|
|
|
-#+end_src
|
|
|
-
|
|
|
- In the export, this will then look like this (if you are now
|
|
|
- looking at the ASCII export and do not see anything
|
|
|
- interesting, go and check out the HTML version at
|
|
|
- http://orgmode.org/Changes.html).
|
|
|
-
|
|
|
-#+BEGIN_SRC emacs-lisp
|
|
|
-(defun org-xor (a b)
|
|
|
- "Exclusive or."
|
|
|
- (if a (not b) b))
|
|
|
-#+END_SRC
|
|
|
-
|
|
|
- The string after the =BEGIN_SRC= is the name of the major emacs
|
|
|
- mode that should be used to fontify the code example, without the
|
|
|
- "-mode" at the end of the mode name. For example, if you are
|
|
|
- writing an Org tutorial with Org examples included, you would use
|
|
|
- "org" as the language identifier - in fact, I have used just
|
|
|
- that in the example above.
|
|
|
-
|
|
|
- Currently this works only for HTML export, and requires the
|
|
|
- /htmlize.el/ package, version 1.34 or later. For other
|
|
|
- backends, such structures are simply exported as EXAMPLE.
|
|
|
-
|
|
|
-*** Include files for export
|
|
|
-
|
|
|
- A line like
|
|
|
-
|
|
|
- : #+INCLUDE "file" markup lang
|
|
|
-
|
|
|
- will lead to the inclusion of the contents of FILE at the moment
|
|
|
- of publishing. FILE should be surrounded by double quotes, this
|
|
|
- is obligatory if it contains space characters. The parameters
|
|
|
- MARKUP and LANG are optional. MARKUP can be "example", "quote",
|
|
|
- or "src". If it is "src", LANG should be the name of the Emacs
|
|
|
- mode to be used for fontifying the code. For example:
|
|
|
-
|
|
|
- : Here is my /.emacs/ file:
|
|
|
- : #+INCLUDE "~/.emacs" src emacs-lisp
|
|
|
-
|
|
|
-*** The text before the first headline is now exported by default
|
|
|
-
|
|
|
- Previously, the default was to not include text in an org-mode
|
|
|
- buffer before the first headline. From now on, the default it to
|
|
|
- include it. If you like the old default better, customize the
|
|
|
- variable =org-export-skip-text-before-1st-heading= or set the
|
|
|
- value on a per-file basis with
|
|
|
-
|
|
|
- : #+OPTIONS: skip:t
|
|
|
-
|
|
|
-
|
|
|
-*** In-buffer options may now be collected in an external file
|
|
|
-
|
|
|
- If you would like to share the Org setup between a number of
|
|
|
- files, you can now store in-buffer setup in a file and simply
|
|
|
- point to that file from each file that should read it. If
|
|
|
- you write in a buffer
|
|
|
-
|
|
|
- : #+SETUPFILE: "path/to/setup.org"
|
|
|
-
|
|
|
- then this file will be scanned for in-buffer options like
|
|
|
- =#+STARTUP=, =#+TITLE=, or =#+OPTIONS=.
|
|
|
-
|
|
|
-*** The in-buffer settings keywords may now be upper or lower case
|
|
|
-
|
|
|
- From now on, it makes no difference is you write =#+STARTUP= or
|
|
|
- =#+startup=, to make these lines less imposing. Similarly for all
|
|
|
- other in-buffer keywords.
|
|
|
-
|
|
|
-*** Completion of structure elements
|
|
|
- As a new experimental feature, Org now supports completion of
|
|
|
- structural elements like =#+BEGIN_EXAMPLE= in a special way.
|
|
|
- It work by typing, for example "<e" and then pressing TAB, on
|
|
|
- an otherwise empty line. "<e" will expand into a complete
|
|
|
- EXAMPLE template, with the cursor positioned in the middle.
|
|
|
- Currently supported templates are:
|
|
|
-
|
|
|
- : <s #+begin_src
|
|
|
- : <e #+begin_example
|
|
|
- : <q #+begin_quote
|
|
|
- : <v #+begin_verse
|
|
|
- : <l #+begin_latex
|
|
|
- : <L #+latex:
|
|
|
- : <h #+begin_html
|
|
|
- : <H #+html:
|
|
|
- : <a #+begin_ascii
|
|
|
- : <i #+include
|
|
|
-
|
|
|
- This is an experimental feature, please comment! See also
|
|
|
- below under /org-mtags.el/.
|
|
|
-
|
|
|
-*** Startup visibility can now be influenced by properties
|
|
|
-
|
|
|
- When Emacs opens an Org mode buffer, the outline visibility
|
|
|
- is set to a startup value that is taken from the variable
|
|
|
- =org-startup-folded=, or from a =#+STARTUP= setting in the
|
|
|
- buffer. After this has happened, the buffer will now also be
|
|
|
- scanned for entries with a =VISIBILITY= property. Wherever
|
|
|
- such a property is found, the corresponding subtree will get
|
|
|
- its visibility adjusted. Allowed values for the property
|
|
|
- are:
|
|
|
-
|
|
|
- - folded :: Fold the subtree
|
|
|
- - children :: Show the text after the headline, and the
|
|
|
- headlines of all direct children
|
|
|
- - content :: Show all headlines in the tree, but no text below any
|
|
|
- headline
|
|
|
- - all :: Show the entire subtree
|
|
|
-
|
|
|
- For example, I am using this for the huge /Changes.org/ file that
|
|
|
- is the source for the list of visible changes you are reading
|
|
|
- right now. The top-most entry in this file always describes the
|
|
|
- changes in my current working version. The start of this section
|
|
|
- currently looks like this:
|
|
|
-
|
|
|
-#+begin_src org
|
|
|
-,* Version 6.03
|
|
|
-, :PROPERTIES:
|
|
|
-, :VISIBILITY: content
|
|
|
-, :END:
|
|
|
-,** Overview
|
|
|
-#+end_src
|
|
|
-
|
|
|
- This was a proposal by Ben Alexander.
|
|
|
-
|
|
|
- The command =C-u C-u TAB= will switch back to the startup
|
|
|
- visibility of the buffer.
|
|
|
-
|
|
|
-*** Clock task history, and moving entries with the running clock
|
|
|
-
|
|
|
- Org now remembers the last 5 tasks that you clocked into, to
|
|
|
- make it easier to clock back into a task after interrupting
|
|
|
- it for another task.
|
|
|
- - =C-u C-u C-c C-x C-i= (or =C-u C-u I= from the agenda) will
|
|
|
- clock into that task and mark it as current default task.
|
|
|
- - =C-u C-c C-x C-i= (or =C-u I= from the agenda) will offer a
|
|
|
- list of recently clocked tasks, including the default task,
|
|
|
- for selection. =d= selects the default task, =i= selects
|
|
|
- the task that was interrupted by the task that is currently
|
|
|
- being clocked. =1=,... selects a recent task. When you
|
|
|
- select a task, you will be clocked into it.
|
|
|
- - You can use =C-u C-c C-x C-j= to jump to any of these
|
|
|
- tasks.
|
|
|
-
|
|
|
- When moving an entry using structure editing commands,
|
|
|
- archiving commands, or the special subtree cut-and-paste
|
|
|
- commands =C-c C-x C-w= and =C-c C-x C-y=, the running clock
|
|
|
- marker and all clock history markers will be moved with the
|
|
|
- subtree. Now you can start a clock in a remember buffer and
|
|
|
- keep the clock running while filing the note away. See also
|
|
|
- the variable `org-remember-clock-out-on-exit'.
|
|
|
-
|
|
|
-*** BBDB anniversaries much faster
|
|
|
-
|
|
|
- =bbdb-anniversaries= is now much faster, thanks to a new
|
|
|
- approach using a hash for birthdays. Thanks to Thomas
|
|
|
- Baumann for a patch to this effect.
|
|
|
-
|
|
|
-*** New files in the contrib directory
|
|
|
-
|
|
|
- Do people think any of these should become core?
|
|
|
-
|
|
|
- - org-eval.el :: This new module allows to include the result
|
|
|
- of the evaluation of Lisp code (and other scripting
|
|
|
- languages) into the buffer, similar to the =<lisp>= tag
|
|
|
- of [[http://mwolson.org/static/doc/emacs-wiki.html#Lisp-Tricks][Emacs Wiki]] and [[http://mwolson.org/static/doc/muse/Embedded-Lisp.html#Embedded-Lisp][Muse]].
|
|
|
- - org-mtags.el :: This new modules allows you to use
|
|
|
- Muse-like tags for some structure definitions in Org.
|
|
|
- For example, instead of
|
|
|
- :#+BEGIN_EXAMPLE
|
|
|
- :...
|
|
|
- :#+END_EXAMPLE
|
|
|
- you can write
|
|
|
- :<example>
|
|
|
- :...
|
|
|
- :</example>
|
|
|
- In fact, I myself find these easier to type and to look
|
|
|
- at. Also, it will allow you to more easily move text
|
|
|
- and files back and forth between Org and Muse. For a
|
|
|
- list of supported structure elements, see the commentary
|
|
|
- in the file [[http://repo.or.cz/w/org-mode.git?a=blob_plain;f=contrib/lisp/org-mtags.el;hb=HEAD][commentary in the file org-mtags.el]].
|
|
|
-
|
|
|
- If you load this module and use the "<i" etc completion
|
|
|
- described above, the Muse form will automatically be
|
|
|
- inserted.
|
|
|
-
|
|
|
-*** Bug fixes
|
|
|
- Many bug fixes again. Will this ever stop?
|
|
|
-
|
|
|
-* Version 6.02
|
|
|
-
|
|
|
-** Overview
|
|
|
-
|
|
|
- - Column view (mostly) works now in XEmacs
|
|
|
- - Summaries for columns in the agenda
|
|
|
- - The special property Effort can be used for effort estimates
|
|
|
- - New operators for property searches
|
|
|
- - Search commands can now include archive files.
|
|
|
- - Clock tables can include the archive files
|
|
|
- - Orgtbl radio tables generalized.
|
|
|
-
|
|
|
-** Details
|
|
|
-
|
|
|
-*** Column view works now in XEmacs
|
|
|
-
|
|
|
- I had already given up on this, but Greg Chernev (who
|
|
|
- implemented noutline.el for XEmacs and in this way kept Org
|
|
|
- alive on XEmacs) has done it again and provided the patches
|
|
|
- to make column view work under XEmacs. There are still some
|
|
|
- problems, but the basics work and we will iron out the
|
|
|
- remaining issues, hopefully soon.
|
|
|
-
|
|
|
-*** Summaries for columns in the agenda
|
|
|
-
|
|
|
- If any of the columns has a summary type defined, turning on
|
|
|
- column view in the agenda will show summaries for these
|
|
|
- columns. Org will first visit all relevant agenda files and
|
|
|
- make sure that the computations of this property are up to
|
|
|
- date. This is also true for the special =CLOCKSUM= property.
|
|
|
- Org will then sum the values displayed in the agenda. In the
|
|
|
- daily/weekly agenda, the sums will cover a single day, in all
|
|
|
- other views they cover the entire block. It is vital to
|
|
|
- realize that the agenda may show the same entry multiple
|
|
|
- times (for example as scheduled and as a deadline), and it
|
|
|
- may show two entries from the same hierarchy (for example a
|
|
|
- /parent/ and it's /child/). In these cases, the summation in
|
|
|
- the agenda will lead to incorrect results because some values
|
|
|
- will count double.
|
|
|
-
|
|
|
-*** The special property Effort can be used for effort estimates
|
|
|
-
|
|
|
- If you want to plan your work in a very detailed way, or if
|
|
|
- you need to produce offers with quotations of the estimated
|
|
|
- work effort, you may want to assign effort estimates to
|
|
|
- entries. If you are also clocking your work, you may later
|
|
|
- want to compare the planned effort with the actual working
|
|
|
- time. Effort estimates can now be stored in a special
|
|
|
- property =Effort=, displayed side-to-side with clock sums,
|
|
|
- and also be summed over a day, in order to show the planned
|
|
|
- work load of a day. See the manual for more details.
|
|
|
-
|
|
|
-*** New operators for property searches
|
|
|
-
|
|
|
- Property searches can now choose a number of different
|
|
|
- operators for comparing values. These operators are `=',
|
|
|
- `<>', `<', `<=', `>', and `>='.
|
|
|
-
|
|
|
- When the search term uses the operator with plain number like
|
|
|
- =+Effort>=2.7=, then the property value is converted to a
|
|
|
- number and a numerical comparison takes place.
|
|
|
-
|
|
|
- When the search term uses a string on the right hand side of
|
|
|
- the operator, a string comparison is done: =+PRIORITY<"C".=
|
|
|
-
|
|
|
- Finally, if the right hand side is enclosed in curly braces,
|
|
|
- a regexp match is done: =aaa={regexp}=. In this case you
|
|
|
- should use only the `=' or `<>' operators, meaning "does
|
|
|
- match" or "does not match", respectively.
|
|
|
-
|
|
|
- This was a triggered with a request by Dan Davison.
|
|
|
-
|
|
|
-*** Search commands can now include archive files.
|
|
|
-
|
|
|
- If the value of the customization variable
|
|
|
- =org-agenda-text-search-extra-files= contains the symbol
|
|
|
- =agenda-archives= as the first element in the list, all
|
|
|
- archive files of all agenda files will be added to the list
|
|
|
- of files to search. This is relevant for the search view
|
|
|
- =C-c a s=, as well as for the agenda files multi-occur
|
|
|
- command =C-c a /=.
|
|
|
-
|
|
|
-*** Clock tables can include the archive files
|
|
|
-
|
|
|
- There are new values for the =:scope= parameter of a clock
|
|
|
- table. This can now be =file-with-archives= and
|
|
|
- =agenda-with-archives=, in order to collect information not
|
|
|
- only from the current file or all agenda files, but also from
|
|
|
- all archive files that are currently used by these files.
|
|
|
-
|
|
|
-*** Orgtbl radio tables generalized.
|
|
|
-
|
|
|
- The options available for radio tables using orgtbl-mode have
|
|
|
- been expanded. You may use several reception points and
|
|
|
- formats for the same table, you may have special formatting
|
|
|
- in the last line of the table, and many table parameters may
|
|
|
- be functions, so that more general transformations are
|
|
|
- possible. Jason Riedy provided a patch for this, and he will
|
|
|
- hopefully come up with some examples. Thanks!
|
|
|
-
|
|
|
-* Version 6.01
|
|
|
-
|
|
|
-This is a new major release, mostly because of structural changes
|
|
|
-in Org. However, since this took a while, there is also a long
|
|
|
-list of small improvements and some new significant features.
|
|
|
-
|
|
|
-** Overview
|
|
|
-
|
|
|
- - The Org distribution has a new structure
|
|
|
- - New system for selecting modules to load
|
|
|
- - New archiving mechanism: The Archive Sibling
|
|
|
- - Support for Sebastian Rose's JavaScript org-info.js.
|
|
|
- - Internal links work now better in HTML export
|
|
|
- - Export commands can be done in the background
|
|
|
- - Flexible setting of the time block shown by the clock table
|
|
|
- - Clock table can be included in the agenda
|
|
|
- - Support for ISO week dates (ISO 6801)
|
|
|
- - Tag inheritance can be limited to a subset of all tags
|
|
|
- - Entries can be sorted by TODO keyword
|
|
|
- - And some more small fixes and improvements
|
|
|
-
|
|
|
-** Incompatible changes
|
|
|
-
|
|
|
-*** The Org distribution has a new structure
|
|
|
-
|
|
|
- In the distribution files as well as in the GIT repository,
|
|
|
- the lisp files are now located in a subdirectory "lisp", and
|
|
|
- the documentation files are located in a subdirectory "doc".
|
|
|
- If you are running Org directly from the unpacked
|
|
|
- distribution archive (zip or tar file, or GIT repository),
|
|
|
- you need to modify your settings for load-path accordingly.
|
|
|
-
|
|
|
-** Details
|
|
|
-
|
|
|
-*** The Org distribution has a new structure
|
|
|
-
|
|
|
- In the distribution files as well as in the GIT repository,
|
|
|
- the lisp files are now located in a subdirectory "lisp", and
|
|
|
- the documentation files are located in a subdirectory "doc".
|
|
|
- If you are running Org directly from the unpacked
|
|
|
- distribution archive (zip or tar file, or GIT repository),
|
|
|
- you need to modify your settings for load-path accordingly.
|
|
|
-
|
|
|
-*** Loading modules
|
|
|
-
|
|
|
- Org-mode has now a system for loading modules by simply
|
|
|
- configuring an option that lists all the modules you want to
|
|
|
- use. Customize the variable `org-modules'. That variable
|
|
|
- lists both modules that are part of the Org-mode core (and in
|
|
|
- this way part of Emacs), and modules that are contributed
|
|
|
- packages. Contributed modules will only be available when
|
|
|
- you have installed them properly (most likely by downloading
|
|
|
- the distribution and adding /path/to/orgdir/contrib/lisp to
|
|
|
- your load path).
|
|
|
-
|
|
|
-*** New archiving mechanism: The Archive Sibling
|
|
|
-
|
|
|
- There is a new method to archive entries in the current file:
|
|
|
- By moving it to a sibling called the /Archive Sibling/. That
|
|
|
- sibling has the heading "Archive" and also carries the
|
|
|
- ARCHIVE tag. This can be a great way to do archiving inside
|
|
|
- a project, to get parts of the project out of the way and to
|
|
|
- wait with true archiving (moving to another file) until the
|
|
|
- entire project is done. Archiving to a sibling keeps much of
|
|
|
- the context, for example inherited tags and approximate tree
|
|
|
- position in tact.
|
|
|
-
|
|
|
- The key binding for the is "C-c C-x A", and from the agenda
|
|
|
- buffer you can simply use "A".
|
|
|
-
|
|
|
- Thanks to Ilya Shlyakhter for this rather clever idea.
|
|
|
-
|
|
|
-*** Support for Sebastian Rose's JavaScript org-info.js.
|
|
|
-
|
|
|
- This fascinating program allows a completely new viewing
|
|
|
- experience for web pages created from Org files. The same
|
|
|
- document can be viewed in different ways, and switching
|
|
|
- between the views as well as navigation uses single-key
|
|
|
- commands.
|
|
|
-
|
|
|
- One of the view types is an /Info-like/ interface where you
|
|
|
- can jump through the sections of the document with the `n'
|
|
|
- and `p' keys (and others). There is also a /folding/
|
|
|
- interface where you can fold the document much like you can
|
|
|
- fold it in org-mode in Emacs, and cycle through the
|
|
|
- visibility both locally and globally.
|
|
|
-
|
|
|
- To set this up, all you need to do is to make sure that
|
|
|
- org-infojs.el gets loaded (customize the variable org-modules
|
|
|
- to check). Then add this line to the buffer:
|
|
|
-
|
|
|
- : #+INFOJS_OPT: view:info
|
|
|
-
|
|
|
- In that line, you can configure the initial view and other
|
|
|
- settings. Available views are =info= for the info-like
|
|
|
- interface, and =overview=, =content=, and =showall= for the
|
|
|
- folding interface. See the manual for more details. The
|
|
|
- JavaScript program is served from
|
|
|
- http://orgmode.org/org-info.js, and your exported HTML files
|
|
|
- will automatically get it from there. However, you may want
|
|
|
- to be independent of the existence and stability of
|
|
|
- orgmode.org and install a copy locally. Then you need to
|
|
|
- change the path from which the script is loaded, either by
|
|
|
- using something like
|
|
|
-
|
|
|
- : #+INFOJS_OPT: view:info path:../scripts/org-info.js
|
|
|
-
|
|
|
- or by configuring the variable =org-infojs-options=.
|
|
|
-
|
|
|
- For details see the documentation provided by Sebastian Rose
|
|
|
- together with org-info.js.
|
|
|
-
|
|
|
-*** Export improvements
|
|
|
-
|
|
|
- - The export of internal links to HTML now works a lot
|
|
|
- better. Most internal links that work while editing an Org
|
|
|
- file inside Emacs will now also work the the corresponding
|
|
|
- HTML file.
|
|
|
-
|
|
|
- - You can run many of the export commands in the background
|
|
|
- by using `C-c C-u C-c C-e' in order to start the process.
|
|
|
- RIght now this will only work if "emacs" is the right
|
|
|
- command to get to your Emacs executable - I hope to make
|
|
|
- this less system dependent in the future.
|
|
|
-
|
|
|
- Both these are based on requests by Ilya Shlyakhter.
|
|
|
-
|
|
|
-*** Improvements to clocktable
|
|
|
-
|
|
|
- - The clocktable is now much more flexible and user friendly
|
|
|
- when trying to specify the time block that should be
|
|
|
- considered when constructing the table.
|
|
|
-
|
|
|
- The =:block= parameter to the table can now look like any
|
|
|
- of these:
|
|
|
-
|
|
|
- | :block | meaning |
|
|
|
- |--------------+-----------------------|
|
|
|
- | 2008 | The entire year 2008 |
|
|
|
- | 2008-04 | The month April 2008 |
|
|
|
- | 2008-04-02 | The day April 2, 2008 |
|
|
|
- | 2008-W14 | ISO-Week 14 in 2008 |
|
|
|
- | today | Today |
|
|
|
- | today-5 | The day five days ago |
|
|
|
- | thisweek | The current week |
|
|
|
- | thisweek-2 | Two weeks ago |
|
|
|
- | thismonth | The current month |
|
|
|
- | thismonth-12 | Same month, last year |
|
|
|
- | lastmonth | Same as thismonth-1 |
|
|
|
-
|
|
|
-
|
|
|
- What is more, you can now use the =S-left= and =S-right=
|
|
|
- keys to shift the time block around. The cursor needs to
|
|
|
- be in the =#+BEGIN: clocktable= line for this to work. If
|
|
|
- the current block is =today=, =S-left= with switch to
|
|
|
- yesterday. If the current block is =2008-W14=, =S-right=
|
|
|
- will switch to the following week.
|
|
|
-
|
|
|
- - When the clocktable is collecting from several files, the
|
|
|
- total time for each file will now also be listed. This was
|
|
|
- a request from Bernt Hansen.
|
|
|
-
|
|
|
- - If you turn on the new clock report mode with the "R" key in
|
|
|
- the agenda, a clock table will be attached to the agenda,
|
|
|
- showing the clock report for the file scope and time
|
|
|
- interval of the agenda view. To turn this on permanently,
|
|
|
- configure the variable
|
|
|
- =org-agenda-start-with-clock report-mode=. To modify the
|
|
|
- properties of the table, in particular the =:maxlevel=
|
|
|
- depth, configure =org-agenda-clockreport-parameter-plist=.
|
|
|
-
|
|
|
-*** Support for ISO week dates (ISO 6801)
|
|
|
-
|
|
|
- The agenda now shows the ISO week for the displayed dates, in
|
|
|
- the form =W08= for week 8.
|
|
|
-
|
|
|
- The keys =d=, =w=, =m=, and =y= in the agenda view now accept
|
|
|
- prefix arguments. Remember that in the agenda, you can
|
|
|
- directly type a prefix argument by typing a number, no need
|
|
|
- to press =C-u= first. The prefix argument may be used to
|
|
|
- jump directly to a specific day of the year, ISO week, month,
|
|
|
- or year, respectively. For example, =32 d= jumps to February
|
|
|
- 1st, =9 w= to ISO week number 9. When setting day, week, or
|
|
|
- month view, a year may be encoded in the prefix argument as
|
|
|
- well. For example, =200712 w= will jump to week 12 in the
|
|
|
- year 2007. If such a year specification has only one or two
|
|
|
- digits, it will be mapped to the interval 1938-2037.
|
|
|
-
|
|
|
- When entering a date at the date prompt, you may now also
|
|
|
- specify an ISO week. For example
|
|
|
-
|
|
|
- : w4 Monday of week 4
|
|
|
- : fri w4 Friday of week 4
|
|
|
- : w4-5 Same as above
|
|
|
- : 2012 w4 fri Friday of week 4 in 2012.
|
|
|
- : 2012-W04-5 Same as above
|
|
|
-
|
|
|
- So far I have not implemented the effect of
|
|
|
- `org-read-date-prefer-future' on this functionality, because
|
|
|
- it seemed too magic for me. I'd appreciate comments on this
|
|
|
- issue: Should `org-read-date-prefer-future' also push dates
|
|
|
- into the next year if the week you are entering has already
|
|
|
- passed in the current year? For consistency I guess this
|
|
|
- should be the case, but I cannot quite wrap my head around
|
|
|
- it.
|
|
|
-
|
|
|
- I hope but am not entirely convinced that this will behave
|
|
|
- sanely also during the first/last week of a year. Please
|
|
|
- test extensively and report back.
|
|
|
-
|
|
|
- This was a request by Thomas Baumann.
|
|
|
-
|
|
|
-*** Improvements in Search View
|
|
|
-
|
|
|
- - Calling search view with a C-u prefix will make it match
|
|
|
- only in TODO entries.
|
|
|
-
|
|
|
- - The single quote is no longer considered a word character
|
|
|
- during search, so that searching for the word "Nasim" will
|
|
|
- also match in "Nasim's".
|
|
|
-
|
|
|
-
|
|
|
-*** Misc
|
|
|
-
|
|
|
- - Inheritance of tags can now be limited to a subset of all
|
|
|
- tags, using the variable =org-use-tag-inheritance=. This
|
|
|
- variable may now be a regular expression or a list to
|
|
|
- select the inherited tags. Thanks to Michael Ekstrand for
|
|
|
- this excellent proposal.
|
|
|
-
|
|
|
- The regexp option is also implemented for
|
|
|
- =org-use-property-inheritance=, so that you can now select
|
|
|
- properties for inheritance my name.
|
|
|
-
|
|
|
- - The INHERIT flag to the function =org-entry-get= can be set
|
|
|
- to the symbol =selective=. If this is the case, then the
|
|
|
- value of the property will be retrieved using inheritance
|
|
|
- if and only if the setting in
|
|
|
- =org-use-property-inheritance= selects the property for
|
|
|
- inheritance.
|
|
|
-
|
|
|
- - There are now special faces for the date lines in the
|
|
|
- agenda/timeline buffers, and another special face for days
|
|
|
- that fall on a weekend: =org-agenda-date= and
|
|
|
- =org-agenda-date-weekend=. Both these faces are initially
|
|
|
- similar to the =org-agenda-structure= face, but you can
|
|
|
- customize them freely.
|
|
|
-
|
|
|
- - When an entry already has a scheduling or deadline time
|
|
|
- stamp, calling `C-c C-s' or `C-c C-d', respectively, will
|
|
|
- now use that old date as the default, and you can can use
|
|
|
- the "++4d" syntax to invoke shifts relative to that default
|
|
|
- date. Simply pressing RET at the prompt will keep the
|
|
|
- default date, not switch to today.
|
|
|
-
|
|
|
- This was an omission in the earlier implementation, spotted
|
|
|
- by Wanrong Lin. Thanks!
|
|
|
-
|
|
|
- - File names in remember templates can be relative, if they
|
|
|
- are, they will be interpreted relative to =org-directory=.
|
|
|
-
|
|
|
- - The handling of the clipboard when inserting into remember
|
|
|
- templates is now much better, and gives more control on what
|
|
|
- should be inserted with new %-escapes:
|
|
|
-
|
|
|
- - =%c= - Now always insert the head of the kill ring, never
|
|
|
- the X clipboard.
|
|
|
-
|
|
|
- - =%x= - Insert the content of the X clipboard. This is the
|
|
|
- first non-empty value from the PRIMARY, SECONDARY and
|
|
|
- CLIPBOARD X clipboards.
|
|
|
-
|
|
|
- - =%^C= - This allows the user to choose between any of the
|
|
|
- clipboard values available, the kill ring head, and the
|
|
|
- initial region if set.
|
|
|
-
|
|
|
- - =%^L= - Like =%^C=, but this inserts an org link using the
|
|
|
- selected value.
|
|
|
-
|
|
|
- Thanks to James TD Smith for this patch.
|
|
|
-
|
|
|
- - Table export to an internal file can now use a format
|
|
|
- specification, similar to the formats that are used by
|
|
|
- orgtbl radio tables. The default format is in the variable
|
|
|
- =org-table-export-default-format=. You can use properties
|
|
|
- =TABLE_EXPORT_FILE= and =TABLE_EXPORT_FORMAT= to specify the
|
|
|
- file name to which the export should go, and a local
|
|
|
- format. For example:
|
|
|
-
|
|
|
- : :PROPERTIES:
|
|
|
- : :TABLE_EXPORT_FILE: ~/xx.txt
|
|
|
- : :TABLE_EXPORT_FORMAT: orgtbl-to-generic :splice t :sep "\t"
|
|
|
- : :END:
|
|
|
-
|
|
|
- Thanks to James TD Smith for this patch.
|
|
|
-
|
|
|
- - Entries can be sorted by TODO keyword, and the order is given
|
|
|
- by the definition sequence of the TODO keywords in the
|
|
|
- variable =org-todo-keywords=, or in the =#+TODO= line. Use
|
|
|
- the "o" key when sorting with =C-c ^=.
|
|
|
-
|
|
|
- Thanks to James TD Smith for this patch.
|
|
|
-
|
|
|
-
|
|
|
* Older changes
|
|
|
|
|
|
For older Changes, see [[file:Changes_old.org]]
|