Merge branch 'changes'
This commit is contained in:
commit
4df0e1b915
|
@ -6,11 +6,406 @@
|
||||||
|
|
||||||
#+STARTUP: indent hidestars
|
#+STARTUP: indent hidestars
|
||||||
|
|
||||||
|
* Version 7.01
|
||||||
|
:PROPERTIES:
|
||||||
|
:VISIBILITY: content
|
||||||
|
:CUSTOM_ID: v7.01
|
||||||
|
:END:
|
||||||
|
|
||||||
|
** Incompatible Changes
|
||||||
|
|
||||||
|
*** Emacs 21 support has been dropped
|
||||||
|
|
||||||
|
Do not use Org mode 7.xx with Emacs 21, use an older version, for
|
||||||
|
example [[http://orgmode.org/org-6.36c.zip][version 6.36c]].
|
||||||
|
|
||||||
|
*** XEmacs support requires the XEmacs development version
|
||||||
|
|
||||||
|
To use Org mode 7.xx with XEmacs, you need to run the developer
|
||||||
|
version of XEmacs. I was about to drop XEmacs support entirely,
|
||||||
|
but Michael Sperber stepped in and made changes to XEmacs that
|
||||||
|
made it easier to keep the support. Thanks to Michael for this
|
||||||
|
last-minute save.
|
||||||
|
|
||||||
|
*** Customizable variable changes for DocBook exporter
|
||||||
|
|
||||||
|
To make it more flexible for users to provide DocBook exporter
|
||||||
|
related commands, we start to use format-spec to format the
|
||||||
|
commands in this release. If you use DocBook exporter and use it
|
||||||
|
to export Org files to PDF and/or FO format, the settings of the
|
||||||
|
following two customizable variables need to be changed:
|
||||||
|
|
||||||
|
1. =org-export-docbook-xslt-proc-command=
|
||||||
|
2. =org-export-docbook-xsl-fo-proc-command=
|
||||||
|
|
||||||
|
Instead of using =%s= in the format control string for all
|
||||||
|
arguments, now we use /three/ different format spec characters:
|
||||||
|
|
||||||
|
1. =%i=: input file argument
|
||||||
|
2. =%o=: output file argument
|
||||||
|
3. =%s=: XSLT stylesheet argument
|
||||||
|
|
||||||
|
For example, if you set =org-export-docbook-xslt-proc-command= to
|
||||||
|
|
||||||
|
: java com.icl.saxon.StyleSheet -o %s %s /path/to/docbook.xsl
|
||||||
|
|
||||||
|
in the past, now you need to change it to
|
||||||
|
|
||||||
|
: java com.icl.saxon.StyleSheet -o %o %i %s
|
||||||
|
|
||||||
|
and set a new customizable variable called
|
||||||
|
=org-export-docbook-xslt-stylesheet= to =/path/to/docbook.xsl=.
|
||||||
|
|
||||||
|
Please check the documentation of these two variables for more
|
||||||
|
details and other examples.
|
||||||
|
|
||||||
|
Along with the introduction of variable
|
||||||
|
=org-export-docbook-xslt-stylesheet=, we also added a new
|
||||||
|
in-buffer setting called =#+XSLT:=. You can use this setting to
|
||||||
|
specify the XSLT stylesheet that you want to use on a per-file
|
||||||
|
basis. This setting overrides
|
||||||
|
=org-export-docbook-xslt-stylesheet=.
|
||||||
|
|
||||||
|
*** Org-babel configuration changes
|
||||||
|
:PROPERTIES:
|
||||||
|
:CUSTOM_ID: ob-configuration-changes
|
||||||
|
:END:
|
||||||
|
|
||||||
|
Babel took the integration into Org-mode as an opportunity to do
|
||||||
|
some much needed house cleaning. Most importantly we have
|
||||||
|
simplified the enabling of language support, and cleared out
|
||||||
|
unnecessary configuration variables -- which is great unless you
|
||||||
|
already have a working configuration under the old model.
|
||||||
|
|
||||||
|
The most important changes regard the /location/ and /enabling/
|
||||||
|
of Babel (both core functionality and language specific support).
|
||||||
|
|
||||||
|
- Babel :: Babel is now part of the core of Org-mode, so it is
|
||||||
|
now loaded along with the rest of Org-mode. That means that
|
||||||
|
there is /no configuration/ required to enable the main
|
||||||
|
Babel functionality. For current users, this means that
|
||||||
|
statements like
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(require 'org-babel)
|
||||||
|
#+end_src
|
||||||
|
or
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(require 'org-babel-init)
|
||||||
|
#+end_src
|
||||||
|
that may by lying around in your configuration must now be
|
||||||
|
removed.
|
||||||
|
- load path :: Babel (including all language specific files --
|
||||||
|
aside from those which are located in the =contrib/=
|
||||||
|
directory for reasons of licencing) now lives in the base of
|
||||||
|
the Org-mode lisp directory, so /no additional directories/
|
||||||
|
need to be added to your load path to use babel. For Babel
|
||||||
|
users this means that statements adding babel-specific
|
||||||
|
directories to your load-path should now be removed from
|
||||||
|
your config.
|
||||||
|
- language support :: It is no longer necessary to require
|
||||||
|
language specific support on a language-by-language basis.
|
||||||
|
Specific language support should now be managed through the
|
||||||
|
`org-babel-load-languages' variable. This variable can be
|
||||||
|
customized using the Emacs customization interface, or
|
||||||
|
through the addition of something like the following to your
|
||||||
|
configuration (note: any language not mentioned will /not/
|
||||||
|
be enabled, aside from =emacs-lisp= which is enabled by
|
||||||
|
default)
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(org-babel-do-load-languages
|
||||||
|
'org-babel-load-languages
|
||||||
|
'((R . t)
|
||||||
|
(ditaa . t)
|
||||||
|
(dot . t)
|
||||||
|
(emacs-lisp . t)
|
||||||
|
(gnuplot . t)
|
||||||
|
(haskell . nil)
|
||||||
|
(ocaml . nil)
|
||||||
|
(python . t)
|
||||||
|
(ruby . t)
|
||||||
|
(screen . nil)
|
||||||
|
(sh . t)
|
||||||
|
(sql . nil)
|
||||||
|
(sqlite . t)))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
Despite this change it is still possible to add
|
||||||
|
language support through the use of =require=
|
||||||
|
statements, however to conform to Emacs file-name
|
||||||
|
regulations all Babel language files have changed
|
||||||
|
prefix from =org-babel-*= to =ob-*=, so the require
|
||||||
|
lines must also change e.g.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(require 'org-babel-R)
|
||||||
|
#+end_src
|
||||||
|
should be changed to
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(require 'ob-R)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
We have eliminated the =org-babel-tangle-w-comments= variable as
|
||||||
|
well as the two main internal lists of languages, namely
|
||||||
|
- =org-babel-interpreters= and
|
||||||
|
- =org-babel-tangle-langs=
|
||||||
|
|
||||||
|
so any config lines which mention those variables, can/should be
|
||||||
|
stripped out in their entirety. This includes any calls to the
|
||||||
|
=org-babel-add-interpreter= function, whose sole purpose was to
|
||||||
|
add languages to the =org-babel-interpreters= variable.
|
||||||
|
|
||||||
|
With those calls stripped out, we may still in some cases want to
|
||||||
|
associate a file name extension with certain languages, for
|
||||||
|
example we want all of our emacs-lisp files to end in a =.el=, we
|
||||||
|
can do this will the =org-babel-tangle-lang-exts= variable. In
|
||||||
|
general you shouldn't need to touch this as it already has
|
||||||
|
defaults for most common languages, and if a language is not
|
||||||
|
present in org-babel-tangle-langs, then babel will just use the
|
||||||
|
language name, so for example a file of =c= code will have a =.c=
|
||||||
|
extension by default, shell-scripts (identified with =sh=) will
|
||||||
|
have a =.sh= extension etc...
|
||||||
|
|
||||||
|
The configuration of /shebang/ lines now lives in header
|
||||||
|
arguments. So the shebang for a single file can be set at the
|
||||||
|
code block level, e.g.
|
||||||
|
|
||||||
|
#+begin_src org
|
||||||
|
,#+begin_src clojure :shebang #!/usr/bin/env clj
|
||||||
|
, (println "with a shebang line, I can be run as a script!")
|
||||||
|
,#+end_src
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
Note that whenever a file is tangled which includes a /shebang/
|
||||||
|
line, Babel will make the file executable, so there is good
|
||||||
|
reason to only add /shebangs/ at the source-code block level.
|
||||||
|
However if you're sure that you want all of your code in some
|
||||||
|
language (say shell scripts) to tangle out with shebang lines,
|
||||||
|
then you can customize the default header arguments for that
|
||||||
|
language, e.g.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
;; ensure this variable is defined defined
|
||||||
|
(unless (boundp 'org-babel-default-header-args:sh)
|
||||||
|
(setq org-babel-default-header-args:sh '()))
|
||||||
|
|
||||||
|
;; add a default shebang header argument
|
||||||
|
(add-to-list 'org-babel-default-header-args:sh
|
||||||
|
'(:shebang . "#!/bin/bash"))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
The final important change included in this release is the
|
||||||
|
addition of new security measures into Babel. These measures are
|
||||||
|
in place to protect users from the accidental or uninformed
|
||||||
|
execution of code. Along these lines /every/ execution of a code
|
||||||
|
block will now require an explicit confirmation from the user.
|
||||||
|
These confirmations can be stifled through customization of the
|
||||||
|
`org-confirm-babel-evaluate' variable, e.g.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
;; I don't want to be prompted on every code block evaluation
|
||||||
|
(setq org-confirm-babel-evaluate nil)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
In addition, it is now possible to remove code block evaluation
|
||||||
|
form the =C-c C-c= keybinding. This can be done by setting the
|
||||||
|
=org-babel-no-eval-on-ctrl-c-ctrl-c= variable to a non-nil value,
|
||||||
|
e.g.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
;; I don't want to execute code blocks with C-c C-c
|
||||||
|
(setq org-babel-no-eval-on-ctrl-c-ctrl-c t)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
An additional keybinding has been added for code block
|
||||||
|
evaluation, namely =C-c C-v e=.
|
||||||
|
|
||||||
|
Whew! that seems like a lot of effort for a /simplification/ of
|
||||||
|
configuration.
|
||||||
|
|
||||||
|
*** New keys for TODO sparse trees
|
||||||
|
|
||||||
|
The key =C-c C-v= is now reserved for Org Babel action. TODO
|
||||||
|
sparse trees can still be made with =C-c / t= (all not-done
|
||||||
|
states) and =C-c / T= (specific states).
|
||||||
|
|
||||||
|
*** Customizable variable changes for DocBook exporter
|
||||||
|
|
||||||
|
To make it more flexible for users to provide DocBook exporter
|
||||||
|
related commands, we start to use format-spec to format the
|
||||||
|
commands in this release. If you use DocBook exporter and use it
|
||||||
|
to export Org files to PDF and/or FO format, the settings of the
|
||||||
|
following two customizable variables need to be changed:
|
||||||
|
|
||||||
|
1. =org-export-docbook-xslt-proc-command=
|
||||||
|
2. =org-export-docbook-xsl-fo-proc-command=
|
||||||
|
|
||||||
|
Instead of using =%s= in the format control string for all
|
||||||
|
arguments, now we use /three/ different format spec characters:
|
||||||
|
|
||||||
|
1. =%i=: input file argument
|
||||||
|
2. =%o=: output file argument
|
||||||
|
3. =%s=: XSLT stylesheet argument
|
||||||
|
|
||||||
|
For example, if you set =org-export-docbook-xslt-proc-command= to
|
||||||
|
|
||||||
|
: java com.icl.saxon.StyleSheet -o %s %s /path/to/docbook.xsl
|
||||||
|
|
||||||
|
in the past, now you need to change it to
|
||||||
|
|
||||||
|
: java com.icl.saxon.StyleSheet -o %o %i %s
|
||||||
|
|
||||||
|
and set a new customizable variable called
|
||||||
|
=org-export-docbook-xslt-stylesheet= to =/path/to/docbook.xsl=.
|
||||||
|
|
||||||
|
Please check the documentation of these two variables for more
|
||||||
|
details and other examples.
|
||||||
|
|
||||||
|
Along with the introduction of variable
|
||||||
|
=org-export-docbook-xslt-stylesheet=, we also added a new
|
||||||
|
in-buffer setting called =#+XSLT:=. You can use this setting to
|
||||||
|
specify the XSLT stylesheet that you want to use on a per-file
|
||||||
|
basis. This setting overrides
|
||||||
|
=org-export-docbook-xslt-stylesheet=.
|
||||||
|
|
||||||
|
** Details
|
||||||
|
|
||||||
|
*** Org Babel is now part of the Org core
|
||||||
|
See [[#ob-configuration-changes][Org-babel configuration changes]] for instructions on how to
|
||||||
|
update your babel configuration.
|
||||||
|
|
||||||
|
The most significant result of this change is that Babel now has
|
||||||
|
documentation! It is part of Org-mode's documentation, see
|
||||||
|
Chapter 14 [[http://orgmode.org/manual/Working-with-source-code.html#Working-with-source-code][Working With Source Code]]. The Babel keybindings
|
||||||
|
are now listed in the refcard, and can be viewed from any
|
||||||
|
Org-mode buffer by pressing =C-c C-v h=. In addition this
|
||||||
|
integration has included a number of bug fixes, and a significant
|
||||||
|
amount of internal code cleanup.
|
||||||
|
|
||||||
|
*** Help system for finding entities
|
||||||
|
|
||||||
|
The new command =M-x org-entities-help= creates a structured
|
||||||
|
buffer that lists all entities available in Org. Thanks to Ulf
|
||||||
|
Stegeman for adding the necessary structure to the internal
|
||||||
|
entity list.
|
||||||
|
|
||||||
|
*** Implement pretty display of entities, sub-, and superscripts.
|
||||||
|
|
||||||
|
The command =C-c C-x \= toggles the display of Org's special
|
||||||
|
entities like =\alpha= as pretty unicode characters. Also, sub
|
||||||
|
and superscripts are displayed in a pretty way. If you want to
|
||||||
|
exclude sub- and superscripts, see the variable
|
||||||
|
=org-pretty-entities-include-sub-superscripts=.
|
||||||
|
|
||||||
|
Thanks to Eric Schulte and Ulf Stegeman for making this possible.
|
||||||
|
|
||||||
|
*** The default capture system for Org mode is now called org-capture
|
||||||
|
|
||||||
|
This replaces the earlier system org-remember. The manual only
|
||||||
|
describes org-capture, but for people who prefer to continue to
|
||||||
|
use org-remember, we make available
|
||||||
|
[[http://orgmode.org/org-remember.pdf][a static copy of theformer chapter about remember]].
|
||||||
|
|
||||||
|
The new system has a better implementation and more
|
||||||
|
possibilities. See [[http://thread.gmane.org/gmane.emacs.orgmode/26441/focus%3D26441][Carsten's announcement]] for more details.
|
||||||
|
|
||||||
|
To switch over to the new system:
|
||||||
|
|
||||||
|
1. Run
|
||||||
|
|
||||||
|
: M-x org-capture-import-remember-templates RET
|
||||||
|
|
||||||
|
to get a translated version of your remember templates into the
|
||||||
|
new variable =org-capture-templates=. This will "mostly" work,
|
||||||
|
but maybe not for all cases. At least it will give you a good
|
||||||
|
place to modify your templates. After running this command,
|
||||||
|
enter the customize buffer for this variable with
|
||||||
|
|
||||||
|
: M-x customize-variable RET org-capture-templates RET
|
||||||
|
|
||||||
|
and convince yourself that everything is OK. Then save the
|
||||||
|
customization.
|
||||||
|
|
||||||
|
2. Bind the command =org-capture= to a key, similar to what you did
|
||||||
|
with org-remember:
|
||||||
|
|
||||||
|
: (define-key global-map "\C-cc" 'org-capture)
|
||||||
|
|
||||||
|
If your fingers prefer =C-c r=, you can also use this key once
|
||||||
|
you have decided to move over completely to the new
|
||||||
|
implementation. During a test time, there is nothing wrong
|
||||||
|
with using both system in parallel.
|
||||||
|
|
||||||
|
*** New module to create Gantt charts
|
||||||
|
|
||||||
|
Christian Egli's /org-taskjuggler.el/ module is now part of Org.
|
||||||
|
He also wrote a [[http://orgmode.org/worg/org-tutorials/org-taskjuggler.php][tutorial]] for it.
|
||||||
|
|
||||||
|
*** Refile targets can now be cached
|
||||||
|
|
||||||
|
You can turn on caching of refile targets by setting the variable
|
||||||
|
=org-refile-use-cache=. This should speed up refiling if you
|
||||||
|
have many eligible targets in many files. If you need to update
|
||||||
|
the cache because Org misses a newly created entry or still
|
||||||
|
offers a deleted one, press =C-0 C-c C-w=.
|
||||||
|
|
||||||
|
*** Enhanced functionality of the clock resolver
|
||||||
|
|
||||||
|
Here are the new options for the clock resolver:
|
||||||
|
|
||||||
|
: i/q/C-g Ignore this question; the same as keeping all the idle time.
|
||||||
|
:
|
||||||
|
: k/K Keep X minutes of the idle time (default is all). If this
|
||||||
|
: amount is less than the default, you will be clocked out
|
||||||
|
: that many minutes after the time that idling began, and then
|
||||||
|
: clocked back in at the present time.
|
||||||
|
: g/G Indicate that you \"got back\" X minutes ago. This is quite
|
||||||
|
: different from 'k': it clocks you out from the beginning of
|
||||||
|
: the idle period and clock you back in X minutes ago.
|
||||||
|
: s/S Subtract the idle time from the current clock. This is the
|
||||||
|
: same as keeping 0 minutes.
|
||||||
|
: C Cancel the open timer altogether. It will be as though you
|
||||||
|
: never clocked in.
|
||||||
|
: j/J Jump to the current clock, to make manual adjustments.
|
||||||
|
|
||||||
|
For all these options, using uppercase makes your final state
|
||||||
|
to be CLOCKED OUT. Thanks to John Wiegley for making these
|
||||||
|
changes.
|
||||||
|
|
||||||
|
*** A property value of "nil" now means to unset a property
|
||||||
|
|
||||||
|
This can be useful in particular with property inheritance, if
|
||||||
|
some upper level has the property, and some grandchild of it
|
||||||
|
would like to have the default settings (i.e. not overruled by a
|
||||||
|
property) back.
|
||||||
|
|
||||||
|
Thanks to Robert Goldman and Bernt Hansen for pushing this
|
||||||
|
change.
|
||||||
|
|
||||||
|
*** The problem with comment syntax has finally been fixed
|
||||||
|
|
||||||
|
Thanks to Leo who has been on a year-long quest to get this fixed
|
||||||
|
and finally found the right way to do it.
|
||||||
|
|
||||||
|
*** Make it possible to protect hidden subtrees from being killed by =C-k=
|
||||||
|
|
||||||
|
This was a request by Scott Otterson.
|
||||||
|
See the new variable =org-ctrl-k-protect-subtree=.
|
||||||
|
|
||||||
|
*** New module org-mac-link-grabber.el
|
||||||
|
|
||||||
|
This module allows to grab links to all kinds of applications on
|
||||||
|
a mac. It is available in the contrib directory.
|
||||||
|
|
||||||
|
Thanks to Anthony Lander for this contribution.
|
||||||
|
|
||||||
|
*** LaTeX export: Implement table* environment for wide tables
|
||||||
|
|
||||||
|
Thanks to Chris Gray for a patch to this effect.
|
||||||
|
|
||||||
|
*** When cloning entries, remove or renew ID property
|
||||||
|
|
||||||
|
Thanks to David Maus for this change
|
||||||
|
|
||||||
* Version 6.36
|
* Version 6.36
|
||||||
|
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:VISIBILITY: content
|
|
||||||
:CUSTOM_ID: v6.36
|
:CUSTOM_ID: v6.36
|
||||||
:END:
|
:END:
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue