Commit 71d35b24 authored by Carsten Dominik's avatar Carsten Dominik

2008-10-26 Carsten Dominik <dominik@science.uva.nl>

	* org-agenda.el (org-format-agenda-item)
	(org-agenda-filter-make-matcher): Make sure tags are stored and
	compared donwcased.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org.el (org-insert-todo-heading): Fix bug with force-heading
	argument.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-exp.el (org-export-as-ascii): Handle the case that we are
	bulishing from an indirect buffer.

	* org-table.el (org-table-copy-down): Fix bug with time stamp
	increment.

	* org-mouse.el (org-mouse-features): New option.
	(org-mode-hook): Turn on features depending on
	`org-mouse-features'.

	* org.el (org-insert-heading-respect-content): Force heading
	creation.
	(org-insert-heading): keep the folding state of the heading before
	the inserted one.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-archive.el (org-archive-to-archive-sibling): Handle top
	level headlines better.

2008-10-26  Bastien Guerry  <bzg@altern.org>

	* org-export-latex.el (org-export-latex-classes): Added
	\usepackage{graphicx} to the default list of packages.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-agenda.el (org-agenda-filter): Renamed from
	`org-agenda-filter-tags'.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org.el (org-entry-properties): Add CATEGORY property, iven if it
	is not defined as a property in this entry.
	(org-add-log-note): Mask prefix argument when immediately storing
	the note.

	* org-agenda.el (org-agenda-filter-effort-default-operator): New
	option.

2008-10-26  James TD Smith  <ahktenzero@mohorovi.cc>

	* org.el (org-add-log-setup): Bugfix; code to find insertion point
	after drawers was skipping ahead one line too many, so notes were
	inserted after the first note instead of before it.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-agenda.el (org-agenda-filter-tags,org-agenda-filter-form):
	New variables.
	(org-prepare-agenda): Reset the filter tags.
	(org-agenda-filter-by-tag, org-agenda-filter-by-tag-show-all):
	Show filter tags in mode line.

	* org-table.el (orgtbl-to-html): Bind `html-table-tag' for the
	formatter.

	* org-export-latex.el (org-latex-entities-regexp): New constant.
	(org-export-as-pdf): Use two calls to `shell-command'.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-export-latex.el (org-export-latex-treat-sub-super-char):
	Honor the {} value of the subsuperscript setting.  Make sure that
	longer subsuperscripts are typeset in a roman font.

	* org.el (org-clock-update-time-maybe): Compute negative clock
	intervals correctly.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org.el (org-add-log-setup): Respect
	`org-log-state-notes-insert-after-drawers'.
	(org-log-state-notes-insert-after-drawers): New option.
	(org-todo-trigger-tag-changes): New function.
	(org-todo): Call `org-todo-trigger-tag-changes'.

