Commit Graph

1243 Commits

Author SHA1 Message Date
Carsten Dominik d3d2b3e835 Priorities: Allow specific faces for priority cookies
The variable org-priority-faces can now be used to set special faces
for different priority cookies.

Also, in the agenda, the default is now to fontify only the priority
cookie, not the entire task.  See the variable
`org-agenda-fontify-priorities'.
2009-03-03 12:44:53 +01:00
Carsten Dominik 23d9c79654 HTML export: Add validation link to page
An exported document can now have a link for XHTML validation
included.

Patch by Sebastian Rose
2009-03-03 10:57:33 +01:00
Carsten Dominik e688c534a8 HTML export: Find bibliography and move to to after the last section.
Before, the bibliography will exist inside the outline structure, as
part of the last section.  This commit adds code to find it, cut it
out, and move it to a better location.
2009-03-03 10:46:55 +01:00
Carsten Dominik a68eb4b1e6 HTML export: Add <div id="content"> around everything in <body> 2009-03-03 10:26:31 +01:00
Carsten Dominik a5b2a0c759 Documentation: Improve and collect documentation about the match view 2009-03-03 10:20:23 +01:00
Carsten Dominik f33787b7a8 Archiving: Fix new bug with archiving when heading is not given.
Reported by Ed Hirgelt.
2009-03-02 21:52:00 +01:00
Carsten Dominik 721dae7dd5 Bugfix: Better indentation for new clock/logbook drawers 2009-03-02 06:41:29 +01:00
Peter Jones 8b38105040 Conditionally delete windows in agenda quit
Before this patch, org-agenda-quit would delete the agenda window if
the frame had more than one window.  This patch changes that behavior
slightly so that if org-agenda-window-setup is 'current-window, the
agenda window won't be deleted.
2009-03-01 17:18:35 +01:00
Carsten Dominik c8fdb461d0 Docs: minor improvements 2009-03-01 16:48:16 +01:00
Carsten Dominik bb7db5f96f New file: Taru Karttunen's org-exp-bibtex.el 2009-03-01 16:47:51 +01:00
Carsten Dominik 89e0d3608d Tags: Fix implementation of line breaks in fast tag interface
Patch by Christopher Suckling
2009-03-01 13:56:48 +01:00
Carsten Dominik 2b4788ae9d ASCII export: Fix issues with new link export 2009-02-28 21:56:55 +01:00
Carsten Dominik 7c92da7ba8 Archive: Fix bug when archiving to top-level
Org erroneously filed top-level headings as level 2, because it
assumes that if should file below some heading.  However, if there is
no heading to file under, this should be turned off.

Patch by igrekster.
2009-02-27 16:48:43 +01:00
Carsten Dominik 8cdc0cc961 Agenda views: Simplify setting up inclusion of entry text 2009-02-27 10:37:38 +01:00
Carsten Dominik 75ba44f877 Docs: Improve documentation for BBDB anniversaries 2009-02-27 08:27:44 +01:00
Carsten Dominik 06c40a9ad7 Lists: No automatic empty lines if empty lines terminate the list
When inserting new list entries, sometime empty lines will be
inserted automatically.  This, however, makes only sense if empty
lines do not terminate the list, as configured by
`org-empty-line-terminates-plain-lists'.

This commit makes sure that, if
`org-empty-line-terminates-plain-lists' is set, automatic empty lines
will never be inserted.
2009-02-26 22:30:23 +01:00
Carsten Dominik b4455950e3 Publishing: Fix bug with finding project for a file.
Ian Barton writes:

>
> This has been happening for a while. I suspect it's something in my
> settings, but I can't work out what. When I publish a single file, I
> get the following error:
>
> Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
>  file-truename(nil)
> org-publish-file("/home/ian/nfs/firewall/Documents/org/holiday/holiday.org")
>  org-publish-current-file(nil)
>  call-interactively(org-publish-current-file)
>  org-export(nil)
>  call-interactively(org-export)
>
> Publishing a whole project works fine.

This was caused by an attempt of the publishing code to always find
the top enclosing project.  While this makes sense when publishing a
project, for a single file we want just the smallest enclosing
project.  This commit makes sure that this difference is treated
correctly.
2009-02-26 22:18:16 +01:00
Carsten Dominik c91bca9d1c Push version number to 6.23trans 2009-02-26 21:32:04 +01:00
Carsten Dominik f4d1d56046 Agenda export: Implement PDF export
The agenda can ow also be written to a pdf file.  This requires the
ps2pdf utility to be present on the system.
2009-02-26 21:19:11 +01:00
Carsten Dominik aadcc50e00 Agenda export: Allow entry text to be inlined for export.
A new hook is introduced, `org-agenda-before-write-hook'.
A function that ca be added to this hook is
`org-agenda-add-entry-text'.   When this is done, each of the entries
shown in the agenda is amended with text that in the original buffer
is part of the entry text below the headline.  Drawers are not copied,
and also the line with scheduling and deadline information is not
used.  Finally, the number of ines to be added is imited by
`org-agenda-add-entry-text-maxlines'.
2009-02-26 20:56:26 +01:00
Carsten Dominik 095c7c584c Minor fix 2009-02-26 18:41:04 +01:00
Carsten Dominik 0a5c3f892d Add a docstring to `org-run-like-in-org-mode' 2009-02-26 15:52:45 +01:00
Carsten Dominik 7455d5aaf8 Improve some docstrings 2009-02-26 13:39:30 +01:00
Carsten Dominik fe03884553 ASCII export: Better link export.
Links with description not create a note before the next headline that
contains the link.  In the text, the description will be shown.

The new variable `org-export-ascii-links-to-notes' can be configured
to turn off this behavior, then the reference will be inserted inline
in the text.  If the line becomes too long because of this, it will
be wrapped.
2009-02-26 12:59:10 +01:00
Carsten Dominik 3dba115548 Agenda: New option to stop searching headline for a time.
If the headline contains a time-of-day in one format or another, it
will be used to sort the entry into the time sequence of items for a
day.  Some people have time stamps in the headline that refer to the
creation time or so, and then this produces an unwanted side effect.
If this is the case for your, use the new option
`org-agenda-search-headline-for-time' to turn off searching the
headline for a time.
2009-02-25 13:01:28 +01:00
Carsten Dominik f44631e70f Agenda: Make prefix argument to `org-agenda' optional.
This is to make it easier to call this function from lisp.

