Add "ITEM" to special properties
[org-mode/org-tableheadings.git] / etc / ORG-NEWS
bloba5945528d06c1358e7f94af86f1a08c09ad678f2
1 ORG NEWS -- history of user-visible changes.           -*- org -*-
3 #+LINK: doc http://orgmode.org/worg/doc.html#%s
4 #+LINK: git http://orgmode.org/w/?p=org-mode.git;a=commit;h=%s
6 Copyright (C) 2012-2013 Free Software Foundation, Inc.
7 See the end of the file for license conditions.
9 Please send Org bug reports to emacs-orgmode@gnu.org.
11 * Version 8.3
12 ** Incompatible changes
13 *** Properties drawers syntax changes
14 Properties drawers are now required to be located right after
15 a headline and its planning line, when applicable.
17 It will break some documents as TODO states changes were sometimes
18 logged before the property drawer.  The following function will repair
19 them.
21 #+BEGIN_SRC emacs-lisp
22 (defun org-repair-property-drawers ()
23   "Fix properties drawers in current buffer.
24 Ignore non Org buffers."
25   (when (eq major-mode 'org-mode)
26     (org-with-wide-buffer
27      (goto-char (point-min))
28      (let ((case-fold-search t)
29            (inline-re (and (featurep 'org-inlinetask)
30                            (concat (org-inlinetask-outline-regexp)
31                                    "END[ \t]*$"))))
32        (org-map-entries
33         (lambda ()
34           (unless (and inline-re (org-looking-at-p inline-re))
35             (save-excursion
36               (let ((end (save-excursion (outline-next-heading) (point))))
37                 (forward-line)
38                 (when (org-looking-at-p org-planning-line-re) (forward-line))
39                 (when (and (< (point) end)
40                            (not (org-looking-at-p org-property-drawer-re))
41                            (save-excursion
42                              (re-search-forward org-property-drawer-re end t)))
43                   (insert (delete-and-extract-region
44                            (match-beginning 0)
45                            (min (1+ (match-end 0)) end)))
46                   (unless (bolp) (insert "\n"))))))))))))
47 #+END_SRC 
48 *** No default title is provided when =TITLE= keyword is missing
49 Skipping =TITLE= keyword no longer provides the current file name, or
50 buffer name, as the title. Instead, simply ignore the title.
51 *** Signature changes
52 The following functions require an additional argument.  See their
53 docstring for more information.
54 - ~org-html-format-headline-function~
55 - ~org-html-format-inlinetask-function~
56 - ~org-latex-format-headline-function~
57 - ~org-latex-format-inlinetask-function~
58 ** Removed functions
59 *** Removed function ~org-beamer-insert-options-template~
60 This function inserted a Beamer specific template at point or in
61 current subtree.  Use ~org-export-insert-default-template~ instead, as
62 it provides more features and covers all export back-ends.  It is also
63 accessible from the export dispatcher.
64 ** Removed options
65 *** ~org-list-empty-line-terminates-plain-lists~ is deprecated
66 It will be kept in code base until next release, for backward
67 compatibility.
69 If you need to separate consecutive lists with blank lines, always use
70 two of them, as if this option was nil (default value).
71 *** Removed option =org-babel-sh-command=
72 This undocumented option defaulted to the value of =shell-file-name=
73 at the time of loading =ob-shell=.  The new behaviour is to use the
74 value of =shell-file-name= directly when the shell langage is =shell=.
75 To chose a different shell, either customize =shell-file-name= or bind
76 this variable locally.
77 *** Removed option =org-babel-sh-var-quote-fmt=
78 This undocumented option was supposed to provide different quoting
79 styles when changing the shell type.  Changing the shell type can now
80 be done directly from the source block and the quoting style has to be
81 compatible across all shells, so a customization doesn't make sense
82 anymore.  The chosen hard coded quoting style conforms to POSIX.
83 ** New features
84 *** Additional markup with =#+INCLUDE= keyword
85 The content of the included file can now be optionally marked up, for
86 instance as HTML.  See the documentation for details.
87 *** File links with =#+INCLUDE= keyword
88 Objects can be extracted via =#+INCLUDE= using file links.  It is
89 possible to include only the contents of the object.
90 *** Additional =:hline= processing to ob-shell
91 If the argument =:hlines yes= is present in a babel call, an optional
92 argument =:hlines-string= can be used to define a string to use as a
93 representation for the lisp symbol ='hline= in the shell program.  The
94 default is =hline=.
95 *** Drawers do not need anymore to be referenced in =#+DRAWERS=
96 One can use a drawer without listing it in the =#+DRAWERS= keyword,
97 which is now obsolete.  As a consequence, this change also deprecates
98 ~org-drawers~ variable.
99 *** Markdown export supports switches in source blocks
100 For example, it is now possible to number lines using the =-n= switch
101 in a source block.
102 *** New option in ASCII export
103 Plain lists can have an extra margin by setting
104 ~org-ascii-list-margin~ variable to an appopriate integer.
105 *** New blocks in ASCII export
106 ASCII export now supports =#+BEGIN_JUSTIFYRIGHT= and
107 =#+BEGIN_JUSTIFYLEFT= blocks.  See documentation for details.
108 *** More back-end specific publishing options
109 The number of publishing options specific to each back-end has been
110 increased.  See manual for details.
111 *** Export inline source blocks
112 Inline source code was used to be removed upon exporting.  They are
113 now handled as standard code blocks, i.e., the source code can appear
114 in the output, depending on the parameters.
115 *** Extend ~org-export-first-sibling-p~ and ~org-export-last-sibling-p~
116 These functions now support any element or object, not only headlines.
117 *** New function: ~org-export-table-row-in-header-p~
118 *** New filter: ~org-export-filter-body-functions~
119 Functions in this filter are applied on the body of the exported
120 document, befor wrapping it within the template.
121 *** Improve radio tables
122 Radio tables feature now relies on Org's export framework ("ox.el").
123 ~:no-escape~ parameter no longer exists, but additional global
124 parameters are now supported: ~:raw~, ~:backend~.  Moreover, there are
125 new parameters specific to some pre-defined translators, e.g.,
126 ~:environment~ and ~:booktabs~ for ~orgtbl-to-latex~.  See translators
127 docstrings (including ~orgtbl-to-generic~) for details.
128 *** Non-floating minted listings in Latex export
129 It is not possible to specify =#+attr_latex: :float nil= in conjunction with
130 source blocks exported by the minted package.
131 *** Field formulas can now create columns as needed
132 Previously, evaluating formulas that referenced out-of-bounds columns
133 would throw an error. A new variable
134 ~org-table-formula-create-columns~ was added to adjust this
135 behavior. It is now possible to silently add new columns, to do so
136 with a warning or to explicitly ask the user each time.
137 *** ASCII plot
138 Ability to plot values in a column through ASCII-art bars.
139 *** New hook: ~org-archive-hook~
140 This hook is called after successfully archiving a subtree, with point
141 on the original subtree, not yet deleted.
142 *** New option: ~org-attach-archive-delete~
143 When non-nil, attachments from archived subtrees are removed.
144 *** New option: ~org-latex-caption-above~
145 This variable generalizes ~org-latex-table-caption-above~, which is
146 now deprecated.  In addition to tables, it applies to source blocks,
147 special blocks and images.  See docstring for more information.
148 *** Export unnumbered headlines
149 Headlines, for which the property ~UNNUMBERED~ is non-nil, are now
150 exported without section numbers irrespective of their levels.  The
151 property is inherited by children.
152 ** Miscellaneous
153 *** File names in links accept are now compatible with URI syntax
154 Absolute file names can now start with =///= in addition to =/=. E.g.,
155 =[[file:///home/me/unicorn.jpg]]=.
156 *** Footnotes in included files are now local to the file
157 As a consequence, it is possible to include multiple Org files with
158 footnotes in a master document without being concerned about footnote
159 labels colliding.
160 *** Mailto links now use regular URI syntax
161 This change deprecates old Org syntax for mailto links:
162 =mailto:user@domain::Subject=.
163 *** =QUOTE= keywords do not exist anymore
164 =QUOTE= keywords have been deprecated since Org 8.2.
165 *** Select tests to perform with the build system
166 The build system has been enhanced to allow test selection with a
167 regular expression by defining =BTEST_RE= during the test invocation.
168 This is especially useful during bisection to find just when a
169 particular test failure was introduced.
170 * Version 8.2
172 ** Incompatible changes
173 *** =ob-sh.el= renamed to =ob-shell=
174 This may require two changes in user config.
176 1. In =org-babel-do-load-languages=, change =(sh . t)= to =(shell . t)=.
177 2. Edit =local.mk= files to change the value of =BTEST_OB_LANGUAGES=
178    to remove "sh" and include "shell".
180 *** Combine org-mac-message.el and org-mac-link-grabber into org-mac-link.el
182 Please remove calls to =(require 'org-mac-message)= and =(require
183 'org-mac-link-grabber)= in your =.emacs= initialization file.  All you
184 need now is =(require 'org-mac-link)=.
186 Additionally, replace any calls to =ogml-grab-link= to
187 =org-mac-grab-link=.  For example, replace this line:
189 : (define-key org-mode-map (kbd "C-c g") 'omgl-grab-link)
191 with this:
193 : (define-key org-mode-map (kbd "C-c g") 'org-mac-grab-link)
195 *** HTML export: Replace =HTML_HTML5_FANCY= by =:html-html5-fancy= (...)
197 Some of the HTML specific export options in Org <8.1 are either nil or
198 t, like =#+HTML_INCLUDE_STYLE=.  We replaced these binary options with
199 option keywords like :html-include-style.
201 So you need to replace
203 : #+HTML_INCLUDE_STYLE: t
207 : #+OPTIONS: :html-include-style t
209 Options affected by this change: =HTML5_FANCY=, =HTML_INCLUDE_SCRIPTS=
210 and =HTML_INCLUDE_STYLE=.
212 *** Add an argument to ~org-export-to-file~ and ~org-export-to-buffer~
214 ~org-export-to-file~ and ~org-export-to-file~ can run in a different
215 process when provided a non-nil =ASYNC= optional argument, without
216 relying on ~org-export-async-start~ macro.
218 Since =ASYNC= is the first of optional arguments, you have to shift
219 the other optional arguments accordingly.
221 *** Export back-ends are now structures
223 Export back-ends are now structures, and stored as such in the
224 communication channel during an export process.  In other words, from
225 now on, ~(plist-get info :back-end)~ will return a structure instead
226 of a symbol.
228 Arguments in hooks and in filters are still symbols, though.
230 ** Important bugfixes
232 *** [[doc:org-insert-heading][org-insert-heading]] has been rewritten and bugs are now fixed
233 *** The replacement of disputed keys is now turned of when reading a date
235 *** Match string for sparse trees can now contain a slash in a property value
237     You can now have searches like SOMEPROP="aaa/bbb".  Until now,
238     this would break because the slash would be interpreted as the
239     separator starting a TOTO match string.
240 ** New features
242 *** =C-c ^ x= will now sort checklist items by their checked status
244 See [[doc:org-sort-list][org-sort-list]]: hitting =C-c ^ x= will put checked items at the end
245 of the list.
246 *** Various LaTeX export enhancements
248 - Support SVG images
249 - Support for .pgf files
250 - LaTeX Babel blocks can now be exported as =.tikz= files
251 - Allow =latexmk= as an option for [[doc:org-latex-pdf-process][org-latex-pdf-process]]
252 - When using =\usepackage[AUTO]{babel}=, AUTO will automatically be
253   replaced with a value compatible with ~org-export-default-language~
254   or ~LANGUAGE~ keyword.
255 - The dependency on the =latexsym= LaTeX package has been removed, we
256   now use =amssymb= symbols by default instead.
258 *** New functions for paragraph motion
260     The commands =C-down= and =C-up= now invoke special commands
261     that use knowledge from the org-elements parser to move the cursor
262     in a paragraph-like way.
264 *** New entities in =org-entities.el=
266 Add support for ell, imath, jmath, varphi, varpi, aleph, gimel, beth,
267 dalet, cdots, S (§), dag, ddag, colon, therefore, because, triangleq,
268 leq, geq, lessgtr, lesseqgtr, ll, lll, gg, ggg, prec, preceq,
269 preccurlyeq, succ, succeq, succurlyeq, setminus, nexist(s), mho,
270 check, frown, diamond.  Changes loz, vert, checkmark, smile and tilde.
272 *** Anonymous export back-ends
274 ~org-export-create-backend~ can create anonymous export back-ends,
275 which can then be passed to export functions like
276 ~org-export-to-file~, ~org-export-to-buffer~ or ~org-export-as~.
278 It allows for quick translation of Org syntax without the overhead of
279 registering a new back-end.
281 *** New agenda fortnight view
283     The agenda has not, in addition to day, week, month, and year
284     views, also a fortnight view covering 14 days.
285 ** New options
287 *** New option [[doc:org-bookmark-names-plist][org-bookmark-names-plist]]
289 This allows to specify the names of automatic bookmarks.
290 *** New option [[doc:org-agenda-ignore-drawer-properties][org-agenda-ignore-drawer-properties]]
292 This allows more flexibility when optimizing the agenda generation.
293 See http://orgmode.org/worg/agenda-optimization.html for details.
294 *** New option: [[doc:org-html-link-use-abs-url][org-html-link-use-abs-url]] to force using absolute URLs
296 This is an export/publishing option, and should be used either within
297 the =#+OPTIONS= line(s) or within a [[doc:org-publish-project-alist][org-publish-project-alist]].
299 Setting this option to =t= is needed when the HTML output does not
300 allow relative URLs.  For example, the =contrib/lisp/ox-rss.el=
301 library produces a RSS feed, and RSS feeds need to use absolute URLs,
302 so a combination of =:html-link-home "..." and :html-link-use-abs-url
303 t= is required---see the configuration example in the comment section
304 of =ox-rss.el=.
306 *** New option [[doc:org-babel-ditaa-java-cmd][org-babel-ditaa-java-cmd]]
308 This makes java executable configurable for ditaa blocks.
310 *** New options [[doc:org-babel-latex-htlatex][org-babel-latex-htlatex]] and [[doc:org-babel-latex-htlatex-packages][org-babel-latex-htlatex-packages]]
312 This enables SVG generation from latex code blocks.
314 *** New option: [[doc:org-habit-show-done-always-green][org-habit-show-done-always-green]]
316 See [[http://lists.gnu.org/archive/html/emacs-orgmode/2013-05/msg00214.html][this message]] from Max Mikhanosha.
318 *** New option: [[doc:org-babel-inline-result-wrap][org-babel-inline-result-wrap]]
320 If you set this to the following
322 : (setq org-babel-inline-result-wrap "$%s$")
324 then inline code snippets will be wrapped into the formatting string.
326 *** New option: [[doc:org-special-ctrl-o][org-special-ctrl-o]]
328     This variable can be used to turn off the special behavior of
329     =C-o= in tables.
330 ** New contributed packages
332 - =ox-bibtex.el= by Nicolas Goaziou :: an utility to handle BibTeX
333      export to both LaTeX and HTML exports.  It uses the [[http://www.lri.fr/~filliatr/bibtex2html/][bibtex2html]]
334      software.
336 - =org-screenshot.el= by Max Mikhanosha :: an utility to handle
337      screenshots easily from Org, using the external tool [[http://freecode.com/projects/scrot][scrot]].
339 ** Miscellaneous
341 *** "QUOTE" keywords in headlines are deprecated
343 "QUOTE" keywords are an undocumented feature in Org.  When a headline
344 starts with the keyword "QUOTE", its contents are parsed as
345 a ~quote-section~ and treated as an example block.  You can achieve
346 the same with example blocks.
348 This feature is deprecated and will be removed in the next Org
349 release.
351 * Version 8.0.1
353 ** Installation
355 Installation instructions have been updated and simplified.
357 If you have troubles installing or updating Org, focus on these
358 instructions:
360 - when updating via a =.zip/.tar.gz= file, you only need to set the
361   =load-path= in your =.emacs=.  Set it before any other Org
362   customization that would call autoloaded Org functions.
364 - when updating by pulling Org's Git repository, make sure to create the
365   correct autoloads.  You can do this by running =~$ make autoloads= (to
366   only create the autoloads) or by running =~$ make= (to also compile
367   the Emacs lisp files.)  =~$ make help= and =~$ make helpall= gives you
368   detailed explanations.
370 - when updating through ELPA (either from GNU ELPA or from Org ELPA),
371   you have to install Org's ELPA package in a session where no Org
372   function has been called already.
374 When in doubt, run =M-x org-version RET= and see if you have a mixed-up
375 installation.
377 See http://orgmode.org/org.html#Installation for details.
379 ** Incompatible changes
381 Org 8.0 is the most disruptive major version of Org.
383 If you configured export options, you will have to update some of them.
385 If you used =#+ATTR_*= keywords, the syntax of the attributes changed and
386 you will have to update them.
388 Below is a list of changes for which you need to take action.
390 See http://orgmode.org/worg/org-8.0.html for the most recent version of
391 this list and for detailed instructions on how to migrate.
393 **** New export engine
395 Org 8.0 comes with a new export engine written by Nicolas Goaziou.  This
396 export engine relies on ~org-element.el~ (Org's syntax parser), which was
397 already in Org's core.  This new export engine triggered the rewriting of
398 /all/ export back-ends.
400 The most visible change is the export dispatcher, accessible through the
401 keybinding =C-c C-e=.  By default, this menu only shows some of the
402 built-in export formats, but you can add more formats by loading them
403 directly (e.g., =(require 'ox-texinfo)= or by configuring the option
404 [[doc:org-export-backends][org-export-backends]].
406 More contributed back-ends are available from the =contrib/= directory, the
407 corresponding files start with the =ox-= prefix.
409 If you customized an export back-end (like HTML or LaTeX), you will need to
410 rename some options so that your customization is not lost.  Typically, an
411 option starting with =org-export-html-= is now named =org-html-=.  See the
412 manual for details and check [[http://orgmode.org/worg/org-8.0.html][this Worg page]] for directions.
414 **** New syntax for #+ATTR_HTML/LaTeX/... options
416      : #+ATTR_HTML width="200px"
418      should now be written
420      : #+ATTR_HTML :width 200px
422      Keywords like =#+ATTR_HTML= and =#+ATTR_LaTeX= are defined in their
423      respective back-ends, and the list of supported parameters depends on
424      each backend.  See Org's manual for details.
426 **** ~org-remember.el~ has been removed
428      You cannot use =remember.el= anymore to capture notes.
430      Support for remember templates has been obsoleted since long, it is
431      now fully removed.
433      Use =M-x org-capture-import-remember-templates RET= to import your
434      remember templates into capture templates.
436 **** ~org-jsinfo.el~ has been merged into ~ox-html.el~
438      If you were requiring ~ox-jsinfo.el~ in your ~.emacs.el~ file, you
439      will have to remove this requirement from your initialization file.
441 **** Note for third-party developers
443      The name of the files for export back-end have changed: we now use the
444      prefix =ox-= for those files (like we use the =ob-= prefix for Babel
445      files.)  For example ~org-html.el~ is now ~ox-html.el~.
447      If your code relies on these files, please update the names in your
448      code.
450 **** Packages moved from core to contrib
452      Since packages in Org's core are meant to be part of GNU Emacs, we try
453      to be minimalist when it comes to adding files into core.  For 8.0, we
454      moved some contributions into the =contrib/= directory.
456      The rationale for deciding that these files should live in =contrib/=
457      is either because they rely on third-party software that is not
458      included in Emacs, or because they are not targeting a significant
459      user-base.
461      - org-colview-xemacs.el
462      - org-mac-message.el
463      - org-mew.el
464      - org-wl.el
465      - ox-freedmind.el
466      - ox-taskjuggler.el
468      Note that ~ox-freedmind.el~ has been rewritten by Jambunathan,
469      ~org-mew.el~ has been enhanced by Tokuya Kameshima and
470      ~ox-taskjuggler.el~ by Nicolas Goaziou and others.
472      Also, the Taskjuggler exporter now uses TJ3 by default.  John Hendy
473      wrote [[http://orgmode.org/worg/org-tutorials/org-taskjuggler3.html][a tutorial on Worg]] for the TJ3 export.
475 ** New packages in core
477 *** ~ob-makefile.el~ by Eric Schulte and Thomas S. Dye
479     =ob-makefile.el= implements Org Babel support for Makefile tangling.
481 *** ~ox-man.el~ by Luis Anaya
483     =ox-man.el= allows you to export Org files to =man= pages.
485 *** ~ox-md.el~ by Nicolas Goaziou
487     =ox-md.el= allows you to export Org files to Markdown files, using the
488     vanilla [[http://daringfireball.net/projects/markdown/][Markdown syntax]].
490 *** ~ox-texinfo.el~ by Jonathan Leech-Pepin
492     =ox-texinfo.el= allows you to export Org files to [[http://www.gnu.org/software/texinfo/][Texinfo]] files.
494 ** New packages in contrib
496 *** ~ob-julia.el~ by G. Jay Kerns
498     [[http://julialang.org/][Julia]] is a new programming language.
500     =ob-julia.el= provides Org Babel support for evaluating Julia source
501     code.
503 *** ~ob-mathomatic.el~ by Luis Anaya
505     [[http://www.mathomatic.org/][mathomatic]] a portable, command-line, educational CAS and calculator
506     software, written entirely in the C programming language.
508     ~ob-mathomatic.el~ provides Org Babel support for evaluating mathomatic
509     entries.
511 *** ~ob-tcl.el~ by Luis Anaya
513     ~ob-tcl.el~ provides Org Babel support for evaluating [[http://www.tcl.tk/][Tcl]] source code.
515 *** ~org-bullets.el~ by Evgeni Sabof
517     Display bullets instead of stars for headlines.
519     Also see [[http://orgmode.org/worg/org-faq.html#sec-8-12][this updated FAQ]] on how to display another character than "*"
520     for starting headlines.
522 *** ~org-favtable.el~ by Marc-Oliver Ihm
524     ~org-favtable.el~ helps you to create and update a table of favorite
525     locations in org, keeping the most frequently visited lines right at
526     the top.  This table is called "favtable".  See the documentation on
527     [[http://orgmode.org/worg/org-contrib/org-favtable.html][Worg]].
529 *** ~ox-confluence.el~ by Sébastien Delafond
531     ~ox-confluence.el~ lets you convert Org files to [[https://confluence.atlassian.com/display/DOC/Confluence%2BWiki%2BMarkup][Confluence Wiki]] files.
533 *** ~ox-deck.el~ and ~ox-s5.el~ by Rick Frankel
535     [[http://imakewebthings.com/deck.js/][deck.js]] is a javascript library for displaying HTML ages as
536     presentations.  ~ox-deck.el~ exports Org files to HTML presentations
537     using =deck.js=.
539     [[http://meyerweb.com/eric/tools/s5/][s5]] is a set of scripts which also allows to display HTML pages as
540     presentations.  ~ox-s5.el~ exports Org files to HTML presentations
541     using =s5=.
543 *** ~ox-groff.el~ by Luis Anaya and Nicolas Goaziou
545     The [[http://www.gnu.org/software/groff/][groff]] (GNU troff) software is a typesetting package which reads
546     plain text mixed with formatting commands and produces formatted
547     output.
549     Luis Anaya and Nicolas Goaziou implemented ~ox-groff.el~ to allow
550     conversion from Org files to groff.
552 *** ~ox-koma-letter.el~ by Nicolas Goaziou and Alan Schmitt
554     This back-end allow to export Org pages to the =KOMA Scrlttr2= format.
556 *** ~ox-rss.el~ by Bastien
558     This back-end lets you export Org pages to RSS 2.0 feeds.  Combined
559     with the HTML publishing feature, this allows you to build a blog
560     entirely with Org.
562 ** New features
564 *** Export
566 **** New export generic options
568 If you use Org exporter, we advise you to re-read [[http://orgmode.org/org.html#Exporting][the manual section about
569 it]].  It has been updated and includes new options.
571 Among the new/updated export options, three are of particular importance:
573 - [[doc:org-export-allow-bind-keywords][org-export-allow-bind-keywords]] :: This option replaces the old option
574      =org-export-allow-BIND= and the default value is =nil=, not =confirm=.
575      You will need to explicitly set this to =t= in your initialization
576      file if you want to allow =#+BIND= keywords.
578 - [[doc:org-export-with-planning][org-export-with-planning]] :: This new option controls the export of
579      =SCHEDULED:, DEADLINE:, CLOSED:= lines, and planning information is
580      now skipped by default during export.  This use to be the job of
581      [[doc:org-export-with-timestamps][org-export-with-timestamps]], but this latter option has been given a
582      new role: it controls the export of /standalone time-stamps/.  When
583      set to =nil=, Org will not export active and inactive time-stamps
584      standing on a line by themselves or within a paragraph that only
585      contains time-stamps.
587 To check if an option has been introduced or its default value changed in
588 Org 8.0, do =C-h v [option] RET= and check if the documentation says that
589 the variable has been introduced (or changed) in version 24.4 of Emacs.
591 **** Enhanced default stylesheet for the HTML exporter
593 See the new default value of [[doc:org-html-style-default][org-html-style-default]].
595 **** New tags, classes and ids for the HTML exporter
597 See the new default value of [[doc:org-html-divs][org-html-divs]].
599 **** Support for tikz pictures in LaTeX export
600 **** ~org-man.el~: New export function for "man" links
601 **** ~org-docview.el~: New export function for docview links
602 *** Structure editing
604 **** =C-u C-u M-RET= inserts a heading at the end of the parent subtree
605 **** Cycling to the =CONTENTS= view keeps inline tasks folded
607 [[doc:org-cycle-hook][org-cycle-hook]] as a new function [[doc:org-cycle-hide-inline-tasks][org-cycle-hide-inline-tasks]] which
608 prevents the display of inline tasks when showing the content of a subtree.
610 **** =C-c -= in a region makes a list item for each line
612 This is the opposite of the previous behavior, where =C-c -= on a region
613 would create one item for the whole region, and where =C-u C-c -= would
614 create an item for each line.  Now =C-c -= on the selected region creates
615 an item per line, and =C-u C-c -= creates a single item for the whole
616 region.
618 **** When transposing words, markup characters are now part of the words
620 In Emacs, you can transpose words with =M-t=.  Transposing =*these*
621 _words__= will preserve markup.
623 **** New command [[doc:org-set-property-and-value][org-set-property-and-value]] bound to =C-c C-x P=
625 This command allows you to quickly add both the property and its value.  It
626 is useful in buffers where there are many properties and where =C-c C-x p=
627 can slow down the flow of editing too much.
629 **** New commands [[doc:org-next-block][org-next-block]] and [[doc:org-previous-block][org-previous-block]]
631 These commands allow you to go to the previous block (=C-c M-b= or the
632 speedy key =B=) or to the next block (=C-c M-f= or the speedy key =F=.)
634 **** New commands [[doc:org-drag-line-forward][org-drag-line-forward]] and [[doc:org-drag-line-backward][org-drag-line-backward]]
636 These commands emulate the old behavior of =M-<down>= and =M-<up>= but are
637 now bound to =S-M-<down>= and =S-M-<up>= respectively, since =M-<down>= and
638 =M-<up>= now drag the whole element at point (a paragraph, a table, etc.)
639 forward and backward.
641 **** When a list item has a checkbox, inserting a new item uses a checkbox too
642 **** When sorting entries/items, only the description of links is considered
644 Now Org will sort this list
646 : - [[http://abc.org][B]]
647 : - [[http://def.org][A]]
649 like this:
651 : - [[http://def.org][A]]
652 : - [[http://abc.org][B]]
654 by comparing the descriptions, not the links.
655 Same when sorting headlines instead of list items.
656 **** New option =orgstruct-heading-prefix-regexp=
658 For example, setting this option to "^;;; " in Emacs lisp files and using
659 =orgstruct-mode= in those files will allow you to cycle through visibility
660 states as if lines starting with ";;; *..." where headlines.
662 In general, you want to set =orgstruct-heading-prefix-regexp= as a file
663 local variable.
665 **** New behavior of [[doc:org-clone-subtree-with-time-shift][org-clone-subtree-with-time-shift]]
667 The default is now to ask for a time-shift only when there is a time-stamp.
668 When called with a universal prefix argument =C-u=, it will not ask for a
669 time-shift even if there is a time-stamp.
671 **** New option [[doc:org-agenda-restriction-lock-highlight-subtree][org-agenda-restriction-lock-highlight-subtree]]
673 This defaults to =t= so that the whole subtree is highlighted when you
674 restrict the agenda view to it with =C-c C-x <= (or the speed command =<=).
675 The default setting helps ensuring that you are not adding tasks after the
676 restricted region.  If you find this highlighting too intrusive, set this
677 option to =nil=.
678 **** New option [[doc:org-closed-keep-when-no-todo][org-closed-keep-when-no-todo]]
680 When switching back from a =DONE= keyword to a =TODO= keyword, Org now
681 removes the =CLOSED= planning information, if any.  It also removes this
682 information when going back to a non-TODO state (e.g., with =C-c C-t SPC=).
683 If you want to keep the =CLOSED= planning information when removing the
684 TODO keyword, set [[doc:org-closed-keep-when-no-todo][org-closed-keep-when-no-todo]] to =t=.
686 **** New option [[doc:org-image-actual-width][org-image-actual-width]]
688 This option allows you to change the width of in-buffer displayed images.
689 The default is to use the actual width of the image, but you can use a
690 fixed value for all images, or fall back on an attribute like
692 : #+attr_html: :width 300px
693 *** Scheduled/deadline
695 **** Implement "delay" cookies for scheduled items
697 If you want to delay the display of a scheduled task in the agenda, you can
698 now use a delay cookie like this: =SCHEDULED: <2004-12-25 Sat -2d>=.  The
699 task is still scheduled on the 25th but will appear in your agenda starting
700 from two days later (i.e. from March 27th.)
702 Imagine for example that your co-workers are not done in due time and tell
703 you "we need two more days".  In that case, you may want to delay the
704 display of the task in your agenda by two days, but you still want the task
705 to appear as scheduled on March 25th.
707 In case the task contains a repeater, the delay is considered to affect all
708 occurrences; if you want the delay to only affect the first scheduled
709 occurrence of the task, use =--2d= instead.  See [[doc:org-scheduled-delay-days][org-scheduled-delay-days]]
710 and [[doc:org-agenda-skip-scheduled-delay-if-deadline][org-agenda-skip-scheduled-delay-if-deadline]] for details on how to
711 control this globally or per agenda.
713 **** Use =C-u C-u C-c C-s= will insert a delay cookie for scheduled tasks
715 See the previous section for why delay cookies may be useful.
717 **** Use =C-u C-u C-c C-d= will insert a warning delay for deadline tasks
719 =C-u C-u C-c C-d= now inserts a warning delay to deadlines.
720 *** Calendar, diary and appts
722 **** New variable [[doc:org-read-date-minibuffer-local-map][org-read-date-minibuffer-local-map]]
724 By default, this new local map uses "." to go to today's date, like in the
725 normal =M-x calendar RET=.  If you want to deactivate this and to reassign
726 the "@" key to =calendar-goto-today=, use this:
728 #+BEGIN_SRC emacs-lisp
729   ;; Unbind "." in Org's calendar:
730   (define-key org-read-date-minibuffer-local-map (kbd ".") nil)
732   ;; Bind "@" to `calendar-goto-today':
733   (define-key org-read-date-minibuffer-local-map
734               (kbd "@")
735               (lambda () (interactive) (org-eval-in-calendar '(calendar-goto-today))))
736 #+END_SRC
738 **** In Org's calendar, =!= displays diary entries of the date at point
740 This is useful when you want to check if you don't already have an
741 appointment when setting new ones with =C-c .= or =C-c s=.  =!= will
742 call =diary-view-entries= and display the diary in a separate buffer.
744 **** [[doc:org-diary][org-diary]]: only keep the descriptions of links
746 [[doc:org-diary][org-diary]] returns diary information from Org files, but it returns it
747 in a diary buffer, not in an Org mode buffer.  When links are displayed,
748 only show their description, not the full links.
749 *** Agenda
751 **** New agenda type =agenda*= and entry types =:scheduled* :deadline*=
753 When defining agenda custom commands, you can now use =agenda*=: this will
754 list entries that have both a date and a time.  This is useful when you
755 want to build a list of appointments.
757 You can also set [[doc:org-agenda-entry-types][org-agenda-entry-types]] either globally or locally in
758 each agenda custom command and use =:timestamp*= and/or =:deadline*= there.
760 Another place where this is useful is your =.diary= file:
762 : %%(org-diary :scheduled*) ~/org/rdv.org
764 This will list only entries from =~/org/rdv.org= that are scheduled with a
765 time value (i.e. appointments).
767 **** New agenda sorting strategies
769 [[doc:org-agenda-sorting-strategy][org-agenda-sorting-strategy]] allows these new sorting strategies:
771 | Strategy       | Explanations                             |
772 |----------------+------------------------------------------|
773 | timestamp-up   | Sort by any timestamp, early first       |
774 | timestamp-down | Sort by any timestamp, late first        |
775 | scheduled-up   | Sort by scheduled timestamp, early first |
776 | scheduled-down | Sort by scheduled timestamp, late first  |
777 | deadline-up    | Sort by deadline timestamp, early first  |
778 | deadline-down  | Sort by deadline timestamp, late first   |
779 | ts-up          | Sort by active timestamp, early first    |
780 | ts-down        | Sort by active timestamp, late first     |
781 | tsia-up        | Sort by inactive timestamp, early first  |
782 | tsia-down      | Sort by inactive timestamp, late first   |
784 **** New options to limit the number of agenda entries
786 You can now limit the number of entries in an agenda view.  This is
787 different from filters: filters only /hide/ the entries in the agenda,
788 while limits are set while generating the list of agenda entries.
790 These new options are available:
792 - [[doc:org-agenda-max-entries][org-agenda-max-entries]] :: limit by number of entries.
793 - [[doc:org-agenda-max-todos][org-agenda-max-todos]] :: limit by number of TODOs.
794 - [[doc:org-agenda-max-tags][org-agenda-max-tags]] :: limit by number of tagged entries.
795 - [[doc:org-agenda-max-effort][org-agenda-max-effort]] :: limit by effort (minutes).
797 For example, if you locally set [[doc:org-agenda-max-todos][org-agenda-max-todos]] to 3 in an agenda
798 view, the agenda will be limited to the first three todos.  Other entries
799 without a TODO keyword or beyond the third TODO headline will be ignored.
801 When setting a limit (e.g. about an effort's sum), the default behavior is
802 to exclude entries that cannot be checked against (e.g. entries that have
803 no effort property.)  To include other entries too, you can set the limit
804 to a negative number.  For example =(setq org-agenda-max-tags -3)= will not
805 show the fourth tagged headline (and beyond), but it will also show
806 non-tagged headlines.
808 **** =~= in agenda view sets temporary limits
810 You can hit =~= in the agenda to temporarily set limits: this will
811 regenerate the agenda as if the limits were set.  This is useful for
812 example when you want to only see a list of =N= tasks, or a list of tasks
813 that take only =N= minutes.
815 **** "=" in agenda view filters by regular expressions
817 You can now filter agenda entries by regular expressions using ~=~.  =C-u
818 == will filter entries out.  Regexp filters are cumulative.  You can set
819 [[doc:org-agenda-regexp-filter-preset][org-agenda-regexp-filter-preset]] to suit your needs in each agenda view.
821 **** =|= in agenda view resets all filters
823 Since it's common to combine tag filters, category filters, and now regexp
824 filters, there is a new command =|= to reset all filters at once.
826 **** Allow writing an agenda to an =.org= file
828 You can now write an agenda view to an =.org= file.  It copies the
829 headlines and their content (but not subheadings) into the new file.
831 This is useful when you want to quickly share an agenda containing the full
832 list of notes.
834 **** New commands to drag an agenda line forward (=M-<down>=) or backward (=M-<up>=)
836 It sometimes handy to move agenda lines around, just to quickly reorganize
837 your tasks, or maybe before saving the agenda to a file.  Now you can use
838 =M-<down>= and =M-<up>= to move the line forward or backward.
840 This does not persist after a refresh of the agenda, and this does not
841 change the =.org= files who contribute to the agenda.
843 **** Use =%b= for displaying "breadcrumbs" in the agenda view
845 [[doc:org-agenda-prefix-format][org-agenda-prefix-format]] now allows to use a =%b= formatter to tell Org
846 to display "breadcrumbs" in the agenda view.
848 This is useful when you want to display the task hierarchy in your agenda.
850 **** Use =%l= for displaying the headline's level in the agenda view
852 [[doc:org-agenda-prefix-format][org-agenda-prefix-format]] allows to use a =%l= formatter to tell Org to
853 display entries with additional spaces corresponding to their level in the
854 outline tree.
856 **** [[doc:org-agenda-write][org-agenda-write]] will ask before overwriting an existing file
858 =M-x org-agenda-write RET= (or =C-c C-w= from an agenda buffer) used to
859 overwrite preexisting file with the same name without confirmation.  It now
860 asks for a confirmation.
862 **** New commands =M-m= and =M-*= to toggle (all) mark(s) for bulk action
864 - [[doc:org-agenda-bulk-toggle][org-agenda-bulk-toggle]] :: this command is bound to =M-m= and toggles
865      the mark of the entry at point.
867 - [[doc:org-agenda-bulk-toggle-all][org-agenda-bulk-toggle-all]] :: this command is bound to =M-*= and
868      toggles all the marks in the current agenda.
870 **** New option [[doc:org-agenda-search-view-max-outline-level][org-agenda-search-view-max-outline-level]]
872 This option sets the maximum outline level to display in search view.
873 E.g. when this is set to 1, the search view will only show headlines of
874 level 1.
876 **** New option [[doc:org-agenda-todo-ignore-time-comparison-use-seconds][org-agenda-todo-ignore-time-comparison-use-seconds]]
878 This allows to compare times using seconds instead of days when honoring
879 options like =org-agenda-todo-ignore-*= in the agenda display.
881 **** New option [[doc:org-agenda-entry-text-leaders][org-agenda-entry-text-leaders]]
883 This allows you to get rid of the ">" character that gets added in front of
884 entries excerpts when hitting =E= in the agenda view.
886 **** New formatting string for past deadlines in [[doc:org-agenda-deadline-leaders][org-agenda-deadline-leaders]]
888 The default formatting for past deadlines is ="%2d d. ago: "=, which makes
889 it explicit that the deadline is in the past.  You can configure this via
890 [[doc:org-agenda-deadline-leaders][org-agenda-deadline-leaders]].  Note that the width of the formatting
891 string is important to keep the agenda alignment clean.
893 **** New allowed value =repeated-after-deadline= for [[doc:org-agenda-skip-scheduled-if-deadline-is-shown][org-agenda-skip-scheduled-if-deadline-is-shown]]
895 When [[doc:org-agenda-skip-scheduled-if-deadline-is-shown][org-agenda-skip-scheduled-if-deadline-is-shown]] is set to
896 =repeated-after-deadline=, the agenda will skip scheduled items if they are
897 repeated beyond the current deadline.
899 **** New option for [[doc:org-agenda-skip-deadline-prewarning-if-scheduled][org-agenda-skip-deadline-prewarning-if-scheduled]]
901 This variable may be set to nil, t, the symbol `pre-scheduled', or a number
902 which will then give the number of days before the actual deadline when the
903 prewarnings should resume.  The symbol `pre-scheduled' eliminates the
904 deadline prewarning only prior to the scheduled date.
906 Read the full docstring for details.
908 **** [[doc:org-class][org-class]] now supports holiday strings in the skip-weeks parameter
910 For example, this task will now be skipped only on new year's day:
912     : * Task
913     :   <%%(org-class 2012 1 1 2013 12 12 2 "New Year's Day")>
914 *** Capture
916 **** Allow =C-1= as a prefix for [[doc:org-agenda-capture][org-agenda-capture]] and [[doc:org-capture][org-capture]]
918 With a =C-1= prefix, the capture mechanism will use the =HH:MM= value at
919 point (if any) or the current =HH:MM= time as the default time for the
920 capture template.
922 **** Expand keywords within %(sexp) placeholder in capture templates
924 If you use a =%:keyword= construct within a =%(sexp)= construct, Org will
925 expand the keywords before expanding the =%(sexp)=.
927 **** Allow to contextualize capture (and agenda) commands by checking the name of the buffer
929 [[doc:org-capture-templates-contexts][org-capture-templates-contexts]] and [[doc:org-agenda-custom-commands-contexts][org-agenda-custom-commands-contexts]]
930 allow you to define what capture templates and what agenda commands should
931 be available in various contexts.  It is now possible for the context to
932 check against the name of the buffer.
933 *** Tag groups
935 Using =#+TAGS: { Tag1 : Tag2 Tag3 }= will define =Tag1= as a /group tag/
936 (note the colon after =Tag1=).  If you search for =Tag1=, it will return
937 headlines containing either =Tag1=, =Tag2= or =Tag3= (or any combination
938 of those tags.)
940 You can use group tags for sparse tree in an Org buffer, for creating
941 agenda views, and for filtering.
943 See http://orgmode.org/org.html#Tag-groups for details.
945 *** Links
947 **** =C-u C-u M-x org-store-link RET= will ignore non-core link functions
949 Org knows how to store links from Org buffers, from info files and from
950 other Emacs buffers.  Org can be taught how to store links from any buffer
951 through new link protocols (see [[http://orgmode.org/org.html#Adding-hyperlink-types]["Adding hyperlink types"]] in the manual.)
953 Sometimes you want Org to ignore added link protocols and store the link
954 as if the protocol was not known.
956 You can now do this with =C-u C-u M-x org-store-link RET=.
958 **** =C-u C-u C-u M-x org-store-link RET= on an active region will store links for each lines
960 Imagine for example that you want to store a link for every message in a
961 Gnus summary buffer.  In that case =C-x h C-u C-u C-u M-x org-store-link
962 RET= will store a link for every line (i.e. message) if the region is
963 active.
965 **** =C-c C-M-l= will add a default description for links which don't have one
967 =C-c C-M-l= inserts all stored links.  If a link does not have a
968 description, this command now adds a default one, so that we are not mixing
969 with-description and without-description links when inserting them.
971 **** No curly braces to bracket links within internal links
973 When storing a link to a headline like
975 : * See [[http://orgmode.org][Org website]]
977 [[doc:org-store-link][org-store-link]] used to convert the square brackets into curly brackets.
978 It does not anymore, taking the link description or the link path, when
979 there is no description.
980 *** Table
982 **** Switching between #+TBLFM lines
984 If you have several =#+TBLFM= lines below a table, =C-c C-c= on a line will
985 apply the formulas from this line, and =C-c C-c= on another line will apply
986 those other formulas.
988 **** You now use "nan" for empty fields in Calc formulas
990 If empty fields are of interest, it is recommended to reread the section
991 [[http://orgmode.org/org.html#Formula-syntax-for-Calc][3.5.2 Formula syntax for Calc]] of the manual because the description for the
992 mode strings has been clarified and new examples have been added towards
993 the end.
995 **** Handle localized time-stamps in formulas evaluation
997 If your =LOCALE= is set so that Org time-stamps use another language than
998 english, and if you make time computations in Org's table, it now works by
999 internally converting the time-stamps with a temporary =LOCALE=C= before
1000 doing computation.
1002 **** New lookup functions
1004 There are now three lookup functions:
1006 - [[doc:org-loopup-first][org-loopup-first]]
1007 - [[doc:org-loopup-last][org-loopup-last]]
1008 - [[doc:org-loopup-all][org-loopup-all]]
1010 See [[http://orgmode.org/org.html#Lookup-functions][the manual]] for details.
1011 *** Startup keywords
1013 These new startup keywords are now available:
1015 | Startup keyword                  | Option                                      |
1016 |----------------------------------+---------------------------------------------|
1017 | =#+STARTUP: logdrawer=           | =(setq org-log-into-drawer t)=              |
1018 | =#+STARTUP: nologdrawer=         | =(setq org-log-into-drawer nil)=            |
1019 |----------------------------------+---------------------------------------------|
1020 | =#+STARTUP: logstatesreversed=   | =(setq org-log-states-order-reversed t)=    |
1021 | =#+STARTUP: nologstatesreversed= | =(setq org-log-states-order-reversed nil)=  |
1022 |----------------------------------+---------------------------------------------|
1023 | =#+STARTUP: latexpreview=        | =(setq org-startup-with-latex-preview t)=   |
1024 | =#+STARTUP: nolatexpreview=      | =(setq org-startup-with-latex-preview nil)= |
1026 *** Clocking
1028 **** New option [[doc:org-clock-rounding-minutes][org-clock-rounding-minutes]]
1030 E.g. if [[doc:org-clock-rounding-minutes][org-clock-rounding-minutes]] is set to 5, time is 14:47 and you
1031 clock in: then the clock starts at 14:45.  If you clock out within the next
1032 5 minutes, the clock line will be removed; if you clock out 8 minutes after
1033 your clocked in, the clock out time will be 14:50.
1035 **** New option [[doc:org-time-clocksum-use-effort-durations][org-time-clocksum-use-effort-durations]]
1037 When non-nil, =C-c C-x C-d= uses effort durations.  E.g., by default, one
1038 day is considered to be a 8 hours effort, so a task that has been clocked
1039 for 16 hours will be displayed as during 2 days in the clock display or in
1040 the clocktable.
1042 See [[doc:org-effort-durations][org-effort-durations]] on how to set effort durations and
1043 [[doc:org-time-clocksum-format][org-time-clocksum-format]] for more on time clock formats.
1045 **** New option [[doc:org-clock-x11idle-program-name][org-clock-x11idle-program-name]]
1047 This allows to set the name of the program which prints X11 idle time in
1048 milliseconds.  The default is to use =x11idle=.
1050 **** New option [[doc:org-use-last-clock-out-time-as-effective-time][org-use-last-clock-out-time-as-effective-time]]
1052 When non-nil, use the last clock out time for [[doc:org-todo][org-todo]].  Note that this
1053 option has precedence over the combined use of [[doc:org-use-effective-time][org-use-effective-time]] and
1054 [[doc:org-extend-today-until][org-extend-today-until]].
1056 **** =S-<left/right>= on a clocksum column will update the sum by updating the last clock
1057 **** =C-u 3 C-S-<up/down>= will update clock timestamps synchronously by 3 units
1058 **** New parameter =:wstart= for clocktables to define the week start day
1059 **** New parameter =:mstart= to state the starting day of the month
1060 **** Allow relative times in clocktable tstart and tend options
1061 **** The clocktable summary is now a caption
1062 **** =:tstart= and =:tend= and friends allow relative times like "<-1w>" or "<now>"
1063 *** Babel
1065 **** You can now use =C-c C-k= for [[doc:org-edit-src-abort][org-edit-src-abort]]
1067 This allows you to quickly cancel editing a source block.
1069 **** =C-u C-u M-x org-babel-tangle RET= tangles by the target file of the block at point
1071 This is handy if you want to tangle all source code blocks that have the
1072 same target than the block at point.
1074 **** New options for auto-saving the base buffer or the source block editing buffer
1076 When [[doc:org-edit-src-turn-on-auto-save][org-edit-src-turn-on-auto-save]] is set to =t=, editing a source block
1077 in a new window will turn on =auto-save-mode= and save the code in a new
1078 file under the same directory than the base Org file.
1080 When [[doc:org-edit-src-auto-save-idle-delay][org-edit-src-auto-save-idle-delay]] is set to a number of minutes =N=,
1081 the base Org buffer will be saved after this number of minutes of idle
1082 time.
1084 **** New =:post= header argument post-processes results
1086      This header argument may be used to pass the results of the current
1087      code block through another code block for post-processing.  See the
1088      manual for a usage example.
1090 **** Commented out heading are ignored when collecting blocks for tangling
1092 If you comment out a heading (with =C-c ;= anywhere on the heading or in
1093 the subtree), code blocks from within this heading are now ignored when
1094 collecting blocks for tangling.
1096 **** New option [[doc:org-babel-hash-show-time][org-babel-hash-show-time]] to show a time-stamp in the result hash
1097 **** Do not ask for confirmation if cached value is current
1099 Do not run [[doc:org-babel-confirm-evaluate][org-babel-confirm-evaluate]] if source block has a cache and the
1100 cache value is current as there is no evaluation involved in this case.
1101 **** =ob-sql.el= and =ob-python.el= have been improved.
1102 **** New Babel files only need to =(require 'ob)=
1104 When writing a new Babel file, you now only need to use =(require 'ob)=
1105 instead of requiring each Babel library one by one.
1106 *** Faces
1108 - Org now fontifies radio link targets by default
1109 - In the agenda, use [[doc:org-todo-keyword-faces][org-todo-keyword-faces]] to highlight selected TODO keywords
1110 - New face [[doc:org-priority][org-priority]], enhanced fontification of priority cookies in agenda
1111 - New face [[doc:org-tag-group][org-tag-group]] for group tags
1113 ** Miscellaneous
1115 - New speedy key =s= pour [[doc:org-narrow-to-subtree][org-narrow-to-subtree]]
1116 - Handling of [[doc:org-html-table-row][org-html-table-row]] has been updated (incompatible change)
1117 - [[doc:org-export-html-table-tag][org-export-html-table-tag]] is replaced by [[doc:org-html-table-default-attributes][org-html-table-default-attributes]]
1118 - Support using =git-annex= with Org attachments
1119 - org-protocol: Pass optional value using query in url to capture from protocol
1120 - When the refile history is empty, use the current filename as default
1121 - When you cannot change the TODO state of a task, Org displays the blocking task
1122 - New option [[doc:org-mobile-allpriorities][org-mobile-allpriorities]]
1123 - org-bibtex.el now use =visual-line-mode= instead of the deprecated =longlines-mode=
1124 - [[doc:org-format-latex-options][org-format-latex-options]] allows to set the foreground/background colors automatically
1125 - New option [[doc:org-archive-file-header-format][org-archive-file-header-format]]
1126 - New "neg" entity in [[doc:org-entities][org-entities]]
1127 - New function [[doc:org-docview-export][org-docview-export]] to export docview links
1128 - New =:eps= header argument for ditaa code blocks
1129 - New option [[doc:org-gnus-no-server][org-gnus-no-server]] to start Gnus with =gnus-no-server=
1130 - Org is now distributed with =htmlize.el= version 1.43
1131 - ~org-drill.el~ has been updated to version 2.3.7
1132 - ~org-mac-iCal.el~ now supports MacOSX version up to 10.8
1133 - Various improvements to ~org-contacts.el~ and =orgpan.el=
1135 ** Outside Org
1137 *** Spanish translation of the Org guide by David Arroyo Menéndez
1139 David (and others) translated the Org compact guide in spanish:
1141 You can read the [[http://orgmode.org/worg/orgguide/orgguide.es.pdf][PDF guide]].
1143 *** ~poporg.el~ and ~outorg.el~
1145 Two new libraries (~poporg.el~ by François Pinard and ~outorg.el~ by
1146 Thorsten Jolitz) now enable editing of comment-sections from source-code
1147 buffers in temporary Org-mode buffers, making the full editing power of
1148 Org-mode available.  ~outorg.el~ comes together with ~outshine.el~ and
1149 ~navi-mode.el~, two more libraries by Thorsten Jolitz with the goal to give
1150 source-code buffers the /look & feel/ of Org-mode buffers while greatly
1151 improving navigation and structure editing.  A detailed description can be
1152 found here: http://orgmode.org/worg/org-tutorials/org-outside-org.html
1154 Here are two screencasts demonstrating Thorsten's tools:
1156 - [[http://youtu.be/nqE6YxlY0rw]["Modern conventions for Emacs Lisp files"]]
1157 - [[http://www.youtube.com/watch?v%3DII-xYw5VGFM][Exploring Bernt Hansen's Org-mode tutorial with 'navi-mode']]
1159 *** MobileOrg for iOS
1161 MobileOrg for iOS back in the App Store The 1.6.0 release was focused on
1162 the new Dropbox API and minor bug fixes but also includes a new ability to
1163 launch in Capture mode.  Track development and contribute [[https://github.com/MobileOrg/mobileorg/issues][on github]].
1165 * Version 7.9.3
1167 ** New option [[doc::org-agenda-use-tag-inheritance][org-agenda-use-tag-inheritance]]
1169 [[doc::org-use-tag-inheritance][org-use-tag-inheritance]] controls whether tags are inherited when
1170 org-tags-view is called (either in =tags=, =tags-tree= or =tags-todo=
1171 agenda views.)
1173 When generating other agenda types such as =agenda=, =todo= and
1174 =todo-tree=, tags inheritance is not used when selecting the entries
1175 to display.  Still, you might want to have all tag information correct
1176 in the agenda buffer, e.g. for tag filtering.  In that case, add the
1177 agenda type to this variable.
1179 Setting this variable to nil should considerably speeds up the agenda
1180 generation.
1182 Note that the default was to display inherited tags in the agenda
1183 lines even if `org-use-tag-inheritance' was nil.  The default is now
1184 to *never* display inherited tags in agenda lines, but to /know/ about
1185 them when the agenda type is listed in [[doc::org-agenda-use-tag-inheritance][org-agenda-use-tag-inheritance]].
1187 ** New default value nil for [[doc::org-agenda-dim-blocked-tasks][org-agenda-dim-blocked-tasks]]
1189 Using `nil' as the default value speeds up the agenda generation.  You
1190 can hit `#' (or `C-u #') in agenda buffers to temporarily dim (or turn
1191 invisible) blocked tasks.
1193 ** New speedy keys for [[doc::org-speed-commands-default][org-speed-commands-default]]
1195 You can now use `:' (instead of `;') for setting tags---this is
1196 consistent with using the `:' key in agenda view.
1198 You can now use `=' for [[doc::org-columns][org-columns]].
1200 ** =org-float= is now obsolete, use =diary-float= instead
1201 ** No GPL manual anymore
1203 There used to be a GPL version of the Org manual, but this is not the
1204 case anymore, the Free Software Foundation does not permit this.
1206 The GNU FDL license is now included in the manual directly.
1208 ** Enhanced compatibility with Emacs 22 and XEmacs
1210 Thanks to Achim for his work on enhancing Org's compatibility with
1211 various Emacsen.  Things may not be perfect, but Org should work okay
1212 in most environments.
1214 * Version 7.9.2
1216 ** New ELPA repository for Org packages
1218 You can now add the Org ELPA repository like this:
1220 #+BEGIN_SRC emacs-lisp
1221 (add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t)
1222 #+END_SRC
1224 It contains both the =org-*.tar= package (the core Org distribution, also
1225 available through http://elpa.gnu.org) and the =org-plus*.tar= package (the
1226 extended Org distribution, with non-GNU packages from the =contrib/=
1227 directory.)
1229 See http://orgmode.org/elpa/
1231 ** Overview of the new keybindings
1233    | Keybinding      | Speedy | Command                     |
1234    |-----------------+--------+-----------------------------|
1235    | =C-c C-x C-z=   |        | [[doc::org-clock-resolve][org-clock-resolve]]           |
1236    | =C-c C-x C-q=   |        | [[doc::org-clock-cancel][org-clock-cancel]]            |
1237    | =C-c C-x C-x=   |        | [[doc::org-clock-in-last][org-clock-in-last]]           |
1238    | =M-h=           |        | [[doc::org-mark-element][org-mark-element]]            |
1239    | =*=             |        | [[doc::org-agenda-bulk-mark-all][org-agenda-bulk-mark-all]]    |
1240    | =C-c C-M-l=     |        | [[doc::org-insert-all-links][org-insert-all-links]]        |
1241    | =C-c C-x C-M-v= |        | [[doc::org-redisplay-inline-images][org-redisplay-inline-images]] |
1242    | =C-c C-x E=     | =E=    | [[doc::org-inc-effort][org-inc-effort]]              |
1243    |                 | =#=    | [[doc::org-toggle-comment][org-toggle-comment]]          |
1244    |                 | =:=    | [[doc::org-columns][org-columns]]                 |
1245    |                 | =W=    | Set =APPT_WARNTIME=         |
1246    | =k=             |        | [[doc::org-agenda-capture][org-agenda-capture]]          |
1247    | C-c ,           | ,      | [[doc::org-priority][org-priority]]                |
1249 ** New package and Babel language
1251 *** =org-eshell.el= by Konrad Hinsen is now in Org
1253     =org-eshell.el= allows you to create links from [[http://www.gnu.org/software/emacs/manual/html_node/eshell/index.html][Eshell]].
1255 *** Support for execution of Scala code blocks (see ob-scala.el)
1256 *** Support for execution of IO code blocks (see ob-io.el)
1258 ** Incompatible changes
1260    - If your code relies on =org-write-agenda=, please use
1261      [[doc::org-agenda-write][org-agenda-write]] from now on.
1263    - If your code relies on =org-make-link=, please use =concat=
1264      instead.
1266    - =org-link-to-org-use-id= has been renamed to
1267      =org-id-link-to-org-use-id= and its default value is nil.  The
1268      previous default was =create-if-interactive-and-no-custom-id=.
1270 ** New features and user-visible changes
1272 *** Org Element
1274     =org-element.el= is a toolbox for parsing and analyzing "elements"
1275     in an Org-mode buffer.  This has been written by Nicolas Goaziou
1276     and has been tested for quite some time.  It is now part of Org's
1277     core and many core functions rely on this package.
1279     Two functions might be particularly handy for users:
1280     =org-element-at-point= and =org-element-context=.
1282     See the docstrings for more details.
1284     Below is a list of editing and navigating commands that now rely
1285     on =org-element.el=.
1287 **** [[doc::org-fill-paragraph][org-fill-paragraph]] has been completely rewritten
1289      The filling mechanisms now rely on org-element, trying to do the
1290      right thing on each element in various contexts.  E.g. filling in
1291      a list item will preserve indentation; filling in message-mode
1292      will fall back on the relevant filling functions; etc.
1294 **** [[doc::org-metaup][org-metaup]] and [[doc::org-metadown][org-metadown]] will drag the element backward/forward
1296      If you want to get the old behavior (i.e. moving a line up and
1297      down), you can first select the line as an active region, then
1298      =org-metaup= or =org-metadown= to move the region backward or
1299      forward.  This also works with regions bigger than just one line.
1301 **** [[doc::org-up-element][org-up-element]] and [[doc::org-down-element][org-down-element]] (respectively =C-c C-^= and =C-c C-_=)
1303      This will move the point up/down in the hierarchy of elements.
1305 **** [[doc::org-backward-element][org-backward-element]] and [[doc::org-forward-element][org-forward-element]] (respectively =M-{= and =M-}=)
1307      This will move the point backward/forward in the hierarchy of
1308      elements.
1310 **** [[doc::org-narrow-to-element][org-narrow-to-element]] will narrow to the element at point
1311 **** [[doc::org-mark-element][org-mark-element]] will mark the element at point
1313      This command is bound to =M-h= and will mark the element at
1314      point.  If the point is at a paragraph, it will mark the
1315      paragraph.  If the point is at a list item, it will mark the list
1316      item.  Etc.
1318      Note that if point is at the beginning of a list, it will mark
1319      the whole list.
1321      To mark a subtree, you can either use =M-h= on the headline
1322      (since there is no ambiguity about the element you're at) or
1323      [[doc::org-mark-subtree][org-mark-subtree]] (=C-c @=) anywhere in the subtree.
1325      Invoking [[doc::org-mark-element][org-mark-element]] repeatedly will try to mark the next
1326      element on top of the previous one(s).  E.g. hitting =M-h= twice
1327      on a headline will mark the current subtree and the next one on
1328      the same level.
1330 *** Org Agenda
1332 **** New option [[doc::org-agenda-sticky][org-agenda-sticky]]
1334      There is a new option =org-agenda-sticky= which enables "sticky"
1335      agendas.  Sticky agendas remain opened in the background so that
1336      you don't need to regenerate them each time you hit the
1337      corresponding keystroke.  This is a big time saver.
1339      When [[doc::org-agenda-sticky][org-agenda-sticky]] is =non-nil=, the agenda buffer will be
1340      named using the agenda key and its description.  In sticky
1341      agendas, the =q= key will just bury the agenda buffers and
1342      further agenda commands will show existing buffer instead of
1343      generating new ones.
1345      If [[doc::org-agenda-sticky][org-agenda-sticky]] is set to =nil=, =q= will kill the single
1346      agenda buffer.
1348 **** New option [[doc::org-agenda-custom-commands-contexts][org-agenda-custom-commands-contexts]]
1350      Setting this option allows you to define specific context where
1351      agenda commands should be available from.  For example, when set
1352      to this value
1354      #+BEGIN_SRC emacs-lisp
1355   (setq org-agenda-custom-commands-contexts
1356         '(("p" (in-file . "\\.txt"))))
1357 #+END_SRC
1359      then the =p= agenda command will only be available from buffers
1360      visiting *.txt files.  See the docstring and the manual for more
1361      details on how to use this.
1363 **** Changes in bulk actions
1365      The set of commands starting with =k ...= as been deleted and the
1366      features have been merged into the "bulk action" feature.
1368      After you marked some entries in the agenda, if you call =B s=,
1369      the agenda entries will be rescheduled using the date at point if
1370      on a date header.  If you are on an entry with a timestamp, you
1371      will be prompted for a date to reschedule your marked entries to,
1372      using the timestamp at point as the default prompt.
1374      You can now use =k= to capture the marked entry and use the date
1375      at point as an overriding date for the capture template.
1377      To bind this behavior to =M-x org-capture RET= (or its
1378      keybinding), set the new option [[doc::org-capture-use-agenda-date][org-capture-use-agenda-date]] to
1379      =t=.
1381 **** =N= and =P= in the agenda will move to the next/previous item
1383 **** New command [[doc::org-agenda-bulk-mark-all][org-agenda-bulk-mark-all]] to mark all items
1385      This new command is bound to =*= in agenda mode.
1387      There is also a new option [[doc::org-agenda-bulk-mark-char][org-agenda-bulk-mark-char]] to set the
1388      character to use as a mark for bulk actions.
1390 **** New option [[doc::org-agenda-persistent-marks][org-agenda-persistent-marks]]
1392      When set to =non-nil=, marks will remain visible after a bulk
1393      action.  You can temporarily toggle this by pressing =p= when
1394      invoking [[doc::org-agenda-bulk-action][org-agenda-bulk-action]].  Marks are deleted if your
1395      rebuild the agenda buffer or move to another date/span (e.g. with
1396      =f= or =w=).
1398 **** New option [[doc::org-agenda-skip-timestamp-if-deadline-is-shown][org-agenda-skip-timestamp-if-deadline-is-shown]]
1400      =Non-nil= means skip timestamp line if same entry shows because
1401      of deadline.
1403      In the agenda of today, an entry can show up multiple times
1404      because it has both a plain timestamp and has a nearby deadline.
1405      When this variable is t, then only the deadline is shown and the
1406      fact that the entry has a timestamp for or including today is not
1407      shown.  When this variable is =nil=, the entry will be shown
1408      several times.
1410 **** New =todo-unblocked= and =nottodo-unblocked= skip conditions
1412      See the [[http://orgmode.org/w/?p%3Dorg-mode.git%3Ba%3Dcommit%3Bh%3Df426da][git commit]] for more explanations.
1414 **** Allow category filtering in the agenda
1416      You can now filter the agenda by category.  Pressing "<" will
1417      filter by the category of the item on the current line, and
1418      pressing "<" again will remove the filter.  You can combine tag
1419      filters and category filters.
1421      You can use =org-agenda-category-filter= in your custom agenda
1422      views and =org-agenda-category-filter-preset= in your main
1423      configuration.
1425      See also the new command [[doc::org-agenda-filter-by-top-category][org-agenda-filter-by-top-category]]:
1426      hitting =^= will filter by "Top" category: only show entries that
1427      are of the same category than the Top category of the entry at
1428      point.
1430 *** Org Links
1432 **** Inserting links
1434      When inserting links through [[doc::org-insert-link][org-insert-link]], the description is
1435      now displayed first, followed by the literal link, as the
1436      description is often more useful when you look for the link you
1437      want to insert.
1439      Completion now complete both literal links and description.  If
1440      you complete a description, the literal link and its description
1441      will be inserted directly, whereas when you complete the literal
1442      link, you will be prompted for a description (as with Org 7.8.)
1444      In the completion buffer, links to the current buffer are now
1445      highlighted.
1447 **** New templates =%h= and =%(sexp)= for abbreviated links
1449      On top of =%s= template, which is replaced by the link tag in
1450      abbreviated links, you can now use =%h= (which does the same than =%s=
1451      but does not hexify the tag) and =%(sexp)= (which can run a function
1452      that takes the tag as its own argument.)
1454 **** New link type =help=
1456      You can now create links from =help= buffers.
1458      For example, if you request help for the command [[doc::org-agenda][org-agenda]] with
1459      =C-h f org-agenda RET=, creating a link from this buffer will let
1460      you go back to the same buffer.
1462 **** New command [[doc::org-insert-all-links][org-insert-all-links]]
1464      This will insert all links as list items.  With a universal
1465      prefix argument, links will not be deleted from the variable
1466      =org-stored-links=.
1468      This new command is bound to =C-c C-M-l=.
1470 **** New option [[doc::org-url-hexify-p][org-url-hexify-p]]
1472      When set to =nil=, the =URL= part of a link will not be hexified.
1474 **** Org can now open multiple shell links
1476 **** New option [[doc::org-doi-server-url][org-doi-server-url]] to specify an alternate DOI server
1478 **** RET now follows time stamps links
1480 *** Org Editing
1482 **** [[doc::org-todo][org-todo]] and =org-archive-*= can now loop in the active region
1484      When [[doc::org-loop-over-headlines-in-active-region][org-loop-over-headlines-in-active-region]] is =non-nil=, using
1485      [[doc::org-todo][org-todo]] or =org-archive-*= commands in the active region will
1486      loop over headlines.  This is handy if you want to set the TODO
1487      keyword for several items, or archive them quickly.
1489 **** You can now set tags for headlines in a region
1491      If [[doc::org-loop-over-headlines-in-active-region][org-loop-over-headlines-in-active-region]] is =non-nil=, then
1492      selecting the region and hitting =C-c C-q= will set the tags for
1493      all headlines in the region.
1495 **** New command [[doc::org-insert-drawer][org-insert-drawer]] to insert a drawer interactively
1497 **** Comments start with "^[ \t]*# " anywhere on a line
1499      Note that the space after the hashtag is mandatory.  Comments
1500      with "^#+" are not supported anymore.
1502 **** New speed key =#= to toggle the COMMENT cookie on a headline
1504 **** =indent-region-function= is now set to [[doc::org-indent-region][org-indent-region]]
1506      =C-M-\= should now produce useful results.
1508      You can unindent the buffer with [[doc::org-unindent-buffer][org-unindent-buffer]].
1510 **** New option [[doc::org-allow-promoting-top-level-subtree][org-allow-promoting-top-level-subtree]]
1512      When =non-nil=, =S-M-<left>= will promote level-1 subtrees
1513      containing other subtrees.  The level-1 headline will be
1514      commented out.  You can revert to the previous state with =M-x
1515      undo RET=.
1517 *** Org Clock
1519 **** New keybinding =C-c C-x C-z= for [[doc::org-clock-resolve][org-clock-resolve]]
1521 **** New keybinding =C-c C-x C-q= for [[doc::org-clock-cancel][org-clock-cancel]]
1523 **** New command [[doc::org-clock-in-last][org-clock-in-last]] to clock in the last clocked item
1525      This command is bound to =C-c C-x C-x= and will clock in the last
1526      clocked entry, if any.
1528 **** =C-u M-x= [[doc::org-clock-out][org-clock-out]] =RET= now prompts for a state to switch to
1530 **** =S-M-<up/down>= on a clock timestamps adjusts the previous/next clock
1532 **** New option [[doc::org-clock-continuously][org-clock-continuously]]
1534      When set to =nil=, clocking in a task will first try to find the
1535      last clocked out task and restart from when that task was clocked
1536      out.
1538      You can temporarily activate continuous clocking with =C-u C-u
1539      C-u M-x= [[doc::org-clock-in][org-clock-in]] =RET= (three universal prefix arguments)
1540      and =C-u C-u M-x= [[org-clock-in-last][org-clock-in-last]] =RET= (two universal prefix
1541      arguments).
1544 **** New option [[doc::org-clock-frame-title-format][org-clock-frame-title-format]]
1546      This option sets the value of =frame-title-format= when clocking
1547      in.
1549 **** New options for controlling the clockreport display
1551      [[doc::org-clock-file-time-cell-format][org-clock-file-time-cell-format]]: Format string for the file time
1552      cells in clockreport.
1554      [[doc::org-clock-total-time-cell-format][org-clock-total-time-cell-format]]: Format string for the total
1555      time cells in clockreport.
1558 **** New options for controlling the clock/timer display
1560      [[doc::org-clock-clocked-in-display][org-clock-clocked-in-display]]: control whether the current clock
1561      is displayed in the mode line and/or frame title.
1563      [[doc::org-timer-display][org-timer-display]]: control whether the current timer is displayed
1564      in the mode line and/or frame title.
1566      This allows the clock and timer to be displayed in the frame
1567      title instead of, or as well as, the mode line.  This is useful
1568      for people with limited space in the mode line but with ample
1569      space in the frame title.
1571 *** Org Appearance
1573 **** New option [[doc::org-custom-properties][org-custom-properties]]
1575      The visibility of properties listed in this options can be turn
1576      on/off with [[doc::org-toggle-custom-properties-visibility][org-toggle-custom-properties-visibility]].  This might
1577      be useful for properties used by third-part tools or that you
1578      don't want to see temporarily.
1580 **** New command [[doc::org-redisplay-inline-images][org-redisplay-inline-images]]
1582      This will redisplay all images.  It is bound to =C-c C-x C-M-v=.
1584 **** New entities in =org-entities.el=
1586      There are these new entities:
1588      : ("tilde" "\\~{}" nil "&tilde;" "~" "~" "~")
1589      : ("slash" "/" nil "/" "/" "/" "/")
1590      : ("plus" "+" nil "+" "+" "+" "+")
1591      : ("under" "\\_" nil "_" "_" "_" "_")
1592      : ("equal" "=" nil "=" "=" "=" "=")
1593      : ("asciicirc" "\\textasciicircum{}" nil "^" "^" "^" "^")
1595 **** New face =org-list-dt= for definition terms
1596 **** New face =org-date-selected= for the selected calendar day
1597 **** New face value for =org-document-title=
1599      The face is back to a normal height.
1601 *** Org Columns
1603 **** New speed command =:= to activate the column view
1604 **** New special property =CLOCKSUM_T= to display today's clocked time
1606      You can use =CLOCKSUM_T= the same way you use =CLOCKSUM=.  It
1607      will display the time spent on tasks for today only.
1609 **** Use the =:COLUMNS:= property in columnview dynamic blocks
1611      If the =:COLUMNS:= is set in a subtree, the columnview dynamic
1612      block will use its value as the column format.
1614 **** Consider inline tasks when computing a sum
1616 *** Org Dates and Time Stamps
1618 **** Enhanced [[doc::org-sparse-tree][org-sparse-tree]]
1620      =C-c /= can now check for time ranges.
1622      When checking for dates with =C-c /= it is useful to change the
1623      type of dates that you are interested in.  You can now do this
1624      interactively with =c= after =C-c /= and/or by setting
1625      [[doc::org-sparse-tree-default-date-type][org-sparse-tree-default-date-type]] to the default value you want.
1627 **** Support for hourly repeat cookies
1629      You can now use
1631      : SCHEDULED: <2012-08-20 lun. 08:00 +1h>
1633      if you want to add an hourly repeater to an entry.
1635 **** =C-u C-u C-c .= inserts a time-stamp with no prompt
1637 **** When (setq [[doc::org-read-date-prefer-future][org-read-date-prefer-future]] 'time), accept days in the prompt
1639      "8am Wed" and "Wed 8am" are now acceptable values when entering a
1640      date from the prompt.  If [[doc::org-read-date-prefer-future][org-read-date-prefer-future]] is set to
1641      =time=, this will produce the expected prompt indication.
1643 **** New option [[doc::org-datetree-add-timestamp][org-datetree-add-timestamp]]
1645      When set to =non-nil=, datetree entries will also have a
1646      timestamp.  This is useful if you want to see these entries in a
1647      sparse tree with =C-c /=.
1649 *** Org Capture
1651 **** New command [[doc::org-capture-string][org-capture-string]]
1653      M-x [[doc::org-capture-string][org-capture-string]] RET will prompt for a string and a capture
1654      template.  The string will be used as an annotation for the
1655      template.  This is useful when capturing in batch mode as it lets
1656      you define the content of the template without being in Emacs.
1658 **** New option [[doc::org-capture-templates-contexts][org-capture-templates-contexts]]
1660      Setting this option allows you to define specific context where
1661      capture templates should be available from.  For example, when
1662      set to this value
1664      #+BEGIN_SRC emacs-lisp
1665   (setq org-capture-templates-contexts
1666         '(("c" (in-mode . "message-mode"))))
1667 #+END_SRC
1669      then the =c= capture template will only be available from
1670      =message-mode= buffers.  See the docstring and the manual for
1671      more details on how to use this.
1673 **** New =%l= template to insert the literal link
1674 **** New option [[doc::org-capture-bookmark][org-capture-bookmark]]
1676      Org used to automatically add a bookmark with capture a note.
1677      You can now turn this on by setting [[doc::org-capture-bookmark][org-capture-bookmark]] to
1678      =nil=.
1680 **** Expand =%<num>= escape sequences into text entered for <num>'th =%^{PROMPT}= escape
1682      See the manual for more explanations.
1684 **** More control over empty lines
1686      You can use =:empty-lines-before= and =:empty-lines-after= to
1687      control the insertion of empty lines.  Check the manual for more
1688      explanations.
1690 **** New hook [[doc::org-capture-prepare-finalize-hook][org-capture-prepare-finalize-hook]]
1692      This new hook runs before the finalization process starts.
1694 *** Org Export
1696 **** New functions =orgtbl-to-table.el= and =orgtbl-to-unicode=
1698      =orgtbl-to-table.el= convert the table to a =table.el= table, and
1699      =orgtbl-to-unicode= will use =ascii-art-to-unicode.el= (when
1700      available) to print beautiful tables.
1702 **** [[doc::org-table-export][org-table-export]] now a bit clever about the target format
1704      When you specify a file name like =table.csv=, [[doc::org-table-export][org-table-export]]
1705      will now suggest =orgtbl-to-csv= the default method for exporting
1706      the table.
1708 **** New option [[doc::org-export-date-timestamp-format][org-export-date-timestamp-format]]
1710      The option allows to set a time string format for Org timestamps
1711      in the #+DATE option.
1713 **** LaTeX: New options for exporting table rules :tstart, :hline and :tend
1715      See [[doc::org-export-latex-tables-hline][org-export-latex-tables-hline]] and [[doc::org-export-latex-tables-tend][org-export-latex-tables-tend]].
1717 **** LaTeX: You can now set =:hfmt= from =#+ATTR_LaTeX=
1718 **** Beamer: Add support and keybinding for the =exampleblock= environment
1720      Add support for these languages in [[doc::org-export-language-setup][org-export-language-setup]].
1721      More languages are always welcome.
1723 **** Beamer: New option [[doc::org-beamer-inherited-properties][org-beamer-inherited-properties]]
1725      This option allows Beamer export to inherit some properties.
1726      Thanks to Carsten for implementing this.
1728 **** ODT: Add support for ODT export in org-bbdb.el
1729 **** ODT: Add support for indented tables (see [[http://orgmode.org/w/?p%3Dorg-mode.git%3Ba%3Dcommit%3Bh%3De9fd33][this commit]] for details)
1730 **** ODT: Improve the conversion from ODT to other formats
1731 **** ASCII: Swap the level-1/level-2 characters to underline the headlines
1732 **** Support for Chinese, simplified Chinese, Russian, Ukrainian and Japanese
1733 **** HTML: New option [[doc::org-export-html-date-format-string][org-export-html-date-format-string]]
1735      Format string to format the date and time in HTML export.  Thanks
1736      to Sébastien Vauban for this patch.
1738 *** Org Babel
1740 **** New =:results drawer= parameter
1742 =:results drawer= replaces =:results wrap=, which is deprecated but still
1743 supported.
1745 **** =:results org= now put results in a =#+BEGIN_SRC org= block
1747 =:results org= used to put results in a =#+BEGIN_ORG= block but it now puts
1748 results in a =#+BEGIN_SRC org= block, with comma-escaped lines.
1750 =#+BEGIN_ORG= blocks are obsolete.
1752 **** Exporting =#+BEGIN_SRC org= blocks exports the code
1754 It used to exports the results of the code.
1756 *** Miscellaneous
1758 **** New menu entry for [[doc::org-refile][org-refile]]
1759 **** Allow capturing to encrypted entries
1761 If you capture to an encrypted entry, it will be decrypted before
1762 inserting the template then re-encrypted after finalizing the capture.
1764 **** Inactive timestamps are now handled in tables
1766 Calc can do computation on active time-stamps like <2012-09-29 sat.>.
1767 Inactive time-stamps in a table's cell are now internally deactivated so
1768 that Calc formulas can operate on them.
1770 **** [[doc::org-table-number-regexp][org-table-number-regexp]] can now accept comma as decimal mark
1771 **** Org allows a new property =APPT_WARNTIME=
1773      You can set it with the =W= speedy key or set it manually.  When
1774      set, exporting to iCalendar and [[doc::org-agenda-to-appt][org-agenda-to-appt]] will use the
1775      value of this property as the number of minutes for the warning
1776      alarm.
1778 **** New command [[doc::org-inc-effort][org-inc-effort]]
1780      This will increment the effort value.
1782      It is bound to =C-c C-x E= and to =E= as a speedy command.
1784 **** Attach: Add support for creating symbolic links
1786      =org-attach-method= now supports a new method =lns=, allowing to
1787      attach symbolic links.
1789 **** Archive: you can now archive to a datetree
1791 **** New option [[doc::org-inlinetask-show-first-star][org-inlinetask-show-first-star]]
1793      =Non-nil= means display the first star of an inline task as
1794      additional marker.  When =nil=, the first star is not shown.
1796 **** New option [[doc::org-latex-preview-ltxpng-directory][org-latex-preview-ltxpng-directory]]
1798      This lets you define the path for the =ltxpng/= directory.
1800 **** You can now use imagemagick instead of dvipng to preview LaTeX fragments
1801 **** You can now turn off [[doc::orgstruct++-mode][orgstruct++-mode]] safely
1802 **** =C-u C-c C-c= on list items to add check boxes
1804      =C-u C-c C-c= will add an empty check box on a list item.
1806      When hit from the top of the list, it will add check boxes for
1807      all top level list items.
1809 **** =org-list-ending-method= and =org-list-end-regexp= are now obsolete
1811      Fall back on using =org-list-end-re= only, which see.
1813 **** org-feed.el now expands =%(sexp)= templates
1814 **** New option [[doc::org-protocol-data-separator][org-protocol-data-separator]]
1816 **** New option [[doc::org-ditaa-jar-option][org-ditaa-jar-option]] to specify the ditaa jar file
1818 **** New possible value for [[doc::org-loop-over-headlines-in-active-region][org-loop-over-headlines-in-active-region]]
1820      When [[doc::org-loop-over-headlines-in-active-region][org-loop-over-headlines-in-active-region]] is set to
1821      =start-level=, the command will loop over the active region but
1822      will only act upon entries that are of the same level than the
1823      first headline in the region.
1825 **** New option [[doc::org-habit-show-all-today][org-habit-show-all-today]]
1827      When set to =t=, show all (even unscheduled) habits on today's
1828      agenda.
1830 ** Important bug fixes
1832 *** M-TAB on options keywords perform completion correctly again
1834     If you hit =M-TAB= on keywords like =#+TITLE=, Org will try to
1835     perform completion with meaningful values.
1837 *** Add licenses to javascript embedded and external code snippets
1839     Embedded javascript code produced when exporting an Org file to
1840     HTML is now licensed under GPLv3 (or later), and the copyright is
1841     owned by the Free Software Foundation, Inc.
1843     The javascript code for embedding MathJax in the browser mentions
1844     the MathJax copyright and the Apache 2.0 license.
1846     The javascript code for embedding =org-injo.js= in the browser
1847     mentions the copyright of Sebastian Rose and the GPLv3 (or later)
1848     license.
1850     =org-export-html-scripts= is now a variable, so that you can adapt
1851     the code and the license to your needs.
1853     See http://www.gnu.org/philosophy/javascript-trap.html for
1854     explanations on why these changes were necessary.
1856 * Version 7.8.11
1858 ** Incompatible changes
1860 *** Emacs 21 support has been dropped
1862     Do not use Org mode 7.xx with Emacs 21, use [[http://orgmode.org/org-6.36c.zip][version 6.36c]] instead.
1864 *** XEmacs support requires the XEmacs development version
1866     To use Org mode 7.xx with XEmacs, you need to run the developer
1867     version of XEmacs.  We were about to drop XEmacs support entirely,
1868     but Michael Sperber stepped in and made changes to XEmacs that
1869     made it easier to keep the support.  Thanks to Michael for this
1870     last-minute save.
1872 *** New keys for TODO sparse trees
1874     The key =C-c C-v= is now reserved for Org Babel action.  TODO
1875     sparse trees can still be made with =C-c / t= (all not-done
1876     states) and =C-c / T= (specific states).
1878 *** The Agenda =org-agenda-ndays= is now obsolete
1880     The variable =org-agenda-ndays= is obsolete - please use
1881     =org-agenda-span= instead.
1883     Thanks to Julien Danjou for this.
1885 *** Changes to the intended use of =org-export-latex-classes=
1887     So far this variable has been used to specify the complete header
1888     of the LaTeX document, including all the =\usepackage= calls
1889     necessary for the document.  This setup makes it difficult to
1890     maintain the list of packages that Org itself would like to call,
1891     for example for the special symbol support it needs.
1893     First of all, you can *opt out of this change* in the following
1894     way: You can say: /I want to have full control over headers, and I
1895     will take responsibility to include the packages Org needs/.  If
1896     that is what you want, add this to your configuration and skip the
1897     rest of this section (except maybe for the description of the
1898     =[EXTRA]= place holder):
1900     #+begin_src emacs-lisp
1901    (setq org-export-latex-default-packages-alist nil
1902          org-export-latex-packages-alist nil)
1903     #+end_src
1905     /Continue to read here if you want to go along with the modified
1906     setup./
1908     There are now two variables that should be used to list the LaTeX
1909     packages that need to be included in all classes.  The header
1910     definition in =org-export-latex-classes= should then not contain
1911     the corresponding =\usepackage= calls (see below).
1913     The two new variables are:
1915     1. =org-export-latex-default-packages-alist= :: This is the
1916          variable where Org-mode itself puts the packages it needs.
1917          Normally you should not change this variable.  The only
1918          reason to change it anyway is when one of these packages
1919          causes a conflict with another package you want to use.  Then
1920          you can remove that packages and hope that you are not using
1921          Org-mode functionality that needs it.
1923     2. =org-export-latex-packages-alist= :: This is the variable where
1924          you can put the packages that you'd like to use across all
1925          classes.
1927     The sequence how these customizations will show up in the LaTeX
1928     document are:
1930     1. Header from =org-export-latex-classes=
1931     2. =org-export-latex-default-packages-alist=
1932     3. =org-export-latex-packages-alist=
1933     4. Buffer-specific things set with =#+LaTeX_HEADER:=
1935     If you want more control about which segment is placed where, or
1936     if you want, for a specific class, have full control over the
1937     header and exclude some of the automatic building blocks, you can
1938     put the following macro-like place holders into the header:
1940     #+begin_example
1941     [DEFAULT-PACKAGES]      \usepackage statements for default packages
1942     [NO-DEFAULT-PACKAGES]   do not include any of the default packages
1943     [PACKAGES]              \usepackage statements for packages
1944     [NO-PACKAGES]           do not include the packages
1945     [EXTRA]                 the stuff from #+LaTeX_HEADER
1946     [NO-EXTRA]              do not include #+LaTeX_HEADER stuff
1947     #+end_example
1949     If you have currently customized =org-export-latex-classes=, you
1950     should revise that customization and remove any package calls that
1951     are covered by =org-export-latex-default-packages-alist=.  This
1952     applies to the following packages:
1954     - inputenc
1955     - fontenc
1956     - fixltx2e
1957     - graphicx
1958     - longtable
1959     - float
1960     - wrapfig
1961     - soul
1962     - t1enc
1963     - textcomp
1964     - marvosym
1965     - wasysym
1966     - latexsym
1967     - amssymb
1968     - hyperref
1970     If one of these packages creates a conflict with another package
1971     you are using, you can remove it from
1972     =org-export-latex-default-packages-alist=.  But then you risk that
1973     some of the advertised export features of Org will not work
1974     properly.
1976     You can also consider moving packages that you use in all classes
1977     to =org-export-latex-packages-alist=.  If necessary, put the place
1978     holders so that the packages get loaded in the right sequence.  As
1979     said above, for backward compatibility, if you omit the place
1980     holders, all the variables will dump their content at the end of
1981     the header.
1983 *** The constant =org-html-entities= is obsolete
1985     Its content is now part of the new constant =org-entities=, which
1986     is defined in the file org-entities.el.  =org-html-entities= was
1987     an internal variable, but it is possible that some users did write
1988     code using it.
1990 *** =org-bbdb-anniversary-format-alist= has changed
1992     Please check the docstring and update your settings accordingly.
1994 *** Deleted =org-mode-p=
1996     This function has been deleted: please update your code.
1998 ** Important new features
2000 *** New Org to ODT exporter
2002     Jambunathan's Org to ODT exporter is now part of Org.
2004     To use it, it `C-c C-e o' in an Org file.  See the documentation
2005     for more information on how to customize it.
2007 *** org-capture.el is now the default capture system
2009     This replaces the earlier system org-remember.  The manual only
2010     describes org-capture, but for people who prefer to continue to
2011     use org-remember, we keep a static copy of the former manual
2012     section [[http://orgmode.org/org-remember.pdf][chapter about remember]].
2014     The new system has a technically cleaner implementation and more
2015     possibilities for capturing different types of data.  See
2016     [[http://thread.gmane.org/gmane.emacs.orgmode/26441/focus%3D26441][Carsten's announcement]] for more details.
2018     To switch over to the new system:
2020     1. Run
2022      : M-x org-capture-import-remember-templates RET
2024        to get a translated version of your remember templates into the
2025        new variable =org-capture-templates=.  This will "mostly" work,
2026        but maybe not for all cases.  At least it will give you a good
2027        place to modify your templates.  After running this command,
2028        enter the customize buffer for this variable with
2030      : M-x customize-variable RET org-capture-templates RET
2032        and convince yourself that everything is OK.  Then save the
2033        customization.
2035     2. Bind the command =org-capture= to a key, similar to what you did
2036        with org-remember:
2038      : (define-key global-map "\C-cc" 'org-capture)
2040        If your fingers prefer =C-c r=, you can also use this key once
2041        you have decided to move over completely to the new
2042        implementation.  During a test time, there is nothing wrong
2043        with using both system in parallel.
2045 ** New libraries
2047 *** New Org libraries
2048 **** org-eshell.el (Konrad Hinsen)
2050      Implement links to eshell buffers.
2052 **** org-special-blocks (Carsten Dominik)
2054      This package generalizes the #+begin_foo and #+end_foo tokens.
2056      To use, put the following in your init file:
2058      #+BEGIN_EXAMPLE
2059 (require 'org-special-blocks)
2060 #+END_EXAMPLE
2062      The tokens #+begin_center, #+begin_verse, etc. existed
2063      previously.  This package generalizes them (at least for the
2064      LaTeX and html exporters).  When a #+begin_foo token is
2065      encountered by the LaTeX exporter, it is expanded
2066      into \begin{foo}.  The text inside the environment is not
2067      protected, as text inside environments generally is.
2068      When #+begin_foo is encountered by the html exporter, a div with
2069      class foo is inserted into the HTML file.  It is up to the user
2070      to add this class to his or her stylesheet if this div is to mean
2071      anything.
2073 **** org-taskjuggler.el (Christian Egli)
2075      Christian Egli's /org-taskjuggler.el/ module is now part of Org.
2076      He also wrote a [[http://orgmode.org/worg/org-tutorials/org-taskjuggler.php][tutorial]] for it.
2078 **** org-ctags.el (Paul Sexton)
2080      Targets like =<<my target>>= can now be found by Emacs' etag
2081      functionality, and Org-mode links can be used to to link to
2082      etags, also in non-Org-mode files.  For details, see the file
2083      /org-ctags.el/.
2085      This feature uses a new hook =org-open-link-functions= which will
2086      call function to do something special with text links.
2088      Thanks to Paul Sexton for this contribution.
2090 **** org-docview.el (Jan Böcker)
2092      This new module allows links to various file types using docview, where
2093      Emacs displays images of document pages.  Docview link types can point
2094      to a specific page in a document, for example to page 131 of the
2095      Org-mode manual:
2097      : [[docview:~/.elisp/org/doc/org.pdf::131][Org-Mode Manual]]
2099      Thanks to Jan Böcker for this contribution.
2101 *** New Babel libraries
2103 - ob-picolisp.el (Thorsten Jolitz)
2104 - ob-fortran.el (Sergey Litvinov)
2105 - ob-shen.el (Eric Schulte)
2106 - ob-maxima.el (Eric S Fraga)
2107 - ob-java.el (Eric Schulte)
2108 - ob-lilypond.el (Martyn Jago)
2109 - ob-awk.el (Eric Schulte)
2111 ** Other new features and various enhancements
2113 *** Hyperlinks
2115 **** Org-Bibtex -- major improvements
2117      Provides support for managing bibtex bibliographical references
2118      data in headline properties.  Each headline corresponds to a
2119      single reference and the relevant bibliographic meta-data is
2120      stored in headline properties, leaving the body of the headline
2121      free to hold notes and comments.  Org-bibtex is aware of all
2122      standard bibtex reference types and fields.
2124      The key new functions are
2126      - org-bibtex-check :: queries the user to flesh out all required
2127           (and with prefix argument optional) bibtex fields available
2128           for the specific reference =type= of the current headline.
2130      - org-bibtex-create :: Create a new entry at the given level,
2131           using org-bibtex-check to flesh out the relevant fields.
2133      - org-bibtex-yank :: Yank a bibtex entry on the kill ring as a
2134           formatted Org-mode headline into the current buffer
2136      - org-bibtex-export-to-kill-ring :: Export the current headline
2137           to the kill ring as a formatted bibtex entry.
2139 **** org-gnus.el now allows link creation from messages
2141      You can now create links from messages.  This is particularly
2142      useful when the user wants to stored messages that he sends, for
2143      later check.  Thanks to Ulf Stegemann for the patch.
2145 **** Modified link escaping
2147      David Maus worked on `org-link-escape'.  See [[http://article.gmane.org/gmane.emacs.orgmode/37888][his message]]:
2149      : Percent escaping is used in Org mode to escape certain characters
2150      : in links that would either break the parser (e.g. square brackets
2151      : in link target oder description) or are not allowed to appear in
2152      : a particular link type (e.g. non-ascii characters in a http:
2153      : link).
2154      :
2155      : With this change in place Org will apply percent escaping and
2156      : unescaping more consistently especially for non-ascii characters.
2157      : Additionally some of the outstanding bugs or glitches concerning
2158      : percent escaped links are solved.
2160      Thanks a lot to David for this work.
2162 **** Make =org-store-link= point to directory in a dired buffer
2164      When, in a dired buffer, the cursor is not in a line listing a
2165      file, `org-store-link' will store a link to the directory.
2167      Patch by Stephen Eglen.
2169 **** Allow regexps in =org-file-apps= to capture link parameters
2171      The way extension regexps in =org-file-apps= are handled has
2172      changed.  Instead of matching against the file name, the regexps
2173      are now matched against the whole link, and you can use grouping
2174      to extract link parameters which you can then use in a command
2175      string to be executed.
2177      For example, to allow linking to PDF files using the syntax
2178      =file:/doc.pdf::<page number>=, you can add the following entry
2179      to org-file-apps:
2181      #+begin_example
2182      Extension: \.pdf::\([0-9]+\)\'
2183      Command:   evince "%s" -p %1
2184      #+end_example
2186      Thanks to Jan Böcker for a patch to this effect.
2188 *** Dates and time
2190 **** Allow relative time when scheduling/adding a deadline
2192      You can now use relative duration strings like "-2d" or "++3w"
2193      when calling =org-schedule= or =org-deadline=: it will schedule
2194      (or set the deadline for) the item respectively two days before
2195      today and three weeks after the current timestamp, if any.
2197      You can use this programmatically: =(org-schedule nil "+2d")=
2198      will work on the current entry.
2200      You can also use this while (bulk-)rescheduling and
2201      (bulk-)resetting the deadline of (several) items from the agenda.
2203      Thanks to Memnon Anon for a heads up about this!
2205 **** American-style dates are now understood by =org-read-date=
2207      So when you are prompted for a date, you can now answer like this
2209      #+begin_example
2210      2/5/3         --> 2003-02-05
2211      2/5           --> <CURRENT-YEAR>-02-05
2212      #+end_example
2214 *** Agenda
2216 **** =org-agenda-custom-commands= has a default value
2218      This option used to be `nil' by default.  This now has a default
2219      value, displaying an agenda and all TODOs.  See the docstring for
2220      details.  Thanks to Carsten for this.
2222 **** Improved filtering through =org-agenda-to-appt=
2224      The new function allows the user to refine the scope of entries
2225      to pass to =org-agenda-get-day-entries= and allows to filter out
2226      entries using a function.
2228      Thanks to Peter Münster for raising a related issue and to
2229      Tassilo Horn for this idea.  Also thanks to Peter Münster for
2230      [[git:68ffb7a7][fixing a small bug]] in the final implementation.
2232 **** Allow ap/pm times in agenda time grid
2234      Times in the agenda can now be displayed in am/pm format.  See
2235      the new variable =org-agenda-timegrid-use-ampm=.  Thanks to
2236      C. A. Webber for a patch to this effect.
2238 **** Agenda: Added a bulk "scattering" command
2240      =B S= in the agenda buffer will cause tasks to be rescheduled a
2241      random number of days into the future, with 7 as the default.
2242      This is useful if you've got a ton of tasks scheduled for today,
2243      you realize you'll never deal with them all, and you just want
2244      them to be distributed across the next N days.  When called with
2245      a prefix arg, rescheduling will avoid weekend days.
2247      Thanks to John Wiegley for this.
2249 *** Exporting
2251 **** Simplification of org-export-html-preamble/postamble
2253      When set to `t', export the preamble/postamble as usual, honoring
2254      the =org-export-email/author/creator-info= variables.
2256      When set to a formatting string, insert this string.  See the
2257      docstring of these variable for details about available
2258      %-sequences.
2260      You can set =:html-preamble= in publishing project in the same
2261      way: `t' means to honor =:email/creator/author-info=, and a
2262      formatting string will insert a string.
2264 **** New exporters to Latin-1 and UTF-8
2266      While Ulf Stegemann was going through the entities list to
2267      improve the LaTeX export, he had the great idea to provide
2268      representations for many of the entities in Latin-1, and for all
2269      of them in UTF-8.  This means that we can now export files rich
2270      in special symbols to Latin-1 and to UTF-8 files.  These new
2271      exporters can be reached with the commands =C-c C-e n= and =C-c
2272      C-e u=, respectively.
2274      When there is no representation for a given symbol in the
2275      targeted coding system, you can choose to keep the TeX-macro-like
2276      representation, or to get an "explanatory" representation.  For
2277      example, =\simeq= could be represented as "[approx. equal to]".
2278      Please use the variable =org-entities-ascii-explanatory= to state
2279      your preference.
2281 **** HTML export: Add class to outline containers using property
2283      The =HTML_CONTAINER_CLASS= property can now be used to add a
2284      class name to the outline container of a node in HTML export.
2286 **** Throw an error when creating an image from a LaTeX snippet fails
2288      This behavior can be configured with the new option variable
2289      =org-format-latex-signal-error=.
2291 **** Support for creating BEAMER presentations from Org-mode documents
2293      Org-mode documents or subtrees can now be converted directly in
2294      to BEAMER presentation.  Turning a tree into a simple
2295      presentations is straight forward, and there is also quite some
2296      support to make richer presentations as well.  See the [[http://orgmode.org/manual/Beamer-class-export.html#Beamer-class-export][BEAMER
2297      section]] in the manual for more details.
2299      Thanks to everyone who has contributed to the discussion about
2300      BEAMER support and how it should work.  This was a great example
2301      for how this community can achieve a much better result than any
2302      individual could.
2304 *** Refiling
2306 **** Refile targets can now be cached
2308      You can turn on caching of refile targets by setting the variable
2309      =org-refile-use-cache=.  This should speed up refiling if you
2310      have many eligible targets in many files.  If you need to update
2311      the cache because Org misses a newly created entry or still
2312      offers a deleted one, press =C-0 C-c C-w=.
2314 **** New logging support for refiling
2316      Whenever you refile an item, a time stamp and even a note can be
2317      added to this entry.  For details, see the new option
2318      =org-log-refile=.
2320      Thanks to Charles Cave for this idea.
2322 *** Completion
2324 **** In-buffer completion is now done using John Wiegley's pcomplete.el
2326      Thanks to John Wiegley for much of this code.
2328 *** Tables
2330 **** New command =org-table-transpose-table-at-point=
2332      See the docstring.  This hack from Juan Pechiar is now part of
2333      Org's core.  Thanks to Juan!
2335 **** Display field's coordinates when editing it with =C-c `=
2337      When editing a field with =C-c `=, the field's coordinate will
2338      the displayed in the buffer.
2340      Thanks to Michael Brand for a patch to this effect.
2342 **** Spreadsheet computation of durations and time values
2344      If you want to compute time values use the =T= flag, either in
2345      Calc formulas or Elisp formulas:
2347      | Task 1 | Task 2 |   Total |
2348      |--------+--------+---------|
2349      |  35:00 |  35:00 | 1:10:00 |
2350      #+TBLFM: @2$3=$1+$2;T
2352      Values must be of the form =[HH:]MM:SS=, where hours are
2353      optional.
2355      Thanks to Martin Halder, Eric Schulte and Carsten for code and
2356      feedback on this.
2358 **** Implement formulas applying to field ranges
2360      Carsten implemented this field-ranges formulas.
2362      : A frequently requested feature for tables has been to be able to define
2363      : row formulas in a way similar to column formulas.  The patch below allows
2364      : things like
2365      :
2366      : @3=
2367      : @2$2..@5$7=
2368      : @I$2..@II$4=
2369      :
2370      : as the left hand side for table formulas in order to write a formula that
2371      : is valid for an entire column or for a rectangular section in a
2372      : table.
2374      Thanks a lot to Carsten for this.
2376 **** Sending radio tables from org buffers is now allowed
2378      Org radio tables can no also be sent inside Org buffers.  Also,
2379      there is a new hook which get called after a table has been sent.
2381      Thanks to Seweryn Kokot.
2383 *** Lists
2385 **** Improved handling of lists
2387      Nicolas Goaziou extended and improved the way Org handles lists.
2389      1. Indentation of text determines again end of items in
2390         lists. So, some text less indented than the previous item
2391         doesn't close the whole list anymore, only all items more
2392         indented than it.
2394      2. Alphabetical bullets are implemented, through the use of the
2395         variable `org-alphabetical-lists'. This also adds alphabetical
2396         counters like [@c] or [@W].
2398      3. Lists can now safely contain drawers, inline tasks, or various
2399         blocks, themselves containing lists. Two variables are
2400         controlling this: `org-list-forbidden-blocks', and
2401         `org-list-export-context'.
2403      4. Improve `newline-and-indent' (C-j): used in an item, it will
2404         keep text from moving at column 0. This allows to split text
2405         and make paragraphs and still not break the list.
2407      5. Improve `org-toggle-item' (C-c -): used on a region with
2408         standard text, it will change the region into one item. With a
2409         prefix argument, it will fallback to the previous behavior and
2410         make every line in region an item. It permits to easily
2411         integrate paragraphs inside a list.
2413      6. `fill-paragraph' (M-q) now understands lists. It can freely be
2414         used inside items, or on text just after a list, even with no
2415         blank line around, without breaking list structure.
2417      Thanks a lot to Nicolas for all this!
2419 *** Inline display of linked images
2421     Images can now be displayed inline.  The key C-c C-x C-v does
2422     toggle the display of such images.  Note that only image links
2423     that have no description part will be inlined.
2425 *** Implement offsets for ordered lists
2427     If you want to start an ordered plain list with a number different
2428     from 1, you can now do it like this:
2430     : 1. [@start:12] will star a lit a number 12
2432 *** Babel: code block body expansion for table and preview
2434     In org-babel, code is "expanded" prior to evaluation. I.e. the
2435     code that is actually evaluated comprises the code block contents,
2436     augmented with the extra code which assigns the referenced data to
2437     variables. It is now possible to preview expanded contents, and
2438     also to expand code during during tangling. This expansion takes
2439     into account all header arguments, and variables.
2441     A new keybinding `C-c M-b p' bound to `org-babel-expand-src-block'
2442     can be used from inside of a source code block to preview its
2443     expanded contents (which can be very useful for debugging).
2444     tangling
2446     The expanded body can now be tangled, this includes variable
2447     values which may be the results of other source-code blocks, or
2448     stored in headline properties or tables. One possible use for this
2449     is to allow those using org-babel for their emacs initialization
2450     to store values (e.g. usernames, passwords, etc...) in headline
2451     properties or in tables.
2453     Org-babel now supports three new header arguments, and new default
2454     behavior for handling horizontal lines in tables (hlines), column
2455     names, and rownames across all languages.
2457 *** Editing Convenience and Appearance
2459 **** New command =org-copy-visible= (=C-c C-x v=)
2461      This command will copy the visible text in the region into the
2462      kill ring.  Thanks to Florian Beck for this function and to
2463      Carsten for adding it to org.el and documenting it!
2465 **** Make it possible to protect hidden subtrees from being killed by =C-k=
2467      See the new variable =org-ctrl-k-protect-subtree=.  This was a
2468      request by Scott Otterson.
2470 **** Implement pretty display of entities, sub-, and superscripts.
2472      The command =C-c C-x \= toggles the display of Org's special
2473      entities like =\alpha= as pretty unicode characters.  Also, sub
2474      and superscripts are displayed in a pretty way (raised/lower
2475      display, in a smaller font).  If you want to exclude sub- and
2476      superscripts, see the variable
2477      =org-pretty-entities-include-sub-superscripts=.
2479      Thanks to Eric Schulte and Ulf Stegeman for making this possible.
2481 **** New faces for title, date, author and email address lines
2483      The keywords in these lines are now dimmed out, and the title is
2484      displayed in a larger font, and a special font is also used for
2485      author, date, and email information.  This is implemented by the
2486      following new faces:
2488      =org-document-title=
2489      =org-document-info=
2490      =org-document-info-keyword=
2492      In addition, the variable =org-hidden-keywords= can be used to
2493      make the corresponding keywords disappear.
2495      Thanks to Dan Davison for this feature.
2497 **** Simpler way to specify faces for tags and todo keywords
2499      The variables =org-todo-keyword-faces=, =org-tag-faces=, and
2500      =org-priority-faces= now accept simple color names as
2501      specifications.  The colors will be used as either foreground or
2502      background color for the corresponding keyword.  See also the
2503      variable =org-faces-easy-properties=, which governs which face
2504      property is affected by this setting.
2506      This is really a great simplification for setting keyword faces.
2507      The change is based on an idea and patch by Ryan Thompson.
2509 **** <N> in tables now means fixed width, not maximum width
2511      Requested by Michael Brand.
2513 **** Better level cycling function
2515      =TAB= in an empty headline cycles the level of that headline
2516      through likely states.  Ryan Thompson implemented an improved
2517      version of this function, which does not depend upon when exactly
2518      this command is used.  Thanks to Ryan for this improvement.
2520 **** Adaptive filling
2522      For paragraph text, =org-adaptive-fill-function= did not handle
2523      the base case of regular text which needed to be filled.  This is
2524      now fixed.  Among other things, it allows email-style ">"
2525      comments to be filled correctly.
2527      Thanks to Dan Hackney for this patch.
2529 **** `org-reveal' (=C-c C-r=) also decrypts encrypted entries (org-crypt.el)
2531      Thanks to Richard Riley for triggering this change.
2533 **** Better automatic letter selection for TODO keywords
2535      When all first letters of keywords have been used, Org now
2536      assigns more meaningful characters based on the keywords.
2538      Thanks to Mikael Fornius for this patch.
2540 *** Clocking
2542 **** Clock: Allow synchronous update of timestamps in CLOCK log
2544      Using =S-M-<up/down>= on CLOCK log timestamps will
2545      increase/decrease the two timestamps on this line so that
2546      duration will keep the same.  Note that duration can still be
2547      slightly modified in case a timestamp needs some rounding.
2549      Thanks to Rainer Stengele for this idea.
2551 **** Localized clock tables
2553      Clock tables now support a new new =:lang= parameter, allowing
2554      the user to customize the localization of the table headers.  See
2555      the variable =org-clock-clocktable-language-setup= which controls
2556      available translated strings.
2558 **** Show clock overruns in mode line
2560      When clocking an item with a planned effort, overrunning the
2561      planned time is now made visible in the mode line, for example
2562      using the new face =org-mode-line-clock-overrun=, or by adding an
2563      extra string given by =org-task-overrun-text=.
2565      Thanks to Richard Riley for a patch to this effect.
2567 **** Clock reports can now include the running, incomplete clock
2569      If you have a clock running, and the entry being clocked falls
2570      into the scope when creating a clock table, the time so far spent
2571      can be added to the total.  This behavior depends on the setting
2572      of =org-clock-report-include-clocking-task=.  The default is
2573      =nil=.
2575      Thanks to Bernt Hansen for this useful addition.
2577 *** Misc
2579 **** Improvements with inline tasks and indentation
2581      There is now a configurable way on how to export inline tasks.
2582      See the new variable =org-inlinetask-export-templates=.
2584      Thanks to Nicolas Goaziou for coding these changes.
2586 **** A property value of "nil" now means to unset a property
2588      This can be useful in particular with property inheritance, if
2589      some upper level has the property, and some grandchild of it
2590      would like to have the default settings (i.e. not overruled by a
2591      property) back.
2593      Thanks to Robert Goldman and Bernt Hansen for suggesting this
2594      change.
2596 **** New helper functions in org-table.el
2598      There are new functions to access and write to a specific table field.
2599      This is for hackers, and maybe for the org-babel people.
2601      #+begin_example
2602      org-table-get
2603      org-table-put
2604      org-table-current-line
2605      org-table-goto-line
2606      #+end_example
2608 **** Archiving: Allow to reverse order in target node
2610      The new option =org-archive-reversed-order= allows to have
2611      archived entries inserted in a last-on-top fashion in the target
2612      node.
2614      This was requested by Tom.
2616 **** Org-reveal: Double prefix arg shows the entire subtree of the parent
2618      This can help to get out of an inconsistent state produced for
2619      example by viewing from the agenda.
2621      This was a request by Matt Lundin.
2623 * License
2625   This file is part of GNU Emacs.
2627   GNU Emacs is free software: you can redistribute it and/or modify
2628   it under the terms of the GNU General Public License as published by
2629   the Free Software Foundation, either version 3 of the License, or
2630   (at your option) any later version.
2632   GNU Emacs is distributed in the hope that it will be useful,
2633   but WITHOUT ANY WARRANTY; without even the implied warranty of
2634   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2635   GNU General Public License for more details.
2637   You should have received a copy of the GNU General Public License
2638   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.