0
0
Fork 1
mirror of https://git.savannah.gnu.org/git/emacs/org-mode.git synced 2024-09-23 09:10:44 +00:00
Commit graph

1149 commits

Author SHA1 Message Date
Carsten Dominik 0eaf3cce4d Speed-up cycling in buffers with *many* siblings, and *many* drawers
For this we took another look at when drawers actually have to be
hidden again and found that CONTENTS view does not need it, and that
CHILDREN view only needs it before the first child.

The second speed-up comes from advising outline-end-of-subtree to use
the Org version when in org-mode.

The third speed-up comes from using a better way to find the next
visible line, using `next-single-char-property-change'.

Finally, `org-forward-same-level' and `org-backward-same-level' are
faster versions of their outline equivalents and are now bound to
`C-c C-f' and `C-c C-b'.
2009-07-23 11:27:34 +02:00
Carsten Dominik 75a26e1c8d Moving subtrees: Speedup when many siblings exist. 2009-07-22 10:24:24 +02:00
Bastien Guerry 3c031462f5 Bugfix about using a separate frame for the Calendar.
When the Calendar is displayed in a separate frame, Org was
confused and could not find it; this tiny change fixes this.
2009-07-21 09:29:55 +02:00
Carsten Dominik 5f87a31fb7 Fix problems in org-mac-message.el
The return value of some functions was not correct because of a
message form at the very end.  Also, Simplified a few functions.
2009-07-20 09:09:42 +02:00
Carsten Dominik 809fcf9d78 Improve refile history to contain exact matches only
This was a proposal by Samuel Wales.  After the user selected a
refiles target, we make sure that the fully qualified target is in the
history, so that next time, UP will bring back exactly this target.
2009-07-20 09:01:33 +02:00
Bastien Guerry e17368ca76 Also use TAB for completion with org-insert-link.
Before this patch the completion mechanism was this: TAB let's you
complete through link prefixes (gnus: file: bbdb: ...) then RET allows
completion if a completion mechanism is available for the chosen prefix.
Navigating through the history of stored links was a separate process,
available through the up/down M-n/M-p keys.

Now TAB not only completes through link prefixes but also through stored
links.  This behavior matches other Emacs completion mechanisms a bit
more closely.
2009-07-19 19:45:06 +02:00
Bastien Guerry ffa046d38b Fix typo in orgstruct++-mode docstring. 2009-07-19 14:37:59 +02:00
Carsten Dominik 8530298b45 Inline tasks: Play along with archiving, refiling, and footnotes, store link. 2009-07-19 09:47:13 +02:00
Carsten Dominik 741b523fa5 Export: Ignore radio matches in links 2009-07-19 08:35:31 +02:00
Carsten Dominik 82dcd80130 HTML export: Fix bug in example line enumeration code 2009-07-19 08:00:53 +02:00
Bastien Guerry 57b43866e5 Bugfix: don't ignore case when building the list of targets.
If you have a TODO keyword like "DELEGATED" and an entry like
"* Delegated this stuff to X", then you want this entry to be
in the list of possible targets.  For that we need to distinguish
between DELEGATED as a keyword and "Delegated" as a simple word,
so (case-fold-search nil) seems relevant.
2009-07-18 10:35:59 +02:00
Bastien Guerry 8a15fe867b New option: org-remember-delete-empty-lines-at-end
This default to t, so the default behavior of org-mode doesn't
change.  But the user might want to keep at least one blank line
at the end of the remembered subtree, this option lets her do it.
2009-07-18 10:09:40 +02:00
Carsten Dominik 6596d005ef Minor improvements 2009-07-18 09:30:20 +02:00
Bastien Guerry 57838f8286 Fixed premature deletion of data when scripting org-plot.
This patch was sent by James TD Smith.
2009-07-17 19:02:01 +02:00
Bastien Guerry 14c0c432be Small rewrite of the ChangeLog. 2009-07-17 18:59:51 +02:00
Bastien Guerry 69e14025f4 New option org-tags-sort-function.
This allows tags to be sorted by string<, string> or a custom function.
Patch submitted by James TD Smith.
2009-07-17 18:43:22 +02:00
Bastien Guerry fa7e23ec39 Add org-clock-in-prepare-hook. Doc update.
This hook is called in org-clock-in earlier than the existing
org-clock-in-hook.  This is useful for functions that need to
modify the Effort property, for example.
2009-07-17 09:02:56 +02:00
Bastien Guerry 1821a9126d Document indented for org-tags-match-list-sublevels
Thanks to Samuel Wales.
2009-07-16 22:25:09 +02:00
Bastien Guerry f2abe28993 Update the changelog to reflect last commit. 2009-07-16 22:13:46 +02:00
Bastien Guerry fe4967229a Fix problem when publishing the region to LaTeX.
`org-export-latex-first-lines' was rather stupid and would
discard the end of the region with the region was active.
Thanks to Holst Thomas for this bug report.
2009-07-16 21:39:37 +02:00
Carsten Dominik 7087902788 Fix bug in org-narrow-to-subtree, which could lead to clock errors
Bernt Hansen writes:

> I have a monthly repeated task (Archive tasks) that has lots of
> old clock time on it currently but has never been marked DONE
> since the creation of the property LAST_REPEAT_TIME.  If this
> task is clocking when Emacs exits and you restart emacs and
> answer Yes to continue the clock - the modeline has the total
> time for the parent task (151:04 instead of the total time for
> this task (5:04).  If I clock the task in again the modeline is
> correct.
2009-07-08 14:29:18 +02:00
Carsten Dominik 6355334c4b org-plot.el: fix bug 2009-07-08 07:50:48 +02:00
Carsten Dominik 67d2a22fb9 Publishing: Clean out timestamp directory with `C-u C-c C-e E'
When changing the publishing setup, old timestamp files can be left
behind.  Forcing publishing of all projects with `C-u C-c C-e E'
will remove all existing timestamp files.
2009-07-07 15:04:37 +02:00
Carsten Dominik 1768f325df Make bullet modification work for ordered lists as well 2009-07-07 13:52:17 +02:00
Carsten Dominik e5c2547bbe Fix typo in plain list demotion code
Reported by Rainer Stengele.
2009-07-07 13:31:55 +02:00
Carsten Dominik 636c524df3 HTML export: Show UP and HOME links if defined
org-export-html-link-up and org-export-html-link-home are now also
inserted into normal HTML export, above the page title.
2009-07-07 13:20:25 +02:00
Carsten Dominik 30d448b2e1 HTML export: More flexibility for preamble and postamble
Andreas Rottmann writes:

> Well, the subject says it all -- attached is a rough patch to
> allow more flexibility with the HTML export; I use it like this:
>
>    (defun rotty/homepage-preamble (opt-plist)
>      (insert "<div id=\"header\">")
>      (insert
>       "
>    <div id=\"navbar\">
>    <a class=\"menu\" href=\"/\">Home</a>
>    | <a class=\"menu\" href=\"/Writings.html\">Writings</a>
>    | <a class=\"menu\" href=\"/Software.html\">Software</a>
>    | <a class=\"menu\" href=\"/blog/\">Blog</a>
>    </div>
>    ")
>      (insert (format
>               "<h1 class=\"title\"><a href=\"/\">rotty</a> &gt; %s</h1>\n"
>               (plist-get opt-plist :title)))
>      (insert "</div>\n")
>      (insert "<div id=\"inner\">\n"))
2009-07-06 18:10:26 +02:00
Carsten Dominik c1d00fa463 Export: General mechanism for local settings
Many different people want to set many different variables in a
buffer-local way for export.  This cannot be done with file variables,
because the Org buffer is not current while the exporter is running.

Lots of variables can be set with the #+OPTIONS lines, but finding
abbreviations goes only so far.

Therefore we have now a general mechanism that can be used to bind
variables during export operations.

a line like:   #+BIND: variable value

will bind the variable to value.  For example,
the line

>>      #+OPTIONS: toc:nil

can now equivalently be written as

>>      #+BIND: org-export-with-toc nil
2009-07-06 17:00:03 +02:00
Carsten Dominik aa6654c9ce Examples: Untabify before re-inserting into Org
Leaving tabs in the code will mess up indentation in Org.
2009-07-06 16:08:49 +02:00
Carsten Dominik 280f8495ed Plain lists: Allow to force bullet type changes during demotion
Rainer Stengele writes:

> using org-mode for quite some time now I always look at
> operations (key sequences) I repeat a lot of times.
>
> A lot of times I start a list with an item and immediately
> indent the next item as subitem.
>
> From
>
> - item 1
> - subitem 11
>
> I go to
>
> - item 1
>  - subitem 11
>
> via "M-right". Then I always want to change the style of the
> subitem list to "*". I do this via "S-right-right".
>
> I wonder how others work. I would like to automatically have
> changed the subitem list type to "*" as soon as I indent via
> "Alt-right". Next indentation should go back to "-". etc.
>
> Maybe we could introduce a variable that sets the order of
> standard list item types, in my case: "- * - * - * - *" as
> in
>
>
> - item 1
>  * subitem 11
>    - subitem 111
>      * subitem 111
> ...
>
> very special I know but I try to reduce the keypressings as
> much as possible. Any other suggestions?

This commits adds the variable
`org-list-demote-modify-bullet' for this purpose.
2009-07-06 15:38:23 +02:00
Carsten Dominik e7ceeb3a49 Bug fix: Hide drawers after showing entry content
Bernt Hansen writes:

> I recently noticed that using SPACE or TAB in the agenda displays
> the task in the other window but all of the drawers are exposed.
> If you fold the org file with S-TAB to Overview or Contents
> display and then switch to the agenda and SPACE or TAB on a
> folded task it unfolds the entire thing including the drawers.
>
> Expanding the file to SHOW ALL and then using follow mode from
> the agenda shows me the view I'm really looking for so that's
> what I'm doing as a workaround right now.
>
> While doing my weekly review of tasks I use follow mode to view
> task detail and the expanded :LOGBOOK: and :PROPERTIES: drawers
> hide detail scrolled off the bottom of the window.  My :LOGBOOK:
> drawer for repeated tasks tends to be l-o-n-g and shoves detail
> way down the file (such as my weekly review checklist :) ).
>
> Is it possible to control expansion of the drawers when
> displaying a task from the agenda?  The view I'm looking for is
> the same as SHOW ALL from S-TAB.  It seems that if the task is
> expanded from the agenda it expands everything including the
> drawers.
2009-07-05 16:30:02 +02:00
Carsten Dominik 0795e42daf Footnotes: Allow automatic sorting and renumbering
Customize the new variable org-footnote-auto-adjust or use the STARTUP
option fnadjust to get automatic renumbering and sorting of footnotes
after each insertion/deletion.
2009-07-03 17:56:47 +02:00
Carsten Dominik d27f15e6bb Publishing: Remember how and where a file was published.
This commit implements better support for publishing the same file in
multiple ways.  For example when publishing a Org file both as HTML
and as a plain text or htmlized source file.

It does this by including information about the target directory and
about the publishing function used into the hash that is used as a
file name to keep a time stamp.
2009-07-03 05:46:57 +02:00
Carsten Dominik d19ebd84c3 Agenda bulk commands: Add Schedule and Deadline
Agenda bulk commands on marked entries now can also set the scheduling
date or a deadline.  Normally, all entries will be set to the
specified date.  However, when writing the change as "++5d" or "++2w",
then each time stamp will independently be shifted by that amount.
2009-07-02 17:10:03 +02:00
Carsten Dominik 956c2cc87a Publishing: Fix publishing of attachments 2009-07-02 14:00:37 +02:00
Carsten Dominik b85b2e1f19 LaTeX export: Avoid infinite loop when environment is not closed 2009-07-02 13:31:28 +02:00
Carsten Dominik ddf013644a LaTeX export: Fix problem with internal links 2009-07-02 09:54:33 +02:00
Carsten Dominik 483463d18f LaTeX export: Fix problem with quotation marks 2009-07-02 09:53:25 +02:00
Carsten Dominik 9a6261df78 Tables: Allow #+TABNAME to be indented 2009-07-02 09:10:20 +02:00
Carsten Dominik de6b866f27 Footnotes: Allow renumbering the fn:N-like footnotes
This commit adds a new action to the footnote actions:
It allows to renumber footnote marks that have the simple form
fn:N where N is a number.  After this action, numbers will start from
1 and increase through the document.
2009-07-01 10:37:03 +02:00
Carsten Dominik c1a4c5901a Plain lists: Improvements to cycling with TAB.
TAB now cycles visibility in plain lists if the cursor is in a plain
list.  This corresponds now to the new default value `t' of
`org-cycle-include-plain-lists'.  If you want to treat plain list
items as part of the outline hierarchy during cycling of outline
headings (this is what a `t' value used to mean), set this variable to
`integrate'.
2009-07-01 09:34:13 +02:00
Carsten Dominik 31e35da863 Improve the paragraph-start regexp to work better with LaTeX commands. 2009-07-01 08:55:40 +02:00
Christopher League 9384f9d741 Feeds: Fix org-feed when retrieve-method is curl or wget
- test on line 312 failed because these methods returned a string instead
  of a buffer

- requesting 'wget actually executed "curl", with bad parameters

- curl needs --silent, so that progress messages don't interrupt content

- atom parser had code to skip HTTP headers, but these are present only
  when using url-retrieve-synchronously; caused errors with curl/wget.
  Instead, remove HTTP headers right after feed buffer is populated.
2009-06-30 19:39:17 +02:00
Carsten Dominik 3d2b4d98c1 LaTeX export: Allow postscript extensions for images
Some propel process LaTeX filed not directly to pdf, but go
through dvi and then to ps or pdf.  In that case, allowed images
are ps and eps files, not pdf and jpg.

This commit adds the two extensions, so that export using that
alternative path can be supported better.  However, it is up to the
user to make sure that the images are actually compatible with the
backend.
2009-06-28 13:00:37 +02:00
Carsten Dominik e5d6bd0cc0 Load org-icalendar when exporting agenda file to ics 2009-06-27 23:39:09 +02:00
Carsten Dominik bcb0cccbe5 Tags-todo searches: No longer force org-tags-match-list-sublevels to t
Patrick Bahr writes:

> I use tags-todo searches in my custom agenda
> commands. Unfortunately, tags-todo does not honour the
> org-agenda-todo-list-sublevels variable which I want to use in
> order to ignore nested todo items. Is there a way to persuade
> tags-todo to do this? I know that there is a variable
> org-agenda-tags-todo-honor-ignore-options which does this for
> org-agenda-todo-ignore-with-date etc. It would be nice if there
> is something similar to this for
> org-agenda-todo-list-sublevels. Even better would be if this
> could be adjusted per individual tags-todo search. For example
> for certain cases I do not want to see nested TODO items but I do
> want to see nested WAITING items. With two tags-todo searches
> having different behaviour on nested todo items this would be
> feasible.

This behavior is a loft-over from the old days, and I am changing
this now.
2009-06-27 12:06:42 +02:00
Carsten Dominik 590a339f99 LaTeX export: Allow a user-defined environment for low-level headings
See the variable `org-export-latex-low-levels'.
2009-06-26 17:35:13 +02:00
Carsten Dominik 94812099b0 Agenda: Add more keys to the view dispatcher 2009-06-26 17:22:48 +02:00
Carsten Dominik 9f91de32e9 Bug fixes:
Make PDF export work on windows.
Use only compatible overlay API.
2009-06-26 13:09:40 +02:00
Carsten Dominik 5bbd1cb2df Use better keys for Bulk action selection 2009-06-26 09:27:08 +02:00
Carsten Dominik dfe2186724 Fix typos 2009-06-26 07:04:22 +02:00
Carsten Dominik 2e3a26ae35 Agenda: Refile and bulk action
This commit implements refiling directly from the agenda.

It also implements a mechanism for selecting a number of entries in
the agenda and then executing a command on all of them.  Possible
actions include archive, refile, todo state setting, and more.
2009-06-24 21:50:42 +02:00
Carsten Dominik 52af11ac17 Fix bug with including org-file during export.
Stefan Vollmar writes:

>  taking up a nice suggestion from Sebastian Rose, I want to
>  present some org source with proper syntax highlighting. However,
>  there is a problem when using "BEGIN_SRC" blocks it seems.
>
>  If one puts this org contents into a file "test.org":
>
>  * One Headline
>  Some Text
>  #+BEGIN_SRC python
>  print "some output"
>  #+END_SRC
>  * Another headline
>  More text
>
>  and renders it from another org-file with:
>
>  #+INCLUDE: "./test.org" src org
>
>  everything will be fine (beautiful, infact) up to and including
>  the print-line - the rest of the org file is not rendered as
>  source but interpreted.
2009-06-23 14:12:23 +02:00
Carsten Dominik 56cf00c9bc LaTeX export: Fix problem with image names containing underscore
Reported by Arne Freyberger.
2009-06-23 06:15:01 +02:00
Carsten Dominik 42fc12f433 Macros: Use comma as argument separator 2009-06-23 05:45:35 +02:00
Carsten Dominik e7da07cba5 Macros: Fix bug in precessing definitions. 2009-06-22 14:48:34 +02:00
Carsten Dominik c76aaf8037 Agenda: Update agenda line after clocking out.
This was a request by Manish
2009-06-22 13:46:02 +02:00
Carsten Dominik c1c3c3f7cb Tables: Allow forced alignment to left or right.
Michael Brand writes:

>  2) One could like to have configurable left/right alignment, even
>     combinable with column width, e. g.
>
>  | <l10>      | <r>       |
>  | 3.14       |      0x10 |
>  | 3.141592=> | 0x32 0x10 |

Good idea, I would say.
2009-06-21 22:40:45 +02:00
Carsten Dominik 03efd877bc Clock: Add more hooks
This commit add four hooks to the clocking code.

Patch by Benjamin Andresen.
2009-06-21 17:26:52 +02:00
Carsten Dominik 51ad548037 Better default description for link to Org-mode heading
Requested by Stefan Vollmar.
2009-06-20 21:10:55 +02:00
Carsten Dominik daa2800ff3 Add Wes Hardaker's generic exporter as a contributed package 2009-06-20 20:53:03 +02:00
Carsten Dominik 743b6e396b Add bindings for S-iso-lefttab and backtab to orgtbl-mode
Requested by Derek Upham.
2009-06-19 17:46:27 +02:00
Carsten Dominik 4f0bbb66d0 Fix ditaa.jar path
The default path had become wrong after we moved org-exp-blocks to the
core, because it was defined relative to the location of the Lisp file.
2009-06-19 12:15:28 +02:00
Carsten Dominik 4643c2d7f3 Export: Find macro definitions in #+SETUPFILE definitions
Macro definitions can now be included in a file linked to by a
directive #+SETUPFILE.
2009-06-19 07:39:26 +02:00
Carsten Dominik 9d59bc0d29 Column view: Skip COMMENT and ARCHIVE trees when capturing
Proposal by Giovanni Ridolfi.
2009-06-18 17:35:59 +02:00
Carsten Dominik 164678d549 Column view: Protect vertical bars in fields when capturing column view
Capturing column view creates an Org-mode table, where the field
values cannot have vertical bars.  These are now protected.
2009-06-18 17:25:03 +02:00
Carsten Dominik e23665ee66 LaTeX export: Make the verbatim environment configurable 2009-06-18 09:30:00 +02:00
Carsten Dominik 57c12e8bef Subtree cloning: Also modify inactive timestamps 2009-06-18 09:14:17 +02:00
Carsten Dominik 8e34ea7b48 HTML export: Make table row tag customizable
Xin Shi writes:

> Hello Experts,
>
> I use org-mode to produce a lot of big tables with numbers in
> them. When I present these tables by HTML, I found it's hard to
> keep track which row it is. I'm wondering if it's possible to
> implement additional class attribute to the <tr>, such as:
>
> <table class="sample">
> <tr class="d0"><td>One</td><td>Fish</td></tr>
> <tr class="d1"><td>Two</td><td>Fish</td></tr>
>
> <tr class="d0"><td>Red</td><td>Fish</td></tr>
> <tr class="d1"><td>Blue</td><td>Fish</td></tr>
> </table>
>
> So, that in the CSS file, it'll be easier to implement the color:
>
>
> <style type="text/css">
> table.sample {
> 	border: 6px inset #8B8378;
> 	-moz-border-radius: 6px;
> }
> table.sample td {
> 	border: 1px solid black;
> 	padding: 0.2em 2ex 0.2em 2ex;
>
> 	color: black;
> }
> table.sample tr.d0 td {
> 	background-color: #FCF6CF;
> }
> table.sample tr.d1 td {
> 	background-color: #FEFEF2;
> }
> </style>

This commit introduces a new variable `org-export-table-row-tags'
that can be used for this and similar purposes.  For the example
of the poster, one could use:

 (setq org-export-table-row-tags
       (cons '(if head "<tr>"
                (if (= (mod nline 2) 1)
                    "<tr class=\"d1\">"
                  "<tr class=\"d0\">"))
             "</tr>"))