Patch by Eric Schulte.
2009-02-25 12:51:00 +01:00
Carsten Dominik 3f8ed8803b Maintenance: Keep compiler happy 2009-02-25 12:46:15 +01:00
Carsten Dominik 8b0d614702 Undo: Cluster self-insert characters for undo
Undo will now remove up to 20 characters typed consecutively, just
like Emacs normally does.  We need a special implementation for this
because Org has its own self-insert command.

The code for doing this is a patch by Martin Pohlack.
2009-02-25 12:46:09 +01:00
Carsten Dominik df0a5baf5d Reload: Keyboard and menu access to the reload command
`org-reload' is now accessible with `C-c C-x r', and through the menu.
2009-02-25 12:41:04 +01:00
Carsten Dominik 21221dd564 Export: Fix bug with ending colon example
There was a bug that would not close a colon example properly if the
line after the example would not have the required space after the
colon.
2009-02-24 05:23:55 +01:00
Carsten Dominik 3c06ae6000 Export: Implement macro replacement during export
A line: #+MARCO: name    replacement text

can be referenced by {{{name}}}.  As special cases, {{{title}}} will
reference #+TITLE, and similar with similar lines.
2009-02-23 14:49:29 +01:00
Carsten Dominik 2512bc972d LaTeX Export: Better error message for emphasis alist conflicts 2009-02-22 20:51:19 +01:00
Carsten Dominik a93c5d2e2e Bugfix: Avoid raising buffer-modified flag during LaTeX export
This had, as usually, to do with changing text properties.

Report by Russel Adams.
2009-02-22 20:50:12 +01:00
Carsten Dominik 6c8beec225 Release 6.23b 2009-02-22 18:37:24 +01:00
Carsten Dominik 405186a16a Editing: Allow separate special settings for C-a and C-e
Alan E. Davis writes:

>  I have found the behavior of the cursor at the beginning of
>  the line to be clumsy, and troublesome.  I cannot easily set
>  a region, for example.
>
>  However, the special setting of ctrl-e is extremely useful.
>
>  A single variable controls these two variables, in a unified
>  way.  This variable also has two aliases.  The aliases are
>  not recognized by the functions that are affected by these
>  variables in org.el: org-beginning-of-line, and
>  org-end-of-line.  As far as I can see, there seems no reason
>  to keep these two aliased variables as references to a
>  single unified variable, insofar as the underlying code is
>  concerned.
>
>  Because, at least for me, the behaviors have sufficiently
>  distinct behaviors, I propose these should be separated.

This is a reasonable request, and this commit implements it.
To have separate values, set org-special-ctrl-a/e to a cons
cell with the setting for C-a in the car and the setting for
C-e in the cdr.
2009-02-22 15:08:33 +01:00
Carsten Dominik 4138be27ba Bugfix: Avoid unnecessary empty line inserted by changing TODO entry.
This commit fixes the bug discussed in:

   http://thread.gmane.org/gmane.emacs.orgmode/11106

The reason for the empty line being inserted is subtle:

The function `org-add-planning-info' is used to add and remove planning
info time stamps (deadline, scheduled, closed) from the second line in
an entry.  Usually, the function is called to add something, with an
optional argument to also remove something.  In doing so, it assumes
that the second line must be there, and if it is not there, it creates
it.

Now, sometimes `org-add-planning-info' is called only to remove a time
stamp.  In this particular case it was to remove the CLOSED time
stamp.  This happens when the state is changed from a DONE or nil
state to a not-done state.  The idea behind this is that maybe to
entry was marked earlier as DONE, but the user has changed his mind,
so the timestamp recording when it was finished should be removed.

So in this case, an empty line was created, assuming that there would
be something to add - only nothing was added.

This commit arranges for checking if there is something to add before
creating an empty line.
2009-02-22 13:44:01 +01:00
Carsten Dominik 9989e5f030 orgstruct++-mode: Make more visible in docs, parse item body
orgstruct++-mode is an enhanced version of orgstruct mode that
also imports all indentation and paragraph settings into the major
mode.  Furthermore, it now allows to use M-RET and M-S-RET in items
after the first line.  The latter change was a request by Austin
Frank.
2009-02-22 12:42:20 +01:00
Carsten Dominik 482216f300 Release 6.23a 2009-02-21 15:18:39 +01:00
Carsten Dominik 9c33f379af Docs: Better documentation of the tags used during publishing 2009-02-21 14:03:33 +01:00
Carsten Dominik 825efa1ef9 Better way to load uncompiled code for backtrace production
The new command `org-reload' allows to reload all Org lisp files.
By default it will load compiled files if these are available.  If
not, or when called with a C-u prefix argument, uncompiled code will
be loaded.  This is good for producing a meaningful backtrace when an
error occurs.
2009-02-21 08:09:47 +01:00
Carsten Dominik 4be7e8e9b3 HTML export: Also wrap tags into classes.
Like TODO keywords before, now also tags each get their own CSS class,
given by the tag itself.  Invalid characters in tags are all replaced
by "_" to make sure the resulting HTML remains valid.

Two new variables can be used to add a prefix to the class names for
TODO keywords and tags.
2009-02-21 08:02:46 +01:00
Carsten Dominik 8bd874cd30 LaTeX export: More tuning for the options import
Russel Adams writes:

>  That worked, the only point I may make would be to exclude
>  LATEX_HEADER and TEXT from that list.
>
>  I'm also trying to resolve an ordering issue. I want to have a
>  header/footer line declared in the header, but I want to use these
>  orgTITLE macros in that. Currently LATEX_HEADER and the class go first
>  before the definitions, and TEXT occurs inside the document. If the
>  macro isn't defined before the header/footer, you get an error.
>
>  I may have to manually code those, which defeats the purpose of using
>  the org options.

OK, I removed those two fields, and I switched things around so that
the new macros are defined earlier.
2009-02-20 23:04:29 +01:00
Carsten Dominik 081eabb3f6 Agenda: Fix bug with state change matching for log display
Reported by Matt Lundin.
2009-02-20 22:55:50 +01:00
Carsten Dominik 01a061c2fa Lists: Make promotion and demotion work on regions. 2009-02-20 17:20:46 +01:00
Carsten Dominik 82f2fca21e Release 6.23 2009-02-20 11:16:03 +01:00
Carsten Dominik 40a38050fd Agenda: Fix remote editing of priorities from agenda.
There was a bug when the entry to be edited was invisible.
2009-02-20 09:30:31 +01:00
Carsten Dominik be7d0c4a6c Column view: Fix bug when editing TODO field.
Since we now have org-use-fast-todo-selection set by default,
there is no reason for special treatment of the prefix argument
anymore.

Reported by Wanrong Lin.
2009-02-20 09:12:10 +01:00
Carsten Dominik 3c121459b4 Completion: Allow spaces in some fields
Org has a number of places where the value read by completing-read may
contains spaces.  For these occasions, the space character needs to be
a normal character.

The recent support for ido.el invalidated these special cases because
ido has its own way of dealing with spaces.

This commit now makes sure that ido is off for the critical cases
where completion must allow spaces.
2009-02-20 08:12:47 +01:00
Carsten Dominik 933d88ef3e LaTeX Export: Define TeX macros for in-buffer settings
This commit implements the possibility to import the in-buffer export
options as TeX macros, like \orgTITLE, \orgAUTHOR etc.

Requested by Russel Adams.
2009-02-20 07:55:05 +01:00
Carsten Dominik 4db9120c23 Refile: Turn off partial-completion-mode.
Partial completion mode did mess up completion of refile targets.  So
we just force it off.
2009-02-20 06:55:31 +01:00
Carsten Dominik 7a5311543d Documentation improvements 2009-02-19 17:11:54 +01:00
Carsten Dominik 08788604e7 Agenda: Fix bug with dimming blocked tasks when subtree is hidden.
Reported by Paul Mead.
2009-02-19 15:47:26 +01:00
Carsten Dominik 4a6bfd6552 Minor bug fix in experimental code. 2009-02-19 11:13:15 +01:00
Carsten Dominik 06056781fe Agenda: Do not make tasks invisible if they are blocked by checkboxes.
John Rakestraw writes:

>  I noticed today that, at least in my set-up, setting these variables
>  this way:
>
>    (setq org-agenda-dim-blocked-tasks 'invisible)
>    (setq org-enforce-todo-checkbox-dependencies t)
>
>  means that a TODO task with checkboxes doesn't get included in the
>  agenda. However, the sub-tasks in the checkbox list don't get included,
>  either. So the TODO task with checkboxes doesn't show up in the agenda.
>
>  It makes sense given the way the variables work. However, I wonder if
>  it makes more sense for a task with checklisted sub-tasks to be
>  included in the agenda so that the tasks and sub-tasks don't get lost.
>  Or, to put the point slightly differently, I think that a TODO that's
>  blocked because it has dependent TODOs might be treated differently in
>  agenda listings than a TODO that's blocked because it has dependent
>  checklist items.
>
>  Not a big deal to me because I don't typically use checkboxes for TODO
>  items. But I thought I'd raise it for consideration.

I agree with this view and the commit implements exactly this.
2009-02-19 11:12:52 +01:00
Carsten Dominik fa54d8104a Agenda: Fix problems with follow mode. 2009-02-19 10:40:08 +01:00
Carsten Dominik 6ab17902aa Bugfix: Protect line indentation in orgstruct-mode
(org-indent-line-function): Make sure this works even if there is not
`org-drawer-regexp' defined.  This can happen when orgstruct-mode is
used in a non-org buffer.
2009-02-19 09:46:34 +01:00
Carsten Dominik 8b31b5e798 Tags: Implement newlines for fast tag interface
This commit makes it possible to force new lines and even empty lines
in the fast tag selection interface, either by splitting tags
definition into several lines, or by inserting "\n" into the tags
list, or by inserting (:newline) into the tags alist.

This is largely a patch from Christopher Suckling
2009-02-19 09:43:51 +01:00
Carsten Dominik e6e3d97797 Checkboxes: Enforce sequential processing with ORDERED property
When the ORDERED property of an entry is set, checkboxes must be
completed in sequence.
2009-02-19 09:13:08 +01:00
Carsten Dominik c0cc9181db Added org-R.el to contrib/lisp/ 2009-02-18 17:23:47 +01:00
Carsten Dominik a55dd5a9e6 Docs: Mention more variables in the manual.
The variables `org-agenda-todo-ignore-deadlines' and
`org-agenda-todo-ignore-with-date, and
`org-agenda-tags-todo-honor-ignore-options' are now all mentioned in
the docs.
2009-02-18 15:51:51 +01:00
Carsten Dominik 113bec9eeb Completion: Fix some issues with ido 2009-02-18 08:10:17 +01:00
Carsten Dominik 18a07a276d Deadlines: Deal with "incorrect" positioning of warning period 2009-02-18 01:13:11 +01:00
Carsten Dominik 950334edb3 Completion: Turn off ido.el for completing outline paths in steps. 2009-02-17 22:36:48 +01:00
Carsten Dominik 538a536d0d Quoting: Make =http:a.b.com= work as a quoted string. 2009-02-17 22:23:50 +01:00
Carsten Dominik b013bea1c9 Agenda: Prefix args can specify context to `org-agenda-show'.
The commands org-agenda-show can now be used to show varying degrees of
context when called with a prefix argument. `0 SPC', `1 SPC', ... `4
SPC'.

The new command `org-agenda-cycle-show' shows different amounts of
context when called several times in succession.
2009-02-17 21:46:41 +01:00
Carsten Dominik 8e8ad424b6 Export: Add forgotten space after section number. 2009-02-17 21:26:08 +01:00
Carsten Dominik bc74aecd8d Agenda: Improve window fitting while making a series of blocks
The agenda window was fitted after each partial command, which makes
no sense.  Now it is only fitted after the final block.
2009-02-16 19:13:20 +01:00
Carsten Dominik b44e3d05ee Agenda: Fix sorting by TODO state in block agendas
Christopher Suckling reports that todo state sorting doe not work in
block agenda.  The reason for this that the variable
`org-todo-keywords-for-agenda' which is supposed to be a lost of all
keywords of all buffers contributing to the agenda, is not correct
during the construction of a block agenda.

