adding more of the recent Babel development items to Changes.org
[org-mode/org-mode-NeilSmithlineMods.git] / ORGWEBPAGE / Changes.org
blob5b7ac5be60af7a1d34be1bbe3e31bb9c96ec467e
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 *** Added :headers header argument for LaTeX code blocks
89 This makes it possible to set LaTeX options which must take place in
90 the document pre-amble for LaTeX code blocks.  This header argument
91 accepts either a single string or a list, e.g.
93 #+begin_src org
94   ,#+begin_src latex :headers \usepackage{lmodern} :file name1.pdf
95   ,  latex body
96   ,#+end_src
97   
98   ,#+begin_src latex :headers '("\\usepackage{mathpazo}" "\\usepackage{fullpage}") :file name2.pdf
99   ,  latex body
100   ,#+end_src
101 #+end_src
103 *** New function `org-export-string'
104 Allows exporting directly from a string to the specified export format.
105 *** Code block header argument ":noweb tangle"
106 Only expands <<noweb>> syntax references when tangling, not during
107 export (weaving).
108 *** Temporary file directory
109 All babel temporary files are now kept in a single sub-directory in
110 the /tmp directory and are cleaned up when Emacs exits.
112 *** Function for demarcating blocks `ob-demarcate-block'
113 Can be called to wrap the region in a block, or to split the block
114 around point, bound to (C-c C-v d).
116 *** Lists of anniversaries are now handeled better
118 When several anniversaries are defined in the bbdb anniversaries
119 field (separated by semicolon), this is now handled nicely by the
120 agenda.
122 Thanks to Lukasz Setmann for a patch to this effect.
124 *** Table fields are now aligned better, new <c> cookie.
126 In HTML export, table fields are now properly aligned in accord
127 with automatic alignment in org, or as set by the =<r>=, =<l>=, and
128 =<c>= cookies.  The =<c>= cookie is new and has no effect in
129 Org, but it does do the right thing in HTML export.
131 *** Update freemind converter to include body text
133 The freemind exporter now incorporates body text into the mind
134 map. 
136 Thanks to Lennard Borgman for this patch.
137     
138 *** Make footnotes work correctly in message-mode
139 The footnotes code now searches for the message delimiter "--" in
140 order to place footnotes before the signature.
141 Thanks to Tassilo Horn for this patch.
143 *** Improve XEmacs compatibility
145 Org-mode 7.02 now runs again in 21.4.22 if the new XEmacs base
146 package is installed.
148 Thanks to Uwe Bauer, Volker Ziegler, Michael Sperber and others
149 for a discussion that lead to this nice result.
150     
151 *** Make it configurable wether agenda jumping prefers the future
153 When jumping to a date from the agenda using the =j= key, you may
154 or may not like the property of Org's date reader to prefer the
155 future when you enter incomplete dates.   This can now be
156 configured using the variable =org-agenda-jump-prefer-future'.
158 *** Add publishing functions for ASCII, Latin-1 and UTF-8
160 There are now publishing functions =org-publish-org-to-ascii=,
161 =org-publish-org-to-latin1=, and =org-publish-org-to-utf8=. 
163 Thanks to Matthias Danzl for showing how to do this.
165 *** Indentation and headline insertion after inline tasks
167 Indentation in inline tasks, and headline insertion after inline
168 tasks now behave as expected.
170 *** Encryption in MobileOrg finally works
172 As soon as MobilOrg 1.5 hits the Apple's AppStore, you can
173 encrypt your org files on public servers.  Please see the
174 documentation of MobileOrg and Appendix B of the manual for more
175 details.
177 *** LaTeX minted package for fontified source code export
179 Patch by Dan Davison FIXME
180     
181 *** MobileOrg: Do not force to insert IDs
183 If you dislike the property of MobileOrg to insert ID properties
184 for in all entries being part of an agenda view, you can now turn
185 this off using the variable
186 =org-mobile-force-id-on-agenda-items=.  When this variable is set
187 to =nil=, MobileOrg will use outline paths to identify entries.
188 Note that this may fail if several entries have identical outline
189 paths.
191 *** Allow to use texi2dvi or rubber for processing LaTeX to pdf
193 Please see the variable =org-export-latex-to-pdf-process= for
194 more information.
196 Thanks to Olivier Schwander for the rubber part.
198 *** New STARTUP keywords to turn on inline images
200 If you want to inline images whenever you visit an Org file, use
202 : #+STARTUP: inlineimages
204 *** Support for user-extensible speed commands.
206 There is a new hook =org-speed-command-hook=.  Thanks to
207 Jambunathan for a patch to this effect.
209 *** Add macro to insert property values into exported text
211 you can use {{{property{NAME}}}} to insert the value of a
212 property upon export.
214 Thanks to David Maus for a patch to this effect.
216 *** Fontify code in code blocks.
218 Source code in code block can now be fontified.  Please customize
219 the varable =org-src-fontify-natively=, but be prepared for some
220 editing delays in larger blocks.  Thanks to Dan Davison for this.
222 *** LaTeX package fixes
224 We updated the list of default packages loaded by LaTeX exported
225 files.
227 *** Allow "#" and "%" in tags
229 Tags can now also contain the characters =#= and =%=, in addition
230 to =@= and letters.
232 *** Show command names in manual
234 Andreas Röhler is adding command names to keys in the manual.
235 This will take a while to complete, but a start has been made.
237 *** Make backslash escape "-" in property matches
239 When entering a tags/property query, "-" is a logical operator.
240 However, "-" is also allowed in property names.  So you can now
241 write "SOME\-NAME" to work around this issue.
243 This was a request by Ilya Shlyakhter.
244     
245 *** Document quick insertion of empty structural elements
247 Org-mode has a built-in template mechanism for inserting block
248 templates.  This was undocumented until now.
250 Thanks to Jambunathan K for the patch.
252 *** Implement MathJax support
254 Org-mode now uses MathJax to display math on web pages.  We serve
255 MathJax from the orgmode.org server, at least for the time being
256 (thanks Bastien!).  If you are going to use this for pages which
257 are viewd often, please install MathJax on your own webserver.
259 To return to the old way of creating images and inserting them
260 into web pages, you would have to set
262 : (setq org-export-with-LaTeX-fragments 'dvipng)
264 or on a per-file basis
266 : #+OPTIONS: LaTeX:dvipng
267     
268 *** Agenda: Allow compact two-column display in agenda dispatcher
270 If you have many custom agenda commands, you can have the display
271 in the dispatcher use two columns with the following settings
273 : (setq org-agenda-menu-show-match nil
274 :       org-agenda-menu-two-column t)
276 This was a request by John Wiegley.
278 *** Add org-wikinodes.el as a contributed package
280 One frequent request has been to be able to use CamelCase words
281 for automatic cross links in a Wiki created by Org.  THis is now
282 possible with org-wikinodes.el, which is available in the contrib
283 directory.  We also have some [[http://orgmode.org/worg/org-contrib/org-wikinodes.php][documentation]] for this feature up
284 on Worg.
286 *** Timer/clock enhancements
288 =org-timer-set-timer= displays a countdow timer in the modeline.
289 From the agenda, `J' invokes =org-agenda-clock-goto=.
291 * Version 7.01
292 :PROPERTIES:
293 :CUSTOM_ID: v7.01
294 :END:
296 ** Incompatible Changes
298 *** Emacs 21 support has been dropped
300 Do not use Org mode 7.xx with Emacs 21, use [[http://orgmode.org/org-6.36c.zip][version 6.36c]] instead.
302 *** XEmacs support requires the XEmacs development version
304 To use Org mode 7.xx with XEmacs, you need to run the developer
305 version of XEmacs.   I was about to drop XEmacs support entirely,
306 but Michael Sperber stepped in and made changes to XEmacs that
307 made it easier to keep the support.  Thanks to Michael for this
308 last-minute save.  I had hoped to be able to remove
309 xemacs/noutline.el from release 7 by moving it into XEmacs, but
310 this is not yet done.
312 *** Org-babel configuration changes
313 :PROPERTIES:
314 :CUSTOM_ID: ob-configuration-changes
315 :END:
317 Babel took the integration into Org-mode as an opportunity to do
318 some much needed house cleaning.  Most importantly we have
319 simplified the enabling of language support, and cleared out
320 unnecessary configuration variables -- which is great unless you
321 already have a working configuration under the old model.
323 The most important changes regard the /location/ and /enabling/
324 of Babel (both core functionality and language specific support).
326 - Babel :: Babel is now part of the core of Org-mode, so it is
327      now loaded along with the rest of Org-mode.  That means that
328      there is /no configuration/ required to enable the main
329      Babel functionality.  For current users, this means that
330      statements like
331      #+begin_src emacs-lisp
332        (require 'org-babel)
333      #+end_src
334      or
335      #+begin_src emacs-lisp
336        (require 'org-babel-init)
337      #+end_src
338      that may by lying around in your configuration must now be
339      removed.
340 - load path :: Babel (including all language specific files --
341      aside from those which are located in the =contrib/=
342      directory for reasons of licencing) now lives in the base of
343      the Org-mode lisp directory, so /no additional directories/
344      need to be added to your load path to use babel.  For Babel
345      users this means that statements adding babel-specific
346      directories to your load-path should now be removed from
347      your config.
348 - language support :: It is no longer necessary to require
349      language specific support on a language-by-language basis.
350      Specific language support should now be managed through the
351      `org-babel-load-languages' variable.  This variable can be
352      customized using the Emacs customization interface, or
353      through the addition of something like the following to your
354      configuration (note: any language not mentioned will /not/
355      be enabled, aside from =emacs-lisp= which is enabled by
356      default)
357      #+begin_src emacs-lisp
358        (org-babel-do-load-languages
359         'org-babel-load-languages
360         '((R . t)
361           (ditaa . t)
362           (dot . t)
363           (emacs-lisp . t)
364           (gnuplot . t)
365           (haskell . nil)
366           (ocaml . nil)
367           (python . t)
368           (ruby . t)
369           (screen . nil)
370           (sh . t)
371           (sql . nil)
372           (sqlite . t)))
373      #+end_src
374      
375            Despite this change it is still possible to add
376            language support through the use of =require=
377            statements, however to conform to Emacs file-name
378            regulations all Babel language files have changed
379            prefix from =org-babel-*= to =ob-*=, so the require
380            lines must also change e.g.
381            #+begin_src emacs-lisp
382        (require 'org-babel-R)
383            #+end_src
384            should be changed to
385            #+begin_src emacs-lisp
386        (require 'ob-R)
387            #+end_src
389 We have eliminated the =org-babel-tangle-w-comments= variable as
390 well as the two main internal lists of languages, namely
391 - =org-babel-interpreters= and
392 - =org-babel-tangle-langs= 
394 so any config lines which mention those variables, can/should be
395 stripped out in their entirety.  This includes any calls to the
396 =org-babel-add-interpreter= function, whose sole purpose was to
397 add languages to the =org-babel-interpreters= variable.
399 With those calls stripped out, we may still in some cases want to
400 associate a file name extension with certain languages, for
401 example we want all of our emacs-lisp files to end in a =.el=, we
402 can do this will the =org-babel-tangle-lang-exts= variable.  In
403 general you shouldn't need to touch this as it already has
404 defaults for most common languages, and if a language is not
405 present in org-babel-tangle-langs, then babel will just use the
406 language name, so for example a file of =c= code will have a =.c=
407 extension by default, shell-scripts (identified with =sh=) will
408 have a =.sh= extension etc...
410 The configuration of /shebang/ lines now lives in header
411 arguments.  So the shebang for a single file can be set at the
412 code block level, e.g.
414 #+begin_src org
415   ,#+begin_src clojure :shebang #!/usr/bin/env clj
416   ,  (println "with a shebang line, I can be run as a script!")
417   ,#+end_src  
418 #+end_src
420 Note that whenever a file is tangled which includes a /shebang/
421 line, Babel will make the file executable, so there is good
422 reason to only add /shebangs/ at the source-code block level.
423 However if you're sure that you want all of your code in some
424 language (say shell scripts) to tangle out with shebang lines,
425 then you can customize the default header arguments for that
426 language, e.g.
428 #+begin_src emacs-lisp
429   ;; ensure this variable is defined defined
430   (unless (boundp 'org-babel-default-header-args:sh)
431     (setq org-babel-default-header-args:sh '()))
432   
433   ;; add a default shebang header argument
434   (add-to-list 'org-babel-default-header-args:sh
435                '(:shebang . "#!/bin/bash"))  
436 #+end_src
438 The final important change included in this release is the
439 addition of new security measures into Babel.  These measures are
440 in place to protect users from the accidental or uninformed
441 execution of code.  Along these lines /every/ execution of a code
442 block will now require an explicit confirmation from the user.
443 These confirmations can be stifled through customization of the
444 `org-confirm-babel-evaluate' variable, e.g.
445 #+begin_src emacs-lisp
446   ;; I don't want to be prompted on every code block evaluation
447   (setq org-confirm-babel-evaluate nil)
448 #+end_src
450 In addition, it is now possible to remove code block evaluation
451 form the =C-c C-c= keybinding.  This can be done by setting the
452 =org-babel-no-eval-on-ctrl-c-ctrl-c= variable to a non-nil value,
453 e.g.
454 #+begin_src emacs-lisp
455   ;; I don't want to execute code blocks with C-c C-c
456   (setq org-babel-no-eval-on-ctrl-c-ctrl-c t)
457 #+end_src
459 An additional keybinding has been added for code block
460 evaluation, namely =C-c C-v e=.
462 Whew! that seems like a lot of effort for a /simplification/ of
463 configuration.
465 *** New keys for TODO sparse trees
467 The key =C-c C-v= is now reserved for Org Babel action.  TODO
468 sparse trees can still be made with =C-c / t= (all not-done
469 states) and =C-c / T= (specific states).
471 *** Customizable variable changes for DocBook exporter
473 To make it more flexible for users to provide DocBook exporter
474 related commands, we start to use format-spec to format the
475 commands in this release.  If you use DocBook exporter and use it
476 to export Org files to PDF and/or FO format, the settings of the
477 following two customizable variables need to be changed:
479 - =org-export-docbook-xslt-proc-command=
480 - =org-export-docbook-xsl-fo-proc-command=
482 Instead of using =%s= in the format control string for all
483 arguments, now we use /three/ different format spec characters:
485 - =%i=: input file argument
486 - =%o=: output file argument
487 - =%s=: XSLT stylesheet argument
489 For example, if you set =org-export-docbook-xslt-proc-command= to
491 : java com.icl.saxon.StyleSheet -o %s %s /path/to/docbook.xsl
493 in the past, now you need to change it to
495 : java com.icl.saxon.StyleSheet -o %o %i %s
497 and set a new customizable variable called
498 =org-export-docbook-xslt-stylesheet= to =/path/to/docbook.xsl=.
500 Please check the documentation of these two variables for more
501 details and other examples.
503 Along with the introduction of variable
504 =org-export-docbook-xslt-stylesheet=, we also added a new
505 in-buffer setting called =#+XSLT:=.  You can use this setting to
506 specify the XSLT stylesheet that you want to use on a per-file
507 basis.  This setting overrides
508 =org-export-docbook-xslt-stylesheet=.
510 ** Details
512 *** Org Babel is now part of the Org core
513 See [[#ob-configuration-changes][Org-babel configuration changes]] for instructions on how to
514 update your babel configuration.
516 The most significant result of this change is that Babel now has
517 documentation!  It is part of Org-mode's documentation, see
518 Chapter 14 [[http://orgmode.org/manual/Working-with-source-code.html#Working-with-source-code][Working With Source Code]].  The Babel keybindings
519 are now listed in the refcard, and can be viewed from any
520 Org-mode buffer by pressing =C-c C-v h=.  In addition this
521 integration has included a number of bug fixes, and a significant
522 amount of internal code cleanup.
524 *** The default capture system for Org mode is now called org-capture
526 This replaces the earlier system org-remember.  The manual only
527 describes org-capture, but for people who prefer to continue to
528 use org-remember, we keep a static copy of the former manual
529 section [[http://orgmode.org/org-remember.pdf][chapter about remember]].
531 The new system has a technically cleaner implementation and more
532 possibilities for capturing different types of data.  See
533 [[http://thread.gmane.org/gmane.emacs.orgmode/26441/focus%3D26441][Carsten's announcement]] for more details.
535 To switch over to the new system:
537 1. Run 
539    : M-x org-capture-import-remember-templates RET
541    to get a translated version of your remember templates into the
542    new variable =org-capture-templates=.  This will "mostly" work,
543    but maybe not for all cases.  At least it will give you a good
544    place to modify your templates.  After running this command,
545    enter the customize buffer for this variable with 
547    : M-x customize-variable RET org-capture-templates RET
549    and convince yourself that everything is OK.  Then save the
550    customization.
551    
552 2. Bind the command =org-capture= to a key, similar to what you did
553    with org-remember:
555    : (define-key global-map "\C-cc" 'org-capture)
557    If your fingers prefer =C-c r=, you can also use this key once
558    you have decided to move over completely to the new
559    implementation.  During a test time, there is nothing wrong
560    with using both system in parallel.
562 *** Implement pretty display of entities, sub-, and superscripts.
564 The command =C-c C-x \= toggles the display of Org's special
565 entities like =\alpha= as pretty unicode characters.  Also, sub
566 and superscripts are displayed in a pretty way (raised/lower
567 display, in a smaller font).  If you want to exclude sub- and
568 superscripts, see the variable
569 =org-pretty-entities-include-sub-superscripts=.
571 Thanks to Eric Schulte and Ulf Stegeman for making this possible.
573 *** Help system for finding entities
575 The new command =M-x org-entities-help= creates a structured
576 buffer that lists all entities available in Org.  Thanks to Ulf
577 Stegeman for adding the necessary structure to the internal
578 entity list.
580 *** New module to create Gantt charts
582 Christian Egli's /org-taskjuggler.el/ module is now part of Org.
583 He also wrote a [[http://orgmode.org/worg/org-tutorials/org-taskjuggler.php][tutorial]] for it.
585 *** Refile targets can now be cached
587 You can turn on caching of refile targets by setting the variable
588 =org-refile-use-cache=.  This should speed up refiling if you
589 have many eligible targets in many files.  If you need to update
590 the cache because Org misses a newly created entry or still
591 offers a deleted one, press =C-0 C-c C-w=.
593 *** Enhanced functionality of the clock resolver
595 Here are the new options for the clock resolver:
596     
597 : i/q/C-g  Ignore this question; the same as keeping all the idle time.
599 : k/K      Keep X minutes of the idle time (default is all).  If this
600 :          amount is less than the default, you will be clocked out
601 :          that many minutes after the time that idling began, and then
602 :          clocked back in at the present time.
603 : g/G      Indicate that you \"got back\" X minutes ago.  This is quite
604 :          different from 'k': it clocks you out from the beginning of
605 :          the idle period and clock you back in X minutes ago.
606 : s/S      Subtract the idle time from the current clock.  This is the
607 :          same as keeping 0 minutes.
608 : C        Cancel the open timer altogether.  It will be as though you
609 :          never clocked in.
610 : j/J      Jump to the current clock, to make manual adjustments.
611     
612 For all these options, using uppercase makes your final state
613 to be CLOCKED OUT.  Thanks to John Wiegley for making these
614 changes.
616 *** A property value of "nil" now means to unset a property
618 This can be useful in particular with property inheritance, if
619 some upper level has the property, and some grandchild of it
620 would like to have the default settings (i.e. not overruled by a
621 property) back.
623 Thanks to Robert Goldman and Bernt Hansen for suggesting this
624 change.
626 *** The problem with comment syntax has finally been fixed
628 Thanks to Leo who has been on a year-long quest to get this fixed
629 and finally found the right way to do it.
631 *** Make it possible to protect hidden subtrees from being killed by =C-k=
632     
633 This was a request by Scott Otterson.
634 See the new variable =org-ctrl-k-protect-subtree=.
635     
636 *** New module org-mac-link-grabber.el
638 This module allows to grab links to all kinds of applications on
639 a mac.  It is available in the contrib directory.
641 Thanks to Anthony Lander for this contribution.
643 *** LaTeX export: Implement table* environment for wide tables
644     
645 Thanks to Chris Gray for a patch to this effect.
647 *** When cloning entries, remove or renew ID property
649 Thanks to David Maus for this change.
651 * Version 6.36
653  :PROPERTIES:
654  :CUSTOM_ID: v6.36
655  :END:
657 ** Details
658 *** Inline display of linked images
660 Images can now be displayed inline.  The key C-c C-x C-v does
661 toggle the display of such images.  Note that only image links
662 that have no description part will be inlined.
664 *** Implement offsets for ordered lists
666 If you want to start an ordered plain list with a number
667 different from 1, you can now do it like this:
668     
669 : 1. [@start:12] will star a lit a number 12
671 *** Extensions to storing and opening links to Wanderlust messages
672     
673 - Remove filter conditions for messages in a filter folder
674     
675   If customization variable `org-wl-link-remove-filter' is non-nil,
676   filter conditions are stripped of the folder name.
677     
678 - Create web links for messages in a Shimbun folder
680   If customization variable `org-wl-shimbun-prefer-web-links' is
681   non-nil, calling `org-store-link' on a Shimbun message creates a
682   web link to the messages source, indicated in the Xref: header
683   field.
685 - Create web links for messages in a nntp folder
687   If customization variable `org-wl-nntp-prefer-web-links' is
688   non-nil, calling `org-store-link' on a nntp message creates a web
689   link either to gmane.org if the group can be read trough gmane or
690   to googlegroups otherwise. In both cases the message-id is used as
691   reference.
693 - Open links in namazu search folder
695   If `org-wl-open' is called with one prefix, WL opens a namazu
696   search folder for message's message-id using
697   `org-wl-namazu-default-index' as search index.  If this variable is
698   nil or `org-wl-open' is called with two prefixes Org asks for the
699   search index to use.
701 Thanks to David Maus for these changes.
703 *** Org-babel: code block body expansion for table and preview
705 In org-babel, code is "expanded" prior to evaluation. I.e. the
706 code that is actually evaluated comprises the code block
707 contents, augmented with the extra code which assigns the
708 referenced data to variables. It is now possible to preview
709 expanded contents, and also to expand code during during
710 tangling. This expansion takes into account all header arguments,
711 and variables.
713 A new key-binding C-c M-b p bound to
714 `org-babel-expand-src-block' can be used from inside of a
715 source code block to preview its expanded contents (which can
716 be very useful for debugging).  tangling
718 The expanded body can now be tangled, this includes variable
719 values which may be the results of other source-code blocks, or
720 stored in headline properties or tables. One possible use for
721 this is to allow those using org-babel for their emacs
722 initialization to store values (e.g. usernames, passwords,
723 etc…) in headline properties or in tables.
725 Org-babel now supports three new header arguments, and new
726 default behavior for handling horizontal lines in tables
727 (hlines), column names, and rownames across all languages.
729 * Version 6.35
730  :PROPERTIES:
731  :CUSTOM_ID: v6.35
732  :END:
734 ** Incompatible Changes
736 *** Changes to the intended use of =org-export-latex-classes=
738 So far this variable has been used to specify the complete header
739 of the LaTeX document, including all the =\usepackage= calls
740 necessary for the document.  This setup makes it difficult to
741 maintain the list of packages that Org itself would like to call,
742 for example for the special symbol support it needs.  Each time I
743 have to add a package, I have to ask people to revise the
744 configuration of this variable.  In this release, I have tried to
745 fix this.
747 First of all, you can *opt out of this change* in the following
748 way: You can say: /I want to have full control over headers, and
749 I will take responsibility to include the packages Org needs/.
750 If that is what you want, add this to your configuration and skip
751 the rest of this section (except maybe for the description of the
752 =[EXTRA]= place holder):
754 #+begin_src emacs-lisp
755   (setq org-export-latex-default-packages-alist nil
756         org-export-latex-packages-alist nil)
757 #+end_src
759 /Continue to read here if you want to go along with the modified
760 setup./
762 There are now two variables that should be used to list the LaTeX
763 packages that need to be included in all classes.  The header
764 definition in =org-export-latex-classes= should then not contain
765 the corresponding =\usepackage= calls (see below).
767 The two new variables are:
769 1. =org-export-latex-default-packages-alist= :: This is the
770      variable where Org-mode itself puts the packages it needs.
771      Normally you should not change this variable.  The only
772      reason to change it anyway is when one of these packages
773      causes a conflict with another package you want to use.
774      Then you can remove that packages and hope that you are not
775      using Org-mode functionality that needs it.
777 2. =org-export-latex-packages-alist= :: This is the variable
778      where you can put the packages that you'd like to use across
779      all classes.  For example, I am putting =amsmath= and =tikz=
780      here, because I always want to have them.
782 The sequence how these customizations will show up in the LaTeX
783 document are:
784 1. Header from =org-export-latex-classes=
785 2. =org-export-latex-default-packages-alist=
786 3. =org-export-latex-packages-alist=
787 4. Buffer-specific things set with =#+LaTeX_HEADER:=
789 If you want more control about which segment is placed where, or
790 if you want, for a specific class, have full control over the
791 header and exclude some of the automatic building blocks, you can
792 put the following macro-like place holders into the header:
794 #+begin_example
795 [DEFAULT-PACKAGES]      \usepackage statements for default packages
796 [NO-DEFAULT-PACKAGES]   do not include any of the default packages
797 [PACKAGES]              \usepackage statements for packages 
798 [NO-PACKAGES]           do not include the packages
799 [EXTRA]                 the stuff from #+LaTeX_HEADER
800 [NO-EXTRA]              do not include #+LaTeX_HEADER stuff
801 #+end_example
803 If you have currently customized =org-export-latex-classes=, you
804 should revise that customization and remove any package calls that
805 are covered by =org-export-latex-default-packages-alist=.  This
806 applies to the following packages:
808 - inputenc
809 - fontenc
810 - fixltx2e
811 - graphicx
812 - longtable
813 - float
814 - wrapfig
815 - soul
816 - t1enc
817 - textcomp
818 - marvosym
819 - wasysym
820 - latexsym
821 - amssymb
822 - hyperref
824 If one of these packages creates a conflict with another package
825 you are using, you can remove it from
826 =org-export-latex-default-packages-alist=.  But then you risk
827 that some of the advertised export features of Org will not work
828 properly.
830 You can also consider moving packages that you use in all classes
831 to =org-export-latex-packages-alist=.  If necessary, put the
832 place holders so that the packages get loaded in the right
833 sequence.  As said above, for backward compatibility, if you omit
834 the place holders, all the variables will dump their content at
835 the end of the header.
837 Damn, this has become more complex than I wanted it to be.  I
838 hope that in practice, this will not be complicated at all.
840 *** The constant =org-html-entities= is obsolete
842 Its content is now part of the new constant =org-entities=, which
843 is defined in the file org-entities.el.  =org-html-entities= was
844 an internal variable, but it is possible that some users did
845 write code using it - this is why I am mentioning it here.
847 ** Editing Convenience and Appearance
849 *** New faces for title, date, author and email address lines.
850     
851 The keywords in these lines are now dimmed out, and the title is
852 displayed in a larger font, and a special font is also used for
853 author, date, and email information.  This is implemented by the
854 following new faces:
855     
856 org-document-title
857 org-document-info
858 org-document-info-keyword
859     
860 In addition, the variable =org-hidden-keywords= can be used to
861 make the corresponding keywords disappear.
863 Thanks to Dan Davison for this feature.
865 *** Simpler way to specify faces for tags and todo keywords
866     
867 The variables =org-todo-keyword-faces=, =org-tag-faces=, and
868 =org-priority-faces= now accept simple color names as
869 specifications.  The colors will be used as either foreground or
870 background color for the corresponding keyword.  See also the
871 variable =org-faces-easy-properties=, which governs which face
872 property is affected by this setting.
874 This is really a great simplification for setting keyword faces.
875 The change is based on an idea and patch by Ryan Thompson.
877 *** <N> in tables now means fixed width, not maximum width
878     
879 Requested by Michael Brand.
881 *** Better level cycling function
883 =TAB= in an empty headline cycles the level of that headline
884 through likely states.  Ryan Thompson implemented an improved
885 version of this function, which does not depend upon when exactly
886 this command is used.  Thanks to Ryan for this improvement.
888 *** Adaptive filling
889     
890 For paragraph text, =org-adaptive-fill-function= did not handle the
891 base case of regular text which needed to be filled.  This is now
892 fixed.  Among other things, it allows email-style ">" comments
893 to be filled correctly.
895 Thanks to Dan Hackney for this patch.    
897 *** `org-reveal' (=C-c C-r=) also decrypts encrypted entries (org-crypt.el)
898     
899 Thanks to Richard Riley for triggering this change.
901 *** Better automatic letter selection for TODO keywords
902     
903 When all first letters of keywords have been used, Org now assigns
904 more meaningful characters based on the keywords.
906 Thanks to Mikael Fornius for this patch.
908 ** Export
910 *** Much better handling of entities for LaTeX export
912 Special entities like =\therefore= and =\alpha= now know if
913 they need to be in LaTeX math mode and are formatted accordingly.
915 Thanks to Ulf Stegemann for the tedious work to make this
916 possible.
917     
918 *** LaTeX export: Set coding system automatically
920 The coding system of the LaTeX class will now be set to the value
921 corresponding to the buffer's file coding system.  This happens
922 if your setup sets up the file to have a line
923 =\usepackage[AUTO]{inputenc}= (the default setup does this).
925 *** New exporters to Latin-1 and UTF-8
927 While Ulf Stegemann was going through the entities list to
928 improve the LaTeX export, he had the great idea to provide
929 representations for many of the entities in Latin-1, and for all
930 of them in UTF-8.  This means that we can now export files rich
931 in special symbols to Latin-1 and to UTF-8 files.  These new
932 exporters can be reached with the commands =C-c C-e n= and =C-c
933 C-e u=, respectively.
935 When there is no representation for a given symbol in the
936 targeted coding system, you can choose to keep the TeX-macro-like
937 representation, or to get an "explanatory" representation.  For
938 example, =\simeq= could be represented as "[approx. equal to]".
939 Please use the variable =org-entities-ascii-explanatory= to state
940 your preference.
942 *** Full label/reference support in HTML, Docbook, and LaTeX backends
944 =#+LABEL= definitions for tables and figures are now fully
945 implemented in the LaTeX, Docbook, and HTML interfaces.
946 =\ref{xxx}= is expanded to a valid link in all backends.
948 *** BEAMER export: Title of the outline frame is now customizable
949     
950 The new option =org-outline-frame-title= allows to set the 
951 title for outline frames in Beamer presentations.
953 Patch by Lukasz Stelmach.
954     
955 *** BEAMER export: fragile frames are better recognized
957 A =lstlisting= environment now also triggers the fragile option in
958 a beamer frame, just like =verbatim= environments do.
960 Thanks to Eric Schulte for this patch.
962 *** BEAMER export: Protect <...> macro arguments
964 Macros for the BEAMER package can have arguments in angular
965 brackets.  These are now protected just like normal arguments.
967 Requested by Bill Jackson.
969 *** HTML export: Add class to outline containers using property
970     
971 The =HTML_CONTAINER_CLASS= property can now be used to add a
972 class name to the outline container of a node in HTML export.
974 *** New option =org-export-email-info= to turn off export of the email address
975     
976 Default is actually off now.
978 *** Throw an error when creating an image from a LaTeX snippet fails
980 This behavior can be configured with the new option variable
981 =org-format-latex-signal-error=.
983 ** Index generation
984     
985 Org-mode can now produce a 2-level subject index spanning an
986 entire publishing project.  Write index entries in your files as
988 #+begin_src org
989 ,* What is org-mode?
990 #+index: Org-mode
991 #+index: Definitions!Org-mode
992 #+end_src
994 where the first line will produce an index entry /Org-mode/,
995 while the second line will create /Definitions/ with a sub-item
996 /Org-mode/.  Three-level entries are not supported.
998 To produce the index, set
1000 #+begin_src emacs-lisp
1001 :makeindex t
1002 #+end_src
1004 in the project definition in =org-publish-project-alist=.  You
1005 may have to force re-export of all files to get the index by
1006 using a =C-u= prefix to the publishing command:
1008 #+begin_example
1009 C-u M-x org-publish-all
1010 #+end_example
1012 Whenever an Org file is published in this project, a new file
1013 with the extension "orgx" will be written.  It contains the index
1014 entries and corresponding jump target names.  When all project
1015 files are published, Org will produce a new file "theindex.inc"
1016 containing the index as a to-level tree.  This file can be
1017 included into any project file using
1019 #+begin_src org
1020   ,#+include: "theindex.inc"
1021 #+end_src
1023 Org-mode will also create a file "theindex.org" with this include
1024 statement, and you can build a more complex structure (for
1025 example style definitions, top and home links, etc) around this
1026 statement.  When this file already exists, it will not be
1027 overwritten by Org.
1029 Thanks to Stefan Vollmar for initiating and driving this feature.
1031 *** TODO Still need to do the LaTeX portion
1033 ** MobileOrg
1035 *** Encrypting stage files for MobileOrg
1037 Since the use of (often pubic) servers is needed for MobileOrg,
1038 it is now possible to encrypt the files to be staged for
1039 MobileOrg.  Version 1.2 of MobileOrg will be needed for this
1040 feature, and Richard Moreland will show instructions on his
1041 website once that is available.  Basically, on the Org-side this
1042 will require the following settings:
1044 #+begin_src emacs-lisp
1045   (setq org-mobile-use-encryption t
1046         org-mobile-encryption-password "My_MobileOrg_Password")
1047 #+end_src
1049 So the password will be visible in your local setup, but since
1050 the encryption is only for the public server, this seems
1051 acceptable.
1053 ** Agenda
1055 *** Specify entry types as an option
1056     
1057 Custom Agenda commands can now limit the sets of entry types
1058 considered for this command by binding =org-agenda-entry-types=
1059 temporarily in the options section of the command.  This can lead
1060 to significant speedups, because instead of laboriously finding
1061 entries and then rejecting them, a whole search cycle is skipped.
1062 For more information see the new section in
1063 [[http://orgmode.org/worg/org-tutorials/org-custom-agenda-commands.php#sec-5][Matt Lundin's agenda custom command tutorial]].
1065 Thanks to Matt Lundin for this feature.
1067 *** Speed up multiple calls to org-diary by only doing buffer prep once
1068     
1069 Also a patch by Matt Lundin.
1071 *** Show and hide deadlines in the agenda
1073 You can now hide all deadline entries in the agenda by pressing
1074 =!=.
1076 Thanks to John Wiegley for this feature.
1078 *** Agenda: Allow to suppress deadline warnings for entries also scheduled
1080 The the docstring of the variable
1081 =org-agenda-skip-deadline-prewarning-if-scheduled=.
1083 *** Expand file names in org-agenda-files (external file case)
1084     
1085 If you are using a file to manage the list of agenda files, the
1086 names in this file can now contain environment variables and "~"
1087 to write them more compactly and portable.
1089 Thanks to Mikael Fornius for a patch to this effect.
1091 *** Agenda: Allow TODO conditions in the skip functions
1093 The agenda skip function has now special support for skipping
1094 based on the TODO state.  Here are just two examples, see the
1095 manual for more information.
1097 #+begin_src emacs-lisp
1098 (org-agenda-skip-entry-if 'todo '(\"TODO\" \"WAITING\"))
1099 (org-agenda-skip-entry-if 'nottodo 'done)
1100 #+end_src
1102 Thanks to Lukasz Stelmach for this patch.
1104 *** Extracting the time-of-day when adding diary entries
1106 The time of day can now be extracted from new diary entries made
1107 from the agenda with (for example) =i d=.  When
1108 =org-agenda-insert-diary-extract-time= is set, this is done, and
1109 the time is moved into the time stamp.
1111 Thanks to Stephen Eglen for this feature.
1113 *** The customization group org-font-lock has been renamed
1115 The new name is `org-appearance'.
1117 Thanks to Dan Davison for a patch to this effect.
1119 *** The TODO list: Allow skipping scheduled or deadlined entries
1121 Skipping TODO entries in the global TODO list based on whether
1122 they are scheduled or have a deadline can now be controlled in
1123 more detail.  Please see the docstrings of
1124 =org-agenda-todo-ignore-scheduled= and
1125 =org-agenda-todo-ignore-deadline=.
1127 Thanks to Lukasz Stelmach for patches to this effect.
1129 ** Hyperlinks
1131 *** Make =org-store-link= point to directory in a dired buffer
1132     
1133 When, in a dired buffer, the cursor is not in a line listing a
1134 file, `org-store-link' will store a link to the directory.
1136 Patch by Stephen Eglen.
1138 *** Allow regexps in =org-file-apps= to capture link parameters
1139     
1140 The way extension regexps in =org-file-apps= are handled has
1141 changed.  Instead of matching against the file name, the regexps
1142 are now matched against the whole link, and you can use grouping
1143 to extract link parameters which you can then use in a command
1144 string to be executed.
1146 For example, to allow linking to PDF files using the syntax
1147 =file:/doc.pdf::<page number>=, you can add the following entry to
1148 org-file-apps:
1150 #+begin_example
1151 Extension: \.pdf::\([0-9]+\)\'
1152 Command:   evince "%s" -p %1
1153 #+end_example
1155 Thanks to Jan Böcker for a patch to this effect.
1157 ** Clocking
1159 *** Show clock overruns in mode line
1161 When clocking an item with a planned effort, overrunning the
1162 planned time is now made visible in the mode line, for example
1163 using the new face =org-mode-line-clock-overrun=, or by adding an
1164 extra string given by =org-task-overrun-text=.
1166 Thanks to Richard Riley for a patch to this effect.
1168 ** Tables
1170 *** Repair the broken support for table.el tables again.
1171     
1172 Tables created with the table.el package now finally work again
1173 in Org-mode.  While you cannot edit the table directly in the
1174 buffer, you can use  =C-c '= to edit it nicely in a temporary
1175 buffer.
1177 Export of these tables to HTML seem to work without problems.
1178 Export to LaTeX is imperfect.  If fails if the table contains
1179 special characters that will be replaced by the exporter before
1180 formatting the table.  The replacement operation changes the
1181 length of some lines, breaking the alignment of the table fields.
1182 Unfortunately this is not easy to fix.  It is also not an option
1183 to not do these replacements.  The table.el LaTeX exporter will
1184 for example not escape "&" in table fields, causing the exported
1185 tables to be broken.
1187 ** Misc
1189 *** New logging support for refiling
1191 Whenever you refile an item, a time stamp and even a note can be
1192 added to this entry.  For details, see the new option
1193 =org-log-refile=.
1194     
1195 Thanks to Charles Cave for this idea.
1197 *** New helper functions in org-table.el
1199 There are new functions to access and write to a specific table
1200 field.  This is for hackers, and maybe for the org-babel people.
1202 #+begin_example
1203 org-table-get
1204 org-table-put
1205 org-table-current-line
1206 org-table-goto-line
1207 #+end_example
1209 *** Tables: Field coordinates for formulas, and improved docs
1210     
1211 Calc and Emacs-Lisp formulas for tables can access the current
1212 field coordinates with =@#= and =$#= for row and column,
1213 respectively.  These can be useful in some formulas.  For
1214 example, to sequentially number the fields in a column, use
1215 ~=@#~ as column equation.
1217 One application is to copy a column from a different table.  See
1218 the manual for details.
1220 Thanks to Michael Brand for this feature.
1222 *** Archiving: Allow to reverse order in target node
1223     
1224 The new option =org-archive-reversed-order= allows to have
1225 archived entries inserted in a last-on-top fashion in the target
1226 node.
1227     
1228 Requested by Tom.
1230 *** Better documentation on calc accuracy in tables
1231     
1232 Thanks to Michael Brand for this fix.
1234 *** Clock reports can now include the running, incomplete clock
1236 If you have a clock running, and the entry being clocked falls
1237 into the scope when creating a clock table, the time so far spent
1238 can be added to the total.  This behavior depends on the setting
1239 of =org-clock-report-include-clocking-task=.  The default is
1240 =nil=.
1241     
1242 Thanks to Bernt Hansen for this useful addition.
1244 *** American-style dates are now understood by =org-read-date=
1246 So when you are prompted for a date, you can now answer like this
1248 #+begin_example
1249 2/5/3         --> 2003-02-05
1250 2/5           --> <CURRENT-YEAR>-02-05
1251 #+end_example    
1253 *** org-timer.el now allows just one timer
1255 There is now only a single free timer supported by org-timer.el.
1256 Thanks to Bastien for cleaning this up, after a bug report in
1257 this area by Frédéric Couchet.
1259 *** Remember: Allow to file as sibling of current clock
1260     
1261 =C-3 C-c C-c= will file the remember entry as a sibling of the
1262 last filed entry.
1264 Patch by Lukasz Stelmach.
1266 *** Org-reveal: Double prefix arg shows the entire subtree of the parent
1267     
1268 This can help to get out of an inconsistent state produced for
1269 example by viewing from the agenda.
1271 This was a request by Matt Lundin.
1273 *** Add org-secretary.el by Juan Reyero to the contrib directory
1275 org-secretary.el is a possible setup for group work using
1276 Org-mode.
1278 Thanks to Juan Reyero for this contribution.
1280 ** Babel
1282 Eric and Dan have compiled the following list of changes in and
1283 around org-babel.
1285 - Added support for Matlab and Octave.
1286 - Added support for C and C++ code blocks.
1287 - Added support for the Oz programming language.
1288   Thanks to Torsten Anders for this contribution
1289 - Can now force literal interpretation of table cell contents
1290   with extra "$" in table formula.
1291   Thanks to Maurizio Vitale for this suggestion.
1292 - Variable references which look like lisp forms are now
1293   evaluated.
1294 - No longer adding extension during tangling when filename is
1295   provided.
1296   Thanks to Martin G. Skjæveland and Nicolas Girard for prompting this.
1297 - Added `org-babel-execute-hook' which runs after code block
1298   execution.
1299 - Working directories and remote execution
1301   This introduces a new header argument :dir. For the duration of
1302   source block execution, default-directory is set to the value
1303   of this header argument. Consequences include:
1305   - external interpreter processes run in that directory
1306   - new session processes run in that directory (but existing
1307     ones are unaffected)
1308   - relative paths for file output are relative to that directory
1310   The name of a directory on a remote machine may be specified
1311   with tramp syntax (/user@host:path), in which case the
1312   interpreter executable will be sought in tramp-remote-path, and
1313   if found will execute on the remote machine in the specified
1314   remote directory.
1315 - Tramp syntax can be used to tangle to remote files.
1316   Thanks to Maurizio Vitale and Rémi Vanicat.
1317 - org-R removed from contrib.
1318 - gnuplot can now return it's string output -- when session is
1319   set to "none".
1320 - Now including source code block arguments w/source name on
1321   export.
1322 - Now able to reference file links as results.
1323 - Allow pdf/png generation directly from latex source blocks
1324   with :file header argument.
1326 * Version 6.34
1327  :PROPERTIES:
1328  :CUSTOM_ID: v6.34
1329  :END:
1331 ** Incompatible changes
1333 *** Tags in org-agenda-auto-exclude-function must be lower case.
1335 When defining an =org-agenda-auto-exclude-function=, you need to
1336 be aware that tag that is being passed into the function is
1337 always lower case - even if it was defined in upper case
1338 originally.
1340 ** Details
1342 *** Support for creating BEAMER presentations from Org-mode documents
1344 Org-mode documents or subtrees can now be converted directly in
1345 to BEAMER presentation.  Turning a tree into a simple
1346 presentations is straight forward, and there is also quite some
1347 support to make richer presentations as well.  See the [[http://orgmode.org/manual/Beamer-class-export.html#Beamer-class-export][BEAMER
1348 section]] in the manual for more details.
1350 Thanks to everyone who has contributed to the discussion about
1351 BEAMER support and how it should work.  This was a great example
1352 for how this community can achieve a much better result than any
1353 individual could.
1355 *** Hyperlinks
1357 **** Add Paul Sexton's org-ctags.el
1359 Targets like =<<my target>>= can now be found by Emacs' etag
1360 functionality, and Org-mode links can be used to to link to
1361 etags, also in non-Org-mode files.  For details, see the file
1362 /org-ctags.el/.
1364 This feature uses a new hook =org-open-link-functions= which will
1365 call function to do something special with text links.
1367 Thanks to Paul Sexton for this contribution.
1369 **** Add Jan Böcker's org-docview.el
1371 This new module allows links to various file types using docview,
1372 where Emacs displays images of document pages.  Docview link
1373 types can point to a specific page in a document, for example to
1374 page 131 of the Org-mode manual:
1376 : [[docview:~/.elisp/org/doc/org.pdf::131][Org-Mode Manual]]
1378 Thanks to Jan Böcker for this contribution.
1379     
1380 **** New link types that force special ways of opening the file
1381     
1382 - =file+sys:/path/to/file=  will use the system to open the file,
1383   like double-clicking would.
1384 - file+emacs:/path/to/file will force opening the linked file
1385   with Emacs.
1387 This was a request by John Wiegley.
1389 **** Open all links in a node
1391 When using =C-c C-o= on a headline to get a list of links in the
1392 entry, pressing =RET= will open *all* links.  This allows
1393 something like projects to be defined, with a number of files
1394 that have to be opened by different applications.
1396 This was a request by John Wiegley.
1398 *** Agenda Views
1400 **** Improve the logic of the search view.
1402 The logic of search views is changed a bit.  See the docstring of
1403 the function =or-search-view=.
1405 These changes resulted from a discussion with Matt Lundin.
1407 **** New face for entries from the Emacs diary
1409 Entries that enter the Agenda through the Emacs diary now get the
1410 face =org-agenda-diary=.
1412 This was a request by Thierry Volpiatto.
1414 **** New function `org-diary-class' to schedule classes with skipped weeks.
1416 This was a request by Daniel Martins.
1418 **** Empty matcher means prompt in agenda custom commands
1419     
1420 When an agenda custom command has an empty string as MATCH
1421 element, so far this would lead to a meaningless search using an
1422 empty matcher.  Now an empty (or white) string will be
1423 interpreted just like a nil matcher, i.e. the user will be
1424 prompted for the match.
1426 **** Agenda: Selectively remove some tags from agenda display
1428 If you use tags very extensively, you might want to exclude some
1429 from being displayed in the agenda, in order to keep the display
1430 compact.  See the new option =org-agenda-hide-tags-regexp= for
1431 details.
1432     
1433 This was largely a patch by Martin Pohlack.
1435 *** Export
1437 **** Direct export of only the current subtree
1439 Pressing =1= after =C-c C-e= and before the key that selects the
1440 export backend, only the current subtree will be exported,
1441 exactly as it you had selected it first with =C-c @=.  So for
1442 example, =C-c C-e 1 b= will export the current subtree to HTML
1443 and open the result in the browser.
1445 **** Direct export of enclosing node
1447 Pressing =SPC= after =C-c C-e= and before the key that selects
1448 the export backend, the enclosing subree that is set up for
1449 subtree export will be exported, exactly as it you had selected
1450 it first with =C-c @=.  So for example, =C-c C-e SPC d= will find
1451 the enclosing node with a LaTeX_CLASS property or an
1452 EXPORT_FILE_NAME property and export that.
1454 **** Caching export images
1456 Images that are created for example using LaTeX or ditaa for
1457 inclusion into exported files are now cached.  This works by
1458 adding a hash to the image name, that reflects the source code
1459 and all relevant settings.  So as long as the hash does not
1460 change, the image does not have to be made again.  His can lead
1461 to a substantial reduction in export/publishing times.
1463 Thanks to Eric Schulte for a patch to this effect.
1465 **** Preserving line breaks for export no longer works
1466     
1467 ASCII export always preserves them - no other export format
1468 does.  We had attempted to use =\obeylines= for this in LaTeX,
1469 but that does create too many problems.
1471 **** New symbols =\EUR= and =\checkmark=
1473 =\EUR= symbols from Marvosym package, and =\checkmark= are now
1474 supported symbols in Org-mode, i.e. they will be exported
1475 properly to the various backends.
1477 **** Allow LaTeX_CLASS_OPTIONS to set options, also from a property
1479 You can set the options to the =\documentclass= command on a
1480 per-file basis, using
1482 : #+LaTeX_CLASS_OPTIONS: [11pt]
1484 or on a per-tree basis using the corresponding property.  The
1485 defined string will replace the default options entirely.
1487 **** The encoding of LaTeX files is now handled property
1489 Org now makes sure that the encoding used by the file created
1490 through the export mechanism is reflected correctly in the
1492 : \usepackage[CODINGSYSTEM]{inputenc}
1494 command.  So as long as the =org-export-latex-classes= definition
1495 contains an =\usepackage[utf8]{inputenc}= statement, that
1496 statement will be modified so that the correct option is used.
1498 If you wan to use special encodings, for example =utf8x= instead
1499 of =utf8=, see the variable =org-export-latex-inputenc-alist=.
1501 This was a request by Francesco Pizzolante.
1503 *** Property API enhancements
1504     
1505 **** Make a new special property BLOCKED, indicating if entry is blocked
1507 A new special property BLOCKED returns "t" when the entry is
1508 blocked from switching the TODO state to a DONE state.
1510 This was a request by John Wiegley.
1512 **** New hooks for external support for allowed property values
1514 It is now possible to hook into Org in order to provide the
1515 allowed values for any property with a lisp function.  See the
1516 docstring of the variable =org-property-allowed-value-functions=
1518 **** Allow unrestricted completion on properties
1520 When listing the allowed values for a property, for example with
1521 a =:name_ALL:= property, completion on these values enforces that
1522 one of the values will be chosen.  Now, if you add ":ETC" to the
1523 list of allowed values, it will be interpreted as a switch, and
1524 the completion will be non-restrictive, so you can also choose to
1525 type a new value.
1527 *** Changes to Org-babel
1529 - The documentation for Org-babel has been drastically improved
1530   and is available on Worg at
1531   http://orgmode.org/worg/org-contrib/babel/
1532 - Source-code block names are now exported to HTML and LaTeX
1533 - Org-babel functions are now bound to keys behind a common key
1534   prefix (see
1535   http://orgmode.org/worg/org-contrib/babel/reference.php#sec-5)
1536 - Results are now foldable with TAB
1537 - Header argument values can now be lisp forms
1538 - Readable aliases for #+srcname: and #+resname:
1539 - Sha1 hash based caching of results in buffer
1540 - Can now index into variable values
1541 - org-babel-clojure now supports multiple named sessions
1543 *** Miscellaneous changes
1545 **** Make =C-c r C= customize remember templates
1547 =C-c r C= is now a shortcut for
1549 :  M-x customize-variable RET org-remember-templates RET
1551 This was a proposal by Adam Spiers.
1553 **** Use John Gruber's regular expression for URL's
1555 We now use a better regexp to spot plain links in text.  This
1556 regexp is adopted from [[http://daringfireball.net/2009/11/liberal_regex_for_matching_urls][John Gruber's blogpost]].
1558 Thanks to William Henney for the pointer.
1560 **** Implement tag completion of all tags in all agenda files
1561     
1562 The new option =org-complete-tags-always-offer-all-agenda-tags=
1563 makes Org complete all tags from all agenda files if non-nil.
1564 Usually, setting it locally to t in org-remember buffers is the
1565 most useful application of this new feature.
1567 Thanks to Tassilo Horn for a patch to this effect.
1569 * Version 6.33
1570  :PROPERTIES:
1571  :CUSTOM_ID: v6.33
1572  :END:
1574 ** Incompatible changes
1576 *** Reorganize key bindings for archiving
1577     
1578 The following keys now do archiving
1580 - C-c C-x C-a :: archive using the command specified in
1581      =org-archive-default-command=.  This variable is by default
1582      set to =org-archive-subtree=, which means arching to the
1583      archive file.
1584     
1585 The three specific archiving commands are available through
1587 - C-c C-x C-s ::    archive to archive file
1588 - C-c C-x a ::     toggle the archive tag
1589 - C-c C-x A ::   move to archive sibling
1591 These bindings work the same in an Org file, and in the agenda.
1593 In addition:
1594     
1595 - In the agenda you can also use =a= to call the default archiving
1596   command, but you need to confirm the command with =y= so that this
1597   cannot easily happen by accident.
1598   
1599 - For backward compatibility, =C-c $= in an org-mode file, and
1600   =$= in the agenda buffer continue to archive to archive file.
1603 ** Details
1605 *** Level indentation cycling new empty entries and plain list items
1606 :PROPERTIES:
1607 :ID: 1CBF16C9-031C-4A03-A5EE-09B6AAB6209C
1608 :END:
1610 To speed up data entry, TAB now behaves special in an empty
1611 headline, i.e. if the current line only contains the headline
1612 starter stars, maybe a TOD keyword, but no further content.  This
1613 is usually the situation just after creating a new headline with
1614 =M-RET= or =M-S-RET=.
1616 Then, TAB will first make the current entry a child of the
1617 entry above, then a parent, then a grand parent etc until it
1618 reaches top level.  Yet another TAB and you will be back at the
1619 initial level at which the headline was created.
1621 New plain list items behave in just the same way.
1623 Sounds strange?  Try it, it is insanely fast when entering data.
1624 If you still don't like it, turn it off by customizing
1625 =org-cycle-level-after-item/entry-creation=.
1627 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
1628 contributed to this new feature.
1630 *** Speed commands at the start of a headline
1632 If you set the variable =org-use-speed-commands=, the cursor
1633 position at the beginning of a headline (i.e. before the first
1634 star) becomes special.  Single keys execute special commands in
1635 this place, for example outline navigation with =f=, =b=, =n=,
1636 and =p=, equivalent to the corresponding =C-c C-f=, =C-c C-b=,
1637 =C-c C-n=, and =C-c C-f= commands.  The full list of commands can
1638 be seen by pressing =?= at the special location.  More commands
1639 can be added and existing ones modified by configuring the
1640 variable =org-speed-commands-user=.
1642 This was a request by John Wiegley, based on similar speed
1643 navigation in /allout.el/.
1645 *** Logging changes in scheduling and deadline time stamps
1647 Setting the variables =org-log-reschedule= and
1648 =org-log-redeadline= to either =time= or =note= will arrange for
1649 recording a logbook entry whenever a scheduling date or deadline
1650 is changed.
1652 This was a request by Rick Moynihan.
1654 *** File remember notes into a date tree
1656 Remember notes can now be filed to a location in a date tree.  A
1657 date tree is an outline tree with years as top levels, months as
1658 level 2 headings, and days as level three headings.  These are
1659 great for journals and for recording appointments and other loose
1660 dates because it will be easy to find all entries referencing a
1661 particular date, and it will be easy to archive all such entry
1662 from last year, for example.
1664 To select date tree filing, set the HEADLINE part of the remember
1665 template to the symbol =date-tree=.  The date tree will be build
1666 in the file on top level.  However, if the file contains an entry
1667 with a non-nil =DATE_TREE= property, then the tree will be build
1668 under that headline.
1670 *** New commands to create entries from agenda and calendar
1672 If you make the variable =org-agenda-diary-file= point to an
1673 org-mode file, the =i= key in both the agenda buffer and in the
1674 Emacs calendar will be made to insert entries into that Org file.
1675 The dates at the cursor and the mark are being used when making
1676 entries for specific dates or blocks.  In the new file,
1677 anniversaries will be collected under a special headline, and
1678 day/block entries will be filed into a date tree (see previous
1679 section).
1681 This was a request by Stephen Eglen.
1683 *** A new freemind exporter has been integrated with Org-mode
1685 org-freemind.el has a number of entry points (for details, see
1686 the source code), but you can also use Org's =C-c C-e m= to
1687 export a file or a selected subtree.
1689 Thanks to Lennart Borgman for this contribution.  An earlier
1690 version of this file was part of the nxhtml package, under the
1691 name /freemind.el/.
1693 *** Drawers are now exported properly
1695 Drawers are now exported when the configuration requires it,
1696 i.e. if the variable `org-export-with-drawers' is t or a list
1697 containing the drawers to export.
1699 *** Min/Max/Mean age operators in Column View.
1700     
1701 This lets you see how much time has passed since the specified
1702 timestamp property each entry. The three operators (=@min=,
1703 =@max=, =@mean=) show either the age of the youngest or oldest
1704 entry or the average age of the children.
1706 Thanks to James TD Smith for a patch to this effect.
1707     
1708 *** Allow source code block indentation to be preserved
1709     
1710 If =org-src-preserve-indentation= is non-nil, or if a block has a
1711 =-i= switch, then the behavior of org-exp-blocks is altered as
1712 follows:
1714 1. Indentation is not removed before passing the block contents
1715    to the block-transforming plugin.
1716    
1717 2. The result returned by the plugin is not re-indented.
1719 3. Editing the source code block with =C-c '= preserves it's
1720    indentation.
1722 Thanks to Dan Davison for this feature.
1724 *** Frame/window control when switching to source code edit buffer.
1725     
1726 When switching to a source code editing buffer with =C-c '=, you
1727 can now control the frame / window setup using the new variable
1728 =org-src-window-setup=.
1730 Thanks to Dan Davison for this feature.
1732 *** Refile an entry to the current clock
1734 You can now quickly refile an entry to become a child of the
1735 entry currently being clocked.  The keys for doing this are
1736 =C-2 C-c C-w=.
1738 This was a request by Bernt Hansen.
1740 *** Make =C-c C-o= open the attachment directory is there are no links
1742 If there is no link in an entry, =C-c C-o= will now open the
1743 attachment directory instead.
1745 This was a request/patch by John Wiegley.
1747 *** org-mac-iCal.el: work with calendar "groups"
1748     
1749 Some calendar systems (Google, Zimbra) handle subscriptions to
1750 multiple calendars (or to an account) by grouping them under a
1751 single caldav directory in the calendar tree.  org-mac-iCal used
1752 to assumes there is only one ics file created per caldav
1753 directory, so while it *creates* all of the needed merged ics
1754 files, it only copies one of them to ~/Library/Calendar before
1755 importing the contents into the diary.
1757 Thanks to Doug Hellmann for a patch to fix this.
1759 *** New module /org-learn.el/ in the contrib directory
1761 The file implements the learning algorithm described at
1762 http://supermemo.com/english/ol/sm5.htm, which is a system for reading
1763 material according to "spaced repetition".  See
1764 http://en.wikipedia.org/wiki/Spaced_repetition for more details.
1766 Thanks to John Wiegley for this contribution.
1768 *** New contributed package /org-git-link.el/
1770 /org-git-link.el/ defines two new link types. The =git= link type
1771 is meant to be used in the typical scenario and mimics the =file=
1772 link syntax as closely as possible.  The =gitbare= link type
1773 exists mostly for debugging reasons, but also allows e.g.
1774 linking to files in a bare git repository for the experts.
1776 Thanks to Raimar Finken for this contribution.
1778 *** /org-annotation-helper.el/ and /org-browser-url.e./ have been removed
1779 Please switch to /org-protocol.el/, into which contains the same
1780 functionality in a more general framework.
1781 *** The contributed /org-export-freemind/ package has been removed.
1782 Org now contains a new freemind exporter, /org-freemind.el/.
1784 ** Org-babel Changes
1785 - Clojure is supported [Thanks to Joel Boehland]
1786 - Perl is supported
1787 - Ruby and Python now respond to the :file header argument
1788 - Added :results_switches header argument for passing switches
1789   through to raw src blocks
1790 - Preserve indentation in source blocks on export and tangle
1791 - Possible to evaluate noweb reference on tangling or code block
1792   evaluation
1793 - Allowing multiple noweb references on a single line
1794 - Cleaned up the passing of parameter values from Org-babel to
1795   language specific functions
1797 * Version 6.32
1798  :PROPERTIES:
1799  :CUSTOM_ID: v6.32
1800  :END:
1802 ** Rewrite of org-mobile.org, for MobileOrg 1.0 (build 20)
1804 MobileOrg is currently under review at the iPhone App Store.  You
1805 will need Org-mode version 6.32 to interact with it.
1807 ** Added support for habit consistency tracking
1808     
1809 /org-habit.el/ contains new code to track habits.  Please
1810 configure the variable org-modules to activate it.  When active,
1811 habits (a special TODO entry) will be displayed in the agenda
1812 together with a "consistency graph".  Habit tracking is described
1813 in a new [[http://orgmode.org/manual/Tracking-your-habits.html][manual section]].
1815 Thanks to John Wiegley for this contribution.
1816     
1817 ** New context-aware tag auto-exclusion 
1819 After writing a function relating to location and context
1820 information, you will be able to press =/ RET= in the agenda to
1821 exclude tasks that cannot be done in the current context. 
1822 For details, see the information about filtering in the manual.
1824 Thanks to John Wiegley for a patch to this effect.
1826 ** New clock resolving tools
1828 When clocking into a new task while no clock is running, Org now
1829 checks for orphaned CLOCK lines and offers to repair these before
1830 starting the clock.  You can also configure this feature to check
1831 for idle time and prompt you to subtract that time from the
1832 running timer.
1833     
1834 See the new [[http://orgmode.org/manual/Resolving-idle-time.html][manual section]] for more details.
1835     
1836 Thanks to John Wiegley for a patch to this effect.
1838 ** Mutually exclusive tag groups can now have a name in the tags interface
1840 The customize interface allows to optionally add a string to the
1841 beginning or end of such a group.
1842     
1843 Thanks to James TD Smith for a patch to this effect.
1845 ** Agenda Search view: Search for substrings
1846     
1847 The default in search view (/C-c a s/)is now that the search
1848 expression is searched for as a /substring/, i.e. the different
1849 words must occur in direct sequence, and it may be only part of
1850 a word.  If you want to look for a number of separate keywords
1851 with Boolean logic, all words must be preceded by =+= or =-=.
1853 This was, more-or-less, requested by John Wiegley.
1855 ** Make space and backspace scroll the show window in the agenda
1857 Pressing SPC again after using it to show an agenda item in
1858 another window will make the entire subtree visible, and show
1859 scroll it.  Backspace and DEL will scroll back.
1861 This was a request by Eric Fraga.
1862     
1863 ** File tags are now offered for completion during a tag prompts
1865 Requested by Matt Lundin.
1867 ** Make `- SPC' an agenda filter that selects entries without any tags
1868     
1869 Request by John Wiegley.
1871 ** Better way to edit multi-line macro definitions
1873 The editing tool key =C-c '= now also edits =#+MACRO=
1874 definitions, including multiline macros.
1876 ** Restructured Manual
1878 The manual has been slightly reorganized.  The archiving stuff,
1879 which was - somewhat obscurely - hidden in the /Document
1880 Structure/ chapter, has been moved into the new chapter
1881 /Capture-Refile-Archive/.  Also, there is a new chapter /Markup/
1882 which contains both the markup rules (moved there from the Export
1883 chapter) and the documentation for embedded LaTeX.
1885 ** Improved figure placement in LaTeX and HTML export
1886     
1887 Text can now be wrapped around figures.  See the manual for
1888 details.
1890 ** Allow date to be shifted into the future if time given is earlier than now
1891     
1892 By setting
1894 :     (setq org-read-date-prefer-future 'time)
1896 you indicate to Org that, if you only give a time at the
1897 date/time prompt, and if this time is earlier then the current
1898 time, then the date of tomorrow will be assumed to be valid for
1899 this event.  A similar mechanism was already in place for dates,
1900 but now you can make it work for times as well.
1902 ** Collected changes in org-babel
1903 - Source blocks can now reference source-blocks in other files
1904   using =filepath:srcname= syntax.
1905 - Inline code blocks like =src_python{2+2}= are now exported
1906 - Remote source block calls using the =#+lob: srcname(arg=val)=
1907   syntax can now be exported.
1908 - When =:file= is supplied with an =R= block, graphics are
1909   automatically sent to file and linked from the org buffer, thus
1910   appearing on export.  The image format is obtained from the
1911   filename extension.  Possible values are =.png, .jpg, .jpeg,
1912   .tiff, .bmp, .pdf, .ps, .postscript=, defaulting to =png=.
1913 - Results can be returned as parseable code using =:results code=,
1914   and as pretty-printed code using =:results pp= (emacs-lisp,
1915   python, ruby).  Thanks to Benny Andresen for the idea and patch
1916   for emacs-lisp.
1917 - When =:file filename= is supplied, =:exports file= is unnecessary
1918 - Header args are taken from org-file-properties in addition to
1919   properties active in the subtree.
1920 - =:noweb= header argument now expands noweb references before
1921   source-block evaluation.
1922 - Tangling honours the new org variable
1923   org-src-preserve-indentation, so that correct code is output for
1924   a language like python that depends on indentation.
1926 ** Changes in org-exp-blocks.el
1927 - Interblocks export has been simplified.
1928 - Support for R code (=begin_R= blocks and inline =\R{}=) has been
1929   removed.  Please use org-babel instead.
1931 * Version 6.31
1932  :PROPERTIES:
1933  :CUSTOM_ID: v6.31
1934  :END:
1936 ** Org-babel is now part of the Org distribution
1938 Org-babel provides the ability to execute source code in many
1939 different languages within org-mode documents.  The results of
1940 code execution -- text, tables and graphics -- can be integrated
1941 into Org-mode documents and can be automatically updated during
1942 publishing.  Since Org-babel allows execution of arbitrary code,
1943 the range of tasks that can be addressed from within an Org mode
1944 file becomes very large.  Examples of ways in which Org-babel
1945 might be used include
1947 - Documenting a task that involves some programming so that it is
1948   automatically repeatable
1949 - Creating dynamic (executable) reports that respond to changes
1950   in the underlying data (Reproducible Research)
1951 - Exportation of code contained in an Org-mode document into
1952   regular source code files (Literate Programming)
1954 Additionally, Org-babel provides a programming environment within
1955 Org files, in which data can be transmitted between parameterised
1956 source code blocks in different languages, as well as between
1957 source code blocks and Org-mode tables.
1959 A simple API is defined so that users can add support for new
1960 "languages" (broadly construed).  Languages currently supported
1961 are:
1963 - asymptote
1964 - css
1965 - ditaa
1966 - dot
1967 - emacs-lisp
1968 - gnuplot
1969 - haskell
1970 - ocaml
1971 - python
1972 - R
1973 - ruby
1974 - sass
1975 - sh
1976 - sql
1978 Org-babel was designed and implemented Eric Schulte with continued
1979 significant help on both accounts from Dan Davison.
1981 ** MobileOrg support
1983 Richard Morelands iPhone/iPod Touch program [[http://mobileorg.ncogni.to/][MobileOrg]] can view
1984 Org files, mark entries as DONE, flag entries for later
1985 attention, and capture new entries on the road.  Org-mode has now
1986 support to produce a staging area where MobileOrg can download
1987 its files, and to integrate changes done on the phone in a half
1988 automatic, half interactive way.  See the new appendix B in the
1989 manual for more information.
1992 ** Indented lines starting with "#+ " are treated as comments
1994 To allow comments in plain lists without breaking the list
1995 structure, you can now have indented comment lines that start
1996 with "#+ ".
1998 ** New STARTUP keyword `showeverything'
1999     
2000 This will make even drawer contents visible upon startup.
2001 Requested by Jeff Kowalczyk.
2003 ** New contributed package org-invoice.el
2005 This package collects clocking information for billing
2006 customers.
2008 Thanks to Peter Jones for this contribution.
2010 ** Encrypting subtrees
2012 /org-crypt.el/ by John Wiegley and Peter Jones allows encryption
2013 of individual subtrees in Org-mode outlines.  Thanks to John and
2014 Peter for this contribution.
2016 ** Agenda: Support for including a link in the category string
2017     
2018 The category (as specified by an #+CATEGORY line or CATEGORY
2019 property can contain a bracket link.  While this sort-of worked
2020 in the past, it now is officially supported and should cause no
2021 problems in agenda display or update.  The link can be followed
2022 by clicking on it, or with =C-c C-o 0=.
2024 This was a request by Peter Westlake.
2026 * Version 6.30
2027  :PROPERTIES:
2028  :CUSTOM_ID: v6.30
2029  :END:
2031 ** Inconsistent changes
2033 *** Agenda now uses =f= and =b= to move through time
2035 Up to now, the Org-mode agenda used the cursor keys =left= and
2036 =right= to switch the agenda view forward an backward through
2037 time.  However, many people found this confusing, and others
2038 wanted to be able to do cursor motion in the agenda, for example
2039 to select text.  Therefore, after an extensive discussion on
2040 =emacs-orgmode@gnu.org=, it was decided to use the =b= and 
2041 =f= keys instead, and to let the cursor keys do cursor motion
2042 again.
2044 *** Agenda follow mode is now on the =F= key
2046 This was necessary to free up the =f= key, see above.
2048 ** Details
2050 *** Maintenance
2052 **** New command to submit a bug report
2054 There is now a special command =M-x org-submit-bug-report=.  This
2055 command will create a mail buffer with lots of useful details.
2056 In particular, it contains complete version information for Emacs
2057 and Org-mode.  It will also (if you agree to it) contain all
2058 non-standard settings of org-mode and outline-mode related
2059 variables.  Even if you do not sent your emails from within
2060 Emacs, please still use this command to generate the information
2061 and then copy it into your mail program.
2063 The command will not generate and include a =*Backtrace*= buffer,
2064 please do this yourself if you have hit an error.  For more
2065 information, see the [[http://orgmode.org/manual/Feedback.html#Feedback][feedback section]] of the manual.
2067 **** New contributed package org-track.el
2069 This package allows to keep up-to-date with current Org
2070 development, using only Emacs on-board means.  So if you don't
2071 want or cannot use =git=, but still want to run the latest and
2072 hottest Org-mode, this is for you.
2074 Thanks to Sebastian Rose for this contribution.
2076 *** Agenda
2078 **** Agenda now uses =f= and =b= to move through time
2080 Up to now, the Org-mode agenda used the cursor keys =left= and
2081 =right= to switch the agenda view forward an backward through
2082 time.  However, many people found this confusing, and others
2083 wanted to be able to do cursor motion in the agenda, for example
2084 to select text.  Therefore, after an extensive discussion on
2085 =emacs-orgmode@gnu.org=, it was decided to use the =b= and 
2086 =f= keys instead, and to let the cursor keys do cursor motion
2087 again.
2089 **** Agenda follow mode is now on the =F= key
2091 This was necessary to free up the =f= key, see above.
2093 **** The agenda can be put into a dedicated frame
2095 When the variable =org-agenda-window-setup= has the value
2096 =other-frame=, then the new frame created to show the agenda
2097 will now have the window marked as /dedicated/.  As a
2098 consequence, exiting the agenda while the agenda is the only
2099 window on the frame will kill that frame.
2101 This was a request by Henry Atting.
2103 **** New mode to show some entry body text in the agenda
2105 There is now a new agenda sub-mode called
2106 =org-agenda-entry-text-mode=.  It is toggled with the =E= key.
2107 When active, all entries in the agenda will be accompanied by a
2108 few lines from the outline entry.  The amount of text can be
2109 customized with the variable =org-agenda-entry-text-maxlines=.
2111 This was a request by Anthony Fairchild, Manish, and others.
2113 **** Improve following links from the agenda
2114     
2115 =C-c C-o= in the agenda will now offer all links in the headline
2116 and text of an entry.  If there is only a single link, it will be
2117 followed immediately.
2119 **** Avoid some duplicate entries
2121 There is a new variable that can be used to avoid some duplicate
2122 agenda entries: =org-agenda-skip-scheduled-if-deadline-is-shown=
2123 If that is set, it avoids that an entry shows up in the agenda for
2124 today for both a scheduling and a deadline entry.  See the
2125 docstring of the variables for more details.
2127 This partially addresses a request by Samuel Wales. 
2129 **** Mark the running clock in the agenda.
2131 If the entry currently being clocked is present in the agenda, it
2132 will be highlighted with the face =org-agenda-clocking=.
2134 This was a request by Rainer Stengele.
2137 *** Export
2139 **** Allow LaTeX export to use the listings package
2141 The LaTeX =listings= package can now be used for formatting
2142 fontified source code in many programming languages.  For more
2143 information, see
2144 http://thread.gmane.org/gmane.emacs.orgmode/16269 and
2145 http://orgmode.org/worg/org-faq.php#fontified_source_code_w_latex
2147 Thanks to Eric Schulte for this patch.
2149 **** Remove table rows that only contain width and alignment markers
2150     
2151 The width and alignment in table columns can be set with a cookie
2152 like "<10>" or "<r>" or "<r10>".  In order to keep Org from
2153 exporting such lines, the first column of a line should contain
2154 only "/".  However, for convenience, there is now a special case:
2155 If the entire row contains only such markers, the line will
2156 automatically be discarded during export, even is the first
2157 column is not "/".
2159 **** Allow Macro calls to span several lines.
2161 Macro calls may now span several lines, to write several
2162 arguments in a cleaner way.  The result of a macro call can also
2163 span several lines, by inserting the string "\n" (backslash
2164 followed by n) into the value in the macro definition.
2166 These were requests by Stefan Vollmar.
2168 *** Misc
2170 **** Quick access to all links in an entry
2172 If =C-c C-o= is called while the cursor is in a headline, but not
2173 directly on a link, then all links in the entry will be offered
2174 in a small menu.  If there is only a single link, it will be
2175 followed without a prompt.
2177 **** Visibility Cycling: Allow to show all empty lines after a headline
2178     
2179 =org-cycle-separator-lines= can now be set to a negative value,
2180 to indicate that, if the number of empty lines before a visible
2181 entry is greater than the specified number, then *all* empty
2182 lines should be shown.
2184 This was a request by "PT" whatever this means.
2186 **** Allow language names to replace some strange major mode names
2188 Sometimes a language uses a major mode which can't be guessed
2189 from it's name.  There is now a new variable =org-src-lang-modes=
2190 which can be used to map language names to major modes when this
2191 is the case.  This is used when editing a source-code 
2192 block, or when exporting fontified source-code with htmlize.
2194 Thanks to Eric Schulte for a patch to this effect.
2196 **** iswitchb support for many completion prompts
2197     
2198 This is enabled using =org-completion-use-iswitchb=, and follows
2199 the same model of usage as for ido users.
2201 Thanks to John Wiegley for a patch to this effect.
2203 **** New commands to set the effort property of an entry
2205 There is now a special command, =C-c C-x e= to set the =Effort=
2206 property of an entry.  From the agenda you can even use =e=.
2207 If you have set up allowed values for the =Effort= property, then
2208 using a prefix argument will directly select the nth allowed
2209 value.  For example, in the agenda, =5 e= will select the 5th
2210 allowed value.
2212 This was a request by Michael Gilbert
2214 **** Edit src works now better with killing buffer
2216 Thanks to Dan Davison for a patch to this effect
2219 * Older changes
2221   For older Changes, see [[file:Changes_old.org]]
2225 * COMMENT Setup
2227 #+STARTUP: showstars
2229 #+TITLE: Org-mode list of user-visible changes
2230 #+AUTHOR:  Carsten Dominik
2231 #+EMAIL:  carsten at orgmode dot org
2232 #+OPTIONS: H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:{} *:t TeX:t LaTeX:nil f:nil
2233 #+INFOJS_OPT: view:info toc:1 path:org-info.js tdepth:2 ftoc:t
2234 #+LINK_UP: index.html
2235 #+LINK_HOME: http://orgmode.org