Commit Graph

608 Commits

Author SHA1 Message Date
Carsten Dominik 389419334d Export: Protect examples from headline processing
Lines that looked like headlines in examples could still be processes
as headings.  This commit make sure all converted examples are
protected.
2009-01-06 09:37:34 +01:00
Carsten Dominik e30bf26061 Bugfix: Fix regexp
The regular expression org-complex-heading-regexp had an error,
it would also match lines where there is no space after the stars.
2009-01-06 09:37:34 +01:00
Carsten Dominik 1a3abc8018 Coderefs: Revamp label syntax.
This commit revamps the syntax used for code line references in
literal examples.  See the documentation for details about the new
format.
2009-01-05 13:25:21 +01:00
Carsten Dominik f6fa33eceb Remember: Show context when jumping to previous storage location
When using "C-u C-u M-x org-remember RET" in order to jump to the last
storage location, the code failed to show the matching entry.  This
commit makes sure that at least the headline of the last remember note
is made visible.
2009-01-05 13:18:28 +01:00
Carsten Dominik c0100ad2b1 Footnotes: Fix bug with insertion at end of buffer
With the "* Footnotes" heading as last line in the buffer, footnote
insertion did not position new definitions correctly.  This commit
fixes the problem.

Reported by Matt Lundin.
2009-01-05 13:15:12 +01:00
Carsten Dominik feef4db6d3 org-w3m.el: Minor updates and fixes.
This commit adds an option to org-w3m, to decide whether the mark
should be deactivated after copying the region.

New version from author Andy Steward.
2009-01-04 08:36:38 +01:00
Carsten Dominik 3559b2dc93 Footnotes: Activate labels as links
This commit add a new face for footnote labels, and activates footnote
labels for mouse clicks and for `C-c C-o', to jump to the
corresponding reference or definition.
2009-01-02 16:28:35 +01:00
Carsten Dominik 9255522b91 Footnotes: Allow "-" and "_" in footnote names.
These characters are now allowed in addition to word constituents.
2009-01-01 10:59:11 +01:00
Carsten Dominik 1ed9c50457 Export: Fix some problems with protection.
The previous changes had created problems with lines stating with a
colon, there where no longer protected.  They are now again.
2009-01-01 09:55:54 +01:00
Carsten Dominik df07e0a4f3 Export: New hooks for preprocessing
This patch introduces more hooks for preprocessing the export buffer,
at various strategic moments.  See the Changes.org file for a
description of the hooks.
2008-12-31 18:37:33 +01:00
Carsten Dominik d9c47b107f Bugfix: Indentation for converted headlines with `C-c -' 2008-12-31 01:22:57 +01:00
Carsten Dominik 71aeeec70a Footnotes: Add ChangeLog entries. 2008-12-31 01:21:48 +01:00
Carsten Dominik 3018b775e2 Coderefs: Add ChangeLog entries. 2008-12-26 23:23:39 +01:00
Carsten Dominik 28c6318dba Remember: Safer way to access new buffer.
The remember handler was creating a buffer with `find-file-noselect',
and then trying to find it back using `get-file-buffer'.  Apparently
there are situations where this can fail, to we now use directly the
buffer returned by `find-file-noselect'.
2008-12-23 07:16:10 +01:00
Carsten Dominik 76e18b30e9 Remember: Fix bug cause by expand-file-name on nil file. 2008-12-23 06:15:04 +01:00
Carsten Dominik 951d117a47 Spreadsheet: Don't assume every last row filed has a formula
In a recent patch we have introduced names for all fields in the last
row.  This has lead to a bug, that Org thinks there might be a field
formula associated with those fields.  Now we check if there really is
one, and only in this case ask to overwrite it with a column formula.

Report by Henry Atting.
2008-12-22 23:10:32 +01:00
Carsten Dominik 2deee3e6e4 Column view: Capture also from locations in other files.
The dynamic block capturing column view has an :id parameter that does
select from where the column view should be captured.  The routine
searching for this entry so far only searched the current file, now it
uses the full ID API to find the entry also in another file.

Furthermore, a value "file:path/to/file.org" will capture the global
column view of that file.

Report by Francois Lagarde.
2008-12-22 08:56:42 +01:00
Carsten Dominik 23856be044 Completion: Improve docstring of option `org-completion-use-ido'. 2008-12-21 11:23:06 +01:00
Carsten Dominik 9f0060acc2 LaTeX export: Fix two bugs.
1.  When LaTeX export was done with a time-stamped file, a format
    error in the timestamp format caused the output file to not
    have the % comment in front of the time string.  As this line
    is early in the file, a LaTeX error would result.

2.  Replacement of some special characters could fail.  Strangely
    this shows up only in XEmacs, but it still is a bug.

Both bugs were reported by Hugh Daschbach.
2008-12-21 11:00:05 +01:00
Carsten Dominik fcad0fbc4e Refile: Compare expanded file names
When refiling to the current file, the completion commands do not show
the file name.  This was broken because I had switched from comparing
truenames to normal names. Now I am using expanded names, this is fast
and works well.
2008-12-20 11:10:12 +01:00
Carsten Dominik e092a5ba91 Integrate changes from downstream Emacs. 2008-12-20 09:56:52 +01:00
Carsten Dominik 9c042e68e8 Faces: Force initialization of the tags-faces-regexp.
When `org-tag-faces' is set too late, the regexp
is not initialized properly.  This patch makes sure it is
initializes anyway.
2008-12-19 21:36:06 +01:00
Carsten Dominik 9ac252830d Agenda view: Make sure tags have the correct case.
Reported by Wanrong Lin.
2008-12-19 18:46:25 +01:00
Carsten Dominik 9011bd9303 Fix some small bugs. 2008-12-19 18:36:53 +01:00
Carsten Dominik dadc9a1af1 Tables: Implement last-row references.
After the failed implementation of `@0' as a reference for the last
line, this is a second attempt to provide such references.  I would
have liked to allow `@last' as the reference, that would have been
beautiful.  However, too many regular expressions directly search for
`@' followed by a number, so this is too hard to implement.

Therefore, I am now turning the last row into a row of implicitly
named fields.  From now on, $LR1, $LR2,... can be used to refer to
fields in the last row.  These names may also appear on the left hand
side of formulas.
2008-12-19 18:28:58 +01:00
Carsten Dominik 14ef6932e4 Store link: Capture description for ID links.
Creating links with org-store-link in org files did not capture the
link description (the headline).  Fixed with this patch.  Report by
F.D. Friedrichs.
2008-12-19 16:40:12 +01:00
Carsten Dominik c668817bf3 Revert "HTML export: Remove the name attribute from anchors that do not need it."
This reverts commit 642620ebb3.
2008-12-19 15:06:47 +01:00
Carsten Dominik 642620ebb3 HTML export: Remove the name attribute from anchors that do not need it. 2008-12-19 12:50:36 +01:00
Carsten Dominik 1b655ff4af Fix problem with <pre> of source code inside a paragraph. 2008-12-19 12:46:46 +01:00
Carsten Dominik db2485cb41 Fix invalid <img> tag. 2008-12-19 12:38:17 +01:00
Carsten Dominik a53ea4e72b New command org-ido-iswitchb.
Patch by Chris Leyon.
2008-12-19 06:14:55 +01:00
Carsten Dominik 9cd1518bad Allow to view full entry from agenda.
A prefix argument to the `org-agenda-show' command is now interpreted
to make sure the entire entry is made visible in the other window, not
only the headline.
2008-12-18 09:22:21 +01:00
Carsten Dominik f796043bf1 Add a COMPARE-FUNC argument to the internal sorting routine.
Patch by John Wiegley.
2008-12-18 09:14:13 +01:00
Carsten Dominik ff8ef0aa14 Fix bug with updating agenda lines with correct tags.
Updating agenda lines did display tags incorrectly, because it used
the list of tags available as a property to remake the list.  However,
that list contains down-cased versions of the tags, because all the
filtering in the agenda does ignore case in tags.

This patch implements a fresh scan for the tags each time a line is
updated, and in this way fixes the problem.  It also reverses a
previous attempt to fix a similar problem.
2008-12-18 09:03:06 +01:00
Carsten Dominik 821c4304c6 Fix bug in menu, for tags-setting command. 2008-12-18 00:34:11 +01:00
Carsten Dominik ec702aa4ba Release 6.15d. 2008-12-17 11:52:55 +01:00
Carsten Dominik d41340b1a0 Fix typo with variable name.
The variable `org-agenda-overriding-columns-format' was, in one place,
called `org-overriding-columns-format'.
2008-12-17 09:52:46 +01:00
Carsten Dominik 1eef2abe15 Mark last sync with Emacs in ChangeLog. 2008-12-16 14:09:51 +01:00
Carsten Dominik e967f71794 Avoid refining of entries into themselves.
Reported by Samuel Wales.
2008-12-16 10:16:16 +01:00
Carsten Dominik e4ed09207d Quote special characters in tables for LaTeX export.
Text inside tables did not receive the full treatment of handling sub-
and superscripts, and of special character quoting like %, &, and {}.
This patch does fix this, but I am worried that I am overlooking the
true reason why Bastien did switch off these conversions.  We'll see
if and what this will break.
2008-12-16 07:44:13 +01:00
Carsten Dominik 0ea9fb46c5 Implement longtable support for LaTeX export.
Exporting tables to LaTeX suffered from the problem that Org tables
are often long, but that the tabular environment in LaTeX cannot
handle long tables.  This patch fixes this issue.

LaTeX export can now deal with very long tables, by setting an option
in the "ATTR_LaTeX:" line.  Also, you can specify the alignment by
hand.  Here is an example:

Also, table export now correctly deals with tables that start with a
hline.  In such a case, also the LaTeX version will have this extra
hline before the first line.
2008-12-16 07:04:05 +01:00
Carsten Dominik 45cc93478d Fix LaTeX export bug with regions and initial content.
This re-implements and fixes the commit
b786f4da93, which we had reverted
earlier today.  The new version seems to work OK.
2008-12-16 07:04:05 +01:00
Carsten Dominik 2b49ebc8fc Fix bug with tags setting from agenda.
Setting tags from the agenda no longer updated the agenda display
correctly.  Now this works again.

Report by John Wiegley.
2008-12-16 05:50:46 +01:00
Carsten Dominik 411f9d174f Switch to \verb in LaTeX export for code-like snippets.
Emphasis expressions ~...~ and =...= are not typeset using \verb.
You cannot include the vertical bar in these snippets as this is the
delimiter.
2008-12-15 13:01:50 +01:00
Carsten Dominik b786f4da93 Revert "Fix LaTeX export bug with regions and initial content."
This reverts commit 73ab743a6f.
2008-12-15 12:58:40 +01:00
Carsten Dominik 33675c3b0c Introduce maxlevel for org-goto using refile interface.
This is just a new option, `org-goto-max-level'.  The smaller this
number is, the faster the org-goto interface will become.
2008-12-15 10:34:55 +01:00
Carsten Dominik 552ededaae Speed up refile target collection.
This patch introduces three improvements to refile target construction,
which should speed these functions up significantly.