Therefore, this commit instructs the todo state comparison function to
refer back to the original buffer for a list of todo keywords.
2009-02-16 19:01:52 +01:00
Carsten Dominik a6c8fac4f9 Agenda: Make sure all entries have a todo-state property
This is needed for sorting, and I had forgotten to add this property
to tag scans, and to sexps.

Reported by Christopher Suckling.
2009-02-16 07:52:41 +01:00
Carsten Dominik 0dae1ba349 Agenda: Make overriding header one of the default option variables 2009-02-16 05:37:58 +01:00
Carsten Dominik 626e47ce7c Docs: Improve consistency of checkbox command description. 2009-02-15 22:34:19 +01:00
Carsten Dominik 43f9c50665 Bugfix: Make prefix arg with C-a, C-n work correctly.
The special implementation did not look at prefix arguments.

Reported by Ken Harris.
2009-02-15 22:07:59 +01:00
Carsten Dominik 6f2a247611 Bugfix: Make cycling work in plain list item at end of file
Reported by Wanrong Lin.
2009-02-15 21:32:54 +01:00
Carsten Dominik c595453eb6 Indentation: Improvements around drawers
The :END: line is now indented like the line starting the drawer.  And
the first line after the drawer is now indented like the :END: line.

The latter problem was pointed out by Christopher Suckling.
2009-02-15 20:15:13 +01:00
Carsten Dominik 1a488f9136 Lists: Fix renumbering lists where the first item is not a numbered bullet 2009-02-15 19:59:11 +01:00
Carsten Dominik fdf8ffc4f1 Lists: Avoid unnecessary buffer-modified
When fixing bullet types, bullets are now only replaced if they would
change, so if nothing changes, the buffer will remain unmodified.
2009-02-15 19:50:56 +01:00
Carsten Dominik ae5b0f5c44 Checkboxes: Make C-u C-c C-c C-c set the box to "[-]"
Requested by Chris Randle.
2009-02-15 10:00:44 +01:00
Carsten Dominik cac8788f35 Clocking: Capture clock in LOGBOOK drawer, abandon CLOCK drawer
Clock lines are now by default captured into the drawer LOGBOOK.  This
means that, if state notes are also captured into a drawer, they will
be mixed with notes.
2009-02-15 09:22:14 +01:00
Carsten Dominik b40671f31b Agenda: Fix incomplete docstring of `org-agenda'.
Reported by Jonathan Moore.
2009-02-13 23:21:10 +01:00
Carsten Dominik 245f589c57 Fix some compiler problems 2009-02-13 23:04:23 +01:00
Carsten Dominik 1f1574c9a2 Hooks: New system to tap into context-sensitive keys
Org-mode has many context-sensitive keys.  A new hook system now
allows add-ons to add functionality to these keys for contexts that
are special for the add-on.

For example, if an add-on wants to use C-c C-c in a special context,
if must add a function to `org-ctrl-c-ctrl-c-hook' that will check for
the context and run its command when the context is present.
2009-02-13 22:59:37 +01:00
Carsten Dominik 9524d5ea96 Publish: Allow to select all files, even without extension
Selecting files for publishing was strictly based on extension.

Richard Klinda provided this patch to allow the symbol `any' as an
indicator to actually take all files in a directory.
2009-02-13 17:54:19 +01:00
Carsten Dominik 2ba674092e Make autoloading of org-plot.el more stable 2009-02-13 17:34:34 +01:00
Carsten Dominik 5283252c86 Sync changes from downstream Emacs
Glenn Morris has fixed typos.
2009-02-13 09:11:22 +01:00
Carsten Dominik 220be33da3 Doc fixes 2009-02-13 07:51:12 +01:00
Carsten Dominik 492a5b5ea9 Version number: Push to 6.22trans 2009-02-13 07:45:42 +01:00
Carsten Dominik 304cb36530 Reverting: also handle id locations.
Saving all buffers will now also safe the id locations.
Reverting all buffers will now also reload the id locations.
2009-02-13 07:45:36 +01:00
Carsten Dominik edd2aab5ee Document the special meaning of LEVEL when `org-odd-levels-only' is used. 2009-02-12 21:22:26 +01:00
Carsten Dominik f939957dc1 State Notes: Allow capturing state notes in a drawer, LOGBOOK
Wanrong Lin writes:

     2. Can we put all of those state change history logging messages
        into a drawer like "STATE-HIST" (when the drawer is defined in
        org-drawers), so it is less intrusive in the file?