2009-06-18 07:07:22 +02:00
Carsten Dominik 0cd85674a5 Fix stuff for org-exp-blocks.el 2009-06-17 18:16:26 +02:00
Carsten Dominik cdb13c76e4 Remember: Allow template target headline to be a function
The target headline in a remember template may by be a function that
will be called to computer the real headline to be used.
2009-06-17 16:49:56 +02:00
Carsten Dominik a5f080361a Clock: Manipulating effort strings, and a mode line menu
Clicking on the clock in the mode line now pops up a menu with
clocking options.

A new command `C-c C-x C-e' allows to set or change the effort
estimate of the task currently being clocked.  This is mainly useful
when using an alert notification when the task should be finished.

Based on a patch by Konstantin Antipin.
2009-06-17 07:40:22 +02:00
Carsten Dominik 389a2cc336 Docstring improvement 2009-06-14 08:11:49 +02:00
Carsten Dominik b15e173215 Export BBDB anniversaries to iCalendar.
When the variable `org-icalendar-include-bbdb-anniversaries' is set.
2009-06-11 17:42:28 +02:00
Carsten Dominik 7b3d0d40f5 New faces for checkbox statistics 2009-06-11 16:19:07 +02:00
Carsten Dominik a6449c0324 Fix positioning bug when returning from source code editing 2009-06-09 20:19:13 +02:00
Carsten Dominik 05438ec08f Minor fixes 2009-06-09 19:23:59 +02:00
Carsten Dominik d27d3e5fa6 LaTeX export: Fix problems with use of \verb in headlines
See http://article.gmane.org/gmane.emacs.orgmode/14257
2009-06-09 06:26:59 +02:00
Carsten Dominik 5c30228ee0 Fix bug with indentation interpretation during export 2009-06-08 19:57:19 +02:00
Carsten Dominik 28e95ee828 Abort remember if the remember buffer is empty
Following a report by Ryan C. Thompson
2009-06-08 19:45:19 +02:00
Carsten Dominik 737757a5fd Allow for extra indentation of block contents. 2009-06-08 09:39:19 +02:00
Carsten Dominik 5f3b2c275c New hook `org-src-mode-hook'.
This commit adds a new hook `org-src-mode-hook'.

The Hook  run after Org switched a source code snippet to
its Emacs mode.  This hook will run

- when editing a source code snippet with \"C-c '\".
- When formatting a source code snippet for export with htmlize.

