Commit Graph

830 Commits

Author SHA1 Message Date
Carsten Dominik ea1265539f Make C-c C-c also update clock timings in a CLOCK line 2009-06-04 09:28:42 +02:00
Carsten Dominik 3ca7add20a Fix bug with time sorting
Reported by Jrg Hagmann.
2009-06-03 17:15:16 +02:00
Carsten Dominik 45d80c3a31 Remove flyspell overlays in places where they are not wanted 2009-06-03 14:38:23 +02:00
Carsten Dominik 97f9817836 Insert drawers/ planning info unindented when org-adapt-indentation is nil
Requested by Samuel Wales
2009-06-03 14:08:37 +02:00
Carsten Dominik 5e39f24715 Minor fixes 2009-06-02 19:12:30 +02:00
Carsten Dominik cc3bb658ec Editing Source Code Examples: Make C-x C-s save the original buffer
Path by Dan Davison
2009-06-02 18:01:25 +02:00
Carsten Dominik 1db461321a Keep compiler happy 2009-06-02 14:49:38 +02:00
Carsten Dominik ee4bcda0e9 Clock: More control about what time is shown in mode line while clocking
This commit changes which time is shown in the mode line while
clocking.  Normally this will now be the total time ever clocked on
this task and its children.

However, when the task is a repeating one, only the time since the
last reset of the task will be shown.  The time of the last reset is
now recorded in a LAST_REPEAT property.

You can also set the CLOCK_MODELINE_TOTAL property to the value
"current" to only show the current clocking instance.  Or it may be
the value "today", to only add up the time spent today on this task.
Other possible values are "repeat", "all", or "auto".

Finally, you can set your default for this property with
`org-clock-modeline-total'.
2009-06-02 13:47:50 +02:00
Carsten Dominik 9b823a4586 Repeating entries: Record last repeat time in LAST_REPEAT property 2009-06-02 12:05:16 +02:00
Carsten Dominik 6c5428d5d4 Block editing: Do not quote # lines if there is no plus after # 2009-06-02 09:39:50 +02:00
Carsten Dominik bfa7c38c1c Hide and show the contents of blocks
Patch by Eric Schulte, with modifications.
2009-06-02 09:23:00 +02:00
Carsten Dominik 831050b23d Add Effort property to completion list. 2009-05-30 07:44:02 +02:00
Carsten Dominik 0b5dcee06d Minor fixes 2009-05-30 06:59:46 +02:00
Carsten Dominik 76979e62bd Fix bug with LaTeX entities 2009-05-29 14:34:50 +02:00
Carsten Dominik c030d53eb0 Fix indentation problem with editing blocks 2009-05-29 06:27:25 +02:00
Carsten Dominik 9efd83addd Make the list of blocks protecting their content cofigurable 2009-05-28 17:44:44 +02:00
Carsten Dominik 19748886eb Tables: Allow #+TBLFM to be indented 2009-05-28 17:44:12 +02:00
Carsten Dominik 0c49456103 Export: Allow #+label, #+caption, and #_attr_... to be indented. 2009-05-28 17:44:12 +02:00
Carsten Dominik 3089eb6150 Insert block templates indented to cursor cookie position
When a template cookie like "<s" is typed indented on a line, the
amount of white space before the cookie is applied to each new line in
the template.
2009-05-28 17:44:12 +02:00
Carsten Dominik 1fc138838a Blocks: Make editing indented blocks work correctly 2009-05-28 17:44:12 +02:00
Carsten Dominik aea59ca7a6 Export: Allow example and src blocks to be indented 2009-05-28 13:41:29 +02:00
Carsten Dominik 476493d3b3 Fontification: Better treatment of #+ lines and blocks
The content of blocks like #+begin_example will be marked with a
separate face.  That same face is also used for single lines
introducing text for specific backends.
2009-05-28 13:41:28 +02:00
Carsten Dominik c4a566df87 Fix typo 2009-05-28 06:43:35 +02:00
Carsten Dominik ff222e41b8 Bind ESC sequences explicitly because translation does not always work.
Patch by Paolo Petta
2009-05-27 20:04:25 +02:00
Carsten Dominik a18546c360 TODO entries: Control over when selecting a state is treated as state change.
This commit introduces two new variables:

- org-treat-insert-todo-heading-as-state-change

  Default is nil.  When set to t, adding a new TODO item will be done
  by adding an item and the executing an "official" state change which
  potentially will trigger state logging.

- org-treat-S-cursor-todo-seletion-as-state-change

  Default is t.  When set to nil, selecting a TODO state with
  S-left/right will not trigger logging, only selecting a new state
  with `C-c C-t'.  I actually like this a lot and would even consider
  making this the default.