Yes we can.  This commit provides this functionality.  It introduces a
new drawer, LOGBOOK.  When the variable
`org-log-state-notes-into-drawer' is set, state change time stamps and
notes will go into this drawer, or another one specified by that
variable.
2009-02-12 18:29:56 +01:00
Carsten Dominik a625558f07 State Notes: Fix indentation when adding to end
When the variable org-log-states-order-reversed was nil, so that notes
would be appended to the list of notes, the indentation of the item
was wrong.  This commit fixes the problem.
2009-02-12 18:29:56 +01:00
Carsten Dominik d8780dbbee HTML export: Allow special colors for each TODO keyword
Wanrong Lin writes:

    Right now in the HTML export the TODO keywords have either
    class="todo", or class="done". That loses all the face properties
    in the original TODO keywords. I think the TODO keywords faces are
    important visual aids to differentiate different types of TODO
    items, so I just wonder whether it is possible to keep the faces
    in the HTML.

This makes sense.  This commit adds, to each TODO keyword, an
additional class named after the keyword.  For example:

  <span class="todo WAITING">WAITING</span>

So each todo keyword gets class "todo" or "done" depending on which
general type it is.  And in addition it gets itself as class.

So go to your CSS file and configure like this:

.todo { font-weight:bold; }
.done { font-weight:bold; }
.TODO { color:red; }
.WAITING { color:orange; }
.DONE { color:green; }

Thanks to Sebastian Rose for the multiple-classes trick.
2009-02-12 18:29:06 +01:00
Carsten Dominik c32de18ae0 Allow previous state to be shown in state change log notes.
Wanrong Lin writes:

     My TODO sequence is set up as following:

     (setq org-todo-keywords '((sequence "TODO(t)" "STARTED(s!)"
     "WAITING(w@/!)"      "MAYBE(m/!)" "DELEGATED(g@/!)"
     "DEFERRED(d!/!)" "HOLD(h!/!)" "|" "DONE(x)"      "CANCELED(c)")))

     The state change logging is great, but I wonder whether we can
     further improve it:

     1. Can we also include the original state in the log message?
     i.e.: instead of having      - State "DEFERRED"   [2009-02-11 Wed 11:38]
     we can have
     - State "DEFERRED"  from "HOLD" [2009-02-11 Wed 11:38]

     The message will be clearer, and useful even when somebody edited
     the TODO keyword in place without using the "org-todo" command
     (in that case, simply looking at all the "destination states" in
     the log message does not give us the right information).

This strikes me like a good idea, so I have implemented it with this
commit.
2009-02-12 09:48:07 +01:00
Carsten Dominik 651d2e7a14 Bugfix: Allow org-clock-into-drawer to be 1. 2009-02-11 16:17:38 +01:00
Carsten Dominik f993ecd67d Daniel Clemente writes:
Consider a file with 2 lines:

     ------------------
     **** heading

     ------------------

      Place the cursor at line 2 (where you can type). Then use C-c C-x C-i
      to start a clock.

      You have now 3 lines:

     ------------------
     **** heading
         CLOCK: [2009-02-07 sb 01:06]

     ------------------

      However, the cursor is still placed at line 2, like before. I think
      it would be more useful if it were moved to line 3 so that you can
      start writing right away, just as before.  This saves you the C-n
      needed to move again to a blank line.

This commit implements exactly this request.
2009-02-11 15:01:13 +01:00
Carsten Dominik 621bafc1b5 Clocking: Make insertion of the CLOCK drawer safer
Daniel Clemente noticed that the clock drawer, when it is created for
the second clock entry, will swallow a plain list item after it,
because it thinks it might be a clock note.

This commit makes this function check for indentation.  If the plain
list item is indented less than the last clock line, it will be
assumed that it does not belong to the clocking line, and the drawer
will not swallow the item.
2009-02-11 14:41:22 +01:00
Carsten Dominik c9e266b0ec HTML Export: Add CSS classes for section numbers 2009-02-11 10:25:06 +01:00
Carsten Dominik bc5b0056e7 Release 6.22b 2009-02-10 20:21:33 +01:00
Carsten Dominik a599bca287 Agenda: Add new skip conditions to choose menu. 2009-02-10 20:21:33 +01:00
Carsten Dominik ce42b4be86 Agenda: New command to revert all Org-mode buffers from files 2009-02-10 20:21:27 +01:00
Carsten Dominik e592c77846 Release 6.22a 2009-02-10 10:11:23 +01:00
Carsten Dominik 8d213584ff Release 6.22 2009-02-10 08:23:35 +01:00
Carsten Dominik b00df4025e Label `org-tab-follows-link' as deprecated. 2009-02-09 12:46:31 +01:00
Carsten Dominik 2d795f8ae0 TODO: Make in-buffer keyword setting more general
Now any line like

  #+XYZ_TODO:

will be assumed to define some kind of TODO chain.  If the handlers in
`org-todo-setup-filter-hook' do not do anything with this sequence, it
will be treated as `sequence'.
2009-02-09 12:36:06 +01:00
Carsten Dominik aeba61e640 Implement org-return-follows-link directly in `org-return'.
This used to depend on the mouse map, but I no longer think this is a
good idea.  So the function org-return now directly handles this case.
2009-02-09 12:15:19 +01:00
Carsten Dominik 56692965b7 Add Tom Breton's org-choose.el as a contributed package 2009-02-08 13:57:37 +01:00
Bernt Hansen 3015cd1fb7 Fix grammar in description of org-refile-targets 2009-02-07 16:47:25 +01:00
Carsten Dominik 8be2c90ead Export: Fix problem with => in clock lines triggering verbatim text.
Reported by Daniel Clemente.
2009-02-07 12:33:37 +01:00
Carsten Dominik 521281bf3d Export: Count levels relative when doing subtree export.
William Henney writes:

    Consider a structure like this:

    * first
    ** second
    *** third
    **** fourth

    Currently, if I export the "third" sub-tree to html (via "C-c @
    C-x C-e h"), then "third" becomes an <h1> heading, but "fourth"
    becomes an <h5> heading. I would rather it were <h2>, i.e. that
    all heading levels be relative to the root of the sub-tree. Is
    there any way to achieve this?

This was not possible so far, but this commit measures the first
headline of the subtree and applies an offset to all level values.
2009-02-06 18:15:42 +01:00
Carsten Dominik 6eed51c304 Export: Fix regular expression for extracting drawers
Reported by Rainer Stengele.
2009-02-06 17:14:34 +01:00
Carsten Dominik 5f68200625 Tables: Allow sorting inactive time stamps.
Hsui-Khuern Tang writes:

   I have a table where one column consists of inactive dates, such as
   this:

     | Date             | OK? |
     |------------------+-----|
     | [2009-01-30 Fri] | x   |
     | [2009-01-27 Tue] | x   |
     | [2009-01-28 Wed] | x   |

   I can't sort the table by that column.  If I change the dates to
   active, then sorting (by time) works fine.  Is this behavior
   intentional?

Yes, intentional, because the same routine also does sorting of
entries and should prefer active time stamps.  However, I realize that
we can still look for an inactive time stamp when no active one can be
found.   This is what this commit implements.
2009-02-06 16:50:35 +01:00
Carsten Dominik 717c7b22f5 Column View: Fix bug with capturing column view. 2009-02-06 15:01:36 +01:00
Carsten Dominik c1ecf88788 Improve documentation of `org-directory'. 2009-02-06 15:01:02 +01:00
Carsten Dominik 125a10319c ATTACH: Fix error in file commentary. 2009-02-06 15:00:27 +01:00
Carsten Dominik 477141d43c Export: Fix bug with exporting text before first heading
Skipping text before the first heading was broken, now it works again.
2009-02-06 12:44:52 +01:00
Carsten Dominik 44ed0394c4 Export: Stop LaTeX fragment processing in protected examples
LaTeX fragments like math environments were still matched inside
protected code examples.  Fixed now.
2009-02-06 08:24:18 +01:00
Carsten Dominik 5e9d37949b Export: Use color values in CSS for validation. 2009-02-04 23:54:46 +01:00
Carsten Dominik 723ac9ab57 Pullback: org-return-follows-link back to nil.
Setting this to t causes some issues which I need to think more
carefully about.
2009-02-04 23:48:36 +01:00
Carsten Dominik be9557bf44 Allow chaining sibling's scheduled time.
Patch by Andrew Hyatt