You may want to use this hook for example to turn off `outline-minor-mode'
or similar things which you want to have when editing a source code file,
but which mess up the display of a snippet in Org exported files.
2009-06-08 08:52:25 +02:00
Carsten Dominik ef57d7b90c Indentation: Make #+end line up with #+begin 2009-06-07 23:21:55 +02:00
Carsten Dominik ea846889f2 Base block indentation after editing on #+begin line 2009-06-07 23:10:36 +02:00
Tassilo Horn 118ee1deaf Require message.el in org-gnus-store-link if needed.
Conflicts:

	lisp/org-gnus.el
2009-06-07 22:02:02 +02:00
Carsten Dominik 73c522f727 New file org-src.el, split out of org.el 2009-06-07 16:28:10 +02:00
Carsten Dominik 8a9e604a7a New indentation treatment for blocks during export
Now we also deal with center, quote, and verse blocks.
2009-06-07 16:11:14 +02:00
Carsten Dominik c4f90084d7 Docbook export: Respect example indentation when parsing plain lists
Examples and source code blocks that are not sufficiently indented
will now terminate plain lists.
2009-06-07 08:52:02 +02:00
Carsten Dominik 75117098f0 HTML export: Respect example indentation when parsing plain lists
Examples and source code blocks that are not sufficiently indented
will now terminate plain lists.
2009-06-07 08:44:50 +02:00
Carsten Dominik 574f987670 LaTeX export: Respect example indentation when parsing plain lists 2009-06-07 08:12:49 +02:00
Carsten Dominik 855f85b46f New face for clock in mode line. 2009-06-06 08:13:40 +02:00
Carsten Dominik d798741913 Fix bug in org-gnus.el
Patch provided by fengli AT gmail DOT com, forwarded by Tassilo Horn
2009-06-05 12:46:30 +02:00
Carsten Dominik 4cc6309f6f Remember the original indentation of source code snippets
As the export preprocessor removes indentation from indented blocks,
this causes conflicts about interpreting indentation as list
termination.  Now the original indentation is stored in a text
property, so hopefully  the exporters can make use of this information
in due time.
2009-06-05 08:55:40 +02:00
Carsten Dominik 22d5daa11a Respect [TABLE-OF-CONTENTS] also for LaTeX export
Reported by Yuva.
2009-06-04 16:52:02 +02:00
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 96989dc01e Agenda: Allow custom command options to work better
When the agenda buffer for an agenda series is created, this was so
far done without the options of the custom agenda command in  place.
This meant that some options would not take effect, because the only
place where that did would have an effect was during creation of that
buffer.

This commit makes sure that the global options of an agenda series are
in fact in place when the buffer is created.
2009-06-04 09:23:57 +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 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 a5dc9456dd New option `org-clock-out-switch-to-state'.
Can be used to change the TODO state when clocking out.
2009-06-02 17:01:11 +02:00
Carsten Dominik b95c2a5e9a Better treatment of face inheritance. 2009-06-02 14:50:19 +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 5ce1c5708f Clocking: Fix bug in the new cocking code
The cursor could move while collecting the total time for the current
subtree.
2009-05-28 19:49:11 +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 1fc138838a Blocks: Make editing indented blocks work correctly 2009-05-28 17:44:12 +02:00
Carsten Dominik 0b60bf8aac Export: Allow center, quote, and verse markers to be indented 2009-05-28 17:44:12 +02:00
Carsten Dominik 2be3df3fd8 Export: Allow backend-specific code to be indented
Things like #+latex: and #+begin_html...#+end_html
can now be indented.
2009-05-28 17:43:57 +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 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 3ee470daa1 Agenda: Fix bug with killing entries from the agenda
Nicolas Goaziou writes:

> As I was saying in anoter post, it looks like there's something
> weird happening when using C-k in agenda view:
>
> 1. Create two new remember entries (i.e. test and test2) with the
> same tag (I used @office)
> 2. Narrow down the agenda view to only see the @office entries.
> 3. Kill the last but one entry (it should be "test") : both of
> "test" and "test2" disappear frow the view. Actually, "test2" is
> not properly killed, but it is scary nonetheless.
>
> It only happens with two last entries.
>
> Is anyone able to reproduce this ?
2009-05-23 23:03:00 +02:00
Carsten Dominik 6d406766df LaTeX export: Fix bug when exporting a region
Exporting a region to LaTeX did not recognize section header
correctly.  Fixed now.
2009-05-23 08:13:05 +02:00
Carsten Dominik ab643f15d9 Export: Protect pushing to x-selection, for non-x environments 2009-05-22 17:15:06 +02:00
Carsten Dominik e88564bbba Agenda: New face for today.
There is now a separate for the date of today,
`org-agenda-date-today'.

Patch by Dmitri Minaev
2009-05-22 10:04:56 +02:00
Carsten Dominik 9780353171 Agenda: Fix bug when computing agenda appointments with restriction in place 2009-05-21 18:47:33 +02:00
Carsten Dominik db839f4f03 LaTeX export: Fix a variable definition 2009-05-21 18:01:08 +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 f49cee2cc4 Column View: Handle empty fields when computing 2009-05-21 10:47:56 +02:00
Carsten Dominik 91f77d7029 Export: Make all export commands push the result to the kill ring
All export commands now push the result to the kill ring by default.
This is subject to the variable `org-export-push-to-kill-ring'.

Also, this commit adds a new variable
`org-export-show-temporary-export-buffer' which can be used to turn
off the display of the temporary buffer containing the exported text.
Since this stuff is now automatically pushed onto the kill ring, some
people might prefer not to see this buffer.
2009-05-21 09:14:33 +02:00
Carsten Dominik 11a7656069 Column View: Implement new operators
Mikael Fornius writes:

> This is my suggestion of an implementation of min/mean/max computation
> in columnview summaries. If you like it feel free to use it.
>
> New operators: {min}, {max} and {mean} possibly prefixed with : for use
> with timevalues.
>
> Example from my running exercise diary:
>
> #+COLUMNS: %DISTANCE{+;%.1f} %HEARTRATE{mean;%.1f} %SPEED{:min} %CALORIES{+}
>
> Gives a colview with summaries:
>
> total distance, mean heartrate, fastest speed (min/km) and total
> calories.
>
> I have tested it on emacs-23 and it works well for me now, also with the
> interactive colview functions.
>
> But you never know really. ;-) Anyway, there should not be any emacs-23
> specific elisp code added afik.
>
> (Because I do not use xemacs I have not tested it with xemacs but the
> small changes I made should be compitable to both xemacs and emacs. I
> would appreciate if someone on this list who uses xemacs will give it a
> try for me. Thanks!)
>
> (This fix also opens up for using user defined lisp functions to
> calculate colview summaries, but I am not sure if that is something
> useful. Like this:
>
> (defun std (&rest values)
>  "Compute standard deviation."
>  ...)
>
> #+COLUMNS: %DATA{eval:std}
>
> If someone finds this attractive it would now be easy to implement as well.)
>
2009-05-21 07:56:55 +02:00
Carsten Dominik 7ca0b03b72 Merge branch 'recursive-todo-stats' 2009-05-20 10:50:13 +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 f5fc821214 HTML export: Make xml declaration configurable 2009-05-20 08:24:49 +02:00
Carsten Dominik 83e82f9ccd Publishing: Fix `C-u C-c C-e X'.
Publishing a project with prefix argument to
force publishing was broken.  Actually, the entire interactive side of
this function was implemented badly.  Fixed now.
2009-05-19 17:46:09 +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 b681a86075 ASCII export: Hide output buffer and dump exported text to kill ring 2009-05-19 08:12:56 +02:00
Carsten Dominik 9236cff71a ASCII export: Fix bug when exporting links 2009-05-17 23:22:52 +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 0c29415de8 iCalendar export: Fix problem with match data.
Harri Kiiskinen writes:

> There is an elusive bug in the ICal export functions. To
> demonstrate it, open this file, allow for the use of the local
> variable, and run 'org-export-icalendar-this-file'. What I get is
> the message "Wrong type argument: stringp, nil"
>
> -----------------------------
> #+FILETAGS: test
> * TODO header
>
> # Local Variables:
> # org-use-tag-inheritance: "^[t]"
> # End:
> -----------------------------
>
> Now, the funny thing is, that if you change the filetag from
> "test" to "est", close the file, and open it again, the file will
> be exported fine! It seems, that if the filetag does match the
> regular expression in org-use-tag-inheritance, then the result is
> error.

