Commit Graph

747 Commits

Author SHA1 Message Date
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
Carsten Dominik 558abafab8 Column view: Improve line motion. 2009-03-10 17:45:22 +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