Andrew Hyatt writes:

    I like to schedule items I'm supposed to be working on, so I like
    when I complete a task that the next sibling task gets the
    schedule from the previous one.  This implements that kind of
    workflow with the org-depend contrib package.

    I've also added a few methods to org.el to make working with
    schedules & deadlines easier.
2009-02-04 15:37:58 +01:00
Carsten Dominik 4e973c6b82 Agenda: New skipping conditions timestamp and nottimestamp.
The org-agenda-skip-xxx-if functions can now also handle a `timestamp'
and a `nottimestamp' condition.
2009-02-04 15:19:21 +01:00
Carsten Dominik 93ec228f36 Push version number to 6.21trans 2009-02-03 00:06:22 +01:00
Carsten Dominik c81bdc7757 Fix typos. 2009-02-02 22:19:59 +01:00
Carsten Dominik 0b424cb238 Release 6.21b 2009-02-02 21:42:20 +01:00
Carsten Dominik 0edabb9408 TODO statistics: Fix bug with counting and hook calling
When there were multiple cookies in a headline, the counting would be
double.  Also the hook got called always, even if no cookie was
present.
Fixed now.
2009-02-02 21:40:29 +01:00
Carsten Dominik 2fa17ebf74 Release 6.21a 2009-02-02 14:23:54 +01:00
Carsten Dominik c11a0b2de9 Dependencies: Make them work reliably even if variables are set too late.
Turns out a number of people set their variables too late so that
activating dependencies does not work correctly.  We now double-check
in the mode hook that everything is in order.....
2009-02-02 13:47:18 +01:00
Carsten Dominik 193fab0788 Release 6.21 2009-02-02 12:18:44 +01:00
Carsten Dominik 2d2359741a LaTeX export: Do not use "|" as verbatim delimiter
This causes problems in tables.

You have now two ways to make verbatim things.  Use ~xyz~ or =xyz=
depending on whether ~ or = might occur in the string......
2009-02-02 12:17:16 +01:00
Carsten Dominik a9618e4e45 Export: Fix XHTML validity problem with figure divs 2009-02-02 12:08:23 +01:00
Carsten Dominik 2949012f0f Change default values of some variables. 2009-02-01 23:49:03 +01:00
Carsten Dominik c1296074f2 Release 6.20i 2009-02-01 00:16:43 +01:00
Carsten Dominik bb95b83162 Agenda: Keep org-depend from setting its tag when only checking for blocking.
When org-depend.el is loaded, running the blocker hook will already
toggle a tag.  However, when dimming the agenda, we do not want that.

Reported by Dan Griswold.
2009-02-01 00:15:29 +01:00
Carsten Dominik febdb2df76 HTML Export: Use better id for the footnotes div.
The id for the footnotes div is now called "text-footnotes", not
"footnotes-text", to be more consistent with other divs used in
Org-mode.

Requested by Sebastian Rose.
2009-01-31 22:43:39 +01:00
Carsten Dominik 6af7bb72e6 LaTeX export: remove the a4paper option from the defaults.
a4paper is no longer a standard option for LaTeX classes

Requested by Hsiu-khuern and many others.
2009-01-31 22:42:13 +01:00
Carsten Dominik 7b061f4329 Maintenance: Include changes from downstream Emacs 2009-01-30 22:51:17 +01:00
Carsten Dominik 924110aecc Release 6.20h 2009-01-30 18:31:37 +01:00
Carsten Dominik dc6658d9ed Blocking: Make it possible that checkboxes block TODO state changes
See the documentation for details.
2009-01-30 18:31:31 +01:00
Carsten Dominik f99b00f61c Release 6.20g 2009-01-30 09:20:41 +01:00
Carsten Dominik 99221708a3 Agenda: Fix bug with calling `org-agenda-todo' in a non-interactive way. 2009-01-30 07:38:02 +01:00
Carsten Dominik bb3570eae9 Release 6.20f 2009-01-29 15:29:07 +01:00
Carsten Dominik 98e1c8dbc3 Checkboxes: Fix toggling of all checkboxes below a headline.
Using `C-c C-x C-b' in a headline now again toggles all checkboxes
below hat headline.  This feature got lost during a recent overhaul of
this function.

Reported by Chris Randle.
2009-01-29 15:28:12 +01:00
Carsten Dominik 7e4cbe36a1 Maintenance: Remove double definition of `org-export-with-special-strings'. 2009-01-29 14:43:31 +01:00
Carsten Dominik 11fa49dd21 Release 6.20e 2009-01-29 14:13:30 +01:00
Carsten Dominik 19bda1c361 Export: LaTeX fragment images are inlined again. 2009-01-29 14:12:51 +01:00
Carsten Dominik 317f08c69b Release 6.20d 2009-01-29 10:38:35 +01:00
Carsten Dominik c5a596bee7 Export: Do not remove drawers in protected examples.
Export used to remove drawers in examples.  This is fixed now.
2009-01-29 10:37:40 +01:00
Carsten Dominik e793fd8831 Dependencies: Key bindings and Menu entries
This commit adds a key (`C-c C-x o') to toggle the ORDERED property of
a tree.  And it adds menu entries for doing this, which also reflect
the current state of the tree.
2009-01-29 10:23:09 +01:00
Carsten Dominik 80514f743e Dependencies: Add completion support for ORDERED. 2009-01-28 17:22:59 +01:00
Carsten Dominik a79d36f2aa Statistics: Update more than one statistics cookie
When a line now contains several statistics cookies, all of them will
be updated.