This bug was due to a missing save-match-data around a call to
org-get-tags-at.  However, when studying this bug it turned out
that explicitly checking for the archive tag is not needed,
because we already have a call to `org-agenda-skip' in the same
loop.
2009-05-16 16:05:50 +02:00
Carsten Dominik cad9a82ea4 Macros: Use semicolon as argument separator 2009-05-15 16:20:52 +02:00
Carsten Dominik fbe4f09cd8 HTML export: Add XML declaration
Patch by Sebastian Rose
2009-05-15 09:21:46 +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 0962662663 Agenda: Fix bug with time of day for clocking lines
Peter Frings writes:

> Good day, org-ers
>
> I have seen a *small* problem in the Agenda's log mode.
>
> Org-mode version 6.26d
> GNU Emacs 22.3.1 (i386-apple-darwin9.5.0, Carbon Version 1.6.0) of 2008-11-01
>
>
> I have this in time-sheets.org:
>
>
> * Project AI
> ** Enhancement PT <2009-04-30 Thu 10:00-11:00 +1w>
>    CLOCK: [2009-05-14 Thu 09:55]--[2009-05-14 Thu 10:45] =>  0:50
>
>
> But, the Agenda shows this:
>
> Day-agenda (W20):
> Thursday   14 May 2009
>                9:00...... ----------------
>   planning:    9:12- 9:55 Clocked:   (0:43) BUSY Notifications
>   time-sheet: 10:00-11:00 Clocked:   (0:50) Enhancement PT
>   time-sheet: 10:00-11:00 Enhancement PT
>               10:00...... ----------------
>               11:00...... ----------------
>

He is right.  Progress lines should never take their
time from the headline, always only from the triggering line.
2009-05-14 14:24:17 +02:00
Carsten Dominik cc440f8529 LaTeX export: Fix bug in removal of TODO keywords
There was a problem that not in all cases the correct regexp was used
to find TODO keywords.
2009-05-14 10:20:04 +02:00
Carsten Dominik d885d8f686 Agenda: Allow to start with log mode active
Benjamin Andresen writes:

> I was curious as to why a value such log-mode wasn't customizable
> to be run on start-up as follow-mode and clock-report-mode are.
>
> If Carsten thinks this is a good idea, I've attached a patch that
> may shave of 5 seconds of him adding it. It applies cleanly to
> current git HEAD.

This commit applies Beanjamin's patch
2009-05-14 09:40:53 +02:00
Carsten Dominik 80fb1b566a LaTeX export: Allow uncentered tables 2009-05-14 09:33:07 +02:00
Carsten Dominik 2e9202362f Publishing: Allow to publish the Org source file
There is now a new export function, `org-export-as-org', which
basically creates a copy of the Org file with things like archived
trees, commented trees, and trees deselected by export tags,
stripped.
2009-05-14 09:33:00 +02:00
Carsten Dominik 610f0004c8 Modularize `org-yank'.
Patch by Derek Upham.
2009-05-12 16:29:58 +02:00
Carsten Dominik 90204fe238 LaTeX export: Make TODO keyword markup configurable 2009-05-12 12:27:56 +02:00
Carsten Dominik ab0397758e Export: More default macros.
This commit adds:

{{{date(FORMAT)}}} current date/time, formatted with
`format-time-string'

{{{modification-time(FORMAT)}}} date/time of last modification of
file, formatted with `format-time-string'

{{{input-file}}} the file name of the source Org file.
2009-05-11 22:44:04 +02:00
Carsten Dominik 0a01a7a12b iCalendar export: Make it possible to export only unblocked TODO
entries.

Guy Wiener writes:

> Hello everyone,
>
> I use orgmode to write down TODO tasks with dependencies (using
> org-enforce-todo-dependencies). I want to export the tasks to an
> iCalendar file, but *without* the blocked tasks (i.e, tasks that have
> unfinished dependencies). The agenda view hides these tasks if you set
> org-agenda-dim-blocked-tasks. It there a way to configure the
> iCalendar export to ignore these tasks too, like in the agenda view?

This commit implements this, when the value of
`org-icalendar-include-todo' is the symbol `unblocked'.
2009-05-10 12:32:05 +02:00
Carsten Dominik a607b5b218 Checkboxes: Allow recursive statistics.
Patch by Richard Klinda.
2009-05-10 09:06:03 +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 e15ada501b Initialize time zone from environment 2009-05-08 09:14:59 +02:00
Carsten Dominik 8a1e3d0773 HTML export: Specify the scope parameter in table header fields 2009-05-08 06:34:13 +02:00
Carsten Dominik e28c8b7329 New option `org-export-html-table-use-header-tags-for-first-column' 2009-05-07 15:05:41 +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 8ac2704c26 New variable `org-ical-timezone'. 2009-05-06 15:49:24 +02:00
Carsten Dominik a01ae6ee38 Export: Respect the description in a coderef
Shaun Johanson writes:

> Consider the following Org file:
>
>   * Test
>
>    See [[(foo)][FOOBIE]]
>
>    #+BEGIN_EXAMPLE
>    <foo>: blah blah       (ref:foo)
>    #+END_EXAMPLE
>
> Question 1)
>  In Org mode the link displays as FOOBIE, in the exported HTML it
>  displays as (foo). Is there any way to cause the link to use the
>  description (FOOBIE) in HTML? If not would this be a useful option
>  to add?

This was a bug, fixed now.
2009-05-06 12:17:24 +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 88673a8724 Clock history: Second try to get fontification right. 2009-05-05 14:44:05 +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 d79696d914 Export: org-export-latex-image-default-option can be buffer-local
Jason Riedy writes:

>  I'm trying to change org-export-latex-image-default-option
>  to "width=.7\\linewidth" in a file local variable.  It's set
>  correctly as a buffer local variable, and it's having no
>  effect on the export.  My guess is that the buffer-local
>  property is stopping it as soon as org-export-as-latex runs
>  set-buffer.
>
>  I can smuggle the value in by adding an entry to org-export-plist-vars
>  referring to org-export-latex-image-default-option and pulling the value
>  from the plist, but that feels incorrect.

It is actually the correct way to do this, and I have
implemented this change.
2009-05-05 10:22:37 +02:00
Carsten Dominik 93e63999d5 HTML export: Treat explicit links description better 2009-05-04 21:05:43 +02:00
Carsten Dominik 46532af16d ASCII Export: Implement export to buffer
Samuel Wales writes:

> I frequently export to ascii without wanting a file to be created,
> especially not in a useful directory, as the files are temporary.
>
> Is there a way to export ascii to just a buffer?

There is now, `C-c C-e A'.

This commit also implements commands
- org-export-as-ascii-to-buffer
- org-replace-region-by-ascii
- org-export-region-as-ascii

which are similar to what is available for HTML and LaTeX.

`C-c C-e A' used to be the key for publishing all projects.
This functionality has now been moved to `C-c C-e E'.
2009-05-04 18:26:42 +02:00
Carsten Dominik 34a91b7f5b Moved `org-reset-checkbox-state-subtree' to org-list.el 2009-05-04 16:57:26 +02:00
Carsten Dominik 12ec4f4b67 Remember: Force selection of a valid template
Scot Beker writes:

>  I have org-remember working successfully (I can't believe that it took
>  me so long to experiment with it.  It has made a huge difference in my
>  work).
>
>  But if, after calling the extension with C-c r, I type a "wrong" tag
>  selector (e.g. I mistype a right one), I get
>  (1) the error message 'no template'  (good)
>  (2) a remember buffer without a bullet point, with the point at the
>  very top of the file (sure, what do I expect?)
>  (3) but, having realized my mistake, I can't get out of it gracefully.
>  I can't abort (C-c C-k), and can't (C-c C-c).
>  I get the error message    "Args out of range 0, 1"
>
>  Any idea whether I've set something up wrong or if org just has no
>  mercy on those who can't manage to type one of the selected values?
>  Otherwise, org-remember works well.

This situation is now avoided by forcing the selection of a valid
template.
2009-05-04 16:06:33 +02:00
Carsten Dominik 52a8783d1d LaTeX export: Fix bugs with exporting the region
Matt Lundin writes:

>  When I select a region and invoke
>  org-replace-region-by-latex, the region is removed, but no
>  latex output is put in its place. In other words, the region
>  is simply deleted.
>
>  Strangely, if I select multiple headlines, they are
>  converted to latex.  But if I select only text underneath a
>  headline, it is not replaced.

This is hopefully fixed now.
2009-05-04 07:46:46 +02:00
Carsten Dominik b3460507b1 XEmacs: Fix bug in column view
Alex Mizrahi writes:

>  I'm trying to use column view to work with effort estimates, but it
>  does not seem to work in XEmacs.  When I press C-c C-x C-c columns
>  show up in agenda view (I'm not sure if 100% correcly, but
>  more-or-less so), but when I try editing anything, column view goes
>  away and error appears:
>
>   Wrong number of arguments: #<subr local-variable-p>, 1
2009-05-04 05:26:42 +02:00
Carsten Dominik abc874cefc Export: New hooks for Chris Gray's LaTeX/HTML blocks
Chris Gray had the idea to have arbitrary blocks turned in LaTeX
environments and HTML divs.  These three new hooks allow
implementation has an add-on rather than a patch.
2009-05-02 09:24:28 +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 47227d087a Remember: Fix auto-save issues
Carsten Dominik writes:

> On Apr 26, 2009, at 12:08 AM, Samuel Wales wrote:
>
> > I noticed the following regarding
> > org-remember-backup-directory:
> >
> > 1) auto-saving does not save contents
> >    - solution: put (auto-save-mode 1) before or after (not
> >      sure which) the call to org-set-local in the
> >      following lines in org-remember:
> >
> >       # 	  (expand-file-name
> >       # 	   (format-time-string "remember-%Y-%m-%d-%H-%M-%S")
> >       # 	   org-remember-backup-directory))
> >       #     (save-buffer)
> >       #     (org-set-local 'auto-save-visited-file-name t))
> >       #   (when (save-excursion
>
> Done.
>
>
> > 2) save-buffer is called before there are any contents
> >    - this causes files without useful content to stick
> >      around in the dir if the buffer is killed or
> >      something.
> >    - solution: don't save the buffer; let auto-saving do
> >      that work.  will this work?
>
> Usually, the template expansion will have filled in stuff like
> links and initial contents, so I would prefer to keep the
> save-buffer here and let the user deal with the extra files.
>
> > 3) if you have auto-save-file-name-transforms set,
> >    auto-saving is done according to that variable instead
> >    of saving in place.
> >
> > I am now turning that variable off, locally in the remember buffer.
> > Does that fix the problem?
>
> - Carsten
>
> >    - solution: is this an emacs bug?  i am not sure.  the
> >      auto-saving should be done in place, saving in
> >      org-remember-backup-directory and not saving in the
> >      place where the transforms variable tells it to save.
> >      perhaps each user can kludge transforms or perhaps
> >      emacs needs fixing?  i have reached debugging ability
> >      limit.
2009-04-30 15:32:45 +02:00
Carsten Dominik 5f86fd7ae2 LaTeX export: Protect eqnarray* and similar environments.
Environment names ending in a star were not properly protected.  Now
they are.
2009-04-29 21:36:28 +02:00
Carsten Dominik 0fb28c3405 Plain lists: Fix regular expression.
There was a bug in a regular expression, visible when
`org-list-two-spaces-after-bullet-regexp' is set to ?)
2009-04-29 21:21:36 +02:00
Carsten Dominik 4b6f0cf77b Optimization: Make org-end-of-subtree much faster 2009-04-24 16:45:01 +02:00
Carsten Dominik f4f1d5cfd5 Stuck projects: Improve docstring of org-stuck-projects 2009-04-24 15:37:38 +02:00
Carsten Dominik 06491c24d8 Agenda: more optimization 2009-04-24 13:31:20 +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 1c9d7a6d73 org-protocol: Remove dependency on url.el
Patch by Sebastian Rose
2009-04-23 06:45:00 +02:00
Carsten Dominik ff07d933ea PDF export: Make processing commands configurable 2009-04-23 06:39:59 +02:00
Carsten Dominik 10cc01f7e7 Agenda: Allow to find multiple same-day time stamps in one entry
Tassilo Horn writes:

>  I have this entry in an org-file.
>
>  --8<---------------cut here---------------start------------->8---
>  ** bung Grundlagen der Softwaretechnik (B 016)        :teaching:
>    <2009-04-22 Wed 08:30-10:00 +1w>
>    <2009-04-29 Wed 10:15-11:45> (Fr Hannes bernehmen)
>  --8<---------------cut here---------------end--------------->8---
>
>  I expect it to be displayed every wednesday after 2009-04-22
>  for 08:30-10:00 and on 2009-04-29 it should be displayed
>  twice: one at the usual time and one for 10:15-11:45.
>
>  But the agenda shows only the regular entry (08:30-10:00)
>  and omitts the exception.  If I reorder the timestamps, so
>  that the exception comes first, only the exception will be
>  shown on 2009-04-29.  Every other wednesday shows the
>  regular repeater date.
>
>  What do I have to do to make that entry showing up twice on
>  29th April?

This commit adds a new option
`org-agenda-skip-additional-timestamps-same-entry'.  When set
to t, an entry that has multiple active time stamps will get
multiple lines in the agenda.
2009-04-22 09:54:18 +02:00
Carsten Dominik 38b5a9e704 Clock: New variable to allow finding a recent task with `org-clock-goto' 2009-04-22 06:41:15 +02:00
Carsten Dominik ec773949d1 Export: Handle empty drawers, and drawers that are missing the :END:
Export could loose large parts of a document if an empty drawer was
present.
2009-04-22 06:37:00 +02:00
Carsten Dominik 654e629ed9 Clock: Make `C-c C-x C-j' jump to most recently clocked task as well.
If there is no running clock, this command will go to the most
recently clocked task.
2009-04-21 20:25:30 +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 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
Carsten Dominik 642c6f7c6a Export: Reset the list of preferred targets
The list of preferred targets needs to be reset for each run of the
preprocessor.

Reported by Bernt Hansen.
2009-04-19 22:31:12 +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 6316b53c46 LaTeX export: Fix bugs with timestamp export.
The formatting of timestamp keywords was wrong.
2009-04-19 07:46:54 +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 13fe6b1858 Org-protocol.el: Fix encoding problems, and call server-edit
Patch by Sebastian Rose.
2009-04-18 20:53:32 +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 68ffdca675 Docbook export: Improve timestamp handling 2009-04-18 08:34:51 +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
Carsten Dominik 53d0746d8d Export: Use custom IDs.
Users can now define custom IDs for use in HTML export.
These IDs are stores as property CUSTOM_ID.  When present, HTML will
prefer using these over automatic targets like "sec-N.M".
2009-04-17 06:10:17 +02:00
Carsten Dominik c6fd49726f LaTeX export: Fix some problems with protection of inline latex commands
Scot Becker writes:

>  Prompted by Chris Gray's request for org markup in Latex
>  environment, I thought I'd submit a note (for his sake and
>  others') about a few quirks of org-latex-export's handling
>  of embedded Latex markup in org documents.  I have been
>  puzzling with these for a while but only discovered the
>  problem triggers (and workarounds) this morning just before
>  Chris' mail arrived.  These are both about inline Latex
>  commands:
>
>  I use a few custom commands \mycommand{like this}, and
>  occasionally have to invoke the odd bit of standard LaTeX
>  markup, for example /when \textbf{embedding bold text}
>  inside italics/.  For the most part, these work fine, but
>  I've discovered the following two 'gotchas' that happen when
>  exporting to LaTeX.
>
>  1.  Inline Latex commands get their final curly brace
>  escaped with a slash (and therefore don't work) if they
>  spill over into another line, i.e. if they contain one or
>  more newlines.  This is true also for standard LaTeX
>  commands like \textbf{} and \emph{}.
>
>  ----------------SAMPLE------------------------
>  \mycommand{So, for example this
>  wrapped setence gets a slash added just after the
>  final period and before the curly brace.}  Org is quite
>  helpfully escaping the slash for LaTeX, apparently.
>
>  \mycommand{no trouble if it's all on one line}
>  ------------------END-------------------------
>
>  The workaround of putting all such commands on one line is
>  no hardship for me, since I use visual-line-mode in Emacs 23
>  and keep my paragraphs as single logical lines.  It might be
>  harder for those accustomed to hard-wrapping their
>  paragraphs.
>
>
>  2.  If you have two inline Latex commands on the same
>  logical line, org's latex export doesn't treat the text
>  between them in its usual manner.  Italics get processed,
>  but not the latexification of quotes.  ("this" --> ``this'')
>  For example:
>
>  ----------------SAMPLE------------------------
>  I have a short custom command to tell Latex to invoke a
>  Hebrew-language right-to-left environment when I want to refer to a
>  Hebrew phrase like this: \heb{phrase here}.  But then if I "quote
>  something,"  and follow that by another \heb{phrase}, the inner
>  quotation marks don't get processed.  Oddly enough, this problem is
>  only triggered when there is an inline Latex command both before and
>  after the  quoted material on the same logical line.
>
>  Now if you put a footnote in between those two inline Latex commands,
>  the output is really nutty:
>
>  And \heb{phrase here} with a footnote[fn:: Footnote here.]  I'm not
>  sure what funky org commands get invoked, but again, only when
>  bookended by an inline Latex command like \heb{phrase here}.
>  ------------------END-------------------------
>
>  The nutty output is a number in square brackets like
>  this[1], with the following at the bottom of the document:
>
>  \$\^{}{1}\$ Footnote here.
>
>  This has a the opposite work-around: break the lines so
>  those elements are not all on the same logical line. Put in
>  a few newlines.  Latex, of course doesn't care.  Do take
>  care not to start a newline with the org-footnote, like this
>  [fn:: Org doesn't parse a footnote command which starts on
>  its own line.]
>
>  This is just "for what it's worth" to those who use org-mode
>  as a front-end to writing for LaTeX.

These problems were caused by a regular expression for
matching latex macros with arguments, that did not allow any
newlines.  Now we have a much better regexp, that even
allows for three levels of nested braces.
2009-04-16 14:17:51 +02:00
Carsten Dominik cb302b1715 Remember: Allow filing to non org-mode files.
If the heading field in the remember template entry is either `top' or
`bottom', it is now OK to file to a file that is not in org mode, and
the content of the remember buffer is inserted without forcing an
Org-style header.
2009-04-15 18:22:53 +02:00
Carsten Dominik f701ba332d Feeds: Support for parsing atom feeds.
Patch by Magnus Henoch.
2009-04-15 16:37:13 +02:00
Carsten Dominik c0f97f14e2 Tables: Allow standard references in remote references.
Rares Vernica writes:

>  I think the standard references do not work correctly in the
>  "remote" function. Moreover, the "edit all formulas" (C-c ')
>  window replaces the internal references with standard
>  references. Even if I toggle the references back to internal
>  ones, the references in the "remote" function do not get
>  updated.
>
>  Here is an example:
>
>  #+TBLNAME: TableA
>  | 101 |
>  #+TBLFM: @1$1=remote(TableC,@1$1)
>
>  #+TBLNAME: TableB
>  | A1 |
>  #+TBLFM: @1$1=remote(TableC,A1)
>
>  #+TBLNAME: TableC
>  | 101 |
>
>  If I do C-c * in TableA, it works correctly. In TableB it
>  doesn't. If I do C-c ' in TableA and then (with or without
>  C-c C-r) C-c C-c and C-c *, then the contents of TableA will
>  be equivalent to the ones of TableB and the reference will
>  be broken.

Standard references like A1 are now allowed in call to
remote().
2009-04-15 15:16:05 +02:00
Carsten Dominik 06ddc5e9d2 Tables: Don't modify remote references when changing a table
Rares Vernica writes:

>  I think I found another bug related to remote
>  references. When I insert/remove a row/column using the
>  table commands, the remote references to other tables are
>  also updated. I think org treats "remote" as a regular
>  function and updates the references inside it.
>
>  Here is an example:
>
>  #+TBLNAME: TableA
>  | 101 |
>  #+TBLFM: @1$1=remote(TableB,@1$1)
>
>  #+TBLNAME: TableB
>  | 101 |
>
>  If I go in the cell of TableA and do M-S-down arrow, I get
>  the following:
>
>  #+TBLNAME: TableA
>  |     |
>  | 101 |
>  #+TBLFM: @2$1=remote(TableB,@2$1)
>                             ^^^^
>
>  As you can see the remote reference has been updated. I
>  similar update happens when I remove a row or insert/remove
>  a column.

This commit makes sure that references inside calls to
remote() are not touched.
2009-04-15 15:15:17 +02:00
Carsten Dominik 1bc9b1e302 LaTeX export: Fix regexp bug.
Report and patch by Baoqiu Cui
2009-04-15 08:34:31 +02:00
Carsten Dominik 281a116938 Feeds: Avoid problems with sha1.el in Emacs 22
sha1-string is not autoloaded in sha1.el as in the version distributed
with Emacs 22.  Instead of relying on autoloads, the sha1 library is
now required by org-feed.el.
2009-04-14 18:02:41 +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 e06b3e5d25 HTML export: New span element around time stamps
New wrapper span around keyword plus time stamp, with class
timestamp-wrapper.

    .timestamp-wrapper {float: right;}

could be a nice entry in a CSS style file.
2009-04-14 13:17:20 +02:00
Carsten Dominik 633e8cdd90 Clock: Fix bugs when resuming the clock.
Adam Elliot writes:

>  Automatically resuming the clock after an Emacs restart
>  fails under the following cases:
>
>  1. If org-log-states-order-reversed set to t (default), and
>     a state change line precedes the clock line to resume.
>     Error message is "Cannot restart clock because task does
>     not contain unfinished clock".
>
[...]
>  2. If org-log-states-order-reversed set to nil.  Error
>     message is the same.  Reason: point is placed *after*
>     last clock line and so fails looking-at test.
>

This commit fixes the problem, in a slightly different way
than Adam proposed.  Instead of trying to fix the old way to
find the position of the clock, we now simple search the
entry if there is an unfinished clock and go there.  Since
new clocks are added before older ones, this should be a
safe bet.
2009-04-14 09:50:05 +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 008969cd6f Add intangible property for emacs 23
It seems that Emacs 23 does again need the intangible text property.
2009-04-13 08:48:12 +02:00
Carsten Dominik 933137aa02 Export: Handle undefined variables.
Some of the standard export options are now defined in backend
specific files.  This commit makes sure that building the options
property list will not cause an error because of unneeded (for the
backend) undefined variables.
2009-04-12 08:22:39 +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
Carsten Dominik 325164a1d2 org-feed.el: Fix an undefined-variable bug 2009-04-09 17:26:49 +02:00
Carsten Dominik f48c35a8e6 Export: Start paragraphs after the end of literal examples.
Patch by Baoqiu Cui.
2009-04-09 09:09:34 +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 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 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 b5c9ebef58 TODO states: Case-sensitive matching during TODO changes 2009-04-05 08:42:08 +02:00
Carsten Dominik d6b91c514b org-protocol: Better treatment of greedy processing 2009-04-04 23:33:24 +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 f2cbe79383 Agenda: Fix regexp bug that leads to incorrect time display 2009-04-03 17:43:30 +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 20bc495a63 Agenda: Add notes to log book entries
If the trigger for a log mode entry in the agenda has notes, for
example a note associated with a state change or with a clock entry,
the first line of the notes will now be added to the logbook entry.
You can turn this off the with new variable
`org-agenda-log-mode-add-notes'.
2009-04-03 10:25:02 +02:00
Carsten Dominik db2d759979 Agenda: New hook for cleaning up the fancy diary buffer 2009-04-02 18:20:47 +02:00
Carsten Dominik 8235075514 Remember: Take annotation and initial from plist, if defined.
The annotation and initial contents for a remember template are
normally taken from the variables `annotation' and `initial', which
are bound by remember.  We now also check the property list for such
values, so that the link generating routine can force the right values
in there.
2009-04-02 17:27:52 +02:00
Carsten Dominik f64510b023 Remember: fix bugs with new mac-message code. 2009-04-02 12:58:01 +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 9c2743e35b org-protocol.el: Make the compiler happy 2009-03-31 20:39:54 +02:00
Carsten Dominik 4fe6d54c30 Inline Tasks: Fix bugs and installation problems 2009-03-31 20:12:37 +02:00
Carsten Dominik b16747b21c Agenda filter: Filter for entries with no effort defined
During secondary agenda filtering, pressing "?" now will install a
filter that selects entries which do not have an effort defined.

This new model was necessary because we needed to stop interpreting
entries with no effort defines as 0 effort.  This was inconsistent,
because for normal agenda sorting, the treatment of these entries
depends on the variable `org-sort-agenda-noeffort-is-high'.  Now this
variable is also respected during filtering.
2009-03-31 18:22:31 +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 3ab4f4b618 Fix key bindings in org-mouse for XEmacs 2009-03-30 23:45:40 +02:00
Carsten Dominik bd66c1ff41 Docbook export: Process footnotes like normal text.
Patch by Baoqiu Cui.
2009-03-30 20:32:21 +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 49878b0387 Emphasis: Allow braces in pre and post match, important for LaTeX footnotes. 2009-03-30 11:49:10 +02:00
Carsten Dominik 961a3e6298 Footnotes: Fix bug with sorting inline footnotes. 2009-03-30 11:25:03 +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 68e6c08c17 Agenda: Introduce user-defined sorting operators.
The new variable `org-agenda-cmp-user-defined' can contain a function
to test how two entries should be compared during sorting.
user-defined-up and user-defined-down can then be part of any sorting
strategy.
2009-03-27 17:50:21 +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 9baf5cabe6 org-mac-message.el: Better links to multiple selected messages 2009-03-27 10:54:43 +01:00
Carsten Dominik f8ae635ba3 Better backup files for remember. 2009-03-26 18:04:11 +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 ac9d73bb13 Remember: Keep changes to `auto-save-visited-file-name' buffer-local 2009-03-26 04:37:42 +01:00
Carsten Dominik 72908042c3 org-feed.el: re-written 2009-03-25 22:45:57 +01:00
Carsten Dominik b4c6dab208 Agenda: Make sure diary items are searched for a time.
The new variable `org-agenda-search-headline-for-time' also turned off
time searching for diary items as an unwanted side-effect.  This
commit makes sure that diary entries are always parsed for a time.
2009-03-25 12:01:30 +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 73c31c945b Org-feed.el: Improvements 2009-03-24 16:25:45 +01:00
Carsten Dominik 96115a296c HTML export: Allow "- ___" to explicitly terminate a list
If a list contains "- ___" as an item, this terminates the list,
ignoring this item.
2009-03-24 09:06:31 +01:00
Carsten Dominik cf53ead18c Remember: Remove backup file name after successful storage 2009-03-24 07:03:11 +01:00
Carsten Dominik 098cf35983 Clock: Clock out when done also in indirect buffers
Chris Randle writes:

>  I have one giant Org-mode file for everything. I frequently use
>  `C-c C-x b' to take the current node and show it in a new frame
>  with narrow subtree so that I can concentrate on just that region
>  of my file. Rather like hoist in GrandView, if anyone remembers
>  that.
>
>  My Org Manual (6.24b) says "The indirect buffer...will contain
>  the entire buffer, but will be narrowed to the current
>  tree. Editing the indirect buffer will also change the original
>  buffer, but without affecting visibility in that buffer.
>
>  I've noticed that, when working in the new frame, changing the
>  TODO state of any item within the frame to DONE (when it is the
>  currently clocked in item) does not stop the clock. Going back to
>  my main frame and doing the same thing there on the same item
>  does stop the clock.
>
>  I haven't altered `org-clock-out-when-done', and Emacs reports
>  its value as t.

This was caused by the fact that markers seem to point to the
base buffer always, so we need to check if the current buffer's
base buffer is equal to the marker buffer.
2009-03-23 21:02:23 +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 dacc545856 org-mac-message.el: New functions to access flagged mail
Chritopher Suckling writes:

>  All,
>
>  For various reasons (mainly Spotlight and an excess of HTML mail
>  send by employers), I've migrated back to Mail.app after some
>  time in Mutt (and how I miss the speed and threading).
>
>  I habitually flag mails that need attention at a later date, and
>  rather than use both org-mode and Mail.app to keep track of what
>  needs doing, I've written a couple of hybrid elisp AppleScript
>  functions to suck links to my flagged email into org-mode.
>

org-mac-message.el now contains these new functions.
2009-03-22 16:02:54 +01:00
Carsten Dominik ebb5988e9d Remember: Allow backup files for remember buffers
When setting the variable `org-remember-back-directory', each
remember buffer created will now get its own unique file name in that
directory.  So if you, by accident, overwrite a remember buffer or
remove it before storing it, there will be a backup.
2009-03-22 15:25:17 +01:00
Carsten Dominik 225e2111fe Mouse: Create better TODO menu
The TODO keyword made with org-mouse.el now calls org-todo to change
the keyword, so that the logging and note-taking works properly.
2009-03-21 19:39:17 +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 922fe1e05f Column view: Force truncate-lines while column view is active 2009-03-21 18:25:03 +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 0dea2ba3df LaTeX export: Apply macros also in header 2009-03-21 18:24:53 +01:00
Carsten Dominik ba9bb1525b LaTeX export: Fix bug in export of checkboxes with checked status
Patch by Baoqiu Cui
2009-03-21 18:24:51 +01:00
Carsten Dominik 76ac6dce68 Bugfix: Fix indentation problems
David Maus writes:

>  When I start to clock a headline (C-c C-x C-i) that does not have a
>  LOGBOOK drawer orgmode inserts one but removes the indentation of the
>  first line below the headline:
>
>  Example:
>
>  * TODO Do something
>   Do this, do that etc.
>
>  after C-c C-x C-i becomes
>
>  * TODO Do something
>   :LOGBOOK:
>   CLOCK: [2009-03-20 Fr 19:03]--[2009-03-20 Fr 19:03] =>  0:00
>   :END:
>  Do this, do that etc.

Fixed with this commit, a patch written by Peter Jones.
2009-03-21 18:24:51 +01:00
Carsten Dominik 4f70034a94 LaTeX export: Better handling of levels below the headline boundary
Outline levels below the headline boundary are now treated better, as
proper list.  The variable `org-export-latex-low-levels' can now also
be `itemize' or `enumerate', to get the corresponding list structure.
The new default is `itemize', to make it parallel with the behavior in
HTML.
2009-03-21 18:24:36 +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 5d958f13b3 Export: Fix bug when exporting to temporary buffer
When exporting to a temporary buffer, images to replace LaTeX
fragments cannot be produced, because there is no useful location
where they can be put.  Therefore, these images are not produced in
this case.
2009-03-20 14:06:33 +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 7059914423 Export: Improve centering, verse, and blockquote export
In verse environments, line breaks are now enforced both in LaTeX and
in HTML.  Centering is now implemented using a div rather than a
paragraph, so that there may be several paragraphs in the centering
environment.  Blockquotes now also may have several paragraphs.
2009-03-19 09:29:58 +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 4ec5a19ecf LaTeX Export: Fix vertical lines in tables 2009-03-16 21:43:20 +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
Carsten Dominik 107803c6c3 ASCII export: Improve export of description lists
The list bullet is now removed, and the double colon is replaced by a
single colon.
2009-03-15 12:12:17 +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 8461b96e79 LaTeX export: Automatically choose \verb delimiter 2009-03-14 08:36:48 +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 80ec053008 HTML export: Protect explicit target links
If a link is [[#name][desc]], the href wil be exacty href="#name".
So starting a link target with # will indicate that there will be an
explicit target for this.
2009-03-12 11:38:44 +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 31b3239f08 LaTeX export: Fix subscript export here as well. 2009-03-11 10:32:54 +01:00
Carsten Dominik 13f619d07a HTML Export: Allow Greek letters in subscripts
Hsiu-Khuern Tang writes:

>  If I export the file
>
>  --------------------------------------------------
>  #+OPTIONS: ^:{}
>
>  * test
>
>   a_{\alpha}
>
>   a_{foo}
>  --------------------------------------------------
>
>  as HTML, I get "a_{&alpha;}" but "a<sub>foo</sub>": \alpha is not
>  subscripted but foo is.  I was expecting both to be subscripted,
>  since they are in {}.

This is a bug, fixed now.
2009-03-11 10:12:21 +01:00