Captions and attributes for images and tables during export
[org-mode.git] / ORGWEBPAGE / Changes.org
blobe905f1eb79f1140106d5d9c6535d89a49715178d
1 #   -*- mode: org; fill-column: 65 -*-
3 #+STARTUP: hidestars
5 #+TITLE: Org-mode list of user-visible changes
6 #+AUTHOR:  Carsten Dominik
7 #+EMAIL:  carsten at orgmode dot org
8 #+OPTIONS: H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:{} *:t TeX:t LaTeX:nil
9 #+INFOJS_OPT: view:info toc:1 path:org-info.js tdepth:2 ftoc:t
10 #+LINK_UP: index.html
11 #+LINK_HOME: http://orgmode.org
14 * Version 6.15 (in preparation)
15   :PROPERTIES:
16   :VISIBILITY: content
17   :END:
18 ** Overview
19 ** Incompatible changes
20 ** Details
21 *** Captions and attributes for figures and tables.
23 Tables, and Hyperlinks that represent inlined images, can now be
24 equipped with additional information that will be used during
25 export.  The information will be taken from the following special
26 lines in the buffer and apply to the first following table or
27 link.
29   - #+CAPTION: :: The caption of the image or table.  This string
30        should be processed according to the export backend, but
31        this is not yet done.
32   - #+LABEL: :: A label to identify the figure/table for cross
33        references.  For HTML export, this string will become the
34        ID for the ~<div class="figure">~ element that encapsulates
35        the image tag and the caption.  For LaTeX export, this
36        string will be used as the argument of a ~\label{...}~
37        macro.  These lables will be available for internal links
38        like ~[[label][Table] ]~.
39   - #+ATTR_HTML: :: Attributes for HTML export of image, to be
40        added as attributes into the ~<img...>~ tag.  This string
41        will not be processed, so it should have immediately the
42        right format.
43   - #+ATTR_LaTeX: :: Attributes for LaTeX export of images, to
44        be inserted into the optional argument of the
45        ~\includegraphics[...]{file}~ command, to specify scaling,
46        clipping and other options.  This string will not be
47        processed, so it should have immediately the right
48        format, like =width=5cm,angle=90=
50 For LaTeX export, if either a caption or a label is given, the
51 element will be exported as a float, i.e. wrapped into a figure
52 or table environment.
54 * Version 6.14
55 ** Overview
57    - New relative timer to support timed notes 
58    - Special faces can be set for individual tags 
59    - The agenda shows now all tags, including inherited ones. 
60    - Exclude some tags from inheritance. 
61    - More special values for time comparisons in property searches 
62    - Control for exporting meta data 
63    - Cut and Paste with hot links from w3m to Org 
64    - LOCATION can be inherited for iCalendar export 
65    - Relative row references crossing hlines now throw an error 
67 ** Incompatible Changes
69 *** Relative row references crossing hlines now throw an error
70     
71     Relative row references in tables look like this: "@-4" which
72     means the forth row above this one.  These row references are
73     not allowed to cross horizontal separator lines (hlines).  So
74     far, when a row reference violates this policy, Org would
75     silently choose the field just next to the hline.
77     Tassilo Horn pointed out that this kind of hidden magic is
78     actually confusing and may cause incorrect formulas, and I do
79     agree.  Therefore, trying to cross a hline with a relative
80     reference will now throw an error.
81     
82     If you need the old behavior, customize the variable
83     `org-table-error-on-row-ref-crossing-hline'.
85 ** Details
87 *** New relative timer to support timed notes
89     Org now supports taking timed notes, useful for example while
90     watching a video, or during a meeting which is also recorded.
92     - =C-c C-x .= :: 
93       Insert a relative time into the buffer.  The first time
94       you use this, the timer will be started.  When called
95       with a prefix argument, the timer is reset to 0.
97     - =C-c C-x -= :: 
98       Insert a description list item with the current relative
99       time.  With a prefix argument, first reset the timer to 0.
101     - =M-RET= ::
102       Once the time list has been initiated, you can also use the
103       normal item-creating command to insert the next timer item.
105     - =C-c C-x 0= :: 
106       Reset the timer without inserting anything into the buffer.
107       By default, the timer is reset to 0.  When called with a
108       =C-u= prefix, reset the timer to specific starting
109       offset.  The user is prompted for the offset, with a
110       default taken from a timer string at point, if any, So this
111       can be used to restart taking notes after a break in the
112       process.  When called with a double prefix argument
113       =C-c C-u=, change all timer strings in the active
114       region by a certain amount.  This can be used to fix timer
115       strings if the timer was not started at exactly the right
116       moment.
118     Thanks to Alan Dove, Adam Spiers, and Alan Davis for
119     contributions to this idea.
121 *** Special faces can be set for individual tags
123     You may now use the variable =org-tag-faces= to define the
124     face used for specific tags, much in the same way as you can
125     do for TODO keywords.
127     Thanks to Samuel Wales for this proposal.
129 *** The agenda shows now all tags, including inherited ones.
131     This request has come up often, most recently it was
132     formulated by Tassilo Horn.
134     If you prefer the old behavior of only showing the local
135     tags, customize the variable =org-agenda-show-inherited-tags=.
137 *** Exclude some tags from inheritance.
139     So far, the only way to select tags for inheritance was to
140     allow it for all tags, or to do a positive selection using
141     one of the more complex settings for
142     `org-use-tag-inheritance'.  It may actually be better to
143     allow inheritance for all but a few tags, which was difficult
144     to achieve with this methodology.
146     A new option, `org-tags-exclude-from-inheritance', allows to
147     specify an exclusion list for inherited tags.
149 *** More special values for time comparisons in property searches
151     In addition to =<now>=, =<today>=, =<yesterday>=, and
152     =<tomorrow>=, there are more special values accepted now in
153     time comparisons in property searches:  You may use strings
154     like =<+3d>= or =<-2w>=, with units d, w, m, and y for day,
155     week, month, and year, respectively
157     Thanks to Linday Todd for this proposal.
159 *** Control for exporting meta data
161     All the metadata in a headline, i.e. the TODO keyword, the
162     priority cookie, and the tags, can now be excluded from
163     export with appropriate options:
165     | Variable                      | Publishing property | OPTIONS switch |
166     |-------------------------------+---------------------+----------------|
167     | org-export-with-todo-keywords | :todo-keywords      | todo:          |
168     | org-export-with-tags          | :tags               | tags:          |
169     | org-export-with-priority      | :priority           | pri:           |
171 *** Cut and Paste with hot links from w3m to Org
173     You can now use the key =C-c C-x M-w= in a w3m buffer with
174     HTML content to copy either the region or the entire file in
175     a special way.  When you yank this text back into an Org-mode
176     buffer, all links from the w3m buffer will continue to work
177     under Org-mode.
179     For this to work you need to load the new file /org-w3m.el./
180     Please check your org-modules variable to make sure that this
181     is turned on.
183     Thanks for Richard Riley for the idea and to Andy Stewart for
184     the implementation.
186 *** LOCATION can be inherited for iCalendar export
188     The LOCATION property can now be inherited during iCalendar
189     export if you configure =org-use-property-inheritance= like
190     this:
192 #+begin_src emacs-lisp
193 (setq org-use-property-inheritance '("LOCATION"))
194 #+end_src
196 * Version 6.13
198 ** Overview
200    - Keybindings in Remember buffers can be configured
201    - Support for ido completion
202    - New face for date lines in agenda column view
203    - Invisible targets become now anchors in headlines.
204    - New contributed file /org-exp-blocks.el/
205    - New contributed file /org-eval-light.el/
206    - Link translation
207    - BBDB links may use regular expressions.
208    - Link abbreviations can use %h to insert a url-encoded target value
209    - Improved XHTML compliance
211 ** Details
213 *** Keybindings in Remember buffers can be configured
215     The remember buffers created with Org's extensions are in
216     Org-mode, which is nice to prepare snippets that will
217     actually be stored in Org-mode files.  However, this makes it
218     hard to configure key bindings without modifying the Org-mode
219     keymap.  There is now a minor mode active in these buffers,
220     `org-remember-mode', and its keymap org-remember-mode-map can
221     be used for key bindings.  By default, this map only contains
222     the bindings for =C-c C-c= to store the note, and =C-c C-k=
223     to abort it.  Use `org-remember-mode-hook' to define your own
224     bindings like
226 #+begin_src emacs-lisp
227 (add-hook
228  'org-remember-mode-hook
229  (lambda ()
230    (define-key org-remember-mode-map
231      "\C-x\C-s" 'org-remember-finalize)))
232 #+end_src
234     If you wish, you can also use this to free the =C-c C-c=
235     binding (by binding this key to nil in the minor mode map),
236     so that you can use =C-c C-c= again to set tags.
238     This modification is based on a request by Tim O'Callaghan.
240 *** Support for ido completion
242     You can now get the completion interface from /ido.el/ for
243     many of Org's internal completion commands by turning on the
244     variable =org-completion-use-ido=. =ido-mode= must also be
245     active before you can use this.
247     This change is based upon a request by Samuel Wales.
249 *** New face for date lines in agenda column view
251     When column view is active in the agenda, and when you have
252     summarizing properties, the date lines become normal column
253     lines and the separation between different days becomes
254     harder to see.  If this bothers you, you can now customize
255     the face =org-agenda-column-dateline=.
257     This is based on a request by George Pearson.
259 *** Invisible targets become now anchors in headlines.
261     These anchors can be used to jump to a directly with an HTML
262     link, just like the =sec-xxx= ids.  For example, the
263     following will make a http link
264     =//domain/path-to-my-file.html#dummy= work:
266 #+begin_src org
267 ,# <<dummy>>
268 ,*** a headline
269 #+end_src
271     This is based on a request by Matt Lundin.
273 *** New contributed file /org-exp-blocks.el/
275     This new file implements special export behavior of
276     user-defined blocks.  The currently supported blocks are
278     - comment :: Comment blocks with author-specific markup
279     - ditaa ::  conversion of ASCII art into pretty png files
280          using Stathis  Sideris' /ditaa.jar/ program
281     - dot :: creation of graphs in the /dot/ language
282     - R :: Sweave type exporting using the R program
284     For more details and examples, see the file commentary in
285     /org-exp-blocks.el/.
287     Kudos to Eric Schulte for this new functionality, after
288     /org-plot.el/ already his second major contribution.  Thanks
289     to Stathis for this excellent program, and for allowing us to
290     bundle it with Org-mode.
292 *** New contributed file /org-eval-light.el/
294     This module gives control over execution Emacs Lisp code
295     blocks included in a file.
297     Thanks to Eric Schulte also for this file.
299 *** Link translation
301     You can now configure Org to understand many links created
302     with the Emacs Planner package, so you can cut text from
303     planner pages and paste them into Org-mode files without
304     having to re-write the links.  Among other things, this means
305     that the command =org-open-at-point-global= which follows
306     links not only in Org-mode, but in arbitrary files like
307     source code files etc, will work also with links created by
308     planner. The following customization is needed to make all of
309     this work
311 #+begin_src emacs-lisp
312 (setq org-link-translation-function
313       'org-translate-link-from-planner)
314 #+end_src
316    I guess an inverse translator could be written and integrated
317    into Planner.
319 *** BBDB links may use regular expressions.
321     This did work all along, but only now I have documented it.
323 *** =yank-pop= works again after yanking an outline tree
325     Samuel Wales had noticed that =org-yank= did mess up this
326     functionality.  Now you can use =yank-pop= again, the only
327     restriction is that the so-yanked text will not be
328     pro/demoted or folded.
330 *** Link abbreviations can use %h to insert a url-encoded target value
332     Thanks to Steve Purcell for a patch to this effect.
334 *** Improved XHTML compliance
336     Thanks to Sebastian Rose for pushing this.
338 *** Many bug fixes again.
339     
340 * Version 6.12
341 ** Overview
343    - A region of entries can now be refiled with a single command
344    - Fine-tuning the behavior of `org-yank'
345    - Formulas for clocktables
346    - Better implementation of footnotes for HTML export
347    - More languages for HTML export.
349 ** Details
351 *** A region of entries can now be refiled with a single command
352     
353     With =transient-make-mode= active (=zmacs-regions= under
354     XEmacs), you can now select a region of entries and refile
355     them all with a single =C-c C-w= command.
357     Thanks to Samuel Wales for this useful proposal.
359 *** Fine-tuning the behavior of =org-yank=
361     The behavior of Org's yanking command has been further
362     fine-tuned in order to avoid some of the small annoyances
363     this command caused.
365     - Calling =org-yank= with a prefix arg will stop any special
366       treatment and directly pass through to the normal =yank=
367       command.  Therefore, you can now force a normal yank with
368       =C-u C-y=.
370     - Subtrees will only be folded after a yank if doing so will
371       now swallow any non-white characters after the yanked text.
372       This is, I think a really important change to make the
373       command work more sanely.
375 *** Formulas for clocktables
377     You can now add formulas to a clock table, either by hand, or
378     with a =:formula= parameter.  These formulas can be used to
379     create additional columns with further analysis of the
380     measured times.
382     Thanks to Jurgen Defurne for triggering this addition.
384 *** Better implementation of footnotes for HTML export
385     
386     The footnote export in 6.11 really was not good enough.  Now
387     it works fine.  If you have customized
388     =footnote-section-tag=, make sure that your customization is
389     matched by =footnote-section-tag-regexp=.
391     Thanks to Sebastian Rose for pushing this change.
393 *** More languages for HTML export.
395     More languages are supported during HTML export.  This is
396     only relevant for the few special words Org inserts, like
397     "Table of Contents", or "Footnotes".  Also the encoding
398     issues with this feature seem to be solved now.
400     Thanks to Sebastian Rose for pushing me to fix the encoding
401     problems.
403 * Version 6.11
405 ** Overview
407    - Yanking subtree with =C-y= now adjusts the tree level
408    - State changes can now be shown in the log mode in the agenda
409    - Footnote in HTML export are now collected at the end of the document
410    - HTML export now validates again as XHTML
411    - The clock can now be resumed after exiting and re-starting Emacs
412    - Clock-related data can be saved and resumed across Emacs sessions
413    - Following file links can now use C-u C-u to force use of an external app
414    - Inserting absolute files names now abbreviates links with "~"
415    - Links to attachment files
416    - Completed repeated tasks listed briefly in agenda
417    - Remove buffers created during publishing are removed
419 ** Details
421 *** Yanking subtree with =C-y= now adjusts the tree level
422     When yanking a cut/copied subtree or a series of trees, the
423     normal yank key =C-y= now adjusts the level of the tree to
424     make it fit into the current outline position, without losing
425     its identity, and without swallowing other subtrees.
427     This uses the command =org-past-subtree=.  An additional
428     change in that command has been implemented: Normally, this
429     command picks the right outline level from the surrounding
430     *visible* headlines, and uses the smaller one.  So if the
431     cursor is between a level 4 and a level 3 headline, the tree
432     will be pasted as level 3.  If the cursor is actually *at*
433     the beginning of a headline, the level of that headline will
434     be used.  For example, lets say you have a tree like this:
436 #+begin_src org
437 ,* Level one
438 ,** Level two
439 ,(1)
440 ,(2)* Level one again
441 #+end_src
443     with (1) and (2) indicating possible cursor positions for the
444     insertion.  When at (1), the tree will be pasted as level 2.
445     When at (2), it will be pasted as level 1.
447     If you do not want =C-y= to behave like this, configure the
448     variable =org-yank-adjusted-subtrees=.
450     Thanks to Samuel Wales for this idea and a partial implementation.
452 *** State changes can now be shown in the log mode in the agenda
454     If you configure the variable =org-agenda-log-mode-items=,
455     you can now request that all logged state changes be included
456     in the agenda when log mode is active.  If you find this too
457     much for normal applications, you can also temporarily
458     request the inclusion of state changes by pressing =C-u l= in
459     the agenda.
461     This was a request by Hsiu-Khuern Tang.
463     You can also press `C-u C-u l' to get *only* log items in the
464     agenda, withour any timestamps/deadlines etc.
466 *** Footnote in HTML export are now collected at the end of the document
467     Previously, footnotes would be left in the document where
468     they are defined, now they are all collected and put into a
469     special =<div>= at the end of the document.
471     Thanks to Sebastian Rose for this request.
473 *** HTML export now validates again as XHTML.
475     Thanks to Sebastian Rose for pushing this cleanup.
477 *** The clock can now be resumed after exiting and re-starting Emacs
479     If the option =org-clock-in-resume= is t, and the first clock
480     line in an entry is unclosed, clocking into that task resumes
481     the clock from that time.
483     Thanks to James TD Smith for a patch to this effect.
485 *** Clock-related data can be saved and resumed across Emacs sessions
486     
487     The data saved include the contents of =org-clock-history=,
488     and the running clock, if there is one.
489     
490     To use this, you will need to add to your .emacs
492 #+begin_src emacs-lisp
493 (setq org-clock-persist t)
494 (setq org-clock-in-resume t)
495 (org-clock-persistence-insinuate)
496 #+end_src
498     Thanks to James TD Smith for a patch to this effect.
500 *** Following file links can now use C-u C-u to force use of an external app.
502     So far you could only bypass your setup in `org-file-apps'
503     and force opening a file link in Emacs by using a =C-u= prefix arg
504     with =C-c C-o=.  Now you can call =C-u C-u C-c C-o= to force
505     an external application.  Which external application depends
506     on your system.  On Mac OS X and Windows, =open= is used.  On
507     a GNU/Linux system, the mailcap settings are used.
509     This was a proposal by Samuel Wales.
511 *** Inserting absolute files names now abbreviates links with "~".
513     Inserting file links with =C-u C-c C-l= was buggy if the
514     setting of `org-link-file-path-type' was `adaptive' (the
515     default).  Absolute file paths were not abbreviated relative
516     to the users home directory.  This bug has been fixed.
518     Thanks to Matt Lundin for the report.
520 *** Links to attachment files
522     Even though one of the purposes of entry attachments was to
523     reduce the number of links in an entry, one might still want
524     to have the occasional link to one of those files.  You can
525     now use link abbreviations to set up a special link type that
526     points to attachments in the current entry.  Note that such
527     links will only work from within the same entry that has the
528     attachment, because the directory path is entry specific.
529     Here is the setup you need:
531 #+begin_src emacs-lisp
532 (setq org-link-abbrev-alist '(("att" . org-attach-expand-link)))
533 #+end_src
535     After this, a link like this will work
537     : [[att:some-attached-file.txt]]
539     This was a proposal by Lindsay Todd.
541 *** Completed repeated tasks listed briefly in agenda
543     When a repeating task, listed in the daily/weekly agenda under
544     today's date, is completed from the agenda, it is listed as
545     DONE in the agenda until the next update happens.  After the
546     next update, the task will have disappeared, of course,
547     because the new date is no longer today.
548     
549 *** Remove buffers created during publishing are removed
551     Buffers that are created during publishing are now deleted
552     when the publishing is over.  At least I hope it works like this.
554 * Version 6.10
556 ** Overview
558    - Secondary agenda filtering is becoming a killer feature
559    - Setting tags has now its own binding, =C-c C-q=
560    - Todo state changes can trigger tag changes
561    - C-RET will now always insert a new headline, never an item.
562    - Customize org-mouse.el feature set to free up mouse events
563    - New commands for export all the way to PDF (through LaTeX)
564    - Some bug fixed for LaTeX export, more bugs remain.
566 ** Details
568 *** Enhancements to secondary agenda filtering
570     This is, I believe, becoming a killer feature.  It allows you
571     to define fewer and more general custom agenda commands, and
572     then to do the final narrowing to specific tasks you are
573     looking for very quickly, much faster than calling a new
574     agenda command.
576     If you have not tries this yet, you should!
578 **** You can now refining the current filter by an additional criterion
579       When filtering an existing agenda view with =/=, you can
580       now narrow down the existing selection by an additional
581       condition.  Do do this, use =\= instead of =/= to add the
582       additional criterion.  You can also press =+= or =-= after
583       =/= to add a positive or negative condition.  A condition
584       can be a TAG, or an effort estimate limit, see below.
586 **** It is now possible to filter for effort estimates
587      This means to filter the agenda for the value of the Effort
588      property.  For this you should best set up global allowed
589      values for effort estimates, with
591 #+begin_src emacs-lisp
592 (setq org-global-properties
593       '(("Effort_ALL" . "0 0:10 0:30 1:00 2:00 3:00 4:00")))
594 #+end_src
595       
596      You may then select effort limits with single keys in the
597      filter.  It works like this:  After =/= or =\=, first select
598      the operator which you want to use to compare effort
599      estimates:
601      : <   Select entries with effort smaller than or equal to the limit
602      : >   Select entries with effort larger than or equal to the limit
603      : =   Select entries with effort equal to the limit
605      After that, you can press a single digit number which is
606      used as an index to the allowed effort estimates.
608      If you do not use digits to fast-select tags, you can even
609      skip the operator, which will then default to
610      `org-agenda-filter-effort-default-operator', which is by
611      default =<=.
613      Thanks to Manish for the great idea to include fast effort
614      filtering into the agenda filtering process.
616 **** The mode line will show the active filter
617      For example, if there is a filter in place that does select
618      for HOME tags, against EMAIL tags, and for tasks with an
619      estimated effort smaller than 30 minutes, the mode-line with
620      show =+HOME-EMAIL+<0:30=
622 **** The filter now persists when the agenda view is refreshed
623      All normal refresh commands, including those that move the
624      weekly agenda from one week to the next, now keep the
625      current filter in place.
627      You need to press =/ /= to turn off the filter.  However,
628      when you run a new agenda command, for example going from
629      the weekly agenda to the TODO list, the filter will be
630      switched off.
631    
632 *** Setting tags has now its own binding, =C-c C-q=
634     You can still use =C-c C-c= on a headline, but the new
635     binding should be considered as the main binding for this
636     command.  The reasons for this change are:
638     - Using =C-c C-c= for tags is really out of line with other
639       uses of =C-c C-c=.
641     - I hate it in Remember buffers when I try to set tags and I
642       cannot, because =C-c C-c= exits the buffer :-(
644     - =C-c C-q= will also work when the cursor is somewhere down
645       in the entry, it does not have to be on the headline.
647 *** Todo state changes can trigger tag changes
649     The new option =org-todo-state-tags-triggers= can be used to
650     define automatic changes to tags when a TODO state changes.
651     For example, the setting
653     : (setq org-todo-state-tags-triggers
654     :       '((done ("Today" . nil) ("NEXT" . nil))
655     :         ("WAITING" ("Today" . t))))    
657     will make sure that any change to any of the DONE states will
658     remove tags "Today" and "NEXT", while switching to the
659     "WAITING" state will trigger the tag "Today" to be added.
661     I use this mostly to get rid of TODAY and NEXT tags which I
662     apply to select an entry for execution in the near future,
663     which I often prefer to specific time scheduling.
665 *** C-RET will now always insert a new headline, never an item.
666     The new headline is inserted after the current subtree.
668     Thanks to Peter Jones for patches to fine-tune this behavior.
670 *** Customize org-mouse.el feature set
671     There is a new variable =org-mouse-features= which gives you
672     some control about what features of org-mouse you want to
673     use.  Turning off some of the feature will free up the
674     corresponding mouse events, or will avoid activating special
675     regions for mouse clicks.  By default I have urned off the
676     feature to use drag mouse events to move or promote/demote
677     entries.  You can of course turn them back on if you wish.
679     This variable may still change in the future, allowing more
680     fine-grained control.
682 *** New commands for export to PDF
684     This is using LaTeX export, and then processes it to PDF
685     using pdflatex.
687     : C-c C-e p     process to PDF.
688     : C-c C-e d     process to PDF, and open the file.
690 *** LaTeX export
691     - \usepackage{graphicx} is now part of the standard class
692       definitions.
693     - Several bugs fixed, but definitely not all of them :-(
695 *** New option `org-log-state-notes-insert-after-drawers'
697     Set this to =t= if you want state change notes to be inserted
698     after any initial drawers, i.e drawers the immediately follow
699     the headline and the planning line (the one with
700     DEADLINE/SCHEDULED/CLOSED information).
702 * Version 6.09
703 ** Incompatible
704 *** =org-file-apps= now uses regular expressions, see [[*%20org%20file%20apps%20now%20uses%20regular%20repressions%20instead%20of%20extensions][below]]
706 ** Details
708 *** =org-file-apps= now uses regular repressions instead of extensions
709     Just like in =auto-mode-alist=, car's in the variable
710     =org-file-apps= that are strings are now interpreted as
711     regular expressions that are matched against a file name.  So
712     instead of "txt", you should now write "\\.txt\\'" to make
713     sure the matching is done correctly (even though "txt" will
714     be recognized and still be interpreted as an extension).
716     There is now a shortcut to get many file types visited by
717     Emacs.  If org-file-apps contains `(auto-mode . emacs)', then
718     any files that are matched by `auto-mode-alist' will be
719     visited in emacs.
721 *** Changes to the attachment system
723     - The default method to attach a file is now to copy it
724       instead of moving it.
725     - You can modify the default method using the variable
726       `org-attach-method'.  I believe that most Unix people want
727       to set it to `ln' to create hard links.
728     - The keys =c=, =m=, and =l= specifically select =copy=,
729       =move=, or =link=, respectively, as the attachment method
730       for a file, overruling  `org-attach-method'.
731     - To create a new attachment as an Emacs buffer, you have not
732       now use =n= instead of =c=.
733     - The file list is now always retrieved from the directory
734       itself, not from the "Attachments" property.  We still
735       keep this property by default, but you can turn it off, by
736       customizing the variable =org-attach-file-list-property=.
738 * Version 6.08
740 ** Incompatible changes
742    - Changes in the structure of IDs, see [[*The%20default%20structure%20of%20IDs%20has%20changed][here]] for details.
744    - C-c C-a has been redefined, see [[*%20C%20c%20C%20a%20no%20longer%20calls%20show%20all][here]] for details.
746 ** Details
748 *** The default structure of IDs has changed
750     IDs created by Org have changed a bit:
751     - By default, there is no prefix on the ID.  There used to be
752       an "Org" prefix, but I now think this is not necessary.
753     - IDs use only lower-case letters, no upper-case letters
754       anymore.  The reason for this is that IDs are now also used
755       as directory names for org-attach, and some systems do not
756       distinguish upper and lower case in the file system.
757     - The ID string derived from the current time is now
758       /reversed/ to become an ID.  This assures that the first
759       two letters of the ID change fast, so hat it makes sense to
760       split them off to create subdirectories to balance load.
761     - You can now set the `org-id-method' to `uuidgen' on systems
762       which support it.
764 *** =C-c C-a= no longer calls `show-all'
766     The reason for this is that =C-c C-a= is now used for the
767     attachment system.  On the rare occasions that this command
768     is needed, use =M-x show-all=, or =C-u C-u C-u TAB=.
770 *** New attachment system
772     You can now attach files to each node in the outline tree.
773     This works by creating special directories based on the ID of
774     an entry, and storing files in these directories.  Org can
775     keep track of changes to the attachments by automatically
776     committing changes to git.  See the manual for more
777     information.
779     Thanks to John Wiegley who contributed this fantastic new
780     concept and wrote org-attach.el to implement it.
782 *** New remember template escapes
784     : %^{prop}p   to insert a property
785     : %k          the heading of the item currently being clocked
786     : %K          a link to the heading of the item currently being clocked
788     Also, when you exit remember with =C-2 C-c C-c=, the item
789     will be filed as a child of the item currently being
790     clocked.  So the idea is, if you are working on something and
791     think of a new task related to this or a new note to be
792     added, you can use this to quickly add information to that
793     task.
795     Thanks to James TD Smith for a patch to this effect.
797 *** Clicking with mouse-2 on clock info in mode-line visits the clock.
798     
799     Thanks to James TD Smith for a patch to this effect.
801 *** New file in contrib: lisp/org-checklist.el
803     This module deals with repeated tasks that have checkbox
804     lists below them.
806     Thanks to James TD Smith for this contribution.
808 *** New in-buffer setting #+STYLE
810     It can be used to locally set the variable
811     `org-export-html-style-extra'.  Several such lines are
812     allowed-, they will all be concatenated.  For an example on
813     how to use it, see the [[http://orgmode.org/worg/org-tutorials/org-publish-html-tutorial.php][publishing tutorial]].
815 * Version 6.07
817 ** Overview
819    - Filtering existing agenda views with respect to a tag
820    - Editing fixed-width regions with picture or artist mode
821    - /org-plot.el/ is now part of Org
822    - Tags can be used to select the export part of a document
823    - Prefix interpretation when storing remember notes
824    - Yanking inserts folded subtrees
825    - Column view capture tables can have formulas, plotting info
826    - In column view, date stamps can be changed with S-cursor keys
827    - The note buffer for clocking out now mentions the task
828    - Sorting entries alphabetically ignores TODO keyword and priority
829    - Agenda views can sort entries by TODO state
830    - New face =org-scheduled= for entries scheduled in the future.
831    - Remember templates for gnus links can use the :to escape.
832    - The file specification in a remember template may be a function
833    - Categories in iCalendar export include local tags
834    - It is possible to define filters for column view
835    - Disabling integer increment during table Field copy
836    - Capturing column view is on `C-c C-x i'
837    - And tons of bugs fixed.  
840 ** Incompatible changes
842 *** Prefix interpretation when storing remember notes has changed
844     The prefix argument to the `C-c C-c' command that finishes a
845     remember process is now interpreted differently:
847     : C-c C-c       Store the note to predefined file and headline
848     : C-u C-c C-c   Like C-c C-c, but immediately visit the note
849     :               in its new location.
850     : C-1 C-c C-c   Select the storage location interactively
851     : C-0 C-c C-c   Re-use the last used location
853     This was requested by John Wiegley.
855 *** Capturing column view is now on `C-c C-x i'
857     The reason for this change was that `C-c C-x r' is also used
858     as a tty key replacement.
860 *** Categories in iCalendar export now include local tags
862     The locally defined tags are now listed as categories when
863     exporting to iCalendar format.  Org's traditional file/tree
864     category is now the last category in this list.  Configure
865     the variable =org-icalendar-categories= to modify or revert
866     this behavior.
868     This was a request by Charles Philip Chan.
870 ** Details
872 *** Secondary filtering of agenda views.
874     You can now easily and interactively filter an existing
875     agenda view with respect to a tag.  This command is executed
876     with the =/= key in the agenda.  You will be prompted for a
877     tag selection key, and all entries that do not contain or
878     inherit the corresponding tag will be hidden.  With a prefix
879     argument, the opposite filter is applied: entries that
880     do have the tag will be hidden.
882     This operation only /hides/ lines in the agenda buffer, it
883     does not remove them.  Changing the secondary filtering does
884     not require a new search and is very fast.
886     If you press TAB at the tag selection prompt, you will be
887     switched to a completion interface to select a tag.  This is
888     useful when you want to select a tag that does not have a
889     direct access character.
891     A double =/ /= will restore the original agenda view by
892     unhiding any hidden lines.
894     This functionality was John Wiegley's idea.  It is a simpler
895     implementation of some of the query-editing features proposed
896     and implemented some time ago by Christopher League (see the
897     file contrib/lisp/org-interactive-query.el).
899 *** Editing fixed-width regions with picture or artist mode
901     The command @<code>C-c '@</code> (that is =C-c= followed by a
902     single quote) can now also be used to switch to a special
903     editing mode for fixed-width sections.  The default mode is
904     =artist-mode= which allows you to create ASCII drawings.
906     It works like this: Enter the editing mode with
907     @<code>C-c '@</code>.  An indirect buffer will be created and
908     narrowed to the fixed-width region.  Edit the drawing, and
909     press @<code>C-c '@</code> again to exit.
911     Lines in a fixed-width region should be preceded by a colon
912     followed by at least one space.  These will be removed during
913     editing, and then added back when you exit the editing mode.
915     Using the command in an empty line will create a new
916     fixed-width region.
918     This new feature arose from a discussion involving Scott
919     Otterson, Sebastian Rose and Will Henney.
921 *** /org-plot.el/ is now part of Org.
923     You can run it by simple calling org-plot/gnuplot.
924     Documentation is not yet included with Org, please refer to
925     http://github.com/eschulte/org-plot/tree/master until we have
926     moved the docs into Org or Worg.
928     Thanks to Eric Schulte for this great contribution.
930 *** Tags can be used to select the export part of a document
932     You may now use tags to select parts of a document for
933     inclusion into the export, and to exclude other parts.  This
934     behavior is governed by two new variables:
935     =org-export-select-tags= and =org-export-exclude-tags=.
936     These default to =("export")= and =("noexport")=, but can be
937     changed, even to include a list of several tags.
939     Org first checks if any of the /select/ tags is present in
940     the buffer.  If yes, all trees that do not carry one of these
941     tags will be excluded.  If a selected tree is a subtree, the
942     heading hierarchy above it will also be selected for export,
943     but not the text below those headings.  If none of the select
944     tags is found anywhere in the buffer, the whole buffer will
945     be selected for export.  Finally, all subtrees that are
946     marked by any of the /exclude/ tags will be removed from the
947     export buffer.
949     You may set these tags with in-buffer options
950     =EXPORT_SELECT_TAGS= and =EXPORT_EXCLUDE_TAGS=.
952     I love this feature.  Thanks to Richard G Riley for coming
953     up with the idea.
955 *** Prefix interpretation when storing remember notes
957     The prefix argument to the `C-c C-c' command that finishes a
958     remember process is now interpreted differently:
960     : C-c C-c       Store the note to predefined file and headline
961     : C-u C-c C-c   Like C-c C-c, but immediately visit the note
962     :               in its new location.
963     : C-1 C-c C-c   Select the storage location interactively
964     : C-0 C-c C-c   Re-use the last used location
966     This was requested by John Wiegley.
968 *** Yanking inserts folded subtrees
970     If the kill is a subtree or a sequence of subtrees, yanking
971     them with =C-y= will leave all the subtrees in a folded
972     state.  This basically means, that kill and yank are now
973     much more useful in moving stuff around in your outline.  If
974     you do not like this, customize the variable
975     =org-yank-folded-subtrees=.
977     Right now, I am only binding =C-y= to this new function,
978     should I modify all bindings of yank?  Do we need to amend
979     =yank-pop= as well?
981     This feature was requested by John Wiegley.
983 *** Column view capture tables can have formulas, plotting info
985     If you attach formulas and plotting instructions to a table
986     capturing column view, these extra lines will now survive an
987     update of the column view capture, and any formulas will be
988     re-applied to the captured table.  This works by keeping any
989     continuous block of comments before and after the actual
990     table.
992 *** In column view, date stamps can be changed with S-cursor keys
994     If a property value is a time stamp, S-left and S-right can
995     now be used to shift this date around while in column view.
997     This was a request by Chris Randle.
999 *** The note buffer for clocking out now mentions the task
1000     
1001     This was a request by Peter Frings.
1003 *** Sorting entries alphabetically ignores TODO keyword and priority
1005     Numerical and alphanumerical sorting now skips any TODO
1006     keyword or priority cookie when constructing the comparison
1007     string.  This was a request by Wanrong Lin.
1009 *** Agenda views can sort entries by TODO state
1011     You can now define a sorting strategy for agenda entries that
1012     does look at the TODO state of the entries.  Sorting by TODO
1013     entry does first separate the non-done from the done states.
1014     Within each class, the entries are sorted not alphabetically,
1015     but in definition order.  So if you have a sequence of TODO
1016     entries defined, the entries will be sorted according to the
1017     position of the keyword in this sequence.
1019     This follows an idea and sample implementation by Christian
1020     Egli.
1022 *** New face =org-scheduled= for entries scheduled in the future.
1024     This was a request by Richard G Riley.
1026 *** Remember templates for gnus links can now use the :to escape.
1028     Thanks to Tommy Lindgren for a patch to this effect.
1029 *** The file specification in a remember template may now be a function
1031     Thanks to Gregory Sullivan for a patch to this effect.
1033 *** Categories in iCalendar export now include local tags
1035     The locally defined tags are now listed as categories when
1036     exporting to iCalendar format.  Org's traditional file/tree
1037     category is now the last category in this list.  Configure
1038     the variable =org-icalendar-categories= to modify or revert
1039     this behavior.
1041     This was a request by Charles Philip Chan.
1043 *** It is now possible to define filters for column view
1045     The filter can modify the value that will be displayed in a
1046     column, for example it can cut out a part of a time stamp.
1047     For more information, look at the variable
1048     =org-columns-modify-value-for-display-function=.
1050 *** Disabling integer increment during table field copy
1052     Prefix arg 0 to S-RET does the trick.
1054     This was a request by Chris Randle.
1057 * Older changes
1059   For older Changes, see [[file:Changes_old.org]]
1062