Jari Aalto submitted a patch to this effect which I did end up not
using.  Thanks anyway!
2009-01-28 17:21:15 +01:00
Carsten Dominik 435ac059bf Release 6.20c 2009-01-28 14:35:50 +01:00
Carsten Dominik ef020f221e Bugfix: Ignore again scheduled tasks. 2009-01-28 14:35:07 +01:00
Carsten Dominik bc19e4df69 Release 6.20b 2009-01-28 14:04:56 +01:00
Carsten Dominik 10ea33b5bc Bugfix: Make sure TODO selection does not move point. 2009-01-28 14:03:45 +01:00
Carsten Dominik 16f7c4f384 Release 6.20a 2009-01-28 12:28:54 +01:00
Carsten Dominik bc7007b893 Checkboxes: New command to add and remove them easily from items
See documentation changes for details.
2009-01-28 12:28:21 +01:00
Carsten Dominik 6072bac5bb Compatibility: Fix new face for XEmacs. 2009-01-28 11:08:20 +01:00
Carsten Dominik b81f597de0 Release 6.20 2009-01-28 09:30:12 +01:00
Carsten Dominik a89bbe5cab Clocktables: Fix display of ISO week.
David Bremner writes:

    I have a clocktable that begins like this.

    #+BEGIN: clocktable :maxlevel 2 :block 2009-W05 :scope agenda-with-archives
    Clock summary at [2009-01-27 Tue 17:15], for week 2009-W04.

    [contents snipped]

    #+END:

    Whatever week I put in :block, it puts one less in the title.  It
    seems actually gather the clock data from the right week, but the
    title is wrong?  Or I misunderstand something as usual :-).

There was a problem wit the week starting date.
2009-01-28 09:24:51 +01:00
Carsten Dominik 5ce21d77df Bugfix: Make option completion work in indirect buffers
Reported by Shaun Johnson.
2009-01-28 09:11:21 +01:00
Carsten Dominik 3a2d9a7eb9 Maintenance: Remove invalid declaration. 2009-01-28 09:03:22 +01:00
Carsten Dominik 49e8ee37a8 Dependencies: Integrate John Wiegley's TODO dependency code.
See the documentation for details.
2009-01-28 09:02:37 +01:00
Carsten Dominik 78b4ca8cfc Release 6.19e 2009-01-27 11:44:49 +01:00
Carsten Dominik 452f7352f6 Maintenance: Cleanup and minor fixed. 2009-01-27 11:42:32 +01:00
Carsten Dominik 2860252c9e Minor fixes, and release 6.19d 2009-01-27 09:11:34 +01:00
Carsten Dominik c848dae4be Release 6.19c 2009-01-27 09:02:13 +01:00
Carsten Dominik f88f3bb89f Shift-selection: More tweaking. 2009-01-27 09:01:23 +01:00
Carsten Dominik 7a202e6100 Bugfix: Fix property-driven startup visibility
A user setting of

  (setq org-show-entry-below t)

could overrule a visibility property with value FOLDED.  This commit
fixes this by turning off the above setting for the context of setting
startup visibility.
2009-01-27 07:36:01 +01:00
Carsten Dominik f0899954a3 Shift-selection: More tweaking
I have changed my mind and turned off shift-selection support again by
default, because it causes confusing behavior, sometimes calling an Org
command and sometimes doing shift selection.  The default behavior is
now:

- in special contexts, execute Org commands

- outside special contexts, create an error that will point users to
  configure the variable `org-support-shift-select'.  Hopefully that
  will make them read the docstring and then decide for themselves
  what to do.
2009-01-27 07:24:23 +01:00
Carsten Dominik 773a3c624e Support for Shift Selection
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.
2009-01-26 16:23:44 +01:00
Carsten Dominik f31255c8f3 Maintenance: Remove unused variables. 2009-01-26 11:04:45 +01:00
Carsten Dominik ea446a6ff7 Release 6.19b 2009-01-26 08:22:14 +01:00
Carsten Dominik d438d616b7 Export: Fix timestamp processing
There were two bugs:

1. Timestamp processing did not honor the setting of
   `org-export-with-timestamps' in the text before the first
   headline.

2. When `org-export-with-timestamps' was nil, time stamps were removed
   even in tables.  I think this is incorrect, so in tables, time
   stamps are now never removed.
2009-01-26 07:36:01 +01:00
Carsten Dominik 2ccea84c96 Compatibility: Make new face compatible with XEmacs 2009-01-25 22:09:06 +01:00
Carsten Dominik 41db8545a8 Maintenance: Support `delete-selection-mode' also for `org-yank'.
Patch by Steven E. Harris
2009-01-25 18:36:56 +01:00
Carsten Dominik 5e965557b3 Release 6.19a 2009-01-25 16:08:16 +01:00
Carsten Dominik 928ac6a0a7 Fix copyright notice in org-bibtex.el 2009-01-25 16:07:44 +01:00
Carsten Dominik 866176e0ee Export: Don't interpret \par when it is protected 2009-01-25 14:17:59 +01:00
Carsten Dominik 41e51dfef4 Release 6.19 2009-01-25 13:41:09 +01:00
Carsten Dominik 3667772d15 Export: Interpret \par for HTML export.
"\par" will now be translated into "</p ><p >", so that this can be
used inside a footnote.
2009-01-25 13:31:37 +01:00
Carsten Dominik 4260aad09d Maintenance: Fix declarations and necessary require statements. 2009-01-25 13:07:23 +01:00
Carsten Dominik 2ad63638b5 Export: Remove extra space before colon examples. 2009-01-25 07:43:52 +01:00
Carsten Dominik 3fed83614e Agenda: A tags-todo search can now ignore timestamped items
The variables =org-agenda-todo-ignore-with-date=,
=org-agenda-todo-ignore-with-date=, and
=org-agenda-todo-ignore-with-date= make it possible to
exclude TODO entries which have this kind of planning info
associated with them.  This is most useful for people who
schedule everything, and who use the TODO list mainly to find
things that are not yet scheduled.  Thomas Morgan pointed out
that also the tags-todo search may serve exactly this
purpose, and that it might be good to have a way to make
these variables also apply to the tags-todo search.  I can
see than, but could not convince myself to make this the
default.  A new variable must be set to make this happen:
=org-agenda-tags-todo-honor-ignore-options=.
2009-01-25 07:39:26 +01:00
Carsten Dominik da11423d21 Export: Escape HTML characters in examples. 2009-01-24 16:41:34 +01:00
Carsten Dominik 0cc3cfd680 Maintenance: Fix copyright notice in org-rmail.el 2009-01-24 12:27:05 +01:00
Carsten Dominik 20dbb0c73f Footnotes: Fix some minor issues. 2009-01-24 12:25:36 +01:00
Carsten Dominik e793158bc8 Tables: Support for references to remote tables
Formulas can now refer to fields and regions in other tables, be it in
the same file or even in different files.

