Emacs 23 introduces `shift-selection-mode', and even turns it on by
default. Therefore, it is fair to assume that users of Emacs 23 will
expect to be able to select a region by holding down shift will moving
the cursor. This conflicts with the use of shifted cursor keys in
Org-mode for other purposes, in particular to "change the item under
the cursor", like it is done for time stamps, item bullet types, TODO
keywords and priorities.
This commit tries to support `shift-selection-mode' as much as possible,
while retaining these valuable commands keys for Org-mode. The
following things are changed:
1. The range of contexts where Org's commands do act is reduced.
- S-up and S-down no longer jump to the previous and next plain list
item - you can use the paragraph commands C-up and C-down for this
quite well.
- S-left and S-right only change the bullet type of a plain list
item when the cursor is *exactly* on the bullet, not just anywhere
in the item line.
2. When a S-cursor key is used outside a special context, a region is
started or extended.
3. When a region has already been started, it will be continue to
extend even if the S-cursor keys move the cursor into a special
context.
4. If you want S-cursor selection to work in headlines as well, you
can set the variable `org-support-shift-select' to
`even-in-headlines'. Then you need to rely on `C-c C-t' to set
TODO keywords, and on `C-c ,' to set priorities.
If you want everything to behave the way it was, set
`org-support-shift-select' to nil.
The manual now used better the org.css file. It also reacts to single
key presses like "n" and "p", and has a top-level table of contents
that is always active and visible.
1. Export hangs during LaTeX export. That was a bug using an empty
regular expression that was defined only locally in Org files, but
not in the buffer used by the LaTeX exporter.
2. Underscores in links can get special treatment by the LaTeX
exporter. Now the link is protected from this.
Now we have separate ChangeLog files in the lisp and doc
directories. Also, in the lisp directory, all the old changes
have moved into ChangeLog.01.
These changes will help me to simplify synchronization with Emacs.
The #+STARTUP etc lines that define settings on a per-file
basis can now be collected in a separate file and included
with a line:
#+SETUPFILE: "/path/to/setup.org"
This has been a frequent request in the past, now it is
finally possible.
Because entering property value wit the command `org-set-property'
offers completion on existing values of the property,
space was treated as a completion command in the minibuffer.
This is now fixed. Also, completion is now case-insensitive here.
The *orgtbl-default-fmt* is a hook for orgtbl transformations to
ensure a destination-sensible default for columns not present in
a fmt plist. The leaving the value at nil changes no existing
behavior.
Signed-off-by: Jason Riedy <jason@acm.org>
Conflicts:
ChangeLog
Passing explicit nils to leave out start and end strings feels
natural. Also, transforming org-mode tables into other org-mode
tables can use :tstart and :tend to specify directives, so I
don't want to change the default splice setting for those.
Signed-off-by: Jason Riedy <jason@acm.org>
Conflicts:
ChangeLog
When there was a lone weekday abbreviation like "fri"
is was interpreted relative to the default date. I think
now this special case should always be relative to today.
This was a bug report from David Kritzberg.
These are implemented as part of plain lists, so a leading
"-" or "+" is still needed. Maybe this is not the most pretty
implementation, but it works without rewriting the quite
complex list formatting code. So all the list formatting
continues to work just fine. The description tag
is highlighted in bold, so still easy to spot.
The HTML exporter does export these already, the LaTeX
exporter still needs to be adapted.
Clock-related markers and agenda markers used to get lost
when editing a file using cut and paste. Now some cut
and past operations move the markers with them. In particular,
structure editing like moving subtrees up and down.
Also, when exiting a remember buffer with a running clock, the clock
can now be moved along with the entry to the target location.
There was a bug in the escaping code, and also the function doing the
escaping was not called for the headline, which can also be the source
of the summary.
There is an old XEmacs bug with indentation in the presence of
an extent with an invisibility property. We work around this now
by turning the invisibility property off, temporarily.
You can slice a single table full of calculations in different ways
into separate destinations. Or you can format the table differently.
There are many fun and exciting possible uses.
A fancier implementation would scan the document *once* for the
set of destinations. That could help implement another function
to update all destinations from all sources.
Refactor orgtbl-to-generic; explicitly separate heading from body.
Support last-line specializers.
Allow functions for some orgtbl parameters.
Add a :remove-nil-lines parameter to orgtbl-to-generic.
There was a problem that complex fields need a pair of parenthesis
around them. For example, if one field is "a a" and another field
is "a+b", multiplication of the two gave "a^3+b" instead of "a^3+a^2 b".
Now variable replacement puts extra parenthesis around values.