Update list of user-visible changes
[org-mode/org-mode-NeilSmithlineMods.git] / ORGWEBPAGE / Changes.org
blob3a600781e6f331c11ba4c454719d4e8ae560798a
2 * #   -*- mode: org; fill-column: 65 -*-
4 #+begin_html
5 <a href="/"><img src="http://orgmode.org/img/org-mode-unicorn.png" class="logo-link" /></a>
6 #+end_html
8 #+STARTUP: indent hidestars
10 * Version 7.02
12 :PROPERTIES:
13 :VISIBILITY: content
14 :CUSTOM_ID: v7.02
15 :END:
17 ** Incompatible Changes
18 *** Code block hashes
19 Due to changes in the code resolving code block header arguments
20 hashing of code block results should now re-run a code block when
21 an argument to the code block has changed.  As a result of this
22 change *all* code blocks with cached results will be re-run after
23 upgrading to the latest version.
25 *** Testing update
26 Anyone using the org-mode test suite will need to update the jump
27 repository for test navigation by executing the following from
28 the root of the org-mode repository.
29 : git submodule update
30 Failure to update this repository will cause loading of
31 org-test.el to throw errors.
32 ** Details
33 *** Multi-line header arguments to code blocks
34 Code block header arguments can now span multiple lines using the
35 new =#+header:= or =#+headers:= lines preceding a code block or
36 nested in between the name and body of a named code block.
37 Examples are given below.
39 - multi-line header arguments on an un-named code block
40   : #+headers: :var data1=1
41   : #+begin_src emacs-lisp :var data2=2
42   :   (message "data1:%S, data2:%S" data1 data2)
43   : #+end_src
44   : 
45   : #+results:
46   : : data1:1, data2:2
48 - multi-line header arguments on a named code block
49   :   #+source: named-block
50   :   #+header: :var data=2
51   :   #+begin_src emacs-lisp
52   :     (message "data:%S" data)
53   :   #+end_src
54   : 
55   :   #+results: named-block
56   :   : data:2
58 *** Unified handling of variable expansion for code blocks
59 The code used to resolve variable references in code block header
60 arguments has now been consolidated.  This both simplifies the
61 code base (especially the language-specific files), and ensures
62 that the arguments to a code block will not be evaluated multiple
63 times.  This change should not be externally visible to the
64 Org-mode user.
65 *** Improved Caching
66 Code block caches now notice if the value of a variable argument
67 to the code block has changed, if this is the case the cache is
68 invalidated and the code block is re-run.  The following example
69 can provide intuition for the new behavior.
70 #+begin_src org :exports code
71   ,#+srcname: random
72   ,#+begin_src R :cache yes
73   ,runif(1)
74   ,#+end_src
75   
76   ,#+results[a2a72cd647ad44515fab62e144796432793d68e1]: random
77   ,: 0.4659510825295
78   
79   ,#+srcname: caller
80   ,#+begin_src emacs-lisp :var x=random :cache yes
81   ,x
82   ,#+end_src
83   
84   ,#+results[bec9c8724e397d5df3b696502df3ed7892fc4f5f]: caller
85   ,: 0.254227238707244
86 #+end_src
88 *** Lists of anniversaries are now handeled better
90 When several anniversaries are defined in the bbdb anniversaries
91 field (separated by semicolon), this is now handled nicely by the
92 agenda.
94 Thanks to Lukasz Setmann for a patch to this effect.
96 *** Table fields are now aligned better, new <c> cookie.
98 In HTML export, table fields are now properly aligned in accord
99 with automatic alignment in org, or as set by the =<r>=, =<l>=, and
100 =<c>= cookies.  The =<c>= cookie is new and has no effect in
101 Org, but it does do the right thing in HTML export.
103 *** Update freemind converter to include body text
105 The freemind exporter now incorporates body text into the mind
106 map. 
108 Thanks to Lennard Borgman for this patch.
109     
110 *** Make footnotes work correctly in message-mode
111 The footnotes code now searches for the message delimiter "--" in
112 order to place footnotes before the signature.
113 Thanks to Tassilo Horn for this patch.
115 *** Improve XEmacs compatibility
117 Org-mode 7.02 now runs again in 21.4.22 if the new XEmacs base
118 package is installed.
120 Thanks to Uwe Bauer, Volker Ziegler, Michael Sperber and others
121 for a discussion that lead to this nice result.
122     
123 *** Make it configurable wether agenda jumping prefers the future
125 When jumping to a date from the agenda using the =j= key, you may
126 or may not like the property of Org's date reader to prefer the
127 future when you enter incomplete dates.   This can now be
128 configured using the variable =org-agenda-jump-prefer-future'.
130 *** Add publishing functions for ASCII, Latin-1 and UTF-8
132 There are now publishing functions =org-publish-org-to-ascii=,
133 =org-publish-org-to-latin1=, and =org-publish-org-to-utf8=. 
135 Thanks to Matthias Danzl for showing how to do this.
137 *** Indentation and headline insertion after inline tasks
139 Indentation in inline tasks, and headline insertion after inline
140 tasks now behave as expected.
142 *** Encryption in MobileOrg finally works
144 As soon as MobilOrg 1.5 hits the Apple's AppStore, you can
145 encrypt your org files on public servers.  Please see the
146 documentation of MobileOrg and Appendix B of the manual for more
147 details.
149 *** LaTeX minted package for fontified source code export
151 Patch by Dan Davison FIXME
152     
153 *** MobileOrg: Do not force to insert IDs
155 If you dislike the property of MobileOrg to insert ID properties
156 for in all entries being part of an agenda view, you can now turn
157 this off using the variable
158 =org-mobile-force-id-on-agenda-items=.  When this variable is set
159 to =nil=, MobileOrg will use outline paths to identify entries.
160 Note that this may fail if several entries have identical outline
161 paths.
163 *** Allow to use texi2dvi or rubber for processing LaTeX to pdf
165 Please see the variable =org-export-latex-to-pdf-process= for
166 more information.
168 Thanks to Olivier Schwander for the rubber part.
170 *** New STARTUP keywords to turn on inline images
172 If you want to inline images whenever you visit an Org file, use
174 : #+STARTUP: inlineimages
176 *** Support for user-extensible speed commands.
178 There is a new hook =org-speed-command-hook=.  Thanks to
179 Jambunathan for a patch to this effect.
181 *** Add macro to insert property values into exported text
183 you can use {{{property{NAME}}}} to insert the value of a
184 property upon export.
186 Thanks to David Maus for a patch to this effect.
188 *** Fontify code in code blocks.
190 Source code in code block can now be fontified.  Please customize
191 the varable =org-src-fontify-natively=, but be prepared for some
192 editing delays in larger blocks.  Thanks to Dan Davison for this.
194 *** LaTeX package fixes
196 We updated the list of default packages loaded by LaTeX exported
197 files.
199 *** Allow "#" and "%" in tags
201 Tags can now also contain the characters =#= and =%=, in addition
202 to =@= and letters.
204 *** Show command names in manual
206 Andreas Röhler is adding command names to keys in the manual.
207 This will take a while to complete, but a start has been made.
209 *** Make backslash escape "-" in property matches
211 When entering a tags/property query, "-" is a logical operator.
212 However, "-" is also allowed in property names.  So you can now
213 write "SOME\-NAME" to work around this issue.
215 This was a request by Ilya Shlyakhter.
216     
217 *** Document quick insertion of empty structural elements
219 Org-mode has a built-in template mechanism for inserting block
220 templates.  This was undocumented until now.
222 Thanks to Jambunathan K for the patch.
224 *** Implement MathJax support
226 Org-mode now uses MathJax to display math on web pages.  We serve
227 MathJax from the orgmode.org server, at least for the time being
228 (thanks Bastien!).  If you are going to use this for pages which
229 are viewd often, please install MathJax on your own webserver.
231 To return to the old way of creating images and inserting them
232 into web pages, you would have to set
234 : (setq org-export-with-LaTeX-fragments 'dvipng)
236 or on a per-file basis
238 : #+OPTIONS: LaTeX:dvipng
239     
240 *** Agenda: Allow compact two-column display in agenda dispatcher
242 If you have many custom agenda commands, you can have the display
243 in the dispatcher use two columns with the following settings
245 : (setq org-agenda-menu-show-match nil
246 :       org-agenda-menu-two-column t)
248 This was a request by John Wiegley.
250 *** Add org-wikinodes.el as a contributed package
252 One frequent request has been to be able to use CamelCase words
253 for automatic cross links in a Wiki created by Org.  THis is now
254 possible with org-wikinodes.el, which is available in the contrib
255 directory.  We also have some [[http://orgmode.org/worg/org-contrib/org-wikinodes.php][documentation]] for this feature up
256 on Worg.
258 * Version 7.01
259 :PROPERTIES:
260 :CUSTOM_ID: v7.01
261 :END:
263 ** Incompatible Changes
265 *** Emacs 21 support has been dropped
267 Do not use Org mode 7.xx with Emacs 21, use [[http://orgmode.org/org-6.36c.zip][version 6.36c]] instead.
269 *** XEmacs support requires the XEmacs development version
271 To use Org mode 7.xx with XEmacs, you need to run the developer
272 version of XEmacs.   I was about to drop XEmacs support entirely,
273 but Michael Sperber stepped in and made changes to XEmacs that
274 made it easier to keep the support.  Thanks to Michael for this
275 last-minute save.  I had hoped to be able to remove
276 xemacs/noutline.el from release 7 by moving it into XEmacs, but
277 this is not yet done.
279 *** Org-babel configuration changes
280 :PROPERTIES:
281 :CUSTOM_ID: ob-configuration-changes
282 :END:
284 Babel took the integration into Org-mode as an opportunity to do
285 some much needed house cleaning.  Most importantly we have
286 simplified the enabling of language support, and cleared out
287 unnecessary configuration variables -- which is great unless you
288 already have a working configuration under the old model.
290 The most important changes regard the /location/ and /enabling/
291 of Babel (both core functionality and language specific support).
293 - Babel :: Babel is now part of the core of Org-mode, so it is
294      now loaded along with the rest of Org-mode.  That means that
295      there is /no configuration/ required to enable the main
296      Babel functionality.  For current users, this means that
297      statements like
298      #+begin_src emacs-lisp
299        (require 'org-babel)
300      #+end_src
301      or
302      #+begin_src emacs-lisp
303        (require 'org-babel-init)
304      #+end_src
305      that may by lying around in your configuration must now be
306      removed.
307 - load path :: Babel (including all language specific files --
308      aside from those which are located in the =contrib/=
309      directory for reasons of licencing) now lives in the base of
310      the Org-mode lisp directory, so /no additional directories/
311      need to be added to your load path to use babel.  For Babel
312      users this means that statements adding babel-specific
313      directories to your load-path should now be removed from
314      your config.
315 - language support :: It is no longer necessary to require
316      language specific support on a language-by-language basis.
317      Specific language support should now be managed through the
318      `org-babel-load-languages' variable.  This variable can be
319      customized using the Emacs customization interface, or
320      through the addition of something like the following to your
321      configuration (note: any language not mentioned will /not/
322      be enabled, aside from =emacs-lisp= which is enabled by
323      default)
324      #+begin_src emacs-lisp
325        (org-babel-do-load-languages
326         'org-babel-load-languages
327         '((R . t)
328           (ditaa . t)
329           (dot . t)
330           (emacs-lisp . t)
331           (gnuplot . t)
332           (haskell . nil)
333           (ocaml . nil)
334           (python . t)
335           (ruby . t)
336           (screen . nil)
337           (sh . t)
338           (sql . nil)
339           (sqlite . t)))
340      #+end_src
341      
342            Despite this change it is still possible to add
343            language support through the use of =require=
344            statements, however to conform to Emacs file-name
345            regulations all Babel language files have changed
346            prefix from =org-babel-*= to =ob-*=, so the require
347            lines must also change e.g.
348            #+begin_src emacs-lisp
349        (require 'org-babel-R)
350            #+end_src
351            should be changed to
352            #+begin_src emacs-lisp
353        (require 'ob-R)
354            #+end_src
356 We have eliminated the =org-babel-tangle-w-comments= variable as
357 well as the two main internal lists of languages, namely
358 - =org-babel-interpreters= and
359 - =org-babel-tangle-langs= 
361 so any config lines which mention those variables, can/should be
362 stripped out in their entirety.  This includes any calls to the
363 =org-babel-add-interpreter= function, whose sole purpose was to
364 add languages to the =org-babel-interpreters= variable.
366 With those calls stripped out, we may still in some cases want to
367 associate a file name extension with certain languages, for
368 example we want all of our emacs-lisp files to end in a =.el=, we
369 can do this will the =org-babel-tangle-lang-exts= variable.  In
370 general you shouldn't need to touch this as it already has
371 defaults for most common languages, and if a language is not
372 present in org-babel-tangle-langs, then babel will just use the
373 language name, so for example a file of =c= code will have a =.c=
374 extension by default, shell-scripts (identified with =sh=) will
375 have a =.sh= extension etc...
377 The configuration of /shebang/ lines now lives in header
378 arguments.  So the shebang for a single file can be set at the
379 code block level, e.g.
381 #+begin_src org
382   ,#+begin_src clojure :shebang #!/usr/bin/env clj
383   ,  (println "with a shebang line, I can be run as a script!")
384   ,#+end_src  
385 #+end_src
387 Note that whenever a file is tangled which includes a /shebang/
388 line, Babel will make the file executable, so there is good
389 reason to only add /shebangs/ at the source-code block level.
390 However if you're sure that you want all of your code in some
391 language (say shell scripts) to tangle out with shebang lines,
392 then you can customize the default header arguments for that
393 language, e.g.
395 #+begin_src emacs-lisp
396   ;; ensure this variable is defined defined
397   (unless (boundp 'org-babel-default-header-args:sh)
398     (setq org-babel-default-header-args:sh '()))
399   
400   ;; add a default shebang header argument
401   (add-to-list 'org-babel-default-header-args:sh
402                '(:shebang . "#!/bin/bash"))  
403 #+end_src
405 The final important change included in this release is the
406 addition of new security measures into Babel.  These measures are
407 in place to protect users from the accidental or uninformed
408 execution of code.  Along these lines /every/ execution of a code
409 block will now require an explicit confirmation from the user.
410 These confirmations can be stifled through customization of the
411 `org-confirm-babel-evaluate' variable, e.g.
412 #+begin_src emacs-lisp
413   ;; I don't want to be prompted on every code block evaluation
414   (setq org-confirm-babel-evaluate nil)
415 #+end_src
417 In addition, it is now possible to remove code block evaluation
418 form the =C-c C-c= keybinding.  This can be done by setting the
419 =org-babel-no-eval-on-ctrl-c-ctrl-c= variable to a non-nil value,
420 e.g.
421 #+begin_src emacs-lisp
422   ;; I don't want to execute code blocks with C-c C-c
423   (setq org-babel-no-eval-on-ctrl-c-ctrl-c t)
424 #+end_src
426 An additional keybinding has been added for code block
427 evaluation, namely =C-c C-v e=.
429 Whew! that seems like a lot of effort for a /simplification/ of
430 configuration.
432 *** New keys for TODO sparse trees
434 The key =C-c C-v= is now reserved for Org Babel action.  TODO
435 sparse trees can still be made with =C-c / t= (all not-done
436 states) and =C-c / T= (specific states).
438 *** Customizable variable changes for DocBook exporter
440 To make it more flexible for users to provide DocBook exporter
441 related commands, we start to use format-spec to format the
442 commands in this release.  If you use DocBook exporter and use it
443 to export Org files to PDF and/or FO format, the settings of the
444 following two customizable variables need to be changed:
446 - =org-export-docbook-xslt-proc-command=
447 - =org-export-docbook-xsl-fo-proc-command=
449 Instead of using =%s= in the format control string for all
450 arguments, now we use /three/ different format spec characters:
452 - =%i=: input file argument
453 - =%o=: output file argument
454 - =%s=: XSLT stylesheet argument
456 For example, if you set =org-export-docbook-xslt-proc-command= to
458 : java com.icl.saxon.StyleSheet -o %s %s /path/to/docbook.xsl
460 in the past, now you need to change it to
462 : java com.icl.saxon.StyleSheet -o %o %i %s
464 and set a new customizable variable called
465 =org-export-docbook-xslt-stylesheet= to =/path/to/docbook.xsl=.
467 Please check the documentation of these two variables for more
468 details and other examples.
470 Along with the introduction of variable
471 =org-export-docbook-xslt-stylesheet=, we also added a new
472 in-buffer setting called =#+XSLT:=.  You can use this setting to
473 specify the XSLT stylesheet that you want to use on a per-file
474 basis.  This setting overrides
475 =org-export-docbook-xslt-stylesheet=.
477 ** Details
479 *** Org Babel is now part of the Org core
480 See [[#ob-configuration-changes][Org-babel configuration changes]] for instructions on how to
481 update your babel configuration.
483 The most significant result of this change is that Babel now has
484 documentation!  It is part of Org-mode's documentation, see
485 Chapter 14 [[http://orgmode.org/manual/Working-with-source-code.html#Working-with-source-code][Working With Source Code]].  The Babel keybindings
486 are now listed in the refcard, and can be viewed from any
487 Org-mode buffer by pressing =C-c C-v h=.  In addition this
488 integration has included a number of bug fixes, and a significant
489 amount of internal code cleanup.
491 *** The default capture system for Org mode is now called org-capture
493 This replaces the earlier system org-remember.  The manual only
494 describes org-capture, but for people who prefer to continue to
495 use org-remember, we keep a static copy of the former manual
496 section [[http://orgmode.org/org-remember.pdf][chapter about remember]].
498 The new system has a technically cleaner implementation and more
499 possibilities for capturing different types of data.  See
500 [[http://thread.gmane.org/gmane.emacs.orgmode/26441/focus%3D26441][Carsten's announcement]] for more details.
502 To switch over to the new system:
504 1. Run 
506    : M-x org-capture-import-remember-templates RET
508    to get a translated version of your remember templates into the
509    new variable =org-capture-templates=.  This will "mostly" work,
510    but maybe not for all cases.  At least it will give you a good
511    place to modify your templates.  After running this command,
512    enter the customize buffer for this variable with 
514    : M-x customize-variable RET org-capture-templates RET
516    and convince yourself that everything is OK.  Then save the
517    customization.
518    
519 2. Bind the command =org-capture= to a key, similar to what you did
520    with org-remember:
522    : (define-key global-map "\C-cc" 'org-capture)
524    If your fingers prefer =C-c r=, you can also use this key once
525    you have decided to move over completely to the new
526    implementation.  During a test time, there is nothing wrong
527    with using both system in parallel.
529 *** Implement pretty display of entities, sub-, and superscripts.
531 The command =C-c C-x \= toggles the display of Org's special
532 entities like =\alpha= as pretty unicode characters.  Also, sub
533 and superscripts are displayed in a pretty way (raised/lower
534 display, in a smaller font).  If you want to exclude sub- and
535 superscripts, see the variable
536 =org-pretty-entities-include-sub-superscripts=.
538 Thanks to Eric Schulte and Ulf Stegeman for making this possible.
540 *** Help system for finding entities
542 The new command =M-x org-entities-help= creates a structured
543 buffer that lists all entities available in Org.  Thanks to Ulf
544 Stegeman for adding the necessary structure to the internal
545 entity list.
547 *** New module to create Gantt charts
549 Christian Egli's /org-taskjuggler.el/ module is now part of Org.
550 He also wrote a [[http://orgmode.org/worg/org-tutorials/org-taskjuggler.php][tutorial]] for it.
552 *** Refile targets can now be cached
554 You can turn on caching of refile targets by setting the variable
555 =org-refile-use-cache=.  This should speed up refiling if you
556 have many eligible targets in many files.  If you need to update
557 the cache because Org misses a newly created entry or still
558 offers a deleted one, press =C-0 C-c C-w=.
560 *** Enhanced functionality of the clock resolver
562 Here are the new options for the clock resolver:
563     
564 : i/q/C-g  Ignore this question; the same as keeping all the idle time.
566 : k/K      Keep X minutes of the idle time (default is all).  If this
567 :          amount is less than the default, you will be clocked out
568 :          that many minutes after the time that idling began, and then
569 :          clocked back in at the present time.
570 : g/G      Indicate that you \"got back\" X minutes ago.  This is quite
571 :          different from 'k': it clocks you out from the beginning of
572 :          the idle period and clock you back in X minutes ago.
573 : s/S      Subtract the idle time from the current clock.  This is the
574 :          same as keeping 0 minutes.
575 : C        Cancel the open timer altogether.  It will be as though you
576 :          never clocked in.
577 : j/J      Jump to the current clock, to make manual adjustments.
578     
579 For all these options, using uppercase makes your final state
580 to be CLOCKED OUT.  Thanks to John Wiegley for making these
581 changes.
583 *** A property value of "nil" now means to unset a property
585 This can be useful in particular with property inheritance, if
586 some upper level has the property, and some grandchild of it
587 would like to have the default settings (i.e. not overruled by a
588 property) back.
590 Thanks to Robert Goldman and Bernt Hansen for suggesting this
591 change.
593 *** The problem with comment syntax has finally been fixed
595 Thanks to Leo who has been on a year-long quest to get this fixed
596 and finally found the right way to do it.
598 *** Make it possible to protect hidden subtrees from being killed by =C-k=
599     
600 This was a request by Scott Otterson.
601 See the new variable =org-ctrl-k-protect-subtree=.
602     
603 *** New module org-mac-link-grabber.el
605 This module allows to grab links to all kinds of applications on
606 a mac.  It is available in the contrib directory.
608 Thanks to Anthony Lander for this contribution.
610 *** LaTeX export: Implement table* environment for wide tables
611     
612 Thanks to Chris Gray for a patch to this effect.
614 *** When cloning entries, remove or renew ID property
616 Thanks to David Maus for this change.
618 * Version 6.36
620  :PROPERTIES:
621  :CUSTOM_ID: v6.36
622  :END:
624 ** Details
625 *** Inline display of linked images
627 Images can now be displayed inline.  The key C-c C-x C-v does
628 toggle the display of such images.  Note that only image links
629 that have no description part will be inlined.
631 *** Implement offsets for ordered lists
633 If you want to start an ordered plain list with a number
634 different from 1, you can now do it like this:
635     
636 : 1. [@start:12] will star a lit a number 12
638 *** Extensions to storing and opening links to Wanderlust messages
639     
640 - Remove filter conditions for messages in a filter folder
641     
642   If customization variable `org-wl-link-remove-filter' is non-nil,
643   filter conditions are stripped of the folder name.
644     
645 - Create web links for messages in a Shimbun folder
647   If customization variable `org-wl-shimbun-prefer-web-links' is
648   non-nil, calling `org-store-link' on a Shimbun message creates a
649   web link to the messages source, indicated in the Xref: header
650   field.
652 - Create web links for messages in a nntp folder
654   If customization variable `org-wl-nntp-prefer-web-links' is
655   non-nil, calling `org-store-link' on a nntp message creates a web
656   link either to gmane.org if the group can be read trough gmane or
657   to googlegroups otherwise. In both cases the message-id is used as
658   reference.
660 - Open links in namazu search folder
662   If `org-wl-open' is called with one prefix, WL opens a namazu
663   search folder for message's message-id using
664   `org-wl-namazu-default-index' as search index.  If this variable is
665   nil or `org-wl-open' is called with two prefixes Org asks for the
666   search index to use.
668 Thanks to David Maus for these changes.
670 *** Org-babel: code block body expansion for table and preview
672 In org-babel, code is "expanded" prior to evaluation. I.e. the
673 code that is actually evaluated comprises the code block
674 contents, augmented with the extra code which assigns the
675 referenced data to variables. It is now possible to preview
676 expanded contents, and also to expand code during during
677 tangling. This expansion takes into account all header arguments,
678 and variables.
680 A new key-binding C-c M-b p bound to
681 `org-babel-expand-src-block' can be used from inside of a
682 source code block to preview its expanded contents (which can
683 be very useful for debugging).  tangling
685 The expanded body can now be tangled, this includes variable
686 values which may be the results of other source-code blocks, or
687 stored in headline properties or tables. One possible use for
688 this is to allow those using org-babel for their emacs
689 initialization to store values (e.g. usernames, passwords,
690 etc…) in headline properties or in tables.
692 Org-babel now supports three new header arguments, and new
693 default behavior for handling horizontal lines in tables
694 (hlines), column names, and rownames across all languages.
696 * Version 6.35
697  :PROPERTIES:
698  :CUSTOM_ID: v6.35
699  :END:
701 ** Incompatible Changes
703 *** Changes to the intended use of =org-export-latex-classes=
705 So far this variable has been used to specify the complete header
706 of the LaTeX document, including all the =\usepackage= calls
707 necessary for the document.  This setup makes it difficult to
708 maintain the list of packages that Org itself would like to call,
709 for example for the special symbol support it needs.  Each time I
710 have to add a package, I have to ask people to revise the
711 configuration of this variable.  In this release, I have tried to
712 fix this.
714 First of all, you can *opt out of this change* in the following
715 way: You can say: /I want to have full control over headers, and
716 I will take responsibility to include the packages Org needs/.
717 If that is what you want, add this to your configuration and skip
718 the rest of this section (except maybe for the description of the
719 =[EXTRA]= place holder):
721 #+begin_src emacs-lisp
722   (setq org-export-latex-default-packages-alist nil
723         org-export-latex-packages-alist nil)
724 #+end_src
726 /Continue to read here if you want to go along with the modified
727 setup./
729 There are now two variables that should be used to list the LaTeX
730 packages that need to be included in all classes.  The header
731 definition in =org-export-latex-classes= should then not contain
732 the corresponding =\usepackage= calls (see below).
734 The two new variables are:
736 1. =org-export-latex-default-packages-alist= :: This is the
737      variable where Org-mode itself puts the packages it needs.
738      Normally you should not change this variable.  The only
739      reason to change it anyway is when one of these packages
740      causes a conflict with another package you want to use.
741      Then you can remove that packages and hope that you are not
742      using Org-mode functionality that needs it.
744 2. =org-export-latex-packages-alist= :: This is the variable
745      where you can put the packages that you'd like to use across
746      all classes.  For example, I am putting =amsmath= and =tikz=
747      here, because I always want to have them.
749 The sequence how these customizations will show up in the LaTeX
750 document are:
751 1. Header from =org-export-latex-classes=
752 2. =org-export-latex-default-packages-alist=
753 3. =org-export-latex-packages-alist=
754 4. Buffer-specific things set with =#+LaTeX_HEADER:=
756 If you want more control about which segment is placed where, or
757 if you want, for a specific class, have full control over the
758 header and exclude some of the automatic building blocks, you can
759 put the following macro-like place holders into the header:
761 #+begin_example
762 [DEFAULT-PACKAGES]      \usepackage statements for default packages
763 [NO-DEFAULT-PACKAGES]   do not include any of the default packages
764 [PACKAGES]              \usepackage statements for packages 
765 [NO-PACKAGES]           do not include the packages
766 [EXTRA]                 the stuff from #+LaTeX_HEADER
767 [NO-EXTRA]              do not include #+LaTeX_HEADER stuff
768 #+end_example
770 If you have currently customized =org-export-latex-classes=, you
771 should revise that customization and remove any package calls that
772 are covered by =org-export-latex-default-packages-alist=.  This
773 applies to the following packages:
775 - inputenc
776 - fontenc
777 - fixltx2e
778 - graphicx
779 - longtable
780 - float
781 - wrapfig
782 - soul
783 - t1enc
784 - textcomp
785 - marvosym
786 - wasysym
787 - latexsym
788 - amssymb
789 - hyperref
791 If one of these packages creates a conflict with another package
792 you are using, you can remove it from
793 =org-export-latex-default-packages-alist=.  But then you risk
794 that some of the advertised export features of Org will not work
795 properly.
797 You can also consider moving packages that you use in all classes
798 to =org-export-latex-packages-alist=.  If necessary, put the
799 place holders so that the packages get loaded in the right
800 sequence.  As said above, for backward compatibility, if you omit
801 the place holders, all the variables will dump their content at
802 the end of the header.
804 Damn, this has become more complex than I wanted it to be.  I
805 hope that in practice, this will not be complicated at all.
807 *** The constant =org-html-entities= is obsolete
809 Its content is now part of the new constant =org-entities=, which
810 is defined in the file org-entities.el.  =org-html-entities= was
811 an internal variable, but it is possible that some users did
812 write code using it - this is why I am mentioning it here.
814 ** Editing Convenience and Appearance
816 *** New faces for title, date, author and email address lines.
817     
818 The keywords in these lines are now dimmed out, and the title is
819 displayed in a larger font, and a special font is also used for
820 author, date, and email information.  This is implemented by the
821 following new faces:
822     
823 org-document-title
824 org-document-info
825 org-document-info-keyword
826     
827 In addition, the variable =org-hidden-keywords= can be used to
828 make the corresponding keywords disappear.
830 Thanks to Dan Davison for this feature.
832 *** Simpler way to specify faces for tags and todo keywords
833     
834 The variables =org-todo-keyword-faces=, =org-tag-faces=, and
835 =org-priority-faces= now accept simple color names as
836 specifications.  The colors will be used as either foreground or
837 background color for the corresponding keyword.  See also the
838 variable =org-faces-easy-properties=, which governs which face
839 property is affected by this setting.
841 This is really a great simplification for setting keyword faces.
842 The change is based on an idea and patch by Ryan Thompson.
844 *** <N> in tables now means fixed width, not maximum width
845     
846 Requested by Michael Brand.
848 *** Better level cycling function
850 =TAB= in an empty headline cycles the level of that headline
851 through likely states.  Ryan Thompson implemented an improved
852 version of this function, which does not depend upon when exactly
853 this command is used.  Thanks to Ryan for this improvement.
855 *** Adaptive filling
856     
857 For paragraph text, =org-adaptive-fill-function= did not handle the
858 base case of regular text which needed to be filled.  This is now
859 fixed.  Among other things, it allows email-style ">" comments
860 to be filled correctly.
862 Thanks to Dan Hackney for this patch.    
864 *** `org-reveal' (=C-c C-r=) also decrypts encrypted entries (org-crypt.el)
865     
866 Thanks to Richard Riley for triggering this change.
868 *** Better automatic letter selection for TODO keywords
869     
870 When all first letters of keywords have been used, Org now assigns
871 more meaningful characters based on the keywords.
873 Thanks to Mikael Fornius for this patch.
875 ** Export
877 *** Much better handling of entities for LaTeX export
879 Special entities like =\therefore= and =\alpha= now know if
880 they need to be in LaTeX math mode and are formatted accordingly.
882 Thanks to Ulf Stegemann for the tedious work to make this
883 possible.
884     
885 *** LaTeX export: Set coding system automatically
887 The coding system of the LaTeX class will now be set to the value
888 corresponding to the buffer's file coding system.  This happens
889 if your setup sets up the file to have a line
890 =\usepackage[AUTO]{inputenc}= (the default setup does this).
892 *** New exporters to Latin-1 and UTF-8
894 While Ulf Stegemann was going through the entities list to
895 improve the LaTeX export, he had the great idea to provide
896 representations for many of the entities in Latin-1, and for all
897 of them in UTF-8.  This means that we can now export files rich
898 in special symbols to Latin-1 and to UTF-8 files.  These new
899 exporters can be reached with the commands =C-c C-e n= and =C-c
900 C-e u=, respectively.
902 When there is no representation for a given symbol in the
903 targeted coding system, you can choose to keep the TeX-macro-like
904 representation, or to get an "explanatory" representation.  For
905 example, =\simeq= could be represented as "[approx. equal to]".
906 Please use the variable =org-entities-ascii-explanatory= to state
907 your preference.
909 *** Full label/reference support in HTML, Docbook, and LaTeX backends
911 =#+LABEL= definitions for tables and figures are now fully
912 implemented in the LaTeX, Docbook, and HTML interfaces.
913 =\ref{xxx}= is expanded to a valid link in all backends.
915 *** BEAMER export: Title of the outline frame is now customizable
916     
917 The new option =org-outline-frame-title= allows to set the 
918 title for outline frames in Beamer presentations.
920 Patch by Lukasz Stelmach.
921     
922 *** BEAMER export: fragile frames are better recognized
924 A =lstlisting= environment now also triggers the fragile option in
925 a beamer frame, just like =verbatim= environments do.
927 Thanks to Eric Schulte for this patch.
929 *** BEAMER export: Protect <...> macro arguments
931 Macros for the BEAMER package can have arguments in angular
932 brackets.  These are now protected just like normal arguments.
934 Requested by Bill Jackson.
936 *** HTML export: Add class to outline containers using property
937     
938 The =HTML_CONTAINER_CLASS= property can now be used to add a
939 class name to the outline container of a node in HTML export.
941 *** New option =org-export-email-info= to turn off export of the email address
942     
943 Default is actually off now.
945 *** Throw an error when creating an image from a LaTeX snippet fails
947 This behavior can be configured with the new option variable
948 =org-format-latex-signal-error=.
950 ** Index generation
951     
952 Org-mode can now produce a 2-level subject index spanning an
953 entire publishing project.  Write index entries in your files as
955 #+begin_src org
956 ,* What is org-mode?
957 #+index: Org-mode
958 #+index: Definitions!Org-mode
959 #+end_src
961 where the first line will produce an index entry /Org-mode/,
962 while the second line will create /Definitions/ with a sub-item
963 /Org-mode/.  Three-level entries are not supported.
965 To produce the index, set
967 #+begin_src emacs-lisp
968 :makeindex t
969 #+end_src
971 in the project definition in =org-publish-project-alist=.  You
972 may have to force re-export of all files to get the index by
973 using a =C-u= prefix to the publishing command:
975 #+begin_example
976 C-u M-x org-publish-all
977 #+end_example
979 Whenever an Org file is published in this project, a new file
980 with the extension "orgx" will be written.  It contains the index
981 entries and corresponding jump target names.  When all project
982 files are published, Org will produce a new file "theindex.inc"
983 containing the index as a to-level tree.  This file can be
984 included into any project file using
986 #+begin_src org
987   ,#+include: "theindex.inc"
988 #+end_src
990 Org-mode will also create a file "theindex.org" with this include
991 statement, and you can build a more complex structure (for
992 example style definitions, top and home links, etc) around this
993 statement.  When this file already exists, it will not be
994 overwritten by Org.
996 Thanks to Stefan Vollmar for initiating and driving this feature.
998 *** TODO Still need to do the LaTeX portion
1000 ** MobileOrg
1002 *** Encrypting stage files for MobileOrg
1004 Since the use of (often pubic) servers is needed for MobileOrg,
1005 it is now possible to encrypt the files to be staged for
1006 MobileOrg.  Version 1.2 of MobileOrg will be needed for this
1007 feature, and Richard Moreland will show instructions on his
1008 website once that is available.  Basically, on the Org-side this
1009 will require the following settings:
1011 #+begin_src emacs-lisp
1012   (setq org-mobile-use-encryption t
1013         org-mobile-encryption-password "My_MobileOrg_Password")
1014 #+end_src
1016 So the password will be visible in your local setup, but since
1017 the encryption is only for the public server, this seems
1018 acceptable.
1020 ** Agenda
1022 *** Specify entry types as an option
1023     
1024 Custom Agenda commands can now limit the sets of entry types
1025 considered for this command by binding =org-agenda-entry-types=
1026 temporarily in the options section of the command.  This can lead
1027 to significant speedups, because instead of laboriously finding
1028 entries and then rejecting them, a whole search cycle is skipped.
1029 For more information see the new section in
1030 [[http://orgmode.org/worg/org-tutorials/org-custom-agenda-commands.php#sec-5][Matt Lundin's agenda custom command tutorial]].
1032 Thanks to Matt Lundin for this feature.
1034 *** Speed up multiple calls to org-diary by only doing buffer prep once
1035     
1036 Also a patch by Matt Lundin.
1038 *** Show and hide deadlines in the agenda
1040 You can now hide all deadline entries in the agenda by pressing
1041 =!=.
1043 Thanks to John Wiegley for this feature.
1045 *** Agenda: Allow to suppress deadline warnings for entries also scheduled
1047 The the docstring of the variable
1048 =org-agenda-skip-deadline-prewarning-if-scheduled=.
1050 *** Expand file names in org-agenda-files (external file case)
1051     
1052 If you are using a file to manage the list of agenda files, the
1053 names in this file can now contain environment variables and "~"
1054 to write them more compactly and portable.
1056 Thanks to Mikael Fornius for a patch to this effect.
1058 *** Agenda: Allow TODO conditions in the skip functions
1060 The agenda skip function has now special support for skipping
1061 based on the TODO state.  Here are just two examples, see the
1062 manual for more information.
1064 #+begin_src emacs-lisp
1065 (org-agenda-skip-entry-if 'todo '(\"TODO\" \"WAITING\"))
1066 (org-agenda-skip-entry-if 'nottodo 'done)
1067 #+end_src
1069 Thanks to Lukasz Stelmach for this patch.
1071 *** Extracting the time-of-day when adding diary entries
1073 The time of day can now be extracted from new diary entries made
1074 from the agenda with (for example) =i d=.  When
1075 =org-agenda-insert-diary-extract-time= is set, this is done, and
1076 the time is moved into the time stamp.
1078 Thanks to Stephen Eglen for this feature.
1080 *** The customization group org-font-lock has been renamed
1082 The new name is `org-appearance'.
1084 Thanks to Dan Davison for a patch to this effect.
1086 *** The TODO list: Allow skipping scheduled or deadlined entries
1088 Skipping TODO entries in the global TODO list based on whether
1089 they are scheduled or have a deadline can now be controlled in
1090 more detail.  Please see the docstrings of
1091 =org-agenda-todo-ignore-scheduled= and
1092 =org-agenda-todo-ignore-deadline=.
1094 Thanks to Lukasz Stelmach for patches to this effect.
1096 ** Hyperlinks
1098 *** Make =org-store-link= point to directory in a dired buffer
1099     
1100 When, in a dired buffer, the cursor is not in a line listing a
1101 file, `org-store-link' will store a link to the directory.
1103 Patch by Stephen Eglen.
1105 *** Allow regexps in =org-file-apps= to capture link parameters
1106     
1107 The way extension regexps in =org-file-apps= are handled has
1108 changed.  Instead of matching against the file name, the regexps
1109 are now matched against the whole link, and you can use grouping
1110 to extract link parameters which you can then use in a command
1111 string to be executed.
1113 For example, to allow linking to PDF files using the syntax
1114 =file:/doc.pdf::<page number>=, you can add the following entry to
1115 org-file-apps:
1117 #+begin_example
1118 Extension: \.pdf::\([0-9]+\)\'
1119 Command:   evince "%s" -p %1
1120 #+end_example
1122 Thanks to Jan Böcker for a patch to this effect.
1124 ** Clocking
1126 *** Show clock overruns in mode line
1128 When clocking an item with a planned effort, overrunning the
1129 planned time is now made visible in the mode line, for example
1130 using the new face =org-mode-line-clock-overrun=, or by adding an
1131 extra string given by =org-task-overrun-text=.
1133 Thanks to Richard Riley for a patch to this effect.
1135 ** Tables
1137 *** Repair the broken support for table.el tables again.
1138     
1139 Tables created with the table.el package now finally work again
1140 in Org-mode.  While you cannot edit the table directly in the
1141 buffer, you can use  =C-c '= to edit it nicely in a temporary
1142 buffer.
1144 Export of these tables to HTML seem to work without problems.
1145 Export to LaTeX is imperfect.  If fails if the table contains
1146 special characters that will be replaced by the exporter before
1147 formatting the table.  The replacement operation changes the
1148 length of some lines, breaking the alignment of the table fields.
1149 Unfortunately this is not easy to fix.  It is also not an option
1150 to not do these replacements.  The table.el LaTeX exporter will
1151 for example not escape "&" in table fields, causing the exported
1152 tables to be broken.
1154 ** Misc
1156 *** New logging support for refiling
1158 Whenever you refile an item, a time stamp and even a note can be
1159 added to this entry.  For details, see the new option
1160 =org-log-refile=.
1161     
1162 Thanks to Charles Cave for this idea.
1164 *** New helper functions in org-table.el
1166 There are new functions to access and write to a specific table
1167 field.  This is for hackers, and maybe for the org-babel people.
1169 #+begin_example
1170 org-table-get
1171 org-table-put
1172 org-table-current-line
1173 org-table-goto-line
1174 #+end_example
1176 *** Tables: Field coordinates for formulas, and improved docs
1177     
1178 Calc and Emacs-Lisp formulas for tables can access the current
1179 field coordinates with =@#= and =$#= for row and column,
1180 respectively.  These can be useful in some formulas.  For
1181 example, to sequentially number the fields in a column, use
1182 ~=@#~ as column equation.
1184 One application is to copy a column from a different table.  See
1185 the manual for details.
1187 Thanks to Michael Brand for this feature.
1189 *** Archiving: Allow to reverse order in target node
1190     
1191 The new option =org-archive-reversed-order= allows to have
1192 archived entries inserted in a last-on-top fashion in the target
1193 node.
1194     
1195 Requested by Tom.
1197 *** Better documentation on calc accuracy in tables
1198     
1199 Thanks to Michael Brand for this fix.
1201 *** Clock reports can now include the running, incomplete clock
1203 If you have a clock running, and the entry being clocked falls
1204 into the scope when creating a clock table, the time so far spent
1205 can be added to the total.  This behavior depends on the setting
1206 of =org-clock-report-include-clocking-task=.  The default is
1207 =nil=.
1208     
1209 Thanks to Bernt Hansen for this useful addition.
1211 *** American-style dates are now understood by =org-read-date=
1213 So when you are prompted for a date, you can now answer like this
1215 #+begin_example
1216 2/5/3         --> 2003-02-05
1217 2/5           --> <CURRENT-YEAR>-02-05
1218 #+end_example    
1220 *** org-timer.el now allows just one timer
1222 There is now only a single free timer supported by org-timer.el.
1223 Thanks to Bastien for cleaning this up, after a bug report in
1224 this area by Frédéric Couchet.
1226 *** Remember: Allow to file as sibling of current clock
1227     
1228 =C-3 C-c C-c= will file the remember entry as a sibling of the
1229 last filed entry.
1231 Patch by Lukasz Stelmach.
1233 *** Org-reveal: Double prefix arg shows the entire subtree of the parent
1234     
1235 This can help to get out of an inconsistent state produced for
1236 example by viewing from the agenda.
1238 This was a request by Matt Lundin.
1240 *** Add org-secretary.el by Juan Reyero to the contrib directory
1242 org-secretary.el is a possible setup for group work using
1243 Org-mode.
1245 Thanks to Juan Reyero for this contribution.
1247 ** Babel
1249 Eric and Dan have compiled the following list of changes in and
1250 around org-babel.
1252 - Added support for Matlab and Octave.
1253 - Added support for C and C++ code blocks.
1254 - Added support for the Oz programming language.
1255   Thanks to Torsten Anders for this contribution
1256 - Can now force literal interpretation of table cell contents
1257   with extra "$" in table formula.
1258   Thanks to Maurizio Vitale for this suggestion.
1259 - Variable references which look like lisp forms are now
1260   evaluated.
1261 - No longer adding extension during tangling when filename is
1262   provided.
1263   Thanks to Martin G. Skjæveland and Nicolas Girard for prompting this.
1264 - Added `org-babel-execute-hook' which runs after code block
1265   execution.
1266 - Working directories and remote execution
1268   This introduces a new header argument :dir. For the duration of
1269   source block execution, default-directory is set to the value
1270   of this header argument. Consequences include:
1272   - external interpreter processes run in that directory
1273   - new session processes run in that directory (but existing
1274     ones are unaffected)
1275   - relative paths for file output are relative to that directory
1277   The name of a directory on a remote machine may be specified
1278   with tramp syntax (/user@host:path), in which case the
1279   interpreter executable will be sought in tramp-remote-path, and
1280   if found will execute on the remote machine in the specified
1281   remote directory.
1282 - Tramp syntax can be used to tangle to remote files.
1283   Thanks to Maurizio Vitale and Rémi Vanicat.
1284 - org-R removed from contrib.
1285 - gnuplot can now return it's string output -- when session is
1286   set to "none".
1287 - Now including source code block arguments w/source name on
1288   export.
1289 - Now able to reference file links as results.
1290 - Allow pdf/png generation directly from latex source blocks
1291   with :file header argument.
1293 * Version 6.34
1294  :PROPERTIES:
1295  :CUSTOM_ID: v6.34
1296  :END:
1298 ** Incompatible changes
1300 *** Tags in org-agenda-auto-exclude-function must be lower case.
1302 When defining an =org-agenda-auto-exclude-function=, you need to
1303 be aware that tag that is being passed into the function is
1304 always lower case - even if it was defined in upper case
1305 originally.
1307 ** Details
1309 *** Support for creating BEAMER presentations from Org-mode documents
1311 Org-mode documents or subtrees can now be converted directly in
1312 to BEAMER presentation.  Turning a tree into a simple
1313 presentations is straight forward, and there is also quite some
1314 support to make richer presentations as well.  See the [[http://orgmode.org/manual/Beamer-class-export.html#Beamer-class-export][BEAMER
1315 section]] in the manual for more details.
1317 Thanks to everyone who has contributed to the discussion about
1318 BEAMER support and how it should work.  This was a great example
1319 for how this community can achieve a much better result than any
1320 individual could.
1322 *** Hyperlinks
1324 **** Add Paul Sexton's org-ctags.el
1326 Targets like =<<my target>>= can now be found by Emacs' etag
1327 functionality, and Org-mode links can be used to to link to
1328 etags, also in non-Org-mode files.  For details, see the file
1329 /org-ctags.el/.
1331 This feature uses a new hook =org-open-link-functions= which will
1332 call function to do something special with text links.
1334 Thanks to Paul Sexton for this contribution.
1336 **** Add Jan Böcker's org-docview.el
1338 This new module allows links to various file types using docview,
1339 where Emacs displays images of document pages.  Docview link
1340 types can point to a specific page in a document, for example to
1341 page 131 of the Org-mode manual:
1343 : [[docview:~/.elisp/org/doc/org.pdf::131][Org-Mode Manual]]
1345 Thanks to Jan Böcker for this contribution.
1346     
1347 **** New link types that force special ways of opening the file
1348     
1349 - =file+sys:/path/to/file=  will use the system to open the file,
1350   like double-clicking would.
1351 - file+emacs:/path/to/file will force opening the linked file
1352   with Emacs.
1354 This was a request by John Wiegley.
1356 **** Open all links in a node
1358 When using =C-c C-o= on a headline to get a list of links in the
1359 entry, pressing =RET= will open *all* links.  This allows
1360 something like projects to be defined, with a number of files
1361 that have to be opened by different applications.
1363 This was a request by John Wiegley.
1365 *** Agenda Views
1367 **** Improve the logic of the search view.
1369 The logic of search views is changed a bit.  See the docstring of
1370 the function =or-search-view=.
1372 These changes resulted from a discussion with Matt Lundin.
1374 **** New face for entries from the Emacs diary
1376 Entries that enter the Agenda through the Emacs diary now get the
1377 face =org-agenda-diary=.
1379 This was a request by Thierry Volpiatto.
1381 **** New function `org-diary-class' to schedule classes with skipped weeks.
1383 This was a request by Daniel Martins.
1385 **** Empty matcher means prompt in agenda custom commands
1386     
1387 When an agenda custom command has an empty string as MATCH
1388 element, so far this would lead to a meaningless search using an
1389 empty matcher.  Now an empty (or white) string will be
1390 interpreted just like a nil matcher, i.e. the user will be
1391 prompted for the match.
1393 **** Agenda: Selectively remove some tags from agenda display
1395 If you use tags very extensively, you might want to exclude some
1396 from being displayed in the agenda, in order to keep the display
1397 compact.  See the new option =org-agenda-hide-tags-regexp= for
1398 details.
1399     
1400 This was largely a patch by Martin Pohlack.
1402 *** Export
1404 **** Direct export of only the current subtree
1406 Pressing =1= after =C-c C-e= and before the key that selects the
1407 export backend, only the current subtree will be exported,
1408 exactly as it you had selected it first with =C-c @=.  So for
1409 example, =C-c C-e 1 b= will export the current subtree to HTML
1410 and open the result in the browser.
1412 **** Direct export of enclosing node
1414 Pressing =SPC= after =C-c C-e= and before the key that selects
1415 the export backend, the enclosing subree that is set up for
1416 subtree export will be exported, exactly as it you had selected
1417 it first with =C-c @=.  So for example, =C-c C-e SPC d= will find
1418 the enclosing node with a LaTeX_CLASS property or an
1419 EXPORT_FILE_NAME property and export that.
1421 **** Caching export images
1423 Images that are created for example using LaTeX or ditaa for
1424 inclusion into exported files are now cached.  This works by
1425 adding a hash to the image name, that reflects the source code
1426 and all relevant settings.  So as long as the hash does not
1427 change, the image does not have to be made again.  His can lead
1428 to a substantial reduction in export/publishing times.
1430 Thanks to Eric Schulte for a patch to this effect.
1432 **** Preserving line breaks for export no longer works
1433     
1434 ASCII export always preserves them - no other export format
1435 does.  We had attempted to use =\obeylines= for this in LaTeX,
1436 but that does create too many problems.
1438 **** New symbols =\EUR= and =\checkmark=
1440 =\EUR= symbols from Marvosym package, and =\checkmark= are now
1441 supported symbols in Org-mode, i.e. they will be exported
1442 properly to the various backends.
1444 **** Allow LaTeX_CLASS_OPTIONS to set options, also from a property
1446 You can set the options to the =\documentclass= command on a
1447 per-file basis, using
1449 : #+LaTeX_CLASS_OPTIONS: [11pt]
1451 or on a per-tree basis using the corresponding property.  The
1452 defined string will replace the default options entirely.
1454 **** The encoding of LaTeX files is now handled property
1456 Org now makes sure that the encoding used by the file created
1457 through the export mechanism is reflected correctly in the
1459 : \usepackage[CODINGSYSTEM]{inputenc}
1461 command.  So as long as the =org-export-latex-classes= definition
1462 contains an =\usepackage[utf8]{inputenc}= statement, that
1463 statement will be modified so that the correct option is used.
1465 If you wan to use special encodings, for example =utf8x= instead
1466 of =utf8=, see the variable =org-export-latex-inputenc-alist=.
1468 This was a request by Francesco Pizzolante.
1470 *** Property API enhancements
1471     
1472 **** Make a new special property BLOCKED, indicating if entry is blocked
1474 A new special property BLOCKED returns "t" when the entry is
1475 blocked from switching the TODO state to a DONE state.
1477 This was a request by John Wiegley.
1479 **** New hooks for external support for allowed property values
1481 It is now possible to hook into Org in order to provide the
1482 allowed values for any property with a lisp function.  See the
1483 docstring of the variable =org-property-allowed-value-functions=
1485 **** Allow unrestricted completion on properties
1487 When listing the allowed values for a property, for example with
1488 a =:name_ALL:= property, completion on these values enforces that
1489 one of the values will be chosen.  Now, if you add ":ETC" to the
1490 list of allowed values, it will be interpreted as a switch, and
1491 the completion will be non-restrictive, so you can also choose to
1492 type a new value.
1494 *** Changes to Org-babel
1496 - The documentation for Org-babel has been drastically improved
1497   and is available on Worg at
1498   http://orgmode.org/worg/org-contrib/babel/
1499 - Source-code block names are now exported to HTML and LaTeX
1500 - Org-babel functions are now bound to keys behind a common key
1501   prefix (see
1502   http://orgmode.org/worg/org-contrib/babel/reference.php#sec-5)
1503 - Results are now foldable with TAB
1504 - Header argument values can now be lisp forms
1505 - Readable aliases for #+srcname: and #+resname:
1506 - Sha1 hash based caching of results in buffer
1507 - Can now index into variable values
1508 - org-babel-clojure now supports multiple named sessions
1510 *** Miscellaneous changes
1512 **** Make =C-c r C= customize remember templates
1514 =C-c r C= is now a shortcut for
1516 :  M-x customize-variable RET org-remember-templates RET
1518 This was a proposal by Adam Spiers.
1520 **** Use John Gruber's regular expression for URL's
1522 We now use a better regexp to spot plain links in text.  This
1523 regexp is adopted from [[http://daringfireball.net/2009/11/liberal_regex_for_matching_urls][John Gruber's blogpost]].
1525 Thanks to William Henney for the pointer.
1527 **** Implement tag completion of all tags in all agenda files
1528     
1529 The new option =org-complete-tags-always-offer-all-agenda-tags=
1530 makes Org complete all tags from all agenda files if non-nil.
1531 Usually, setting it locally to t in org-remember buffers is the
1532 most useful application of this new feature.
1534 Thanks to Tassilo Horn for a patch to this effect.
1536 * Version 6.33
1537  :PROPERTIES:
1538  :CUSTOM_ID: v6.33
1539  :END:
1541 ** Incompatible changes
1543 *** Reorganize key bindings for archiving
1544     
1545 The following keys now do archiving
1547 - C-c C-x C-a :: archive using the command specified in
1548      =org-archive-default-command=.  This variable is by default
1549      set to =org-archive-subtree=, which means arching to the
1550      archive file.
1551     
1552 The three specific archiving commands are available through
1554 - C-c C-x C-s ::    archive to archive file
1555 - C-c C-x a ::     toggle the archive tag
1556 - C-c C-x A ::   move to archive sibling
1558 These bindings work the same in an Org file, and in the agenda.
1560 In addition:
1561     
1562 - In the agenda you can also use =a= to call the default archiving
1563   command, but you need to confirm the command with =y= so that this
1564   cannot easily happen by accident.
1565   
1566 - For backward compatibility, =C-c $= in an org-mode file, and
1567   =$= in the agenda buffer continue to archive to archive file.
1570 ** Details
1572 *** Level indentation cycling new empty entries and plain list items
1573 :PROPERTIES:
1574 :ID: 1CBF16C9-031C-4A03-A5EE-09B6AAB6209C
1575 :END:
1577 To speed up data entry, TAB now behaves special in an empty
1578 headline, i.e. if the current line only contains the headline
1579 starter stars, maybe a TOD keyword, but no further content.  This
1580 is usually the situation just after creating a new headline with
1581 =M-RET= or =M-S-RET=.
1583 Then, TAB will first make the current entry a child of the
1584 entry above, then a parent, then a grand parent etc until it
1585 reaches top level.  Yet another TAB and you will be back at the
1586 initial level at which the headline was created.
1588 New plain list items behave in just the same way.
1590 Sounds strange?  Try it, it is insanely fast when entering data.
1591 If you still don't like it, turn it off by customizing
1592 =org-cycle-level-after-item/entry-creation=.
1594 Thanks to [[http://thread.gmane.org/gmane.emacs.orgmode/18236][Samuel Wales]] and [[http://thread.gmane.org/gmane.emacs.orgmode/18447/focus%3D19015][John Wiegley]] for ideas that
1595 contributed to this new feature.
1597 *** Speed commands at the start of a headline
1599 If you set the variable =org-use-speed-commands=, the cursor
1600 position at the beginning of a headline (i.e. before the first
1601 star) becomes special.  Single keys execute special commands in
1602 this place, for example outline navigation with =f=, =b=, =n=,
1603 and =p=, equivalent to the corresponding =C-c C-f=, =C-c C-b=,
1604 =C-c C-n=, and =C-c C-f= commands.  The full list of commands can
1605 be seen by pressing =?= at the special location.  More commands
1606 can be added and existing ones modified by configuring the
1607 variable =org-speed-commands-user=.
1609 This was a request by John Wiegley, based on similar speed
1610 navigation in /allout.el/.
1612 *** Logging changes in scheduling and deadline time stamps
1614 Setting the variables =org-log-reschedule= and
1615 =org-log-redeadline= to either =time= or =note= will arrange for
1616 recording a logbook entry whenever a scheduling date or deadline
1617 is changed.
1619 This was a request by Rick Moynihan.
1621 *** File remember notes into a date tree
1623 Remember notes can now be filed to a location in a date tree.  A
1624 date tree is an outline tree with years as top levels, months as
1625 level 2 headings, and days as level three headings.  These are
1626 great for journals and for recording appointments and other loose
1627 dates because it will be easy to find all entries referencing a
1628 particular date, and it will be easy to archive all such entry
1629 from last year, for example.
1631 To select date tree filing, set the HEADLINE part of the remember
1632 template to the symbol =date-tree=.  The date tree will be build
1633 in the file on top level.  However, if the file contains an entry
1634 with a non-nil =DATE_TREE= property, then the tree will be build
1635 under that headline.
1637 *** New commands to create entries from agenda and calendar
1639 If you make the variable =org-agenda-diary-file= point to an
1640 org-mode file, the =i= key in both the agenda buffer and in the
1641 Emacs calendar will be made to insert entries into that Org file.
1642 The dates at the cursor and the mark are being used when making
1643 entries for specific dates or blocks.  In the new file,
1644 anniversaries will be collected under a special headline, and
1645 day/block entries will be filed into a date tree (see previous
1646 section).
1648 This was a request by Stephen Eglen.
1650 *** A new freemind exporter has been integrated with Org-mode
1652 org-freemind.el has a number of entry points (for details, see
1653 the source code), but you can also use Org's =C-c C-e m= to
1654 export a file or a selected subtree.
1656 Thanks to Lennart Borgman for this contribution.  An earlier
1657 version of this file was part of the nxhtml package, under the
1658 name /freemind.el/.
1660 *** Drawers are now exported properly
1662 Drawers are now exported when the configuration requires it,
1663 i.e. if the variable `org-export-with-drawers' is t or a list
1664 containing the drawers to export.
1666 *** Min/Max/Mean age operators in Column View.
1667     
1668 This lets you see how much time has passed since the specified
1669 timestamp property each entry. The three operators (=@min=,
1670 =@max=, =@mean=) show either the age of the youngest or oldest
1671 entry or the average age of the children.
1673 Thanks to James TD Smith for a patch to this effect.
1674     
1675 *** Allow source code block indentation to be preserved
1676     
1677 If =org-src-preserve-indentation= is non-nil, or if a block has a
1678 =-i= switch, then the behavior of org-exp-blocks is altered as
1679 follows:
1681 1. Indentation is not removed before passing the block contents
1682    to the block-transforming plugin.
1683    
1684 2. The result returned by the plugin is not re-indented.
1686 3. Editing the source code block with =C-c '= preserves it's
1687    indentation.
1689 Thanks to Dan Davison for this feature.
1691 *** Frame/window control when switching to source code edit buffer.
1692     
1693 When switching to a source code editing buffer with =C-c '=, you
1694 can now control the frame / window setup using the new variable
1695 =org-src-window-setup=.
1697 Thanks to Dan Davison for this feature.
1699 *** Refile an entry to the current clock
1701 You can now quickly refile an entry to become a child of the
1702 entry currently being clocked.  The keys for doing this are
1703 =C-2 C-c C-w=.
1705 This was a request by Bernt Hansen.
1707 *** Make =C-c C-o= open the attachment directory is there are no links
1709 If there is no link in an entry, =C-c C-o= will now open the
1710 attachment directory instead.
1712 This was a request/patch by John Wiegley.
1714 *** org-mac-iCal.el: work with calendar "groups"
1715     
1716 Some calendar systems (Google, Zimbra) handle subscriptions to
1717 multiple calendars (or to an account) by grouping them under a
1718 single caldav directory in the calendar tree.  org-mac-iCal used
1719 to assumes there is only one ics file created per caldav
1720 directory, so while it *creates* all of the needed merged ics
1721 files, it only copies one of them to ~/Library/Calendar before
1722 importing the contents into the diary.
1724 Thanks to Doug Hellmann for a patch to fix this.
1726 *** New module /org-learn.el/ in the contrib directory
1728 The file implements the learning algorithm described at
1729 http://supermemo.com/english/ol/sm5.htm, which is a system for reading
1730 material according to "spaced repetition".  See
1731 http://en.wikipedia.org/wiki/Spaced_repetition for more details.
1733 Thanks to John Wiegley for this contribution.
1735 *** New contributed package /org-git-link.el/
1737 /org-git-link.el/ defines two new link types. The =git= link type
1738 is meant to be used in the typical scenario and mimics the =file=
1739 link syntax as closely as possible.  The =gitbare= link type
1740 exists mostly for debugging reasons, but also allows e.g.
1741 linking to files in a bare git repository for the experts.
1743 Thanks to Raimar Finken for this contribution.
1745 *** /org-annotation-helper.el/ and /org-browser-url.e./ have been removed
1746 Please switch to /org-protocol.el/, into which contains the same
1747 functionality in a more general framework.
1748 *** The contributed /org-export-freemind/ package has been removed.
1749 Org now contains a new freemind exporter, /org-freemind.el/.
1751 ** Org-babel Changes
1752 - Clojure is supported [Thanks to Joel Boehland]
1753 - Perl is supported
1754 - Ruby and Python now respond to the :file header argument
1755 - Added :results_switches header argument for passing switches
1756   through to raw src blocks
1757 - Preserve indentation in source blocks on export and tangle
1758 - Possible to evaluate noweb reference on tangling or code block
1759   evaluation
1760 - Allowing multiple noweb references on a single line
1761 - Cleaned up the passing of parameter values from Org-babel to
1762   language specific functions
1764 * Version 6.32
1765  :PROPERTIES:
1766  :CUSTOM_ID: v6.32
1767  :END:
1769 ** Rewrite of org-mobile.org, for MobileOrg 1.0 (build 20)
1771 MobileOrg is currently under review at the iPhone App Store.  You
1772 will need Org-mode version 6.32 to interact with it.
1774 ** Added support for habit consistency tracking
1775     
1776 /org-habit.el/ contains new code to track habits.  Please
1777 configure the variable org-modules to activate it.  When active,
1778 habits (a special TODO entry) will be displayed in the agenda
1779 together with a "consistency graph".  Habit tracking is described
1780 in a new [[http://orgmode.org/manual/Tracking-your-habits.html][manual section]].
1782 Thanks to John Wiegley for this contribution.
1783     
1784 ** New context-aware tag auto-exclusion 
1786 After writing a function relating to location and context
1787 information, you will be able to press =/ RET= in the agenda to
1788 exclude tasks that cannot be done in the current context. 
1789 For details, see the information about filtering in the manual.
1791 Thanks to John Wiegley for a patch to this effect.
1793 ** New clock resolving tools
1795 When clocking into a new task while no clock is running, Org now
1796 checks for orphaned CLOCK lines and offers to repair these before
1797 starting the clock.  You can also configure this feature to check
1798 for idle time and prompt you to subtract that time from the
1799 running timer.
1800     
1801 See the new [[http://orgmode.org/manual/Resolving-idle-time.html][manual section]] for more details.
1802     
1803 Thanks to John Wiegley for a patch to this effect.
1805 ** Mutually exclusive tag groups can now have a name in the tags interface
1807 The customize interface allows to optionally add a string to the
1808 beginning or end of such a group.
1809     
1810 Thanks to James TD Smith for a patch to this effect.
1812 ** Agenda Search view: Search for substrings
1813     
1814 The default in search view (/C-c a s/)is now that the search
1815 expression is searched for as a /substring/, i.e. the different
1816 words must occur in direct sequence, and it may be only part of
1817 a word.  If you want to look for a number of separate keywords
1818 with Boolean logic, all words must be preceded by =+= or =-=.
1820 This was, more-or-less, requested by John Wiegley.
1822 ** Make space and backspace scroll the show window in the agenda
1824 Pressing SPC again after using it to show an agenda item in
1825 another window will make the entire subtree visible, and show
1826 scroll it.  Backspace and DEL will scroll back.
1828 This was a request by Eric Fraga.
1829     
1830 ** File tags are now offered for completion during a tag prompts
1832 Requested by Matt Lundin.
1834 ** Make `- SPC' an agenda filter that selects entries without any tags
1835     
1836 Request by John Wiegley.
1838 ** Better way to edit multi-line macro definitions
1840 The editing tool key =C-c '= now also edits =#+MACRO=
1841 definitions, including multiline macros.
1843 ** Restructured Manual
1845 The manual has been slightly reorganized.  The archiving stuff,
1846 which was - somewhat obscurely - hidden in the /Document
1847 Structure/ chapter, has been moved into the new chapter
1848 /Capture-Refile-Archive/.  Also, there is a new chapter /Markup/
1849 which contains both the markup rules (moved there from the Export
1850 chapter) and the documentation for embedded LaTeX.
1852 ** Improved figure placement in LaTeX and HTML export
1853     
1854 Text can now be wrapped around figures.  See the manual for
1855 details.
1857 ** Allow date to be shifted into the future if time given is earlier than now
1858     
1859 By setting
1861 :     (setq org-read-date-prefer-future 'time)
1863 you indicate to Org that, if you only give a time at the
1864 date/time prompt, and if this time is earlier then the current
1865 time, then the date of tomorrow will be assumed to be valid for
1866 this event.  A similar mechanism was already in place for dates,
1867 but now you can make it work for times as well.
1869 ** Collected changes in org-babel
1870 - Source blocks can now reference source-blocks in other files
1871   using =filepath:srcname= syntax.
1872 - Inline code blocks like =src_python{2+2}= are now exported
1873 - Remote source block calls using the =#+lob: srcname(arg=val)=
1874   syntax can now be exported.
1875 - When =:file= is supplied with an =R= block, graphics are
1876   automatically sent to file and linked from the org buffer, thus
1877   appearing on export.  The image format is obtained from the
1878   filename extension.  Possible values are =.png, .jpg, .jpeg,
1879   .tiff, .bmp, .pdf, .ps, .postscript=, defaulting to =png=.
1880 - Results can be returned as parseable code using =:results code=,
1881   and as pretty-printed code using =:results pp= (emacs-lisp,
1882   python, ruby).  Thanks to Benny Andresen for the idea and patch
1883   for emacs-lisp.
1884 - When =:file filename= is supplied, =:exports file= is unnecessary
1885 - Header args are taken from org-file-properties in addition to
1886   properties active in the subtree.
1887 - =:noweb= header argument now expands noweb references before
1888   source-block evaluation.
1889 - Tangling honours the new org variable
1890   org-src-preserve-indentation, so that correct code is output for
1891   a language like python that depends on indentation.
1893 ** Changes in org-exp-blocks.el
1894 - Interblocks export has been simplified.
1895 - Support for R code (=begin_R= blocks and inline =\R{}=) has been
1896   removed.  Please use org-babel instead.
1898 * Version 6.31
1899  :PROPERTIES:
1900  :CUSTOM_ID: v6.31
1901  :END:
1903 ** Org-babel is now part of the Org distribution
1905 Org-babel provides the ability to execute source code in many
1906 different languages within org-mode documents.  The results of
1907 code execution -- text, tables and graphics -- can be integrated
1908 into Org-mode documents and can be automatically updated during
1909 publishing.  Since Org-babel allows execution of arbitrary code,
1910 the range of tasks that can be addressed from within an Org mode
1911 file becomes very large.  Examples of ways in which Org-babel
1912 might be used include
1914 - Documenting a task that involves some programming so that it is
1915   automatically repeatable
1916 - Creating dynamic (executable) reports that respond to changes
1917   in the underlying data (Reproducible Research)
1918 - Exportation of code contained in an Org-mode document into
1919   regular source code files (Literate Programming)
1921 Additionally, Org-babel provides a programming environment within
1922 Org files, in which data can be transmitted between parameterised
1923 source code blocks in different languages, as well as between
1924 source code blocks and Org-mode tables.
1926 A simple API is defined so that users can add support for new
1927 "languages" (broadly construed).  Languages currently supported
1928 are:
1930 - asymptote
1931 - css
1932 - ditaa
1933 - dot
1934 - emacs-lisp
1935 - gnuplot
1936 - haskell
1937 - ocaml
1938 - python
1939 - R
1940 - ruby
1941 - sass
1942 - sh
1943 - sql
1945 Org-babel was designed and implemented Eric Schulte with continued
1946 significant help on both accounts from Dan Davison.
1948 ** MobileOrg support
1950 Richard Morelands iPhone/iPod Touch program [[http://mobileorg.ncogni.to/][MobileOrg]] can view
1951 Org files, mark entries as DONE, flag entries for later
1952 attention, and capture new entries on the road.  Org-mode has now
1953 support to produce a staging area where MobileOrg can download
1954 its files, and to integrate changes done on the phone in a half
1955 automatic, half interactive way.  See the new appendix B in the
1956 manual for more information.
1959 ** Indented lines starting with "#+ " are treated as comments
1961 To allow comments in plain lists without breaking the list
1962 structure, you can now have indented comment lines that start
1963 with "#+ ".
1965 ** New STARTUP keyword `showeverything'
1966     
1967 This will make even drawer contents visible upon startup.
1968 Requested by Jeff Kowalczyk.
1970 ** New contributed package org-invoice.el
1972 This package collects clocking information for billing
1973 customers.
1975 Thanks to Peter Jones for this contribution.
1977 ** Encrypting subtrees
1979 /org-crypt.el/ by John Wiegley and Peter Jones allows encryption
1980 of individual subtrees in Org-mode outlines.  Thanks to John and
1981 Peter for this contribution.
1983 ** Agenda: Support for including a link in the category string
1984     
1985 The category (as specified by an #+CATEGORY line or CATEGORY
1986 property can contain a bracket link.  While this sort-of worked
1987 in the past, it now is officially supported and should cause no
1988 problems in agenda display or update.  The link can be followed
1989 by clicking on it, or with =C-c C-o 0=.
1991 This was a request by Peter Westlake.
1993 * Version 6.30
1994  :PROPERTIES:
1995  :CUSTOM_ID: v6.30
1996  :END:
1998 ** Inconsistent changes
2000 *** Agenda now uses =f= and =b= to move through time
2002 Up to now, the Org-mode agenda used the cursor keys =left= and
2003 =right= to switch the agenda view forward an backward through
2004 time.  However, many people found this confusing, and others
2005 wanted to be able to do cursor motion in the agenda, for example
2006 to select text.  Therefore, after an extensive discussion on
2007 =emacs-orgmode@gnu.org=, it was decided to use the =b= and 
2008 =f= keys instead, and to let the cursor keys do cursor motion
2009 again.
2011 *** Agenda follow mode is now on the =F= key
2013 This was necessary to free up the =f= key, see above.
2015 ** Details
2017 *** Maintenance
2019 **** New command to submit a bug report
2021 There is now a special command =M-x org-submit-bug-report=.  This
2022 command will create a mail buffer with lots of useful details.
2023 In particular, it contains complete version information for Emacs
2024 and Org-mode.  It will also (if you agree to it) contain all
2025 non-standard settings of org-mode and outline-mode related
2026 variables.  Even if you do not sent your emails from within
2027 Emacs, please still use this command to generate the information
2028 and then copy it into your mail program.
2030 The command will not generate and include a =*Backtrace*= buffer,
2031 please do this yourself if you have hit an error.  For more
2032 information, see the [[http://orgmode.org/manual/Feedback.html#Feedback][feedback section]] of the manual.
2034 **** New contributed package org-track.el
2036 This package allows to keep up-to-date with current Org
2037 development, using only Emacs on-board means.  So if you don't
2038 want or cannot use =git=, but still want to run the latest and
2039 hottest Org-mode, this is for you.
2041 Thanks to Sebastian Rose for this contribution.
2043 *** Agenda
2045 **** Agenda now uses =f= and =b= to move through time
2047 Up to now, the Org-mode agenda used the cursor keys =left= and
2048 =right= to switch the agenda view forward an backward through
2049 time.  However, many people found this confusing, and others
2050 wanted to be able to do cursor motion in the agenda, for example
2051 to select text.  Therefore, after an extensive discussion on
2052 =emacs-orgmode@gnu.org=, it was decided to use the =b= and 
2053 =f= keys instead, and to let the cursor keys do cursor motion
2054 again.
2056 **** Agenda follow mode is now on the =F= key
2058 This was necessary to free up the =f= key, see above.
2060 **** The agenda can be put into a dedicated frame
2062 When the variable =org-agenda-window-setup= has the value
2063 =other-frame=, then the new frame created to show the agenda
2064 will now have the window marked as /dedicated/.  As a
2065 consequence, exiting the agenda while the agenda is the only
2066 window on the frame will kill that frame.
2068 This was a request by Henry Atting.
2070 **** New mode to show some entry body text in the agenda
2072 There is now a new agenda sub-mode called
2073 =org-agenda-entry-text-mode=.  It is toggled with the =E= key.
2074 When active, all entries in the agenda will be accompanied by a
2075 few lines from the outline entry.  The amount of text can be
2076 customized with the variable =org-agenda-entry-text-maxlines=.
2078 This was a request by Anthony Fairchild, Manish, and others.
2080 **** Improve following links from the agenda
2081     
2082 =C-c C-o= in the agenda will now offer all links in the headline
2083 and text of an entry.  If there is only a single link, it will be
2084 followed immediately.
2086 **** Avoid some duplicate entries
2088 There is a new variable that can be used to avoid some duplicate
2089 agenda entries: =org-agenda-skip-scheduled-if-deadline-is-shown=
2090 If that is set, it avoids that an entry shows up in the agenda for
2091 today for both a scheduling and a deadline entry.  See the
2092 docstring of the variables for more details.
2094 This partially addresses a request by Samuel Wales. 
2096 **** Mark the running clock in the agenda.
2098 If the entry currently being clocked is present in the agenda, it
2099 will be highlighted with the face =org-agenda-clocking=.
2101 This was a request by Rainer Stengele.
2104 *** Export
2106 **** Allow LaTeX export to use the listings package
2108 The LaTeX =listings= package can now be used for formatting
2109 fontified source code in many programming languages.  For more
2110 information, see
2111 http://thread.gmane.org/gmane.emacs.orgmode/16269 and
2112 http://orgmode.org/worg/org-faq.php#fontified_source_code_w_latex
2114 Thanks to Eric Schulte for this patch.
2116 **** Remove table rows that only contain width and alignment markers
2117     
2118 The width and alignment in table columns can be set with a cookie
2119 like "<10>" or "<r>" or "<r10>".  In order to keep Org from
2120 exporting such lines, the first column of a line should contain
2121 only "/".  However, for convenience, there is now a special case:
2122 If the entire row contains only such markers, the line will
2123 automatically be discarded during export, even is the first
2124 column is not "/".
2126 **** Allow Macro calls to span several lines.
2128 Macro calls may now span several lines, to write several
2129 arguments in a cleaner way.  The result of a macro call can also
2130 span several lines, by inserting the string "\n" (backslash
2131 followed by n) into the value in the macro definition.
2133 These were requests by Stefan Vollmar.
2135 *** Misc
2137 **** Quick access to all links in an entry
2139 If =C-c C-o= is called while the cursor is in a headline, but not
2140 directly on a link, then all links in the entry will be offered
2141 in a small menu.  If there is only a single link, it will be
2142 followed without a prompt.
2144 **** Visibility Cycling: Allow to show all empty lines after a headline
2145     
2146 =org-cycle-separator-lines= can now be set to a negative value,
2147 to indicate that, if the number of empty lines before a visible
2148 entry is greater than the specified number, then *all* empty
2149 lines should be shown.
2151 This was a request by "PT" whatever this means.
2153 **** Allow language names to replace some strange major mode names
2155 Sometimes a language uses a major mode which can't be guessed
2156 from it's name.  There is now a new variable =org-src-lang-modes=
2157 which can be used to map language names to major modes when this
2158 is the case.  This is used when editing a source-code 
2159 block, or when exporting fontified source-code with htmlize.
2161 Thanks to Eric Schulte for a patch to this effect.
2163 **** iswitchb support for many completion prompts
2164     
2165 This is enabled using =org-completion-use-iswitchb=, and follows
2166 the same model of usage as for ido users.
2168 Thanks to John Wiegley for a patch to this effect.
2170 **** New commands to set the effort property of an entry
2172 There is now a special command, =C-c C-x e= to set the =Effort=
2173 property of an entry.  From the agenda you can even use =e=.
2174 If you have set up allowed values for the =Effort= property, then
2175 using a prefix argument will directly select the nth allowed
2176 value.  For example, in the agenda, =5 e= will select the 5th
2177 allowed value.
2179 This was a request by Michael Gilbert
2181 **** Edit src works now better with killing buffer
2183 Thanks to Dan Davison for a patch to this effect
2186 * Older changes
2188   For older Changes, see [[file:Changes_old.org]]
2192 * COMMENT Setup
2194 #+STARTUP: showstars
2196 #+TITLE: Org-mode list of user-visible changes
2197 #+AUTHOR:  Carsten Dominik
2198 #+EMAIL:  carsten at orgmode dot org
2199 #+OPTIONS: H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:{} *:t TeX:t LaTeX:nil f:nil
2200 #+INFOJS_OPT: view:info toc:1 path:org-info.js tdepth:2 ftoc:t
2201 #+LINK_UP: index.html
2202 #+LINK_HOME: http://orgmode.org