2009-05-27 18:54:44 +02:00
Carsten Dominik ae7b8f6b12 Push version number to 6.27trans 2009-05-26 15:41:44 +02:00
Carsten Dominik 0421dead4b Release 6.27a 2009-05-25 16:04:45 +02:00
Carsten Dominik 1cd03213f5 Fix bug with time sorting 2009-05-25 15:55:59 +02:00
Carsten Dominik b681c7b26e Release 6.27 2009-05-23 08:22:04 +02:00
Carsten Dominik 86a19f342e Priorities: Conditionally disable priority commands
The new option `org-enable-priority-commands' can now be used to turn
off all priority-setting commands, to avoid setting a priority by
accident.
2009-05-21 18:01:08 +02:00
Carsten Dominik 97c19c43fd Keep compiler happy 2009-05-20 10:53:29 +02:00
Carsten Dominik f54ff074d2 TODO statistics: Allow recursive statistics
Setting the new option `org-hierarchical-todo-statistics' to nil will
make TODO statistics to be computed recursively.  This means, not only
the direct children of a node contribute to its TODO statistics, but
the entire subtree.

You can also set the COOKIE_DATA property and add the word "recursive"
there to get recursive statistics for a specific tree.
2009-05-20 10:47:38 +02:00
Carsten Dominik 8e44b1fd8b Logging: New property LOG_INTO_DRAWER
Setting this property will overrule the value of org-log-into-drawer
for the scope of the subtree.

Requested by Daniel J. Sinder
2009-05-19 10:35:28 +02:00
Carsten Dominik c88c9ad519 Statistics: New hooks 2009-05-19 09:22:44 +02:00
Carsten Dominik 388a302d51 Source snippet editing: Mark the text in the original buffer while editing 2009-05-18 12:53:32 +02:00
Carsten Dominik cc50f83583 Example editing: Allow multiple editing buffers
Hsiu-Khuern Tang writes:

> Hi Carsten,
>
> You recently changed org-edit-src-code to use a separate buffer
> instead of an indirect buffer.  One side effect of this is that I
> can no longer edit several code examples at the same time:
> opening the second buffer will silently discard any changes made
> in the first.  I would prefer this behavior: when opening the
> second edit source buffer, write any changes in the first buffer
> to the originating Org buffer (but don't save it, of course).
>
> Another approach is to use different buffer names.

The better approach is clearly to allow several buffers, now
implemented with this commit.
2009-05-16 17:08:24 +02:00
Carsten Dominik e7e711148a Refile: New hook
Requested by Keith Swartz.
2009-05-14 14:51:42 +02:00
Carsten Dominik 7de716943f Sorting: Run a hook when done with sorting
Requested by Keith Swartz.
2009-05-14 14:47:51 +02:00
Carsten Dominik 610f0004c8 Modularize `org-yank'.
Patch by Derek Upham.
2009-05-12 16:29:58 +02:00
Carsten Dominik 3065dcbd42 Keep compiler happy 2009-05-10 09:16:30 +02:00
Carsten Dominik 762736d18d Links: Implement special completion support for some link types
The commit implements a general mechanism for providing special
(e.g. completion) support for specific link types when entering links
with `C-c C-l'.  After calling `C-c C-l', you may now press RET after
inserting a link prefix, and Org will look for a function
`org-PREFIX-complete-link'.  Such functions may be defined for any
link types, including link abbreviations.  Currently, Org has
`org-file-complete-link' for file name completion, and
`org-bbdb-complete-link' for completion of record names from BBDB.
2009-05-10 08:51:18 +02:00
Carsten Dominik e516a3be22 Visibility cycling: Fix bug when org-cycle-include-plain-lists is t
Peter Westlake writes:

>  On Fri, 8 May 2009 06:24:54 +0200, "Carsten Dominik"
>  <carsten.dominik@gmail.com> said:
>
>  I anyone could make an example that allos me to reproduce this
>  problem, then I might be able to fix it.
>
>  It's trivial:
>
>   * top
>   ** sub 1
>   Set org-cycle-include-plain-lists.
>   Type TAB on this line, and the whole of top gets folded.
>
>   ** sub 2
>   This entry is not needed to reproduce the bug. It just
>   makes it more visible.

There was indeed a bug, I think it is fixed now.
2009-05-08 12:51:32 +02:00
Carsten Dominik dd1268dcac New file: contrib/lisp/org-special-blocks.el
Contributed by Chris Gray
2009-05-07 13:53:35 +02:00
Carsten Dominik 412314ab2b ASCII export: Fix autoloading 2009-05-07 08:39:12 +02:00
Carsten Dominik f8c8ac606d Sorting: Improve documentation, and implement better time sorting
Sorting entries by time is now much more flexible, and can be
specified to creation, scheduled, and deadline time.
2009-05-06 10:50:22 +02:00
Carsten Dominik 99c86ec8b8 Edit source code examples: Allow to switch off permanent message 2009-05-05 17:58:48 +02:00
Carsten Dominik 453115c82e Fix docstring 2009-05-05 16:24:47 +02:00
Carsten Dominik fc7b9e8d8c Editing code examples: No longer use indirect buffer
Editing source code examples and pictures is not done in a truly
separate buffer, not in an indirect buffer.  Indirect buffers had
caused problems with fontification, for example.
2009-05-05 13:58:13 +02:00
Carsten Dominik e1f6e949ed Clock history: Present all tasks fontified
Bernt Hansen requested this.
2009-05-05 10:23:47 +02:00
Carsten Dominik 3dcd1b1f78 Remove duplicate function 2009-05-03 21:51:00 +02:00
Carsten Dominik d3689276ec LaTeX fragments: Better error message when latex/dvipng unavailable
Thomas Morgan writes:

>  I just tried exporting an Org file with LaTeX fragments to HTML
>  on a computer that doesn't have dvipng.  There were error messages
>  in *Messages* ("Failed to create png file..."), but this wasn't
>  obvious to me at first glance because those messages were replaced
>  in the echo area by "Exporting... done" before I could see them.
>
>  So I was wondering, is there a good way to make the user aware of
>  those errors?  Maybe by printing "Exporting... done (with errors)"?

There is now a better error message when either the latex or the
dvipng program does not exist.
2009-04-30 22:52:42 +02:00
Carsten Dominik 8619361669 Reload: New key, works also in the Agenda
The key is now `C-c C-x !'.
2009-04-30 16:11:35 +02:00
Carsten Dominik 327d23f9bd Sorting: Make priority sorting work under XEmacs
The XEmacs default sorting function does not work correctly with
characters, probably because characters in XEmacs are not integers.
2009-04-30 16:02:01 +02:00
Carsten Dominik 4b6f0cf77b Optimization: Make org-end-of-subtree much faster 2009-04-24 16:45:01 +02:00
Carsten Dominik d072797344 Fix parenthesis bug 2009-04-24 14:46:28 +02:00
Carsten Dominik 4d2f9e1943 Speed up find-buffer-visiting 2009-04-24 14:38:46 +02:00
Carsten Dominik 692873550e Agenda: Try to speed up getting tags 2009-04-24 11:39:34 +02:00
Carsten Dominik 9fc88c0a0e Remember: Avoid error when before first headline in org file 2009-04-24 07:08:29 +02:00
Carsten Dominik b5775974b4 Bug fix: Catch a throw to nextfile 2009-04-23 22:40:49 +02:00
Carsten Dominik 69e6d249aa Push version number to 6.26trans 2009-04-22 09:08:13 +02:00
Carsten Dominik 73854f435d Release 6.26d 2009-04-22 06:42:17 +02:00
Carsten Dominik 595e9603ac Release 6.26c 2009-04-21 20:26:27 +02:00
Carsten Dominik 093bd3343e Statistics cookies: Disambiguate using properties.
The property COOKIE_DATA can be used to disambiguate the meaning
of statistics cookies in a headline.

This was a request by Ulf Stegemann.
2009-04-21 17:01:24 +02:00
Carsten Dominik e0cd12716a Release 6.26b 2009-04-21 10:21:36 +02:00
Carsten Dominik 9c2436713c New hooks for commands attaching themselves to the TAB key.
Three new hooks are available for commands to attach themselves to the
TAB key.
2009-04-21 09:53:07 +02:00
Bernt Hansen 187dac5f8e Add NOBLOCKING to org-default-properties
This allows setting the NOBLOCKING property by hitting C-c C-c on
the :PROPERTIES: drawer
2009-04-21 06:10:38 +02:00
Carsten Dominik b8a5f1a7fc Release 6.26a 2009-04-19 22:31:36 +02:00
Bernt Hansen 7707803c32 Fix CUSTOM_ID completion for PROPERTY drawers
The wrong name was added for CUSTOM_ID in the completion list for
properties in commit 931e13d (Custom IDs: Documentation and
improvements)
2009-04-19 22:27:56 +02:00
Carsten Dominik ba66d2c8ae Release 6.26 2009-04-19 08:38:49 +02:00
Carsten Dominik fa99e696a6 Refile: The verification function may move point.
If the target verification function decides against a target, it may
also move point to continue the search from a different location.
2009-04-19 08:17:44 +02:00
Carsten Dominik 88468ff7fe Bug fix: Place rear-nonsticky property correctly.
Stefan Monnier says that rear-nonsticky properties should only be put
at the last character of a range with equal properties, not at the
entire range.
2009-04-19 07:28:53 +02:00
Carsten Dominik 0394a77f8b EXPORT: Additional properties for setting export options
Matt Lundin writes:

>  If it's not too much trouble, I was wondering if I could
>  request the following properties to set export options for
>  subtrees:
>
>  EXPORT_AUTHOR
>  EXPORT_DATE
>
>  In addition to specifying an EXPORT_FILE and EXPORT_TITLE
>  for a subtree, I often find myself wanting to change the
>  date and author lines.
2009-04-18 18:23:40 +02:00
Carsten Dominik 4b4328e29b Refile: New function to verify a target.
The variable `org-refile-target-verify-function' can be set to a
function that will be called to verify a refile target.  The function
must return t if the target is valid.
2009-04-17 17:57:18 +02:00
Carsten Dominik 931e13d800 Custom IDs: Documentation and improvements 2009-04-17 17:25:50 +02:00
Bernt Hansen a30955b050 Call org-reveal after refiling
Sometimes refiling a task displays the next task heading after ... at the
end of a folded task.  This keeps the next task the cursor is on starting
in column 1 which feels more natural.
2009-04-16 06:01:50 +02:00
Carsten Dominik e2bdc488ee Refiling: Allow to create new nodes.
When refiling, you can now create new parent nodes on the fly.  To do
this, set the variable `org-refile-allow-creating-parent-nodes' to
`confirm'.  Then, at a refiling prompt, proceed with completion until
you have an existing heading, and then add "/new heading", i.e. a
slash followed by the new heading.  That heading will be created as a
child of the existing heading, and the entry to be refiled will end up
under that new heading.
2009-04-14 17:58:32 +02:00
Carsten Dominik a26f9b5502 LaTeX export: Format time stamps
Time stamps in LaTeX export now also honor custom time stamp formats.
Furthermore, the new option `org-export-latex-timestamp-markup' can
specify special markup for time stamps.
2009-04-13 08:53:58 +02:00
Carsten Dominik 6e9fb4550f TODO keywords: Should be case sensitive
Samuel Wales writes:

>  A lower case version of a todo kw at the beginning of a
>  headline, when in lower case, causes sort to ignore the
>  word.
>
>  Also, setting priority with shift down causes the cookie to
>  be inserted in the wrong place.

Both problems are address in this commit.
2009-04-11 08:16:41 +02:00
Bernt Hansen d0b9701549 Document more org-refile related variables in the docstring
Make it easier to find variables related to refiling by just reading
the docstring.
2009-04-10 10:26:44 +02:00
Bernt Hansen 7be5320866 Report org-version after reloading 2009-04-10 10:24:29 +02:00
Carsten Dominik 7887f9d5e5 Rename org-export-latex.el to org-latex.el
For consistency, this file gets a new name.
2009-04-09 17:25:44 +02:00
Carsten Dominik b077f71076 Support using url-hexlify 2009-04-09 15:28:06 +02:00
Carsten Dominik 99c7dacd66 Dependencies: New property NOBLOCKING
A NOBLOCKING property makes sure that an entry is never blocked by
whatever function in org-blocker-hook.
2009-04-08 17:01:54 +02:00
Carsten Dominik 627eaa32e6 Tags scanner: Fix bad bad bug
The Tags scanner was totally broken, because of a wrong setting of point.
2009-04-08 07:32:04 +02:00
Carsten Dominik 2b96f05551 Mark obsolete packages
The following contributed packages are (partially) obsolete.

org-browser-url.el
org-annotation-helper.el
  The functionality of both these packages is a subset of
  org-protocol.el, which is now part of the Emacs core
  and is recommended.

org-depend.el
  A significant fraction of the org-depend functionality
  dependence on siblings, children, and parents) is now
  built-in into the Org core.  Org-depend remains
  in the distribution as a proof-of-concept fro complex
  and remote dependencies.