1. A faster way to move up a level in the outline hierarchy
2. A better way to construct the outline path, in the case
   that the command is scanning the entire hierarchy anyway
3. Avoid comparing the true-names of files.
2008-12-15 10:23:56 +01:00
Tassilo Horn ddcdaa7f87 Changelog entry for org-gnus patch. 2008-12-13 00:57:49 +01:00
Carsten Dominik 73ab743a6f Fix LaTeX export bug with regions and initial content.
This is an old and nagging bug, see

  http://thread.gmane.org/gmane.emacs.orgmode/8809/focus=8838

for more information.  This fixes the bug, hopefully.
2008-12-13 00:18:35 +01:00
Carsten Dominik 7f08a00779 Improve docstring of `org-table-recalculate'. 2008-12-12 14:50:43 +01:00
Carsten Dominik 5ff646fc90 Make @0 reference the last data line in a table.
The last data line in a table is often a line with important data, for
example sums of a column.  In tables with varying length, the row
number of this line is constantly changing, which makes it hard to
write programs creating tables and then installing formulas.

This patch introduces @0 as a special reference to the last row, so
that @0$3 would be the field in the last row, 3rd column.
2008-12-12 08:53:43 +01:00
Carsten Dominik 8e6239b867 Update docstring of org-log-done.
Patch by Danie Clemente.
2008-12-11 06:05:30 +01:00
Carsten Dominik cf75cdb7f3 Fix bugs with new figure <div>. 2008-12-10 23:43:24 +01:00
Carsten Dominik ac83bc01d7 Better implementation of unique entry IDs.
Unique identifiers for entries can now be used more efficiently.
Internally, a hash array has replaced the alist used so far to
keep track of the files in which an ID is defined.  This makes it
quite fast to find an entry by ID.

There is now a new link type which looks like this:

id:GLOBALLY-UNIQUE-IDENTIFIER

This link points to a specific entry.  When you move the entry to
a different file, for example if you move it to an archive
file, this link will continue to work.

The file /org-id.el/ contains an API that can be used to write
code using these identifiers, including creating IDs and finding
them wherever they are.

Org has its own method to create unique identifiers, but if the
system has /uuidgen/ command installed (Mac's and Linux systems
generally do), it will be used by default.  You an also select
the method by hand, using the variable =org-id-method=.

If the ID system ever gets confused about where a certain ID is,
it initiates a global scan of all agenda files with associated
archives, all files previously known containing any IDs, and all
currently visited Org-mode files to rebuild the hash.  You can
also initiate this by hand: =M-x org-id-update-id-locations=.
Running this command will also dump into the =*Messages*= buffer
information about any duplicate IDs.  These should not exist, but
if you /copy/ an entry with its properties, duplicate IDs will
inevitably be produced.  This is unavoidable in a plain text
system that allows you to edit the text in arbitrary ways, and a
portion of care on your side is needed to keep this system clean.

The hash is stored in the file =~/.emacs.d/.org-id-locations=.
This is also a change from previous versions where the file was
=~/.org=id-locations=.  Therefore, you can remove this old file
if you have it.  I am not sure what will happen if the =.emacs.d=
directory does not exists in your setup, but in modern Emacsen, I
believe it should exist.  If you do not want to use IDs across
files, you can avoid the overhead with tracking IDs by
customizing the variable =org-id-track-globally=.  IDs can then
still be used for links inside a single file.

IDs will also be used when you create a new link to an Org-mode
buffer.  If you use =org-store-link= (normally at =C-c l=) inside
en entry in an Org-mode buffer, and ID property will be created
if it does not exist, and the stored link will be an =id:= link.
If you prefer the much less secure linking to headline text, you
can configure the variable =org-link-to-org-use-id=.  The default
setting for this variable is =create-if-interactive=, meaning
that an ID will be created when you store a link interactively,
but not if you happen to be in an Org-mode file while you create
a remember note (which usually has a link to the place where you
were when starting remember).
2008-12-10 23:32:37 +01:00
Carsten Dominik b2ad719f51 Implement a new link type "id:" to link to entry ids. 2008-12-10 14:31:18 +01:00
Carsten Dominik 45102b68ce Captions and attributes for images and tables during export
Tables, and Hyperlinks that represent inlined images, can now be
equipped with additional information that will be used during
export.  The information will be taken from the following special
lines in the buffer and apply to the first following table or
link.

  - #+CAPTION: :: The caption of the image or table.  This string
       should be processed according to the export backend, but
       this is not yet done.
  - #+LABEL: :: A label to identify the figure/table for cross
       references.  For HTML export, this string will become the
       ID for the `<div class="figure">' element that encapsulates
       the image tag and the caption.  For LaTeX export, this
       string will be used as the argument of a `\label{...}'
       macro.  These lables will be available for internal links
       like `[[label][Table] ]'.
  - #+ATTR_HTML: :: Attributes for HTML export of image, to be
       added as attributes into the `<img...>' tag.  This string
       will not be processed, so it should have immediately the
       right format.
  - #+ATTR_LaTeX: :: Attributes for LaTeX export of images, to
       be inserted into the optional argument of the
       `\includegraphics[...]{file}' command, to specify scaling,
       clipping and other options.  This string will not be
       processed, so it should have immediately the right
       format, like `width=5cm,angle=90'

For LaTeX export, if either a caption or a label is given, the
element will be exported as a float, i.e. wrapped into a figure
or table environment.
2008-12-10 12:50:07 +01:00
Carsten Dominik a64bf8f599 Fix bug in XEmacs compatibility code.
Calling `org-substring-no-properties' with a nil value for FROM would
cause XEmacs to throw an error.

Thanks to Thomas Fuchs for the fix.
2008-12-08 21:57:46 +01:00
Carsten Dominik acfdd25581 Move the org-before-first-heading-p function to org.el.
This function was defined in org-registry.el, but it is generally useful.
2008-12-08 17:34:16 +01:00
Carsten Dominik 0216c9a27c Fix minor problems with blockquote and verse HTML export.
Xerxes Folupa writes:

> I spotted a little inconsistency in the way Org strips tags when
> processing #+begin_verse ... #+end_verse, and #+begin_quote
> ... #+end_quote blocks, compared with other literal blocks that strip
> superfluous <p> tags correctly (e.g. #+html)

[...]

> Additional question: is the space before the <br/> in verse blocks a
> design decision?

This patch fixes these issues.
2008-12-07 21:16:14 +01:00
Carsten Dominik 37d2872508 Remove double let-bindings. 2008-12-05 16:10:25 +01:00
Carsten Dominik 94fa3dcffa Rename some ill-named function in org-table.el. 2008-12-05 13:19:36 +01:00
Carsten Dominik 575dcb3d3b Make table formulas error when a relative row reference tries to cross hline.
Tassilo Horn asked for this, because he finds the default behavior of
silently choosing a different row too confusing.  I actually do agree.

The main use of this feature was running averages, if you need this
feature, you can customize the variable
`org-table-error-on-row-ref-crossing-hline'.
2008-12-05 13:14:24 +01:00
Carsten Dominik 520ff98609 Fix problem with moving trees in XEmacs.
Moving trees up or down with XEmacs caused a problem when the tree is
at the beginning if the buffer or narrowed region.  This patch
protects the relevant calls to outline-flag-region so that they are
only executed if the range is valid.
2008-12-05 09:39:37 +01:00
Carsten Dominik 4298df987b Fix bug with radio targets.
The variable containing the regexp for radio target matches was not
buffer-local, causing all sorts of problems.
2008-12-05 08:16:55 +01:00
Carsten Dominik d996cbb312 Customizable faces for individual tags.
Samuel Wales writes:

> It would be really nice if you could set tags to different
> faces the way you can with todo keywords.
>
> For example, you could set :urgent: to a bright color.  Or
> set a face for all contexts.

This patch add a new customization variable `org-tag-faces' that can
be used to specify such faces.  The rest of the patch implements these
new faces in Org-mode buffers as well as in the agenda.
2008-12-04 14:24:21 +01:00
Carsten Dominik 760c3ec098 Implement new quoting for CDATA elements.
It seems that CSS and Java-script stuff should be quoted in a very
strange way in order to make sure that the resulting file functions
correct in current browsers *and* validates against various XHTML and
XML standards.  To be honest, the quoting technique seem really
strange, but Sebastian Rose argues, that this is the way to handle
this issue.
2008-12-03 23:55:10 +01:00
Carsten Dominik bac235cb67 Install w3m copying command in w3m-minor-mode-map.
Gnus uses w3m to wash HTML messages and installs w3m-minor-mode-map in
these buffers.  Therefore, this patch makes sure that the special copy
command that converts HTML links to Org-mode links also gets installed
into the minor mode map.

This is as yet untested.
2008-12-03 16:10:41 +01:00
Carsten Dominik 6e31b9eace Fix bug with multiple archiving to sibling.
Calling `org-archive-to-archive-sibling' caused problems when used
several times in a row.  The new killed subtree would be appended to
the current head of the kill-ring, instead of being pushed there.  The
reason for this is that the command `kill-region', which is called by
`org-cut-subtree' changes the variable `this-command', so that during
the next archive command, `kill-region' will think that the previous
command was also a kill and do the append.

Normally this is wanted, to make sure that several kill commands
create one big yank string.  But in this case it has to be avoided.
The patch fixes the problem by let-binding (and therefore protecting)
the value of `this-command' around the call to `org-cut-subtree'.

Reported by Bernt Hansen.
2008-12-03 15:00:10 +01:00
Carsten Dominik b266f5a90c Make LOCATION property inheritable for iCalendar export.
Harri Kiiskinen suggested that it might be useful to make the LOCATION
property an inherited property during iCalendar export.  In this way
you can have set the LOCATION for a whole set of items by setting it
only in the parent.

While this will slow down iCalendar export for large files, I think it
can be quite useful.  This patch does implement the basic code needed
for this functionality.  However, you still need to tell Org that
LOCATION should be inherited, by setting org-use-property-inheritance.
If you set it to t, beware that this may trigger a significant
slowdown when creating the match view in the agenda.  So it may be
better to set this variable to

(setq org-use-property-inheritance '("LOCATION"))

instead.
2008-12-03 08:28:26 +01:00
Carsten Dominik aa07f68c12 Better handling of export options.
This patch improves the internal handling of the large number of
export options that Org-mode has.  In particular, it now defines a
single constant, `org-export-plist-vars' that contains the full list
of options, and how these can be accessed through variables, and
through the #+OPTIONS line.  Before the patch, there used to be a
separate list or the OPTIONS handling, which has gotten out of sync.
This now no longer can happen.

Also, this patch adds two new variables, `org-export-with-priority',
and `org-export-with-todo-keywords', which can be used to turn the
export of TODO keywords and priority cookies on and off, so that these
can simply disappear and not be shown in the exported file.  In fact,
the default for the priority cookie is to remove it.
2008-12-03 07:33:05 +01:00
Carsten Dominik 4800fd8b7c Fix bugs in implementation and documentation of the mapping API.
There were bugs in the mapping API, pointed to by Samuel Wales:

    Manual says:

     The following example counts the number of entries with TODO keyword
     WAITING, in all agenda files.

        (length (org-map-entries t "/+WAITING" nil 'agenda))

    Org says invalid function for the string.

First of all, the example in the manual was wrong, the "nil" should be
gone.  Second, the mapping function did not return all results in a
list, so that `length' could not count them.

This patch fixes these issues.
2008-12-02 16:53:25 +01:00
Carsten Dominik 269c5a85bc New ways to specify time comparison values in property searches.
In addition to "<now>", "<today>", "<yesterday>", and
"<tomorrow>", there are more special values accepted now in
time comparisons in property searches:  You may use strings
like =<+3d>= or =<-2w>=, with units d, w, m, and y for day,
week, month, and year, respectively

Thanks to Linday Todd for this proposal.
2008-11-29 19:12:03 +01:00
Carsten Dominik 0bb7429c3d Fix org-gnus.el for XEmacs. 2008-11-29 07:53:22 +01:00
Carsten Dominik 733dfca36b Allow to exclude specific tags from inheritance.
So far, the only way to select tags for inheritance was to
allow it for all tags, or to do a positive selection using
one of the more complex settings for
`org-use-tag-inheritance'.  It may actually be better to
allow inheritance for all but a few tags, which was difficult
to achieve with this methodology.

This patch introduces a new option,
`org-tags-exclude-from-inheritance' which allows to specify an
exclusion list for inherited tags.
2008-11-27 13:15:29 +01:00
Carsten Dominik f6b9e77ded Show inherited tags in the agenda.
This patch does a lot of things.  First, it makes sure that the tags
transferred to the agenda as text properties on each line are do carry
information about there origin (in the form of an `inherited' text
property).  Then it modifies the function creating agenda lines so
that inherited tags will be listed and identified as such in the
agenda.

This new feature can be turned off with a new variable,
`org-agenda-show-inherited-tags'.
2008-11-27 09:25:50 +01:00
Carsten Dominik a196eaa15c New file org-w3m.el, by Andy Stewart.
This file implements a special function to copy text from a w3m buffer
in a way that when the text is yanked back into an Org-mode buffer,
the links will be translated to Org syntax.
2008-11-26 15:45:50 +01:00
Carsten Dominik 69ac82e1e6 Make `C-c |' work in orgtbl-mode.
This key needs special treatment, because it needs to work *outside*
tables.  The patch introduces a special command to call the
creation/conversion function if there is no conflicting binding to
`C-c |' outside of orgtbl-mode.
2008-11-26 09:14:09 +01:00
Carsten Dominik 07c77bc4dc Make S-SPC work in orgtbl-mode.
S-SPC did lead to an error in orgtbl-mode, because there is no binding
to this key.  Now orgtbl-self-insert-command falls back on calling
self-insert-command for such cases.
2008-11-26 08:30:21 +01:00
Carsten Dominik c0a779bd9d Fix bug with handling of targets in ASCII export.
Target text used to disappear, now it is kept as it should be.
2008-11-26 07:32:10 +01:00
Carsten Dominik 7e3aa26628 Finalize the relative-timer setup.
This cleans up the implementation of the timer.  Most important change
is that, after starting a time list with `C-c C-x -', you can then
simply use M-RET to add new items, which is addictive!
2008-11-25 20:20:52 +01:00
Carsten Dominik 4b2d3c6feb Implement timer for timed notes.
This patch implements a relative time for taking timed notes, useful
for example while watching a video, or during a meeting which is also
recorded.  Here are the new commands:

    - `C-c C-x .' ::
      Insert a relative time into the buffer.  The first time
      you use this, the timer will be started.  When called
      with a prefix argument, the timer is reset to 0.

    - `C-c C-x -' ::
      Insert a description list item with the current relative
      time.  With a prefix argument, first reset the timer to 0.

    - `C-c C-x 0' ::
      Reset the timer without inserting anything into the buffer.
      By default, the timer is reset to 0.  When called with a
      `C-u' prefix, reset the timer to specific starting
      offset.  The user is prompted for the offset, with a
      default taken from a timer string at point, if any, So this
      can be used to restart taking notes after a break in the
      process.  When called with a double prefix argument
      `C-c C-u', change all timer strings in the active
      region by a certain amount.  This can be used to fix timer
      strings if the timer was not started at exactly the right
      moment.
2008-11-25 12:07:23 +01:00
Carsten Dominik 8e31f6f99c Fix publishing of component files.
When starting the publishing process with
`org-publish-current-project' from a file that is located in a project
that is also a component of a parent project, this patch now makes
sure that the entire parent project is published instead.
2008-11-25 10:56:37 +01:00
Carsten Dominik 4e4bdf3646 Fix site-map creation in org-publish.
The creation of an automatic site map in org-publish with the
:auto-index and :index-filename parameter does exclude the index
file name from being added to the index.  There was a bug which would
exclude this file name also in all subdirectories in a project. This
patch switches the comparison from looking at file names only to
looking at the complete path.
2008-11-25 07:18:36 +01:00
Carsten Dominik aacbb2756c Fix RET in orgtbl-mode, when cursor is at the beginning of the buffer.
RET did fail in orgtbl-mode, if the cursor was at the beginning of the
buffer.  Now it opens a new line whenever the cursor is at the
beginning of a line, and that includes the beginning of the buffer.....
2008-11-24 22:45:56 +01:00
Carsten Dominik 663960af62 Improve removal of temporary buffers during publishing.
Report by Richard Riley.
2008-11-24 18:27:14 +01:00
Carsten Dominik 1ba1ac5045 Merge changes from downstream Emacs. 2008-11-24 12:21:40 +01:00
Carsten Dominik 74e7111a5f Implement outline-path-completion in one go. 2008-11-24 10:59:10 +01:00
Carsten Dominik 3bd0676370 Issue warning if the clock cannot be resumed.
If a clock-save file tries to restore the running clock, but the task
does not have an unfinished clock, warn the user with a message.
2008-11-23 08:07:56 +01:00
Carsten Dominik 382eedaab4 Make sure the clocktable sees the first line of the buffer.
Org-mode still has a few operations that do not work well when the
first line of a buffer is a headline.  One was constructing the clock
table, but this one is eliminated by this patch.
2008-11-23 07:30:18 +01:00
Carsten Dominik ad62fc94e4 Fix mixup about interactive and non-interactive elisp links.
Patch by Christopher Suckling.
2008-11-23 00:35:20 +01:00
Carsten Dominik 33744b0de5 Allow one comment line before the first headline.
When the export skips the text before the first headline, we now
include the comment line before the first headline, if any.
This makes sure that we can specify an anchor for this headline.
2008-11-21 19:45:51 +01:00
Carsten Dominik a99a1814fa Enhance XEmacs compatibility by avoiding `indent-to' calls. 2008-11-21 17:44:05 +01:00
Carsten Dominik 6fbcc77e99 Fix customize definition so that it works also in XEmacs.
`org-refile-target' was using (const :tag), which can be confusing,
and XEmacs is actually confused by it.

So we now use (const :value :tag) instead.
2008-11-21 15:32:26 +01:00
Carsten Dominik db5c609be9 6.13pre04 2008-11-21 13:35:45 +01:00
Carsten Dominik 0a402deeb9 Fix bug with MEW case folder.
Reported by Harri Kiiskinen, fixed by Tokuya Kameshima.
2008-11-21 13:31:42 +01:00
Carsten Dominik 94e8fa7ca0 Remove "\\" during ASCII export.
"\\" at the end of a line marks forces line breaks for HTML and LaTeX
export.  ASCII export does preserve lines anyway, but these line break
indicators might still be present and need to be removed.

Reported by Rustom Mody.
2008-11-21 13:16:18 +01:00
Carsten Dominik 59f70c6ba6 Remove the "i:" prefix for ido-complete prompts. 2008-11-21 12:48:43 +01:00
Carsten Dominik 8a13a7704f Fix XEmacs compatibility problems. 2008-11-21 09:14:26 +01:00
Carsten Dominik 272a536080 Make it possible to have two spaces after some list bullets.
This patch introduces a new variable,
`org-list-two-spaces-after-bullet-regexp'.  It can be a regular
expression matching plain list bullets.  When it matches, changing the
bullet type will introduce two spaces instead of one after each
bullet.

For example,

   (setq org-list-two-spaces-after-bullet-regexp "[.)]")

will make two spaces after "1." and "1)".
2008-11-21 06:54:46 +01:00
Carsten Dominik da7b292ce9 More clean-up of the clock persistence code.
This patch compacts the persistence code.  It also make sure that no
variables outside Org's name space are created.  Finally, it makes
sure that the resumed clock is not hidden after a restart of Emacs.
2008-11-21 06:19:29 +01:00
Carsten Dominik ab20e602b1 Allow a second space after "1." bullet for line wrapping. 2008-11-21 06:00:42 +01:00
Carsten Dominik 0529c08e5b Do much more consistency checking when storing and resuming the clock.
Saving the clock history and the running clock could lead to pointers
to non-existing buffer, or to dired buffers of directories.  This
patch implements more consistency checks.

It also allows a new value for `org-clock-persist'.  When this is
`clock', only the running clock, but not the entire clock history
is saved.
2008-11-20 17:54:26 +01:00
Carsten Dominik 461c9df562 Adapt indentation when bullet width changes.
Commands that modify the bullet style of a plain list, or that
renumber such a list may lead to changes in the width of a bullet.
The indentation of the lines below such a bullet is now automatically
adapted.

Also fixes a bug in bullet style cycling.
2008-11-20 10:03:31 +01:00
Carsten Dominik 06ec0e46ad Describe new modules in various places. 2008-11-19 17:33:23 +01:00
Carsten Dominik fb22510c1c Use the new minor mode to exit remember buffers.
Since we have now a minor mode in remember buffers, we use its
keymap also to exit and to abort the remember process.
2008-11-19 11:49:17 +01:00
Carsten Dominik 545ffe93b4 Fix some typos. 2008-11-19 10:03:01 +01:00
Carsten Dominik e51d317a21 New minor org-remember-mode, for extra keybindings.
This patch defines a new minor mode, `org-remember-mode', which is
turned on when Org-mode is used to handle a remember buffer.  This
provides a safe way to modify keybindings (in
`org-remember-mode-map'), without overwriting keys in `org-mode-map'.
Since Org put remember buffers into Org-mode, remember-mode-map will
be entirely ignored.
2008-11-18 20:32:01 +01:00
Carsten Dominik c60cf93d15 No ido completion for free prompts in remember templates.
do completion does not work well with values including white space,
which means we cannot use it in completion of values in remember
templates.  This patch turns it off for this application.

Report by Richard Riley.
2008-11-18 09:48:34 +01:00
Carsten Dominik 9f1e6fa952 Avoid error when ID is created in buffer without a file.
When ID's are created, Org tries to remember in which file the id is
located.  However, if an ID is created in a remember buffer, no file
is known.  This patch makes sure that this condition does not lead to
an error.
2008-11-18 08:59:39 +01:00
Carsten Dominik 627cc45e71 Fix bug with allowed property values for remember templates.
When an org-remember template inserts a property, the template-creating
function tries to support the user by retrieving a list of allowed
values to facilitate completion.  So far this was done by getting the
property with inheritance, ignoring that the cursor in the target file
buffer may not be in an entry at all.  So now we just look at the global
and file lists of allowed values.

Reported by James TD Smith.
2008-11-18 08:27:26 +01:00
Carsten Dominik b52ba29529 Improve file link matching.
Michael Ekstrand wrote:

    I've been trying to work with links to man pages in
    Org (using org-man.el).  When I try to create a link to a
    Perl module in the File package namespace, however,
    `org-insert-link' tries to do its same-file link detection
    and winds up breaking the link.  The result is that the link

       man:File::MimeInfo

    gets rewritten to

       file::MimeInfo

    Naturally, this isn't what I want.  Looking at
    `org-insert-link', it seems that the problem may be that its
    same-file link detection is matching 'file:' at
    beginning-of-word, which it is in this case.  In the general
    case for which 'file:' detection is being used, is there a
    reason to match against `\<' rather than `^' or
    `^[[:space:]]*'?  Changing to one of the latter two
    expressions would, I believe, keep it From rewriting these
    links I am trying to create.

Michael is right, and I have made this change.
2008-11-18 07:53:54 +01:00
Carsten Dominik 4a46ec644a New face or agenda datelines during column view.
The face `org-agenda-column-dateline' can be used to make datelines
with summaries look different from other column view lines.

Requested by George Pearson.
2008-11-17 17:49:58 +01:00
Carsten Dominik 6c32d29bbc Use index title as page tile, not as section. 2008-11-17 14:44:10 +01:00
Carsten Dominik 0d36db1d39 Avoid HTML processing of image specifiers in link descriptions.
A link to an image can function as the description part of a link, to
create a clickable image.  The corresponding image tag was
erroneously processed like normal text.  This patch protects such
descriptions from processing.

Reported by Richard Riley.
2008-11-17 08:14:53 +01:00
Carsten Dominik f926b09e0d Allow using ido-completion all around Org.
If you set the variable `org-completion-use-ido' to t, and if you have
ido-mode turned on, most instanced of completion in Org-mode will use
ido-complete.

Thanks to Samuel Wales and Eric Schulte for patches to this effect.
2008-11-17 07:52:07 +01:00
Carsten Dominik c210ba6d90 Fix issues with property time tests.
There was a bug in the implementation of the "<today>" tag for time
comparison during property matching, and new tags "<yesterday>" and
"<tomorrow>" have been introduced.

Patch by Piotr Zielinski.
2008-11-17 07:21:55 +01:00
Carsten Dominik f84ce1cecf Fix bug in search for text property. 2008-11-17 05:54:15 +01:00
Carsten Dominik 7797fec4b7 Fix bug in require htmlize code.
Reported by Daniel Clemente.
2008-11-17 05:51:32 +01:00
Carsten Dominik a4f9f8c93b Make invisible targets anchors in the headlines or items.
Org allows to define invisible anchors in a document in comment lines
like

If such a line is directly before or after a headline, previously this
anchor was removed, and all references to it were replaced with
references to the anchor that the headline had anyway.

Matthew Lundin pointed out that this makes it impossible to have
permanent links to headlines that can also be used from outside the
current page.

This patch changes his situation by adding the additional targets as
empty anchors to the section heading.  If works by creating, during
preprocessing, an alist with targets that do have aliases.  During
publishing, these aliases are looked up and converted into anchors.
In LaTeX export, these additional targets become additional labels.
2008-11-16 22:18:33 +01:00
Carsten Dominik 423ce71439 Fix bug with creating a new picture area.
The was a faulty regular expression in this function which never
matched, causing creation of a new picture area to mess up and start
the new area at the end of the previous line instead of the beginning
of the current.

Reported by Bernt Hansen.
2008-11-16 20:09:03 +01:00
Carsten Dominik d5d445d908 Install local link abbreviations when following link from agenda. 2008-11-15 15:58:02 +01:00
Carsten Dominik ecd801ab19 Avoid line </div> if there is no headline.
This is a bugfix.  When the number of headline levels was set to zero,
or if there was no heading at all in the export, the final closing
</div> should not be present.
2008-11-15 15:40:18 +01:00
Carsten Dominik 4954225ce3 Implement link translation.
This patch implements the possibility to translate links.
It can be useful if use both planner and Org-mode, if you sometimes
copy text from one side to the other and you do not want to worry
about link syntax.  This patch allows links created with planner to
function correctly in Org-mode.  I would probably be simple to
implement the reverse conversion in planner as well.

This patch is a first shot at this functionality and very likely can
be improved.
2008-11-14 14:13:48 +01:00
Carsten Dominik 38970e875f Restore the old iCalendar quoting for the time being.
The attempt to implement RFC2455 does seem to lead to problems with
some applications.
2008-11-14 08:21:07 +01:00
Carsten Dominik f9f3c27b13 Make `yank-pop' work after an adjusting tree yank.
Org's `org-yank' now identifies itself as being `yank' by setting
`this-command', and by making sure that the mark is set correctly.  In
this way, `yank-pop' will work correctly after using `C-y' in an
Org-mode buffer.  Org-mode does not have its own implementation, to
`yank-pop' will insert content plainly, without adjusting tree levels,
and without folding.

Samuel Wales pointed out that `yank-pop' doe not work anymore.
2008-11-14 07:49:08 +01:00
Carsten Dominik a33679ee5d Improve RFC 2445 compliance
iCalendar export has now improved compliance with RFC 2445.
Now all occurrences in data fields of the double quotes are replaced
by two single quotes, and any fields containing comma, colon, or
semicolon are quoted by surrounding them with double quotes.
2008-11-13 17:19:39 +01:00
Carsten Dominik 597a1be6e2 Allow '%h' in link abbreviations to insert a url-encoded target value
Patch by Steve Purcell.
2008-11-13 14:55:42 +01:00
Carsten Dominik ba0eeea11b Require vm-search in the org-vm functions. 2008-11-13 14:44:42 +01:00
Carsten Dominik 74a2ea6ee8 Install a better error message for the "Before first heading" error.
Org sometimes hits a "Before first heading" error.  This error happens
when `outline-back-to-heading' is called before the first heading in a
buffer.  In normal use, this is something easy to fix, because of
course you know where you are and you can identify the problem.

However, when Org scans many different buffers, for example to collect
agenda entries, you may not be able to tell easily where this error
happened.  This patch introduces a wrapper around
`outline-back-to-heading', with improving the error message by
spelling out buffer and location.
2008-11-13 09:54:30 +01:00
Carsten Dominik 6291ef8b7f Make sure that each <img> tag has an `alt' attribute.
XHTML validation requires hat each <img> tag does provide an
`alt' attribute.  This patch, based on a draft by Sebastian Rose, does
fix this.
2008-11-13 09:15:01 +01:00
Carsten Dominik 0000d4c477 Allow publishing to overwrite files.
This important patch makes sure that `copy-file' is allowed to
overwrite at the target location.

Patch by Sebastian Rose.
2008-11-12 23:57:45 +01:00
Carsten Dominik ea258dbdb6 Make agenda leaders for time ranges configurable.
Georg C.F. Greve asked for configurable leaders strings for agenda
display of time ranges.  This patch implements these strings, in the
new option `org-agenda-timerange-leaders'.
2008-11-12 12:57:42 +01:00
Carsten Dominik 29c5bfd7b5 Untabify ASCII image before returning to Org-mode.
When an ASCII image is edited with C-c ', it will in the end be quoted
by prepending colons to each line.  If tabulators are used in the
image, this may mess up the alignment.  Since tabulators are not a
good idea in ASCII images anyway, this patch makes sure that any
tabulators are replaced by spaces.
2008-11-12 11:48:46 +01:00
Carsten Dominik f5e3c482a2 Fine-tuning the behavior of `org-yank'.
Org-mode's `org-yank' command is used as a replacement for the normal
`yank' command.  It differs by giving special treatment to subtrees or
sets of subtrees when yanking them, by adjusting the level to fit the
outline, and by folding the trees after the yank.

This patch does fine-tune this behavior.

First of all, if any prefix argument is given to the command, it
immediately hands over the action to the standard `yank' command.  In
particular, you can use `C-u C-y' to yank as-is, with the only minor
side effect that the cursor will end up at the beginning of the yanked
text.

Secondly, the folding of the yanked trees will only happen if there is
no text directly after the insertion point that would be swallowed by
the folding process.  This was confusing in the past and is much
better now, with a message announcing that folding has been
suppressed.
2008-11-11 09:25:10 +01:00
Carsten Dominik dc43885102 Treat no effort defined as 0 minutes.
Bernt Hanses writes:

This changes the default value for Effort during agenda filtering so
that an undefined Effort value is treated as 0 instead of nil.  Tasks
with no effort defined now return zero effort when selecting tasks for
the filter.

There was effectively no way to select 'tasks with no effort defined'
using the agenda effort filter.  The '<' operator is interpreted as
'<=' and the default effort selection defined in
org-agenda-filter-by-tag starts with zero ("0 0:10 ...") so this
change just treats tasks with no effort defined the same as tasks with
an effort of 0.

This allows fast selection of NEXT tasks with no effort defined.
Column view with follow-mode active in the agenda is great for quickly
filling in the agenda estimated effort values for tasks.  Just display
your Next tasks, then / 0 to select tasks with no effort and enter
column mode (C-c C-x C-c) and fill in your effort values with the
quick keys (0-9) for all of the tasks that have blanks in the effort
column.
2008-11-11 06:56:32 +01:00
Carsten Dominik 3b9a16af0b Add Catalan and Esperanto language entries for HTML export. 2008-11-11 06:46:01 +01:00
Carsten Dominik 9a46feebfc Implement refiling for regions.
The refile command allows to move a subtree to under some other
heading, in the current file or even in a different file.

Sometimes one has a number of sibling subtrees that should all be
refiled to the same location.  This patch implements a simplification
for this process.  You can mark the region of subtrees (using
transient-mark-mode in required for this) and then move them all with
a single command.
2008-11-10 22:17:57 +01:00
Carsten Dominik e41a0d9608 Implement table formulas for clocktables.
Org-mode produces summaries of clocked items in the form of Org-mode
tables.  This patch implements the possibility to define formulas that
should be applied to the clock tables, in order to do additional
analysis.

Formulas for clock tables are supported in two ways.

First, a formula can simply be added by hand to a table.  Part of this
patch makes sure that, when the previous version of the table contains
a #+TBLFM: line, it will be copied to the new version.

Secondly, the clocktable definition allows a new parameter
`:formula'.  The string value of this parameter will be installed as
the formula line for the table.  If a formula parameter is given, it
will overrule any previous formula line.

As a special case, using the symbol `%' as the formula will install a
formula that will compute the fraction of total time that was spent in
a subtree.

In both cases, the formulas will be immediately evaluated after the
table has been created.
2008-11-10 20:57:48 +01:00
Carsten Dominik ebc9366762 Use safer regexps to retrieve property values.
Bernt Hansen recently reported that occasionally he got a newline
included with property values returned by `org-entry-get'.  While the
reason for this is not understood (maybe some dark mingling with
character syntax), these new regexps are explicit about what they
interpret as a non-white character and therefore should make this
matching safer.
2008-11-10 08:59:05 +01:00
Carsten Dominik fb92308d22 Allow to only display logging information in the agenda.
Jurgen Defume asked for a way to display only logging information in
the agenda.  This patch implements such a possibility.  It works by
calling `org-agenda-log-mode' (bound to `l' in the agenda) with a
double prefix arg.  This sets the variable `org-agenda-show-log' to a
special value `only' which is then interpreted by the agenda-creating
functions.
2008-11-09 08:17:33 +01:00
Carsten Dominik fc6a16f20f Improve Footnote export.
Export of Footnotes to HTML now uses a configurable structure.
Also the word "Footnotes" has been translated into many languages.
2008-11-08 15:30:19 +01:00
Carsten Dominik 4fa160447d Fix bug with cursor movement after org-yank.
When org-yank inserts a subtree, it moves the cursor to the headline
after the yank.  A structural bug in the `org-yank' function did cause
this motion also to happen after a normal yank.  Fixed now.
2008-11-07 21:35:27 +01:00
Carsten Dominik 7a9e12dc00 Fix bug in VM code.
Matthew Lovell found that VM messages are only displayed reliably upon
following a link, when the function `vm-preview-current-message' is
called instead of `vm-beginning-of-message'.  This patch implements
this change.
2008-11-06 16:31:35 +01:00
Carsten Dominik de9e605297 Allow links to contain brackets
Links in the standard form [[link][description]] are allowed to have
brackets in them when these are escapes %5B and %5D.  Creating links
through the Org link interface automatically does this conversion.

However, as noticed by Paul R, there is a bug when actually following
such links, when the link will be cut off at the first closing bracket
in the link.

This patch fixes this problem by adjusting the appropriate regexp.
2008-11-06 08:56:13 +01:00
Carsten Dominik a1d457133e Protect the attachment directory from getting a final newline.
This is a first attempt to fix a strange bug reported by Bernt Hansen,
where two attachment directories are created, one of them with a final
newline.
2008-11-05 23:43:04 +01:00
Carsten Dominik 413264882c Introduce function to create links to attachments.
This patch introduces two new functions in org-attach.el,
`org-attach-expand', and `org-attach-expand-link'.  Both take a file
name as an argument, assume that this file is an attachment of the
current entry, and return the full path to this file or a
"file:..." link to it, respectively.

With these functions, it becomes very easy to use link abbreviations
to create a new link type to attachments:

After

(setq org-link-abbrev-alist '(("att" . org-attach-expand-link)))

links like [[att:file.txt]] will work.
2008-11-05 17:54:59 +01:00
Carsten Dominik c4e9626bf4 Show state changes in agenda logbook mode.
Org records (depending on setup) various information about progress
achieved with projects and tasks.  It can record when an item is done
(when it is "closed"), it can record time spent working on these
entries (clocking), and it can record state changes.

In the daily/weekly agenda, turning on logbook mode with the `l' key
will lists the tasks closed or clocked on a day.

This patch implements showing recorded state changes in the agenda
logbook.  By default, showing state changes is not turned on.  But you
can configure the new variable `org-agenda-log-mode-items' to trigger
inclusion of state changes.  An alternative way is to press `C-u l' in
the agenda, to temporarily force inclusion of all possible entries
(closed, clock, state) into the agenda display.

In passing, this patch renames the function `org-agenda-get-closed' to
the now more appropriate `org-agenda-get-progress'.  The old name
continues to be available as an alias, but its use is deprecated.
2008-11-05 17:26:52 +01:00
Carsten Dominik 8787f59cef `C-u C-u C-c C-o' forces opening in an external application
Org-mode uses a special setup with a number of different customization
variables to specify how a file should be opened when following a
:file:..." link with `C-c C-o'.  By using a `C-u' prefix, it was
possible to overrule the customized setup and to force opening the
file in Emacs.

Samuel Wales requested to amend this process, so that a double prefix
argument would do the opposite: force opening the application *outside*
of Emacs, using a system default application.  This is what this patch
implements.

Internally this works through a new entry in system specific constants
`org-file-apps-defaults-gnu', org-file-apps-defaults-macosx', and
`org-file-apps-defaults-windowsnt'.  The new entry has the car
`system' and specifies the command that should be used for the double
C-u calls.  As before, the user option `org-file-apps' can overrule
these default settings.

Note that all this only applies to following "file:" links, and does
not make a difference for, for example, "http:" links.
2008-11-05 10:46:20 +01:00
Carsten Dominik a80b84425b Abbreviate absolute file names in links.
This is a bug fix.  When the option `org-link-file-path-type' has the
value `adaptive', absolute file names would not be abbreviated if they
are relative to the users home directory.  For any other values of
this variable except `noabbrev', absolute links are in fact
abbreviated, so the previous behavior is an inconsistency,
as noticed by Matt Lundin.

This patch fixes this problem and makes sure that also in this case,
file names are abbreviated.

Finally, the patch also fixes a structural bug that would ignore
the double C-u prefix if it was given.
2008-11-04 09:43:58 +01:00
Carsten Dominik 7d1e644715 Fix inserting headlines at the end of the buffer.
When the cursor is at the end of the buffer but not at the beginning
of a line,  inserting a new headline with C-RET did insert the stars
into the last line, without adding the needed newline.  The new line
is now added.
2008-11-03 22:18:25 +01:00
Carsten Dominik 9d13e3c536 Improve XHTML validation.
Horizontal rules are not allowed inside a <p>...</p> structure.
We now explicitly exit paragraph mode before inserting the <hr/> tag.
2008-11-03 21:54:28 +01:00
Carsten Dominik 01989e543a Fix quoting bug TODO state change code.
In a recent patch,  I forgot to quote a new variable in an expression
which tests if the variable is bound.  This has been fixed now.
2008-11-03 21:38:49 +01:00
Carsten Dominik ca27c1d0b3 Reverse the changes that quoted " to &quot;
This change inerferred with other functionality of the exporter,
causing all kinds of issues.
2008-11-03 21:08:02 +01:00
Carsten Dominik c9cd22e861 Collect footnotes in HTML export.
All footnotes are now collected and put into a separate <div> at the
end of the HTML document, but before the footer.
2008-11-03 21:05:12 +01:00
Carsten Dominik 15b4ae9038 Process link descriptions in HTML export like any content.
Link descriptions where so far exported literally.  However, really
they need to escape special characters and have TeX-like macros
interpreted and emphasis enabled just like any other text.

This patch makes sure link descriptions are passed through a new
filter, `org-export-html-format-desc' which does just that.

This fix is a follow-up to a report by Sebastian Rose.
2008-11-03 14:26:18 +01:00
Carsten Dominik 0dc772285e Cleanup to make the compiler happy.
This is a regular task.  Follow up on the compiler message and try to
fix them so that the compiler will compile these files happily and
silently.
2008-11-03 13:44:42 +01:00
Carsten Dominik 293d3311d6 Check for horizontally-split windows when shrinking a window.
So far, Org used either `fit-window-to-buffer' or
`shrink-window-if-larger-than-buffer' without any further checks when
displaying one of its many help and selection buffers.  This can cause
problems if the user has set up Emacs to split windows horizontally
rather than vertically, because the window being shrunken then may be
side-by-side with another window, and shrinking the height of one will
also change the other.

With this patch, shrinking a window always goes through the new
function `org-fit-window-to-buffer' which only acts if the current
window spans the whole width of the frame.

Furthermore, this function also helps with compatibility, because it
falls back to `shrink-window-if-larger-than-buffer' if
`fit-window-to-buffer' does not exist, as is the case on older version
of Emacs and XEmacs.
2008-11-03 13:38:25 +01:00
Carsten Dominik 413d9b73b0 Make href's in XHTML output valid.
field (or in any other attribute value) must be written as "&amp;" in
order to be valid XHMTL.  This patch implements a new filter function
through which every href value is passed, and which enforces this
standard.

This is was triggered by a report by Sebastian Rose.
2008-11-03 12:05:30 +01:00
Carsten Dominik 0bbf3a9bd6 Improve feedback when completing repeated tasks from agenda view.
When marking a repeated entry DONE in the daily or weekly agenda, that
task would previously still be shown as TODO, because the repeater
immediately restores the TODO state after moving the time stamp.  This
is bad feedback.

This problem was hard to fix.  Because the same line may be present in
other lines in the same weekly agenda, we cannot simply update all
lines related to this entry.

What we do now is this:  Before the repeater does its work in shifting
the time stamp and resetting the TODO keyword, we take a snapshot of
the headline as it looks then.  And then, when we update the agenda
view, we change only the line at the cursor instead of all lines
related to this entry.  We also make sure that this is only so if the
cursor is in a daily/weekly agenda, on TODAY's date.

There still remain possible inconsistencies.  For example, if you have
a daily repeating task in the weekly agenda, and you move the cursor a
few days into the future and mark it DONE there, the entry will
actually be marked DONE for today, but still show up in today's task
list as TODO.  refreshing the agenda will fix the display in such an
unlikely case.

Thanks to Jack ??? for noticing and reporting this issue.
2008-11-03 08:36:30 +01:00
Carsten Dominik cb1bbaf244 Don't keep buffers visited during index publishing.
The index generation of org-publish does briefly visit all files in
order to extract the correct page title.  Visiting is necessary,
because the title may be set by the first line in the buffer, by a
Before this patch, this would cause the generation of a large number
of buffers, one for each file mentioned in the index.  This patch
arranges for these buffers to be removed again.  However, buffers
which were already present will not be removed.

There is still one open problem:  The files to be published are
visited twice, one for publishing them, a second time for creating the
index.  Visiting causes some overhead, and we would like to limit this
overhead.  For now, however, this is not done.
2008-11-02 17:13:25 +01:00
Carsten Dominik bdc93a9cd2 Mark style definitions as unparsed CDATA.
Org-mode does sometimes included CSS definitions directly
into an exported XHTML file.  To pass validation tests
for XHTML, these sections need to be wrapped in
order to pass as CDATA, not PCDATA.  This patch
(written by Sebastian Rose) does implement this change.
It also fixes some typos.
2008-11-02 17:01:50 +01:00
Carsten Dominik d1f91f7e93 Re-introduce the org-publish-validate-link function. 2008-11-02 16:20:40 +01:00
Carsten Dominik 960ba70e7f ChangeLogs for the recent org-plot updates. 2008-11-02 15:10:18 +01:00
Carsten Dominik 35265f29f6 Fix problems with heading creation when subtree is hidden. 2008-11-02 08:43:18 +01:00
Carsten Dominik 33ea179f50 Stop linking to directories in sitemap. 2008-11-02 08:08:32 +01:00
Carsten Dominik 8c1e5c2d17 Improve XHTML validation. 2008-11-02 07:59:09 +01:00
Carsten Dominik fde28dbdb1 Remove language attribute from script tag.
This did cause validation problems.
2008-11-01 13:55:59 +01:00
Carsten Dominik b52b4159dc Removed filtered text from the exported agenda. 2008-11-01 13:48:54 +01:00
Carsten Dominik e3be5a3c08 Speed-up access to TODO keywords during tag searches.
Using a property-like expression like TODO="NEXT" it a tag
search now bypasses the property API and is therefore fast.
2008-10-31 09:11:52 +01:00
Carsten Dominik c6455acf3f New function org-fit-window-to-buffer.
This function only does its job if no side-by-side
window would be affected as well.  Also, if
fit-window-to-buffer is not defined, use
shrink-window-if-larger-than-buffer instead.
2008-10-29 14:55:22 +01:00
Carsten Dominik 17c55f1b10 Make gnus links use message-id. 2008-10-29 09:54:15 +01:00
Carsten Dominik 8f00f6226f Set HTML tags for ~verbatim~ emphasis. 2008-10-28 20:29:28 +01:00
Carsten Dominik 13d2cb4638 Fix bug with redirecting remember target using prefix arguments. 2008-10-28 18:12:56 +01:00
Carsten Dominik cff8571c31 Fix priority bug in icalendar export. 2008-10-28 15:39:45 +01:00
Carsten Dominik 7c40034fd8 Remove the dependence on time-stamp.el. 2008-10-28 09:46:42 +01:00
Carsten Dominik 07657f3e80 Yank adjusted trees.
When yanking a cut/copied subtree or a series of trees, even
the nomal yank key `C-y' does now adjust the level of the tree
to make it fit into the current outline position, without
loosing its identity, and without swallowing other subtrees.

This uses the command `org-past-subtree'.  An additional
change in that command has been implemented:  Normally, this
command picks the right outline level from the surrounding
*visible* headlines, and uses the smaller on.  So it the
cursor is between a level 4 and a level 3 headline, the tree
will be pasted as level 3.  Now, if the cursor is actually
*at* the beginning of a headline, the level of that headline
will be used.  So lets say you have a tree like this:

  * Level one
  ** Level two
  (1)
  (2)* Level one again

with (1) and (2) indicating possible cursor positions for the
insertion.  When at (1), the tree will be pasted as level 2.
When at (2), it will be pasted as level 1.

If you do not like `C-y' to behave like this, configure the
variable `org-yank-adjusted-subtrees'.

Thanks to Samuel Wales for this idea and a partial implementation.
2008-10-28 09:07:56 +01:00
Carsten Dominik 8cc9b150c8 Implement automatic level adjustment for yanked subtrees. 2008-10-28 08:49:37 +01:00
James TD Smith 6ca2053982 Add clock persistence.
Clock-related data are saved when exiting emacs ands restored when emacs
is restarted. The data saved include the contents of `org-clock-history',
and the running clock, if there is one.

To use this, you will need to add

(require 'org-clock)
(org-clock-persistence-insinuate)

to your .emacs and either add

(setq org-clock-persist t)
(setq org-clock-in-resume t)

or set those options to t in custom.

This patch requires the clock resume patch.

Add missing blank line to changelog
2008-10-27 23:04:25 +00:00
James TD Smith a70426f115 Add clock resuming.
If the option `org-clock-resume' is t, and the first clock line in an entry is is
open, clocking into that task resumes the clock from that time.
2008-10-27 23:03:10 +00:00
Carsten Dominik 407a84af1b Yank subtree back in a level-adjusted way.
Now C-y does insert subtrees intelligently.
2008-10-27 17:57:53 +01:00
Carsten Dominik 2eb3594c5f Allow inactive time stamps in time comparisons. 2008-10-27 12:14:37 +01:00
Carsten Dominik 3a9dc0c5ea Unhide locations visited by saveplace.el 2008-10-27 09:41:37 +01:00
Carsten Dominik 8c022e1b72 Fix lockfile/symlink problem in org-publish.
Richard Riley and Sebastian Rose hunted down this bug.
2008-10-27 07:44:12 +01:00
Carsten Dominik 0df8bfb77c Fix site-map directory bug.
Report and patch by Sebastian Rose.
2008-10-26 07:45:13 +01:00
Carsten Dominik 1f892af3e6 Fix typo. 2008-10-26 06:58:28 +01:00
Carsten Dominik d374f9e217 Fix bug in tags filter related to case-sensitive comparisons. 2008-10-25 12:40:13 +02:00
Carsten Dominik 2569aee1d3 Cleanup some typos in ChangeLog.
Patch by James TD Smith.
2008-10-24 07:03:15 +02:00
Carsten Dominik 78d2d64353 Bug fix.
Patch from Peter Jones.
2008-10-23 07:07:01 +02:00
Carsten Dominik e22ac452ad Fix ASCII export bug when exporting from indirect buffer. 2008-10-22 17:37:24 +02:00
Carsten Dominik 7d30bd5c47 Fixed bug with timestamp increment during S-RET copy in tables. 2008-10-22 17:29:27 +02:00
Carsten Dominik 722cbe8f5f Make some features of org-mouse optional.
New variable org-mouse-features.
2008-10-22 09:41:15 +02:00
Carsten Dominik 61cf8cd7ac Modify behavior at headling insertion.
C-RET now always inserts a heading, never an item.
The folding state of the heading before the newly inserted one
is preserved.

Patch by Peter Jones.
2008-10-22 07:53:22 +02:00
Carsten Dominik 69bf8ef2b4 Fix bug with sibling archiving on top level. 2008-10-21 22:29:03 +02:00
Bastien Guerry 8ba8432e46 Added \usepackage{graphicx} to the list of default packages. 2008-10-21 10:57:52 +02:00
Carsten Dominik 2dc6b163c2 Fixed bugs in filtering, and made filtering persist through agenda refresh. 2008-10-21 07:53:01 +02:00
Carsten Dominik a086743480 Merge branch 'filtering'
Conflicts:
	lisp/ChangeLog
2008-10-20 23:32:22 +02:00
Carsten Dominik aead878b46 Implement narrowing existing agenda filters, and effort filters. 2008-10-20 23:01:23 +02:00
Carsten Dominik 713328eb60 Intermediate 2008-10-20 09:38:23 +02:00
Carsten Dominik c7ff3d46e1 Fix bug with missing state notes when calling org-todo with prefix arg.
Reported by Robert Goldman.
2008-10-20 08:21:41 +02:00
Carsten Dominik 24d80b3928 Add CATEGORY as an retrievable entry property. 2008-10-20 08:10:13 +02:00
Carsten Dominik a6e5bc531d Fix bug in positioning notes.
Patch by James Smith.
2008-10-20 07:47:16 +02:00
Carsten Dominik 2f3e5eaa2b Fix bug with table tag in table html export.
Reported by
2008-10-18 18:04:38 +02:00
Carsten Dominik a669549843 Make PDF export work under windows. 2008-10-18 15:21:02 +02:00
Carsten Dominik 79e0ca32d2 The the problem of partial name matches with LaTeX entities. 2008-10-18 10:44:41 +02:00
Carsten Dominik 25b227e5ca Fix sub/superscript issues in LaTeX export. 2008-10-17 19:32:30 +02:00
Carsten Dominik fe57640127 Compute negative clock intervals correctly.
Patch by Chris Leyton.
2008-10-17 07:22:58 +02:00
Carsten Dominik 07f51279b2 Make drawer skipping for note insertion more sensible. 2008-10-16 18:35:17 +02:00
Carsten Dominik f70127dd3f Allow org-clock-in-switch-to-state to be a function.
Allow org-clock-in-switch-to-state to be a function. This lets you have
different clocked in states for different TODO keyword sets, for example

(defun ahkt-clock-state (state)
  (cond ((string= state "TOREAD") "READING")
	((string= state "TOWATCH") "WATCHING")
	(t state)))

Also fix indentation on clock lines, and empty clock drawers when they are
inserted.
2008-10-16 18:26:43 +02:00
Carsten Dominik 329a7a7d34 Implement tag changes triggered automatically by TODO state changes. 2008-10-16 09:54:30 +02:00
Carsten Dominik a1d3086419 New option `org-log-state-notes-insert-after-drawers'.
Default is nil.
2008-10-16 06:49:55 +02:00
Carsten Dominik 52fa7f817b Add commands to export to PDF.
This works by creating LaTeX first, and then processing it.
2008-10-15 17:21:52 +02:00
Carsten Dominik 491702483a Fix table parsing bug. 2008-10-15 13:11:48 +02:00
Carsten Dominik f0340c404a *** empty log message *** 2008-10-15 09:18:03 +02:00
Carsten Dominik 16e030620a Improve environment quoting for LaTeX export. 2008-10-14 18:11:01 +02:00
Carsten Dominik d6542dba1a Merge branch 'fix-latex-internal-links'
Conflicts:
	lisp/ChangeLog
2008-10-10 11:43:21 +02:00
Carsten Dominik 5b6a8a55e8 Fix problems with internal links for LateX export. 2008-10-10 11:42:01 +02:00
Carsten Dominik 76bc40a6e3 Keep artist-mode editing from eating empty lines. 2008-10-10 08:50:23 +02:00
Carsten Dominik 82f1c863ee Cleaning up attachment support.
Among other things, introduce a security query before deleting
the entire attachment directory.  And add a new method to delete
a single attachment.
2008-10-09 12:19:43 +02:00
Carsten Dominik b0ce57d27d Fix bug with getting list of attachments. 2008-10-08 14:59:14 +02:00
Carsten Dominik 1da27893e9 Make strings in `org-file-apps' being interpreted as regexps.
Also, a new way to make org-file-apps direct all files for
which Emacs has a major mode to be edited by Emacs itself.
2008-10-08 12:46:09 +02:00
Carsten Dominik 8518c9ed81 Allow different methods to get an attachment into the directory.
Supported methods are copy, link, and move.
2008-10-07 14:28:21 +02:00
Carsten Dominik 5548357d71 Fix bug with anniversaries in org-bbdb.el. 2008-10-06 20:45:02 +02:00
Carsten Dominik dc71bfc007 Fix reverse interpretation of the list value o `org-use-tag-inheritance'. 2008-10-06 18:53:51 +02:00
Carsten Dominik 2d33de3600 Tag entries that have attachments. 2008-10-06 09:38:50 +02:00
Carsten Dominik e71f9d0a62 Make the keypad work with orgtbl-mode. 2008-10-04 15:49:27 +02:00
Carsten Dominik e9a39cf1cd Merge branch 'latex-preamble'
Conflicts:
	lisp/ChangeLog
2008-10-02 23:56:49 +02:00
Carsten Dominik 8d8403399e Fix bug that could push note into a child.
Reported by Bernt Hansen.
2008-10-02 18:15:46 +02:00
Carsten Dominik be1a210045 Merge branch 'jd7' 2008-10-02 18:07:45 +02:00
Carsten Dominik 2a8dac9f70 Store remember notes under the current clock entry with `C-2 C-c C-c'.
Patch from James TD Smith, but modified.
2008-10-02 18:07:12 +02:00
Carsten Dominik 20364d043a Implement #+LATEX_HEADER special.
Proposed by Austin Frank and apparently also by Russel Adams.
2008-10-02 15:00:14 +02:00
Carsten Dominik 7c0e0189f0 Fix property inheritance marker.
Now the function that retrieves a property with inheritance makes
sure that this function does not point anywhere if there was
no match.
2008-10-01 21:31:24 +02:00
Carsten Dominik c50a7b312f Intermediate. 2008-10-01 12:43:55 +02:00
Carsten Dominik b1d5e6c62d Allow multiple #+STYLE lines in the buffer. 2008-10-01 11:41:00 +02:00
Carsten Dominik d043e31182 Integrate John Wiegley's org-attach.el. 2008-10-01 09:25:18 +02:00
Carsten Dominik 46246169bf When moving items, keep the column position.
Reported by Rainer Stengele.
2008-09-29 12:46:15 +02:00
Carsten Dominik d5b9c3e04f Remove properties from `initial' text in remember.
This is to make sure that no bad properties end up in the remember buffer.

Report by Richard Riley.
2008-09-29 08:27:13 +02:00
Carsten Dominik f640c8982a Remove useless call to `wl-thread-open-all'. 2008-09-27 17:55:51 +02:00
Carsten Dominik 4e6b862560 Fix bug with remember template `bottom' location.
Reported by Ethan Blanton.
2008-09-27 07:44:43 +02:00
Carsten Dominik 7e7d79d60a Require bbdb in `org-bbdb-anniversaries'. 2008-09-26 18:38:27 +02:00
Carsten Dominik fcff45bc35 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode
Conflicts:
	lisp/ChangeLog
2008-09-26 18:28:45 +02:00
Carsten Dominik b1e7ec5010 Fix bug with updating parent statistics when children are hidden.
Report by Charles Sebold.
2008-09-26 17:06:17 +02:00
Bastien Guerry 0e0f5bba8c Cleaner message when repeating an entry. 2008-09-25 11:27:36 +02:00
Carsten Dominik 7b54d28c30 Avoid rounding errors whe summing table columns. 2008-09-24 17:33:10 +02:00
Carsten Dominik 990a549370 Protect keyword-selecting variabels during mapping. 2008-09-24 16:31:56 +02:00
Bastien Guerry ff52989cd4 Make sure org-agenda-to-app checks all files. 2008-09-23 09:37:38 +02:00
Carsten Dominik f0f34d4985 Split out org-list.el from org.el and org-export-latex.el. 2008-09-23 08:03:13 +02:00
Carsten Dominik 6f86eb35a5 New option `org-edit-src-region-extra'. 2008-09-23 04:53:21 +02:00
Carsten Dominik f26330fdc5 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode
Conflicts:

	lisp/ChangeLog
2008-09-22 10:02:14 +02:00
Carsten Dominik a8741db759 Fix bug in appointment generation for appointments before 1am.
Reported by Richard Riley.
2008-09-22 08:40:32 +02:00
Bastien Guerry a8a499ed2d Removed buggy reference to org-quote-chars. 2008-09-22 08:30:27 +02:00