2008-10-26  James TD Smith  <ahktenzero@mohorovi.cc>

	* org.el (org-add-log-setup): Only skip drawers if the are
	immediately after the scheduling keywords.

	* org-clock.el (org-clock-in-switch-to-state): Allow this to be a
	function
	(org-clock-in): If `org-clock-in-switch-to-state' is a function,
	call it with the current todo state to get the state to switch to
	when clocking in.
	(org-clock-in): Use org-indent-line-function to indent clock lines.
	(org-clock-find-position): Fix indentation of empty clock drawers.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-publish.el (org-publish-org-to): Handle case when
	org-export-to-pdf does return a file name, not a buffer.
	(org-publish-org-to-pdf): New function.

	* org-export-latex.el (org-export-as-pdf)
	(org-export-as-pdf-and-open): New commands.

	* org-table.el (org-table-eval-formula): Avoid parsing Calc's HMS
	forms as ranges.

	* org-export-latex.el (org-export-latex-lists): Ignore lists-like
	things in protexted regions.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-export-latex.el (org-export-latex-preprocess): Improve
	quoting of LaTeX environments.
parent 7f5cd554
......@@ -3,7 +3,7 @@
@setfilename ../../info/org
@settitle The Org Manual
@set VERSION 6.09a
@set VERSION 6.10c
@set DATE October 2008
@dircategory Emacs
......@@ -291,7 +291,7 @@ Exporting
* The export dispatcher:: How to access exporter commands
* ASCII export:: Exporting to plain ASCII
* HTML export:: Exporting to HTML
* LaTeX export:: Exporting to LaTeX
* LaTeX and PDF export:: Exporting to LaTeX, and processing to PDF
* XOXO export:: Exporting to XOXO
* iCalendar export:: Exporting in iCalendar format
......@@ -321,9 +321,9 @@ HTML export
* CSS support:: Changing the appearance of the output
* Javascript support:: Info and Folding in a web browser
LaTeX export
LaTeX and PDF export
* LaTeX export commands:: How to invoke LaTeX export
* LaTeX/PDF export commands::
* Quoting LaTeX code:: Incorporating literal LaTeX code
* Sectioning structure:: Changing sectioning in LaTeX output
......@@ -541,7 +541,7 @@ You need to fix the single quotes by hand, or copy from Info
documentation.}
@end iftex
Add the following lines to your @file{.emacs} file. The last two lines
Add the following lines to your @file{.emacs} file. The last three lines
define @emph{global} keys for the commands @command{org-store-link},
@command{org-agenda}, and @command{org-iswitchb} - please choose suitable
keys yourself.
......@@ -859,11 +859,14 @@ you can use the following keys to find your destination:
@example
@key{TAB} @r{Cycle visibility.}
@key{down} / @key{up} @r{Next/previous visible headline.}
@key{RET} @r{Select this location.}
@kbd{/} @r{Do a Sparse-tree search}
@r{The following keys work if you turn off @code{org-goto-auto-isearch}}
n / p @r{Next/previous visible headline.}
f / b @r{Next/previous headline same level.}
u @r{One level up.}
0-9 @r{Digit argument.}
@key{RET} @r{Select this location.}
q @r{Quit}
@end example
@end table
......@@ -897,8 +900,9 @@ of a headline), then a headline like the current one will be inserted
after the end of the subtree.
@kindex C-@key{RET}
@item C-@key{RET}
Just like @kbd{M-@key{RET}}, but if the heading is inserted after the current,
insert it actually after the entire subtree.
Just like @kbd{M-@key{RET}}, except when adding a new heading below the
current heading, the new heading is placed after the body instead of before
it. This command works from anywhere in the entry.
@kindex M-S-@key{RET}
@item M-S-@key{RET}
Insert new TODO entry with same level as current heading.
......@@ -927,9 +931,7 @@ level).
@item M-S-@key{down}
Move subtree down (swap with next subtree of same level).
@kindex C-c C-x C-w
@kindex C-c C-x C-k
@item C-c C-x C-w
@itemx C-c C-x C-k
Kill subtree, i.e. remove it from buffer but save in kill ring.
With a numeric prefix argument N, kill N sequential subtrees.
@kindex C-c C-x M-w
......@@ -2272,12 +2274,10 @@ functions.
@cindex plot tables using gnuplot
Org Plot can produce 2D and 3D graphs of information stored in org tables
using @file{Gnuplot} (see @uref{http://www.gnuplot.info/, the Gnuplot
website}) and @file{gnuplot-mode} (see
@uref{http://cars9.uchicago.edu/~ravel/software/gnuplot-mode.html, the
gnuplot-mode website}). To see this in action ensure that you have both
Gnuplot and Gnuplot-mode installed on your system, then call
@code{org-plot/gnuplot} on the following table.
using @file{Gnuplot} @uref{http://www.gnuplot.info/} and @file{gnuplot-mode}
@uref{http://cars9.uchicago.edu/~ravel/software/gnuplot-mode.html}. To see
this in action ensure that you have both Gnuplot and Gnuplot-mode installed
on your system, then call @code{org-plot/gnuplot} on the following table.
@example
@group
......@@ -2296,8 +2296,8 @@ Notice that Org Plot is smart enough to apply the tables headers as labels.
Further control over the labels, type, content, and appearance of plots can
be exercised through the @code{#+Plot:} lines preceding a table. See below
for a complete list of Org plot options. For more information and examples
@uref{http://orgmode.org/worg/org-tutorials/org-plot.php, the org-plot
tutorial}.
see the org-plot tutorial at
@uref{http://legito.org/worg/org-tutorials/org-plot.php}.
@subsubheading Plot Options
......@@ -2312,8 +2312,10 @@ Specify the title of the plot.
Specify which column of the table to use as the @code{x} axis.
@item deps
Specify (as a comma seperated list with no spaces) which columns of the table
to graph against the ind (defaults to all other columns).
Specify the columns to graph as a lisp style list, surrounded by parenthesis
and separated by spaces for example @code{dep:(3 4)} to graph the third and
fourth columns (defaults to graphing all other columns aside from the ind
column).
@item type
Specify whether the plot will be @code{2d}, @code{3d}, or @code{grid}.
......@@ -2895,6 +2897,10 @@ commands}). @xref{Global TODO list}, for more information.
Insert a new TODO entry below the current one.
@end table
@noindent
Changing a TODO state can also trigger tag changes. See the docstring of the
option @code{org-todo-state-tags-triggers} for details.
@node TODO extensions, Progress logging, TODO basics, TODO Items
@section Extended use of TODO keywords
@cindex extended TODO keywords
......@@ -3225,7 +3231,6 @@ settings like @code{TODO(!)}. For example
:END:
@end example
@node Priorities, Breaking down tasks, Progress logging, TODO Items
@section Priorities
@cindex priorities
......@@ -3471,8 +3476,8 @@ After a colon, @kbd{M-@key{TAB}} offers completion on tags. There is
also a special command for inserting tags:
@table @kbd
@kindex C-c C-c
@item C-c C-c
@kindex C-c C-q
@item C-c C-q
@cindex completion, of tags
Enter new tags for the current headline. Org mode will either offer
completion or a special single-key interface for setting tags, see
......@@ -3481,6 +3486,9 @@ to @code{org-tags-column}. When called with a @kbd{C-u} prefix, all
tags in the current buffer will be aligned to that column, just to make
things look nice. TAGS are automatically realigned after promotion,
demotion, and TODO state changes (@pxref{TODO basics}).
@kindex C-c C-c
@item C-c C-c
When the cursor is in a headline, this does the same as @kbd{C-c C-q}.
@end table
Org will support tag insertion based on a @emph{list of tags}. By
......@@ -4857,10 +4865,10 @@ you want to clock your time). For a specific buffer you can use
@end example
@noindent
or you can set up these values globally by customizing the variables
@code{org-global-properties} and @code{org-columns-default-format}. In
particular if you want to use this setup also in the agenda, a global setup
may be advised.
or, even better, you can set up these values globally by customizing the
variables @code{org-global-properties} and @code{org-columns-default-format}.
In particular if you want to use this setup also in the agenda, a global
setup may be advised.
The way to assign estimates to individual items is then to switch to column
mode, and to use @kbd{S-@key{right}} and @kbd{S-@key{left}} to change the
......@@ -4876,6 +4884,10 @@ option @code{org-agenda-columns-add-appointments-to-effort-sum}. The
appointments on a day that take place over a specified time interval will
then also be added to the load estimate of the day.
Effort estimates can be used in secondary agenda filtering that is triggered
with the @kbd{/} key in the agenda (@pxref{Agenda commands}). If you have
these estimates defined consistently, two or three key presses will narrow
down the list to stuff that fits into an available time slot.
@node Capture, Agenda Views, Dates and Times, Top
@chapter Capture
......@@ -5829,9 +5841,7 @@ sequence in which they are found in the agenda files.
Sorting can be customized using the variable
@code{org-agenda-sorting-strategy}, and may also include criteria based on
the estimated effort of an entry.
@c FIXME: link!!!!!!!!
the estimated effort of an entry (@pxref{Effort estimates}).
@node Agenda commands, Custom agenda views, Presentation and sorting, Agenda Views
@section Commands in the agenda buffer
......@@ -5988,17 +5998,48 @@ that entry would be in the original buffer (taken from a property, from a
@code{org-columns-default-format}), will be used in the agenda.
@tsubheading{Secondary filtering and query editing}
@cindex filtering, by tag and effort, in agenda
@cindex tag filtering, in agenda
@cindex effort filtering, in agenda
@cindex query editing, in agenda
@kindex /
@item /
Filter the current agenda view with respect to a tag. You will be prompted
for a tag selection letter. Pressing @key{TAB} at that prompt will offer use
completion to select a tag (including any tags that do not have a selection
character). The command then hides all entries that do not contain or
inherit this tag. When called with prefix arg, remove the entries that
@emph{do} have the tag. A second @kbd{/} at the prompt will unhide any
hidden entries.
Filter the current agenda view with respect to a tag and/or effort estimates.
The difference between this and a custom agenda commands is that filtering is
very fast, so that you can switch quickly between different filters without
having to recreate the agenda.
You will be prompted for a tag selection letter. Pressing @key{TAB} at that
prompt will offer use completion to select a tag (including any tags that do
not have a selection character). The command then hides all entries that do
not contain or inherit this tag. When called with prefix arg, remove the
entries that @emph{do} have the tag. A second @kbd{/} at the prompt will
turn off the filter and unhide any hidden entries. If the first key you
press is either @kbd{+} or @kbd{-}, the previous filter will be narrowed by
requiring or forbidding the selected additional tag. Instead of pressing
@kbd{+} or @kbd{-}, you can also use the @kbd{\} command.
In order to filter for effort estimates, you should set-up allowed
efforts globally, for example
@lisp
(setq org-global-properties
'(("Effort_ALL". "0 0:10 0:30 1:00 2:00 3:00 4:00")))
@end lisp
You can then filter for an effort by first typing an operator, one of @kbd{<},
@kbd{>}, and @kbd{=}, and then the one-digit index of an effort estimate in
your array of allowed values, where @kbd{0} means the 10th value. The filter
will then restrict to entries with effort smaller-or-equal, equal, or
larger-or-equal than the selected value. If the digits 0-9 are not used as
fast access keys to tags, you can also simply press the index digit directly
without an operator. In this case, @kbd{<} will be assumed.
@kindex \
@item \
Narrow the current agenda filter by an additional condition. When called with
prefix arg, remove the entries that @emph{do} have the tag, or that do match
the effort criterion. You can achieve the same effect by pressing @kbd{+} or
@kbd{-} as the first key after the @kbd{/} command.
@kindex [
@kindex ]
......@@ -6520,7 +6561,8 @@ From the command line you may also use
emacs -f org-batch-store-agenda-views -kill
@end example
@noindent
or, if you need to modify some parameters
or, if you need to modify some parameters@footnote{Quoting may depend on the
system you use, please check th FAQ for examples.}
@example
emacs -eval '(org-batch-store-agenda-views \
org-agenda-ndays 30 \
......@@ -6930,7 +6972,7 @@ Org mode only supports export, not import of these different formats.
* The export dispatcher:: How to access exporter commands
* ASCII export:: Exporting to plain ASCII
* HTML export:: Exporting to HTML
* LaTeX export:: Exporting to LaTeX
* LaTeX and PDF export:: Exporting to LaTeX, and processing to PDF
* XOXO export:: Exporting to XOXO
* iCalendar export:: Exporting in iCalendar format
@end menu
......@@ -7454,7 +7496,7 @@ the body text. Any indentation larger than this is adjusted to preserve
the layout relative to the first line. Should there be lines with less
indentation than the first, these are left alone.
@node HTML export, LaTeX export, ASCII export, Exporting
@node HTML export, LaTeX and PDF export, ASCII export, Exporting
@section HTML export
@cindex HTML export
......@@ -7698,19 +7740,23 @@ You can choose default values for these options by customizing the variable
@code{org-infojs-options}. If you always want to apply the script to your
pages, configure the variable @code{org-export-html-use-infojs}.
@node LaTeX export, XOXO export, HTML export, Exporting
@section LaTeX export
@node LaTeX and PDF export, XOXO export, HTML export, Exporting
@section LaTeX and PDF export
@cindex LaTeX export
@cindex PDF export
Org mode contains a La@TeX{} exporter written by Bastien Guerry.
Org mode contains a La@TeX{} exporter written by Bastien Guerry. With
further processing, this backend is also used to produce PDF output. Since
the LaTeX output uses @file{hyperref} to implement links and cross
references, the PDF output file will be fully linked.
@menu
* LaTeX export commands:: How to invoke LaTeX export
* LaTeX/PDF export commands::
* Quoting LaTeX code:: Incorporating literal LaTeX code
* Sectioning structure:: Changing sectioning in LaTeX output
@end menu
@node LaTeX export commands, Quoting LaTeX code, LaTeX export, LaTeX export
@node LaTeX/PDF export commands, Quoting LaTeX code, LaTeX and PDF export, LaTeX and PDF export
@subsection LaTeX export commands
@table @kbd
......@@ -7738,6 +7784,12 @@ buffer.
@item M-x org-replace-region-by-latex
Replace the active region (assumed to be in Org mode syntax) by La@TeX{}
code.
@kindex C-c C-e p
@item C-c C-e p
Export as LaTeX and then process to PDF.
@kindex C-c C-e d
@item C-c C-e d
Export as LaTeX and then process to PDF, then open the resulting PDF file.
@end table
@cindex headline levels, for exporting
......@@ -7757,7 +7809,7 @@ with a numeric prefix argument. For example,
@noindent
creates two levels of headings and does the rest as items.
@node Quoting LaTeX code, Sectioning structure, LaTeX export commands, LaTeX export
@node Quoting LaTeX code, Sectioning structure, LaTeX/PDF export commands, LaTeX and PDF export
@subsection Quoting LaTeX code
Embedded La@TeX{} as described in @ref{Embedded LaTeX} will be correctly
......@@ -7778,7 +7830,7 @@ All lines between these markers are exported literally
#+END_LaTeX
@end example
@node Sectioning structure, , Quoting LaTeX code, LaTeX export
@node Sectioning structure, , Quoting LaTeX code, LaTeX and PDF export
@subsection Sectioning structure
@cindex LaTeX class
@cindex LaTeX sectioning structure
......@@ -7786,13 +7838,13 @@ All lines between these markers are exported literally
By default, the La@TeX{} output uses the class @code{article}.
You can change this globally by setting a different value for
@code{org-export-latex-default-class} or locally by adding an option
like @code{#+LaTeX_CLASS: myclass} in your file. The class should be
listed in @code{org-export-latex-classes}, where you can also define the
sectioning structure for each class.
@code{org-export-latex-default-class} or locally by adding an option like
@code{#+LaTeX_CLASS: myclass} in your file. The class should be listed in
@code{org-export-latex-classes}, where you can also define the sectioning
structure for each class, as well as defining additonal classes.
@node XOXO export, iCalendar export, LaTeX export, Exporting
@node XOXO export, iCalendar export, LaTeX and PDF export, Exporting
@section XOXO export
@cindex XOXO export
......@@ -7984,14 +8036,14 @@ and @code{:exclude}.
@cindex action, for publishing
Publishing means that a file is copied to the destination directory and
possibly transformed in the process. The default transformation is to
export Org files as HTML files, and this is done by the function
@code{org-publish-org-to-html} which calls the HTML exporter
(@pxref{HTML export}). But you also can publish your files in La@TeX{} by
using the function @code{org-publish-org-to-latex} instead. Other files
like images only need to be copied to the publishing destination. For
non-Org files, you need to specify the publishing function.
possibly transformed in the process. The default transformation is to export
Org files as HTML files, and this is done by the function
@code{org-publish-org-to-html} which calls the HTML exporter (@pxref{HTML
export}). But you also can publish your files in La@TeX{} by using the
function @code{org-publish-org-to-latex} instead, or as PDF files using
@code{org-publish-org-to-pdf}. Other files like images only need to be
copied to the publishing destination. For non-Org files, you need to provide
your own publishing function:
@multitable @columnfractions 0.3 0.7
@item @code{:publishing-function}
......@@ -8633,7 +8685,7 @@ tty you would rather use @kbd{C-c .} to re-insert the timestamp.
@item @kbd{S-@key{TAB}} @tab @kbd{C-u @key{TAB}} @tab
@item @kbd{M-@key{left}} @tab @kbd{C-c C-x l} @tab @kbd{@key{Esc} @key{left}}
@item @kbd{M-S-@key{left}} @tab @kbd{C-c C-x L} @tab
@item @kbd{M-@key{right}} @tab @kbd{C-c C-x r} @tab @kbd{@key{Esc} @key{right}}
@item @kbd{M-@key{right}} @tab @kbd{C-c C-x i} @tab @kbd{@key{Esc} @key{right}}
@item @kbd{M-S-@key{right}} @tab @kbd{C-c C-x R} @tab
@item @kbd{M-@key{up}} @tab @kbd{C-c C-x u} @tab @kbd{@key{Esc} @key{up}}
@item @kbd{M-S-@key{up}} @tab @kbd{C-c C-x U} @tab
......
% Reference Card for Org Mode
\def\orgversionnumber{6.09a}
\def\orgversionnumber{6.10c}
\def\versionyear{2008} % latest update
\def\year{2008} % latest copyright year
......@@ -539,8 +539,8 @@ \section{TODO Items and Checkboxes}
\section{Tags}
\key{set tags for current heading}{C-c C-c}
\key{realign tags in all headings}{C-u C-c C-c}
\key{set tags for current heading}{C-c C-q}
\key{realign tags in all headings}{C-u C-c C-q}
\key{create sparse tree with matching tags}{C-c \\}
\key{globally (agenda) match tags at cursor}{C-c C-o}
......@@ -607,7 +607,7 @@ \section{Agenda Views}
\key{compile agenda for the current week}{C-c a a$^1$}
\key{compile global TODO list}{C-c a t$^1$}
\key{compile TODO list for specific keyword}{C-c a T$^1$}
\key{match tags, ODO kwds, properties}{C-c a m$^1$}
\key{match tags, TODO kwds, properties}{C-c a m$^1$}
\key{match only in TODO entries}{C-c a M$^1$}
\key{find stuck projects}{C-c a \#$^1$}
\key{show timeline of current org file}{C-c a L$^1$}
......
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-agenda.el (org-format-agenda-item)
(org-agenda-filter-make-matcher): Make sure tags are stored and
compared donwcased.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org.el (org-insert-todo-heading): Fix bug with force-heading
argument.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-exp.el (org-export-as-ascii): Handle the case that we are
bulishing from an indirect buffer.
* org-table.el (org-table-copy-down): Fix bug with time stamp
increment.
* org-mouse.el (org-mouse-features): New option.
(org-mode-hook): Turn on features depending on
`org-mouse-features'.
* org.el (org-insert-heading-respect-content): Force heading
creation.
(org-insert-heading): keep the folding state of the heading before
the inserted one.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-archive.el (org-archive-to-archive-sibling): Handle top
level headlines better.
2008-10-26 Bastien Guerry <bzg@altern.org>
* org-export-latex.el (org-export-latex-classes): Added
\usepackage{graphicx} to the default list of packages.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-agenda.el (org-agenda-filter): Renamed from
`org-agenda-filter-tags'.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org.el (org-entry-properties): Add CATEGORY property, iven if it
is not defined as a property in this entry.
(org-add-log-note): Mask prefix argument when immediately storing
the note.
* org-agenda.el (org-agenda-filter-effort-default-operator): New
option.
2008-10-26 James TD Smith <ahktenzero@mohorovi.cc>
* org.el (org-add-log-setup): Bugfix; code to find insertion point
after drawers was skipping ahead one line too many, so notes were
inserted after the first note instead of before it.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-agenda.el (org-agenda-filter-tags,org-agenda-filter-form):
New variables.
(org-prepare-agenda): Reset the filter tags.
(org-agenda-filter-by-tag, org-agenda-filter-by-tag-show-all):
Show filter tags in mode line.
* org-table.el (orgtbl-to-html): Bind `html-table-tag' for the
formatter.
* org-export-latex.el (org-latex-entities-regexp): New constant.
(org-export-as-pdf): Use two calls to `shell-command'.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-export-latex.el (org-export-latex-treat-sub-super-char):
Honor the {} value of the subsuperscript setting. Make sure that
longer subsuperscripts are typeset in a roman font.
* org.el (org-clock-update-time-maybe): Compute negative clock
intervals correctly.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org.el (org-add-log-setup): Respect
`org-log-state-notes-insert-after-drawers'.
(org-log-state-notes-insert-after-drawers): New option.
(org-todo-trigger-tag-changes): New function.
(org-todo): Call `org-todo-trigger-tag-changes'.
2008-10-26 James TD Smith <ahktenzero@mohorovi.cc>
* org.el (org-add-log-setup): Only skip drawers if the are
immediately after the scheduling keywords.
* org-clock.el (org-clock-in-switch-to-state): Allow this to be a
function
(org-clock-in): If `org-clock-in-switch-to-state' is a function,
call it with the current todo state to get the state to switch to
when clocking in.
(org-clock-in): Use org-indent-line-function to indent clock lines.
(org-clock-find-position): Fix indentation of empty clock drawers.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-publish.el (org-publish-org-to): Handle case when
org-export-to-pdf does return a file name, not a buffer.
(org-publish-org-to-pdf): New function.
* org-export-latex.el (org-export-as-pdf)
(org-export-as-pdf-and-open): New commands.
* org-table.el (org-table-eval-formula): Avoid parsing Calc's HMS
forms as ranges.
* org-export-latex.el (org-export-latex-lists): Ignore lists-like
things in protexted regions.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-export-latex.el (org-export-latex-preprocess): Improve
quoting of LaTeX environments.
2008-10-19 Eli Zaretskii <eliz@gnu.org>
* org.el (org-default-notes-file):
......
......@@ -6,7 +6,7 @@
;; Author: Carsten Dominik <carsten at orgmode dot org>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: http://orgmode.org
;; Version: 6.09a
;; Version: 6.10c
;;
;; This file is part of GNU Emacs.
;;
......@@ -32,6 +32,7 @@
(require 'org)
(eval-when-compile
(require 'cl)
(require 'calendar))
(declare-function diary-add-to-list "diary-lib"
......@@ -386,6 +387,14 @@ or `C-c a #' to produce the list."
(repeat :tag "Projects are *not* stuck if they have an entry with TAG being any of" (string))
(regexp :tag "Projects are *not* stuck if this regexp matches\ninside the subtree")))
(defcustom org-agenda-filter-effort-default-operator "<"
"The default operator for effort estimate filtering.
If you select an effort estimate limit with first pressing an operator,
this one will be used."
:group 'org-agenda-custom-commands
:type '(choice (const :tag "less or equal" "<")
(const :tag "greater or equal"">")
(const :tag "equal" "=")))
(defgroup org-agenda-skip nil
"Options concerning skipping parts of agenda files."
......@@ -1092,6 +1101,7 @@ The following commands are available:
(org-defkey org-agenda-mode-map "t" 'org-agenda-todo)
(org-defkey org-agenda-mode-map "a" 'org-agenda-toggle-archive-tag)
(org-defkey org-agenda-mode-map ":" 'org-agenda-set-tags)
(org-defkey org-agenda-mode-map "\C-c\C-q" 'org-agenda-set-tags)
(org-defkey org-agenda-mode-map "." 'org-agenda-goto-today)
(org-defkey org-agenda-mode-map "j" 'org-agenda-goto-date)
(org-defkey org-agenda-mode-map "d" 'org-agenda-day-view)
......@@ -1167,6 +1177,7 @@ The following commands are available:
(org-defkey org-agenda-mode-map "{" 'org-agenda-manipulate-query-add-re)
(org-defkey org-agenda-mode-map "}" 'org-agenda-manipulate-query-subtract-re)
(org-defkey org-agenda-mode-map "/" 'org-agenda-filter-by-tag)
(org-defkey org-agenda-mode-map "\\" 'org-agenda-filter-by-tag-refine)
(defvar org-agenda-keymap (copy-keymap org-agenda-mode-map)
"Local keymap for agenda entries from Org-mode.")
......@@ -1953,9 +1964,11 @@ higher priority settings."
(defvar org-pre-agenda-window-conf nil)
(defvar org-agenda-columns-active nil)
(defvar org-agenda-name nil)
(defvar org-agenda-filter nil)
(defun org-prepare-agenda (&optional name)
(setq org-todo-keywords-for-agenda nil)
(setq org-done-keywords-for-agenda nil)
(setq org-agenda-filter nil)
(if org-agenda-multi
(progn
(setq buffer-read-only nil)
......@@ -3737,7 +3750,7 @@ Any match of REMOVE-RE will be removed from TXT."
;; And finally add the text properties
(org-add-props rtn nil
'org-category (downcase category) 'tags tags
'org-category (downcase category) 'tags (mapcar 'downcase tags)
'org-highest-priority org-highest-priority
'org-lowest-priority org-lowest-priority
'prefix-length (- (length rtn) (length txt))
......@@ -3934,7 +3947,7 @@ HH:MM."
(t nil))))
(defsubst org-cmp-tag (a b)
"Compare the string values of categories of strings A and B."
"Compare the string values of the first tags of A and B."
(let ((ta (car (last (get-text-property 1 'tags a))))
(tb (car (last (get-text-property 1 'tags b)))))
(cond ((not ta) +1)
......@@ -4101,6 +4114,7 @@ So this is just a shortcut for `\\[org-agenda]', available in the agenda."
When this is the global TODO list, a prefix argument will be interpreted."
(interactive)
(let* ((org-agenda-keep-modes t)
(filter org-agenda-filter)
(cols org-agenda-columns-active)
(line (org-current-line))
(window-line (- line (org-current-line (window-start))))
......@@ -4111,52 +4125,138 @@ When this is the global TODO list, a prefix argument will be interpreted."
(setq org-agenda-undo-list nil
org-agenda-pending-undo-list nil)
(message "Rebuilding agenda buffer...done")
(and filter (org-agenda-filter-apply filter))
(and cols (interactive-p) (org-agenda-columns))
(goto-line line)
(recenter window-line)))
(defvar org-global-tags-completion-table nil)
(defun org-agenda-filter-by-tag (strip &optional char)
(defvar org-agenda-filter-form nil)
(defun org-agenda-filter-by-tag (strip &optional char narrow)
"Keep only those lines in the agenda buffer that have a specific tag.
The tag is selected with its fast selection letter, as configured.
With prefix argument STRIP, remove all lines that do have the tag."
With prefix argument STRIP, remove all lines that do have the tag.
A lisp caller can specify CHAR. NARROW means that the new tag should be
used to narrow the search - the interactive user can also press `-' or `+'
to switch to narrowing."
(interactive "P")
(let (char a tag tags (inhibit-read-only t))
(message "Select tag [%s] or no tag [ ], [TAB] to complete, [/] to restore: "
(mapconcat
(lambda (x) (if (cdr x) (char-to-string (cdr x)) ""))
org-tag-alist-for-agenda ""))
(let* ((alist org-tag-alist-for-agenda)
(tag-chars (mapconcat
(lambda (x) (if (cdr x) (char-to-string (cdr x)) ""))
alist ""))
(efforts (org-split-string
(or (cdr (assoc (concat org-effort-property "_ALL")
org-global-properties))
"0 0:10 0:30 1:00 2:00 3:00 4:00 5:00 6:00 7:00 8:00" "")))
(effort-op org-agenda-filter-effort-default-operator)
(effort-prompt "")
(inhibit-read-only t)
(current org-agenda-filter)
char a n tag tags)
(unless char
(message
"%s by tag [%s ], [TAB], [/]:off, [+-]:narrow, [>=<]:effort: "
(if narrow "Narrow" "Filter") tag-chars)
(setq char (read-char)))
(when (member char '(?+ ?-))
;; Narrowing down
(cond ((equal char ?-) (setq strip t narrow t))
((equal char ?+) (setq strip nil narrow t)))
(message
"Narrow by tag [%s ], [TAB], [/]:off, [>=<]:effort: " tag-chars)
(setq char (read-char)))
(when (member char '(?< ?> ?=))
;; An effort operator
(setq effort-op (char-to-string char))
(loop for i from 0 to 9 do
(setq effort-prompt