org-interactive-query.el
  I believe that much of what this package was build for
  is now available with tag filtering.

These packages are now marked in org-modules as such.
2009-04-07 21:06:43 +02:00
Carsten Dominik bc6f83e966 HTML export: moved functions to separate file. 2009-04-07 20:00:31 +02:00
Carsten Dominik b6c7e8054e iCalendar and XOXO export: Functions moved to new files. 2009-04-07 19:08:24 +02:00
Carsten Dominik 9682e038ff ASCII export: moved functions to new file, org-ascii.el 2009-04-07 18:43:43 +02:00
Carsten Dominik ef2ee3df5d Version number pushed to 6.25trans 2009-04-07 18:43:42 +02:00
Carsten Dominik 61530a1db1 Reload: Only load files that were loaded before
The command org-reload did not only reload any loaded files, but all
lisp files in the Org distribution.  Also, it actually never reloaded
any files from the contrib directory.  Both of these problems are now
fixed.
2009-04-07 18:43:35 +02:00
Carsten Dominik 9b594be48e Visibility cycling: New hook called before the change of visibility.
This new hook `org-pre-cycle-hook' is the companion to
`org-cycle-hook'.

Patch by Andreas Butzlaff.
2009-04-06 07:15:27 +02:00
Carsten Dominik eef47f820f Release 6.25d 2009-04-05 15:29:45 +02:00
Carsten Dominik 56a8ae9414 Compatibility: Make `org-reload' work on XEmacs.
This uses ideas by Tony E. Bennett.
2009-04-05 15:24:40 +02:00
Carsten Dominik c9675ebc96 Mapping: More user control over the location from where mapping continues.
Mapping call a function for each matching entry.  So far this has
always assumed that the entry stays in the buffer and search can
continue from there.  However, when the mapper function removes the
tree, more control is needed to specify from where the search should
continue.

The action function handed to the mapping function can now set the
variable `org-map-continue-from' to the position from where mapping
should continue.
2009-04-05 13:41:59 +02:00
Carsten Dominik e2eebc83a1 Release 6.25c 2009-04-05 08:45:39 +02:00
Carsten Dominik b5c9ebef58 TODO states: Case-sensitive matching during TODO changes 2009-04-05 08:42:08 +02:00
Carsten Dominik 9936b09ec3 Links: Fix opening links to current file from a string.
Patch by Andreas Burtzlaff.
2009-04-04 04:57:08 +02:00
Carsten Dominik 979e7c8573 Refile: Allow to refile to top-level entries.
By completing only the file name, you can now refile as a top-level
entry.
2009-04-03 22:27:18 +02:00
Carsten Dominik 8cc49120fa Tags scan: Also find the first line in a buffer. 2nd attempt. 2009-04-03 20:41:36 +02:00
Carsten Dominik 5624263d97 Release 6.25b 2009-04-03 19:18:41 +02:00
Carsten Dominik b1c6a40772 Revert "Tags scan: Also find the first line in a buffer"
This reverts commit 1fbe1f7f50.
2009-04-03 19:17:36 +02:00
Carsten Dominik c27fe63388 Dependencies: Improve TODO dependency checking
Daniel Hochheimer writes:

> It seems there is a bug in the handling of simple dependencies.
> I think an example tree is the best solution, to show you the bug:
>
> * Projects
> #+CATEGORY: Projects
> *** TODO foo bar project
>   :PROPERTIES:
>   :ORDERED:  t
>   :END:
> ***** TODO foo subproject        :FooSubproject:
> ******* TODO Task 1
> ***** TODO bar subproject        :BarSubproject:
> ******* TODO Task 1
>
> This is in my .emacs file:
> (setq org-enforce-todo-dependencies t)
> (setq org-agenda-dim-blocked-tasks 'invisible)
> (setq org-odd-levels-only t)
>
> the expected global todo agenda view imho is:
>
> Projects:    Task 1       :FooSubproject:
>
> but actual it is unfortunately:
>
> Projects:    Task 1       :FooSubproject:
> Projects:    Task 1       :BarSubproject:
>
>
> Imho "Task 1" from "bar subproject" should not be visible,
> because "bar subproject " is blocked because of the
> ORDERED property (therefore it's childs should be blocked, too)
>
>
> Is it easy / possible to fix this bug? My whole GTD system is
> heavily based on such project / subproject-Constructs. But with
> this bug my global todo agenda view is unfortunately "polluted"
> a little bit with tasks from projects that shouldn't be active.

After some back and forth, Daniel convinced me, and this is now done
correctly.
2009-04-03 17:24:48 +02:00
Carsten Dominik 1426f8bcfd Release 6.25a 2009-04-02 18:24:52 +02:00
Carsten Dominik 1fbe1f7f50 Tags scan: Also find the first line in a buffer 2009-04-02 18:16:35 +02:00
Carsten Dominik aeb5cb98d6 Release 6.25 2009-04-01 16:00:39 +02:00
Carsten Dominik a36ebd79c8 Bugfix: Add file name only once to refile targets
With the setting

   (setq org-refile-use-outline-path 'file)

the file names ended up twice, like

    "xxx.org/level 1/level 2 (xxx.org)"

Now the second occurrence is omitted.
2009-04-01 15:49:35 +02:00
Carsten Dominik ef738cf38a Fix customization types: integer instead of number, where appropriate 2009-04-01 13:58:27 +02:00
Carsten Dominik 3d9a05b81f Minor change 2009-04-01 13:30:49 +02:00
Carsten Dominik d9a03c553a HTML export: Allow modification of table attributes.
The #+ATTR_HTML line can now be used to set attributes for the
following table.
2009-03-31 13:00:34 +02:00
Carsten Dominik 167a7bfdfe Adding new file org-protocol.el 2009-03-31 07:55:08 +02:00
Carsten Dominik 2409f4bb89 Bugfix 2009-03-30 22:53:27 +02:00
Carsten Dominik c442366e23 Minor fix. 2009-03-30 20:02:07 +02:00
Carsten Dominik 95f4088990 Bugfix: Swapping the last two subtrees in a file.
Rustom Mody writes:

>  The last two lines of my org file are
>
>  *** Vishnu Sahasranam
>  *** Ram Navami
>
>  without a newline at the end
>
>  Trying to reorder these two lines I do a M-S-down on second last
>  line I get
>
>  *** Ram Navami*** Vishnu Sahasranam
2009-03-30 17:36:55 +02:00
Carsten Dominik cd6907beb9 Inline tasks: New module org-inlinetask.el
This module implements inline tasks in Org-mode.  Inline tasks are
tasks that have all the properties of normal outline nodes, including
the ability to store meta data like scheduling dates, TODO state, tags
and properties.  However, these nodes are treated specially by the
visibility cycling and export commands.
2009-03-30 13:15:36 +02:00
Carsten Dominik e341a34297 intermediate 2009-03-30 11:58:43 +02:00
Carsten Dominik 49878b0387 Emphasis: Allow braces in pre and post match, important for LaTeX footnotes. 2009-03-30 11:49:10 +02:00
Carsten Dominik 13b2f06ba4 DocBook export: Installed the new DocBook exporter by Baoqiu Cui 2009-03-30 07:20:06 +02:00
Carsten Dominik a7ed5b9b76 Citations: Use RefTeX to insert citations
RefTeX can now be used to create a citation in Org-mode buffers.
Setup the buffer with #+BIBLIOGRAPHY: bibbase style

and create citations with `C-c C-x ['.
2009-03-28 14:57:10 +01:00
Carsten Dominik a26aa3777e Dependencies: Fix bug in blocker hook
The blocker hook did block entries if an older sibling had TODO children.
2009-03-27 15:02:41 +01:00
Carsten Dominik bf1a21ce81 Bugfix: org-ido-switchb
Chris Leyon writes:

>  For some semi-short time, org-ido-switchb has been broken, complaining
>  about wrong type arguments.  The attached one-line patch corrects
>  this.

Patch by Chris fixes this problem.
2009-03-26 17:15:36 +01:00
Carsten Dominik c7e078eeaa Links: Use buffer name as link description in w3-mode buffers 2009-03-26 05:05:42 +01:00
Carsten Dominik 72908042c3 org-feed.el: re-written 2009-03-25 22:45:57 +01:00
Carsten Dominik 70b975f89c Agenda: Fix bugs with FILETAGS
Harri Kiiskinen writes:

>  It seems that org-use-tag-inheritance set to regexp, the use of
>  #+FILETAGS: and org-todo-list do not work together. It seems, that a
>  regexp in org-use-tag-inheritance matching a tag set in #+FILETAGS
>  causes this error:
>
>  Debugger entered--Lisp error: (wrong-type-argument stringp nil)
>   string-match("^ +" nil)
>  [...]
>  when org-use-tag-inheritance is set to regexp "te"
>  with this file:
>
>  --------
>  #+STARTUP:
>  #+FILETAGS: tea
>  * TODO testing 		       :test:
>  ** TODO too			       :data:
>  -----
>
>  When the regexp is "tes", so that the FILETAG does not match,
>  org-todo-list produces a correct list.

This is indeed a bug.  The all to `org-get-tags-at' does change the
match data if there is a match for the inheritance regexp.  This
problem is now avoided by first extracting (match-string 1), and then
getting the tags.

Studying this bug also exposed another one, namely that file tags are
not marked as inherited tags.  This is now fixed, immediately when
the #+FILETAGS line is parsed.
2009-03-25 09:20:12 +01:00
Carsten Dominik b6e7a1c5ca New file lisp/org-feed.el 2009-03-24 12:28:32 +01:00
Carsten Dominik 19f700a606 Bugfix: Add explamation mark to post-emphasis characters
Reported by Baoqiu Cui.
2009-03-23 11:14:29 +01:00
Carsten Dominik 1aabee4a8a Read-date: New hook
The new hook `org-read-date-minibuffer-setup-hook'.
2009-03-22 17:04:46 +01:00
Carsten Dominik d6e81d3150 Documentation: Better info about S-cursor keys 2009-03-21 18:38:58 +01:00
Carsten Dominik c7718a1999 Tables: Make M-a and M-e go to beginning and end of table field
This commit overloads the sentence commands M-a and M-e so that they
will work on table fields in tables.
2009-03-21 18:25:11 +01:00
Carsten Dominik d9d7398edd Column view: Exclude archived trees, for speed. 2009-03-21 18:25:01 +01:00
Carsten Dominik 7924dcb1bf New face for items switched in agenda to DONE.
Items are listed in the agenda sometimes in bright colors, to draw
attention to important tasks or deadlines.  When such an item is
switched to DONE, the state change is reflected by the new TODO
keyword, but the line itself might still be bright.  Org de-emphasizes
the line by changing the face of the line.  It used to change it to
the face `org-done', but now we use a new, independent face
`org-agenda-done'.
2009-03-21 18:25:01 +01:00
Carsten Dominik 132dc95042 Agenda: No longer indent matching sublevels by dots.
When a tags/property match does match an entry and its sublevels, the
sublevels used to be indented by dots, to indicate that the matches
likely result from tag inheritance.  This is now no longer the
default, but you can get it back with

   (setq org-tags-match-list-sublevels 'indented)
2009-03-21 18:25:01 +01:00
Carsten Dominik cf6cdd5c44 Checkboxes: New face
Checkboxes not have their own face.  This can be used to make them
look different.  Default is still just bold.
2009-03-20 14:09:10 +01:00
Carsten Dominik d48a1e49e2 Refile: Don't error for self-refile when only going to a place
Refiling checks if an entry is refiled to itself.  Of course, this
check is irrelevant when using refile to jump to a location.
2009-03-19 10:48:43 +01:00
Carsten Dominik aaedf7d01a Stuck projects: Search subtree of un-stuck projects
This commit implements an important change:  When, during a
stuck-project search, a project tree is identified as not stuck, so
far the search would continue after the end of the project tree.  From
now on, the search continues in the subtree, so that stuck subprojects
can still be identified.
2009-03-19 10:47:04 +01:00
Carsten Dominik 5a286e45da Bugfix: Make mouse click on tags do a tags search.
This used to work, but the tags search part was no longer reached
because of a bug in the sequence of checking regular expressions.
2009-03-17 11:59:51 +01:00
Carsten Dominik ad11d7f675 Centering: Implement markup for centered text. 2009-03-16 22:14:15 +01:00
Carsten Dominik e217a11329 Docstrings: Fix typos. 2009-03-15 14:44:52 +01:00
Carsten Dominik fd4670fe67 Sparse tree: New tree for times after a certain date.
Keys are `C-c / a', this command is for symmetry with `C-c / b'.
2009-03-15 14:39:48 +01:00
Carsten Dominik 3d2e1c0f04 Notes: Remove empty drawer if note is aborted.
When a note is taken, the new drawer is created before the note is
taken.  Now the drawer is removed again if the note gets aborted and
if the drawer is empty.
2009-03-15 14:04:39 +01:00
Carsten Dominik e56c7097f4 Bugfix: Adding stars with C-c *
When calling C-c * before the first headline, the results where wrong.
Fixed now.
2009-03-15 12:27:49 +01:00
Carsten Dominik e5c0da5c48 Date prompt: Use own history
The date prompt now has its own history.
2009-03-15 12:19:12 +01:00
Bastien Guerry 730ef5f5f6 Fix bug in `org-toggle-fixed-width-section'.
Fixed-width sections start with a column followed by a space.
This function now toggle fixed-width sections accordingly to
the manual.
2009-03-14 17:33:15 +01:00
Carsten Dominik 722fc9a490 Version number to 6.24trans 2009-03-14 08:03:10 +01:00
Carsten Dominik acfcb14c82 Time stamps: Changing time ranges as a block.
Anupam Sengupta writes:

>  I routinely use time ranges (and occasionally time-stamp ranges)
>  in my org files to document the scheduled block of time for a
>  meeting or activity.  As an example, I will mark meetings as:
>
>  * A Meeting
>   <2009-03-12 Thu 10:00-11:00>
>
>  As often happens with meetings, rescheduling needs to be done and
>  I use S-<up> or S-<down> on the time-stamp to make the
>  modifications.  While this works fine, it usually leads to a
>  duplication when the *time* part of the time-stamp needs to be
>  changed.
>
>  For the same example above, if the time-block has now changed to
>  11:00-12:00, then I need to do S-<up> on both the "10:00" and the
>  "11:00" string.  I.e,
>
>
>  * A Meeting
>   <2009-03-12 Thu 11:00-11:00>
>                    ^
>                    +---------------- After the first S-<up>
>
>  * A Meeting
>   <2009-03-12 Thu 11:00-12:00>
>                          ^
>                          +---------------- After the second S-<up>
>
>  Can we have a feature (with a toggle option perhaps) which would
>  *move* the block (i.e., both time entries) by the same amount
>  when either one is moved in the same direction. I.e., the
>  proposal is to have:
>
>  * A Meeting
>   <2009-03-12 Thu 11:00-12:00>
>                    ^     ^
>                    |     |
>                    |     +---------- Automatically shifted
>                    +---------------- After the S-<up>

This is in fact how changing time works in many applications, and
it does make sense here as well.  The commits implements this
change.

It also implements a way to change the start time of an entry from
the agenda.  The date is normally changed with S-right/left.
Now, if you add a C-u prefix, the hour will be changed.  If you
immediately press S-right/left again, hours will continue to be
changed.

A double prefix will do the same for minutes.
2009-03-14 08:02:09 +01:00
Carsten Dominik c8b6a9cc60 Release 6.24c 2009-03-12 12:51:17 +01:00
Carsten Dominik 6cda490b12 Cloning tasks
New command to clone tasks, with time stamps shifted.
2009-03-11 15:13:59 +01:00
Carsten Dominik 680d8cb440 Release 6.24b 2009-03-10 17:50:17 +01:00
Carsten Dominik a2a7550591 Bugfix: Make sure TODO keyword is inserted at the right position
Wanrong Lin writes:

>  Suppose I have an org file with following lines:
>
>  * Test1
>  Test2
>
>  Now if I put the cursor at the beginning of the "Test2" line and
>  press "M-S-RET"  (Alt-Shift-Return on my machine), I got this:
>
>  * Test1
>  * Test2TODO
>
>  The "TODO" keyword was inserted at the end instead of the
>  beginning of the task text. This seems a bug to me.

Yes, this is a bug that occurs in the special case when the
heading stars are inserted in front of an existing line.  The
commit adds code to make sure the correct position is used.
2009-03-10 17:27:10 +01:00
Carsten Dominik 7e8a387184 Release 6.24a 2009-03-09 05:37:09 +01:00
Carsten Dominik 4782607781 Minor fix 2009-03-07 07:50:58 +01:00
Carsten Dominik 20828f3176 Release 6.24 2009-03-05 21:11:18 +01:00
Carsten Dominik 5faf13a071 Completion: Add missing #+ keywords for completion 2009-03-05 10:18:26 +01:00
Carsten Dominik f41f942e53 Adding org-collector.el as a contributed package 2009-03-04 17:19:51 +01:00
Carsten Dominik f9d05d0317 Bug fix 2009-03-04 13:28:13 +01:00
Carsten Dominik fc25bbd76f Minor fix 2009-03-04 11:55:28 +01:00
Carsten Dominik d685f0fc87 Mapping: Remove inheritance penalty when scanning for tags
Running a command that would use the tag scanner could suffer a large
slow-down when many entries match, because the tag list with
inheritance forces each matching entry to walk the hierarchy.

Now, it is possible to avoid this penalty by using the variable
`org-scanner-tags', or by binding the `org-trust-scanner-tags' to t
around calls to `org-get-tags-at' and `org-entry-properties' when
retrieving tags and properties for the current entry in the
scanner/mapper.
2009-03-04 11:38:02 +01:00
Carsten Dominik 3d02600149 Tags: Use internal tags list for agenda
An agenda item carries a full list of tags.  The list must normally be
made, but not during a tags scan.  So now the tags scan does pass on
its list instead, which should make things faster.
2009-03-04 09:46:19 +01:00
Carsten Dominik 7cd006b1d7 Tags: Make matches case-sensitive
Tags matches used to be case-insensitive.  But this causes too many
problems in the code, o from now on, tag matches will be
case-sensitive.
2009-03-04 09:21:45 +01:00
Carsten Dominik 3a959f9d30 Agenda: Fix bug with tag inheritance
Jeff Mickey writes:

>  Hey all,
>
>  To reproduce:
>
>  * TODO Make Bicycle :project:workshop:
>  ** TODO Buy stuff
>  ** TODO Build stuff
>  ** TODO Test stuff
>
>  (setq org-use-tag-inheritance t)
>  (setq org-tags-exclude-from-inheritance '("project"))
>
>  <C-a m> to type in a match string to search, I type in "project"
>
>  I expected to see:
>  TODO Make Bicycle
>
>  I saw:
>  TODO Make Bicycle
>  .TODO Buy stuff
>  .TODO Build stuff
>  .TODO Test stuff
>
>  I assume this isn't what is supposed to happen.  I'm currently at work
>  so I can't investigate and provide a diff, but it seems like there
>  needs to be a check in org.el:10144:org-get-tags-at to remove tags
>  that are explicitly excluded from inheritance.

This commit fixes the bug.
2009-03-04 09:11:39 +01:00
Carsten Dominik 3b396b0e77 Bugfix: Don't add CLOSED timestamp when repeating 2009-03-04 00:18:43 +01:00
Carsten Dominik 42cbb29b3e Documentation fixes 2009-03-03 18:27:11 +01:00
Carsten Dominik d8e4a35974 HTML Export: Make IDs valid
uuidgen ids may start with a number and therefore are not valid names
in HTML.  Therefore we now use and "ID-" prefix for such IDs when
exporting to HTML.
2009-03-03 14:06:11 +01:00
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 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 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 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 c91bca9d1c Push version number to 6.23trans 2009-02-26 21:32: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 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 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 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 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 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 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 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 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 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 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 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 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 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