This also opens the door for more interesting R support, because
arbitrary tables in a file can now be accessed with appropriate
commands.

Finally, this commit also introduces a convenience for creating
references in tables.  For the purpose of references, it will always
be *assumed* that there is another hline at the end if each table.  So
for example in a table that has only a single hline, to separate
header from data, you can now access all of column two with
"@I$2..@II$2".
2009-01-24 10:51:21 +01:00
Carsten Dominik a167da89d1 Bugfix: Fix an incorrect face definition. 2009-01-22 10:24:09 +01:00
Carsten Dominik 7d05ba72c8 Clock: Independent face for clock overlay display.
William Henney writes:

     If a heading has tags, then that heading's time summary
     overlay (shown by C-c C-x C-d) is displayed using the
     org-tag face. This looks a bit strange. Is it intended? It
     is especially noticeable in my case, since I have my tags
     shown in a smaller font.

This is cause by the fact that we use the `secondary-selection' face
here which only highlights but inherits the rest from what is below.
The idea was that these clock times should have the same color as the
headline they belong to, but this idea is defeated when a line has tags
with a very different face.

This commit introduces a separate face for this purpose, so that users
can customize it.
2009-01-22 07:27:36 +01:00
Carsten Dominik 19351e35c2 Version number: pushed to 6.18trans 2009-01-21 17:59:42 +01:00
Carsten Dominik ae34f0beb3 Export: Include "<" in the options template.
`C-c C-e t' inserts a template with options.  Ian Barton reported that
this template was not complete, the timestamp switch "<" was missing.
2009-01-21 17:56:48 +01:00
Carsten Dominik ac2347589e Structure editing: Improved item/headline conversion
The conversion commands `C-c -' and `C-c *' are now better
    behaved and therefore more useful, I hope.

    If there is an active region, these commands will act on the
    region, otherwise on the current line.

    - C-c - :: This command turns headings or normal lines into
         items, or items into normal lines.  When there is a
         region, everything depends on the first line of the
         region:
         - if it is a item, turn all items in the region into
           normal lines.
         - if it is a headline, turn all headlines in the region
           into items.
         - if it is a normal line, turn all lines into items.
         - special case: if there is no active region and the
           current line is an item, cycle the bullet type of the
           current list.
    - C-c * :: This command turns items and normal lines into
         headings, or headings into normal lines.  When there is
         a region, everything depends on the first line of the
         region:
         - if it is a item, turn all items in the region into
           headlines.
         - if it is a headline, turn all headlines in the region
           into normal lines.
         - if it is a normal line, turn all lines into headlines.
2009-01-21 17:45:07 +01:00
Carsten Dominik e2371c542b Tables: Document use of C-c RET add hline and then move below it. 2009-01-21 13:14:07 +01:00
Carsten Dominik 5f814319eb Release 6.18c 2009-01-21 10:34:03 +01:00
Carsten Dominik d164a22da6 Release 6.18a 2009-01-21 10:24:46 +01:00
Carsten Dominik c5338b69d7 LaTeX export: Properly protect entire LaTeX environments
LaTeX environments should be left as they are, fully protected.
There was a regular expression error in the code doing this.
2009-01-21 10:23:49 +01:00
Bernt Hansen f7e39a5ca7 org-remember: Ignore gnus link if not on a message
This allows you to use org-remember in any gnus buffer - even when
not on a location that will create a usable link.  Instead of
failing with the error "Not on a group" just create a remember
note with no link instead.

This makes org-remember more user-friendly - we don't have to
change buffers to a non-gnus buffer to create a remember note.
2009-01-20 11:28:45 -05:00
Carsten Dominik b76b28f2a7 Release 6.18 2009-01-20 10:23:26 +01:00
Carsten Dominik 70099303bf Fixing minor issues. 2009-01-20 10:10:15 +01:00
Carsten Dominik 0e46dc3f9c LaTeX Export: Allow class definition in property
When exporting a region starting with a headline, a LaTeX_CLASS
property in that entry will be honored.

Requested by Robert Goldman.
2009-01-20 09:07:35 +01:00
Carsten Dominik 0ce821c5c4 LaTeX export: Make quotes exported right before a footnote reference.
Matt Lundin writes:

    I'm have a *minor* issue to report. It occurs when I export
    an org file with footnotes to LaTeX. Specifically, it has to
    do with the combination of American style quotation marks
    and footnotes.

    According to many American manuals of style, quotation marks
    are to be placed after a sentence ending period if the
    quoted passage is at the end of the sentence. E.g.

    ,----
    | Here is "a quote."
    |
    | not
    |
    | Here is "a quote".
    `----

    When I use American style quotation in conjuction with a
    footnote, the exporter does not convert the closing quote
    marks into a two single quotation marks (i.e., LaTeX smart
    quotes).

    Thus, the following source snippet:

    ,----
    | This is a footnote "with a quote."[fn:sample] And here
    |  is another footnote "with a quote".[fn:another]
    |
    | [fn:sample] Here is the sample footnote.
    |
    | [fn:another] Another footnote.
    `----

    Becomes

    ,----
    | This is a footnote ``with a quote."\footnote{Here is
    |    the sample footnote. } And here is another footnote ``with
    |  a quote''.\footnote{Another footnote. }
    `----

    Notice the double quotation mark (rather than two single
    apostrophes) at the end of the first sentence. Notice also
    the correct quotation mark format appears in the second
    sentence, where the period comes after the quotation mark.

This commit addresses this issue by checking of text
protection is off not after the quotation mark, but before.
2009-01-20 08:26:44 +01:00
Carsten Dominik ff85ca95db Export: Optionally use <textarea> for example export.
Examples and src block can now be exported as <textarea> elements to
HTML if this is desired.  See the documentation for more details.
2009-01-19 23:13:58 +01:00