4 |
@setfilename ../info/org |
@setfilename ../info/org |
5 |
@settitle Org Mode Manual |
@settitle Org Mode Manual |
6 |
|
|
7 |
@set VERSION 3.11 |
@set VERSION 3.12 |
8 |
@set DATE June 2005 |
@set DATE June 2005 |
9 |
|
|
10 |
@dircategory Emacs |
@dircategory Emacs |
109 |
Tables |
Tables |
110 |
|
|
111 |
* Built-in table editor:: Simple tables |
* Built-in table editor:: Simple tables |
112 |
* table.el:: Complex tables |
* Table calculations:: Compute a field from other fields |
113 |
* orgtbl-mode:: The table editor as minor mode |
* orgtbl-mode:: The table editor as minor mode |
114 |
|
* table.el:: Complex tables |
115 |
|
|
116 |
|
Calculations in tables |
117 |
|
|
118 |
|
* Formula syntax:: How to write a formula |
119 |
|
* Applying a formula:: How to get a formula executed |
120 |
|
* Recalculation:: Re-applying all formulas in a table |
121 |
|
* Summing:: Summing columns and rows |
122 |
|
|
123 |
Hyperlinks |
Hyperlinks |
124 |
|
|
211 |
@example |
@example |
212 |
@r{@bullet{} as an outline extension with visibility cycling and structure editing} |
@r{@bullet{} as an outline extension with visibility cycling and structure editing} |
213 |
@r{@bullet{} as an ASCII system and table editor to take structured notes} |
@r{@bullet{} as an ASCII system and table editor to take structured notes} |
214 |
|
@r{@bullet{} as an ASCII table editor with some spreadsheet-like capabilities} |
215 |
@r{@bullet{} as a simple hypertext system, with HTML export} |
@r{@bullet{} as a simple hypertext system, with HTML export} |
216 |
@r{@bullet{} as a TODO list editor} |
@r{@bullet{} as a TODO list editor} |
217 |
@r{@bullet{} as a full agenda and planner with deadlines and work scheduling} |
@r{@bullet{} as a full agenda and planner with deadlines and work scheduling} |
393 |
Show all. |
Show all. |
394 |
@end table |
@end table |
395 |
|
|
396 |
When Emacs firsts visits a Org-mode file, the global state is set to |
When Emacs first visits an Org-mode file, the global state is set to |
397 |
OVERVIEW, i.e. only the top level headlines are visible. This can be |
OVERVIEW, i.e. only the top level headlines are visible. This can be |
398 |
configured through the variable @code{org-startup-folded}, or on a |
configured through the variable @code{org-startup-folded}, or on a |
399 |
per-file basis by adding one of the following lines anywhere in the |
per-file basis by adding one of the following lines anywhere in the |
444 |
@cindex promotion, of subtrees |
@cindex promotion, of subtrees |
445 |
@cindex demotion, of subtrees |
@cindex demotion, of subtrees |
446 |
@cindex subtree, cut and paste |
@cindex subtree, cut and paste |
447 |
@cindex pasting, subtrees |
@cindex pasting, of subtrees |
448 |
@cindex cutting, subtrees |
@cindex cutting, of subtrees |
449 |
@cindex copying, subtrees |
@cindex copying, of subtrees |
450 |
|
|
451 |
@table @kbd |
@table @kbd |
452 |
@kindex M-@key{RET} |
@kindex M-@key{RET} |
502 |
@section Archiving |
@section Archiving |
503 |
@cindex archiving |
@cindex archiving |
504 |
|
|
505 |
When an project represented by a (sub)tree is finished, you may want |
When a project represented by a (sub)tree is finished, you may want |
506 |
to move the tree to an Archive place, either in the same file under a |
to move the tree to an archive place, either in the same file under a |
507 |
special top-level heading, or even to a different file. |
special top-level heading, or even to a different file. |
508 |
@table @kbd |
@table @kbd |
509 |
@kindex @kbd{C-c $} |
@kindex C-c $ |
510 |
@item @kbd{C-c $} |
@item @kbd{C-c $} |
511 |
Archive the subtree starting at the cursor position to the location |
Archive the subtree starting at the cursor position to the location |
512 |
given by @code{org-archive-location}. |
given by @code{org-archive-location}. |
533 |
sparse tree means that the entire document is folded as much as |
sparse tree means that the entire document is folded as much as |
534 |
possible, but the selected information is made visible along with the |
possible, but the selected information is made visible along with the |
535 |
headline structure above it@footnote{See also the variable |
headline structure above it@footnote{See also the variable |
536 |
@code{org-show-following-heading}}. Just try it out and you will see |
@code{org-show-following-heading}.}. Just try it out and you will see |
537 |
immediately how it works. |
immediately how it works. |
538 |
|
|
539 |
Org-mode contains several commands creating such trees. The most |
Org-mode contains several commands creating such trees. The most |
558 |
@cindex visible text, printing |
@cindex visible text, printing |
559 |
To print a sparse tree, you can use the Emacs command |
To print a sparse tree, you can use the Emacs command |
560 |
@code{ps-print-buffer-with-faces} which does not print invisible parts |
@code{ps-print-buffer-with-faces} which does not print invisible parts |
561 |
of the document @footnote{this does not work under XEmacs, because |
of the document @footnote{This does not work under XEmacs, because |
562 |
XEmacs uses selective display for outlining, not text properties}. |
XEmacs uses selective display for outlining, not text properties}. |
563 |
Or you can use the command @kbd{C-c C-x v} to copy the visible part of |
Or you can use the command @kbd{C-c C-x v} to copy the visible part of |
564 |
the document to another file (extension @file{.txt}) which then can be |
the document to another file (extension @file{.txt}) which then can be |
568 |
@chapter Tables |
@chapter Tables |
569 |
@cindex tables |
@cindex tables |
570 |
|
|
571 |
For taking notes, tables are an essential tool because they allow |
Org-mode has a very fast and intuitive table editor built-in. |
572 |
immediate and clear structuring of data. Org-mode has a very fast and |
Spreadsheet-like calculations are supported in connection with the |
573 |
intuitive table editor built-in. More complex tables can be created |
Emacs @file{calc} package. |
|
with the Emacs table.el package. |
|
574 |
|
|
575 |
@menu |
@menu |
576 |
* Built-in table editor:: Simple tables |
* Built-in table editor:: Simple tables |
577 |
* table.el:: Complex tables |
* Table calculations:: Compute a field from other fields |
578 |
* orgtbl-mode:: The table editor as minor mode |
* orgtbl-mode:: The table editor as minor mode |
579 |
|
* table.el:: Complex tables |
580 |
@end menu |
@end menu |
581 |
|
|
582 |
@node Built-in table editor, table.el, Tables, Tables |
@node Built-in table editor, Table calculations, Tables, Tables |
583 |
@section The built-in table editor |
@section The built-in table editor |
584 |
@cindex table editor, builtin |
@cindex table editor, builtin |
585 |
|
|
596 |
@end example |
@end example |
597 |
|
|
598 |
A table is re-aligned automatically each time you press @key{TAB} or |
A table is re-aligned automatically each time you press @key{TAB} or |
599 |
@key{RET} inside the table. @key{TAB} also moves to the next field |
@key{RET} or @kbd{C-c C-c} inside the table. @key{TAB} also moves to |
600 |
(@key{RET} to the next row) and creates new table rows at the end of the |
the next field (@key{RET} to the next row) and creates new table rows |
601 |
table or before horizontal lines. The indentation of the table is set |
at the end of the table or before horizontal lines. The indentation |
602 |
by the first line. Any line starting with @samp{|-} is considered as a |
of the table is set by the first line. Any line starting with |
603 |
horizontal separator line and will be expanded on the next re-align to |
@samp{|-} is considered as a horizontal separator line and will be |
604 |
span the whole table width. So, to create the above table, you would |
expanded on the next re-align to span the whole table width. So, to |
605 |
only type |
create the above table, you would only type |
606 |
|
|
607 |
@example |
@example |
608 |
|Name|Phone|Age |
|Name|Phone|Age |
614 |
|
|
615 |
@table @kbd |
@table @kbd |
616 |
@tsubheading{Creation and conversion} |
@tsubheading{Creation and conversion} |
617 |
@kindex C-c C-c |
@item M-x org-table-create |
618 |
@item C-c C-c |
Creates an empty Org-mode table. However, it is much easier to just |
619 |
Recognize @file{table.el} table. Works when the cursor is in a |
start typing, like @kbd{|Name|Phone|Age @key{RET} |- @key{TAB}} |
|
table.el table |
|
620 |
|
|
621 |
@kindex C-c C-c |
@kindex C-c C-c |
622 |
@item C-c C-c |
@item C-c C-c |
627 |
can use a prefix argument to indicate how many consecutive spaces are |
can use a prefix argument to indicate how many consecutive spaces are |
628 |
at least required to indicate a field separator (default: just one). |
at least required to indicate a field separator (default: just one). |
629 |
|
|
|
@item M-x org-table-create |
|
|
Creates an empty Org-mode table. However, it is much easier to just |
|
|
start typing, like @kbd{|Name|Phone|Age @key{RET} |- @key{TAB}} |
|
|
|
|
630 |
@tsubheading{Re-aligning and field motion} |
@tsubheading{Re-aligning and field motion} |
631 |
@kindex C-c C-c |
@kindex C-c C-c |
632 |
@item C-c C-c |
@item C-c C-c |
639 |
|
|
640 |
@kindex S-@key{TAB} |
@kindex S-@key{TAB} |
641 |
@item S-@key{TAB} |
@item S-@key{TAB} |
642 |
Move to previous field. |
Re-align, move to previous field. |
643 |
|
|
644 |
@kindex @key{RET} |
@kindex @key{RET} |
645 |
@item @key{RET} |
@item @key{RET} |
678 |
|
|
679 |
@kindex C-c - |
@kindex C-c - |
680 |
@item C-c - |
@item C-c - |
681 |
Insert a horizontal line below current row. With prefix arg, line is |
Insert a horizontal line below current row. With prefix arg, the line |
682 |
created above the current line. |
is created above the current line. |
683 |
|
|
684 |
@tsubheading{Regions} |
@tsubheading{Regions} |
685 |
@kindex C-c C-h M-w |
@kindex C-c C-h M-w |
686 |
@item C-c C-h M-w |
@item C-c C-h M-w |
687 |
Copy an rectangular region from a table to a special clipboard. Point |
Copy a rectangular region from a table to a special clipboard. Point |
688 |
and mark determine edge fields of the rectangle. The process ignores |
and mark determine edge fields of the rectangle. The process ignores |
689 |
horizontal separator lines. |
horizontal separator lines. |
690 |
@kindex C-c C-h C-w |
@kindex C-c C-h C-w |
691 |
@item C-c C-h C-w |
@item C-c C-h C-w |
692 |
Copy an rectangular region from a table to a special clipboard, and |
Copy a rectangular region from a table to a special clipboard, and |
693 |
blank all fields in the rectangle. |
blank all fields in the rectangle. So this is the ``cut'' operation. |
694 |
@kindex C-c C-h C-y |
@kindex C-c C-h C-y |
695 |
@item C-c C-h C-y |
@item C-c C-h C-y |
696 |
Paste a rectangular region into a table. |
Paste a rectangular region into a table. |
711 |
above. |
above. |
712 |
|
|
713 |
@tsubheading{Calculations} |
@tsubheading{Calculations} |
714 |
|
@cindex formula, in tables |
715 |
|
@cindex calculations, in tables |
716 |
|
@kindex C-c = |
717 |
|
@item C-c = |
718 |
|
Replace current field with the result of a formula. When called with a |
719 |
|
@kbd{C-u} prefix, apply the equation in the current field and down |
720 |
|
through the current column to a horizonal separator line or the end of |
721 |
|
the table. For details, see @ref{Table calculations}. |
722 |
|
|
723 |
|
@kindex C-c * |
724 |
|
@item C-c * |
725 |
|
Recalculate the current row by applying the stored formulas from left |
726 |
|
to right. When called with a @kbd{C-u} prefix, recalculate the |
727 |
|
entire table, starting with the first non-header line (i.e. below the |
728 |
|
first horizontal separator line). For details, see @ref{Table calculations}. |
729 |
|
|
730 |
|
@kindex C-# |
731 |
|
@item C-# |
732 |
|
Rotate the recalculation mark in first column through the states |
733 |
|
@samp{}, @samp{#}, @samp{*}, @samp{!}, @samp{$}. For the meaning of |
734 |
|
these marks see @ref{Table calculations}. When there is an active |
735 |
|
region, change all marks in the region. |
736 |
|
|
737 |
@kindex C-c ? |
@kindex C-c ? |
738 |
@item C-c ? |
@item C-c ? |
739 |
Which table column is the cursor in? Displays number >0 in echo |
Which table column is the cursor in? Displays number >0 in echo |
745 |
@kindex C-c + |
@kindex C-c + |
746 |
@item C-c + |
@item C-c + |
747 |
Sum the numbers in the current column, or in the rectangle defined by |
Sum the numbers in the current column, or in the rectangle defined by |
748 |
the active region. The result is displayed in the echo area and can |
the active region. The result is shown in the echo area and can |
749 |
be inserted with @kbd{C-y}. |
be inserted with @kbd{C-y}. |
750 |
|
|
751 |
@kindex S-@key{RET} |
@kindex S-@key{RET} |
757 |
incremented during copy. This key is also used by CUA-mode |
incremented during copy. This key is also used by CUA-mode |
758 |
(@pxref{Interaction}). |
(@pxref{Interaction}). |
759 |
|
|
|
@cindex formula, in tables |
|
|
@cindex calculations, in tables |
|
|
@kindex C-c = |
|
|
@item C-c = |
|
|
Replace current field with the result of a formula. Requires the |
|
|
Emacs calc package. The formula can access the current field with |
|
|
@samp{$}, and the other fields in the current row |
|
|
with @samp{$1}, @samp{$2},... For details see the documentation of the |
|
|
command @command{org-table-eval-formula}. |
|
|
|
|
760 |
@tsubheading{Miscellaneous} |
@tsubheading{Miscellaneous} |
761 |
@kindex C-c | |
@kindex C-c | |
762 |
@item C-c | |
@item C-c | |
763 |
Toggle the visibility of vertical lines in tables. The lines are |
Toggle the visibility of vertical lines in tables. The lines are |
764 |
still there, only made invisible with a text property. Any @samp{|} |
still there, only made invisible with a text property. Any @samp{|} |
765 |
added by hand will become invisible on the next align. |
added by hand will become invisible on the next align. |
|
Typographically it is good style to have no vertical lines in tables. |
|
766 |
|
|
767 |
@item M-x org-table-import |
@item M-x org-table-import |
768 |
Import a file as a table. The table should be TAB- or whitespace |
Import a file as a table. The table should be TAB- or whitespace |
787 |
@noindent The only table command which then still works is |
@noindent The only table command which then still works is |
788 |
@kbd{C-c C-c} to do a manual re-align. |
@kbd{C-c C-c} to do a manual re-align. |
789 |
|
|
790 |
@node table.el, orgtbl-mode, Built-in table editor, Tables |
@node Table calculations, orgtbl-mode, Built-in table editor, Tables |
791 |
|
@section Calculations in tables |
792 |
|
@cindex calculations, in tables |
793 |
|
|
794 |
|
While the Org-mode table editor misses many features of a full |
795 |
|
spreadsheet, it nevertheless has very useful capabilities to compute |
796 |
|
fields. In horizontal direction, it can use complex expressions to |
797 |
|
compute a field from other fields @emph{in the same row}, using named |
798 |
|
columns, constants and parameters. The Emacs @file{calc} package is |
799 |
|
required for this feature to work. In vertical direction, only |
800 |
|
summing is supported. |
801 |
|
|
802 |
|
@menu |
803 |
|
* Formula syntax:: How to write a formula |
804 |
|
* Applying a formula:: How to get a formula executed |
805 |
|
* Recalculation:: Re-applying all formulas in a table |
806 |
|
* Summing:: Summing columns and rows |
807 |
|
@end menu |
808 |
|
|
809 |
|
@node Formula syntax, Applying a formula, Table calculations, Table calculations |
810 |
|
@subsection Formula syntax |
811 |
|
|
812 |
|
A formula for horizontal computations can be any algebraic expression |
813 |
|
understood by the Emacs @file{calc} package. Before evaluation, |
814 |
|
variable substitution takes place: @samp{$} is replaced by the field |
815 |
|
the cursor is currently in, and $1..$n reference the fields in the |
816 |
|
current row. @samp{$name} is interpreted as the name of a column, |
817 |
|
parameter or constant. Constants are defined globally through the |
818 |
|
variable @code{org-table-formula-constants}. If you have the |
819 |
|
@file{constants.el} package, it will also be used to resolve |
820 |
|
constants, including natural constants like @samp{$k} for Plancks |
821 |
|
constant, units like @samp{$km} for kilometers. Column names and |
822 |
|
parameters can be specified in special table lines. These are |
823 |
|
described below, see @ref{Recalculation}. |
824 |
|
|
825 |
|
A formula can contain an optional mode string after a semicolon. This |
826 |
|
string consists of flags to influence calc's modes@footnote{By |
827 |
|
default, Org-mode uses the standard calc modes (precision 12, angular |
828 |
|
units degrees, fraction and symbolic modes off). However, the display |
829 |
|
format which has been changed to @code{(float 5)} to keep tables |
830 |
|
compact. The default settings can be configured using the variable |
831 |
|
@code{org-calc-default-modes}.} during execution, e.g. @samp{p20} to |
832 |
|
switch the internal precision to 20 digits, @samp{n3}, @samp{s3}, |
833 |
|
@samp{e2} or @samp{f4} to switch to normal, scientific, engineering, |
834 |
|
or fix display format, respectively, and @samp{D}, @samp{R}, @samp{F}, |
835 |
|
and @samp{S} to turn on degrees, radians, fraction and symbolic modes, |
836 |
|
respectively. In addition, you may provide a @code{printf} specifier |
837 |
|
to reformat the final result. A few examples: |
838 |
|
@example |
839 |
|
$1+$2 @r{Sum of first and second field} |
840 |
|
$1+$2;%.2f @r{Same, format result to two decimals} |
841 |
|
exp($2)+exp($1) @r{Math functions can be used} |
842 |
|
$;%.1f @r{Reformat current cell to 1 decimal} |
843 |
|
($3-32)*5/9 @r{degrees F -> C conversion} |
844 |
|
$c/$1/$cm @r{Hz -> cm conversion, using @file{constants.el}} |
845 |
|
tan($1);Dp3s1 @r{compute in degrees, precision 3, display SCI 1} |
846 |
|
vmean($2..$7) @r{compute column range mean, using vector function} |
847 |
|
taylor($3,x=7,2) @r{taylor series of $3, at x=7, second degree} |
848 |
|
@end example |
849 |
|
|
850 |
|
@node Applying a formula, Recalculation, Formula syntax, Table calculations |
851 |
|
@subsection Applying a formula |
852 |
|
|
853 |
|
To apply a formula to a field, type it directly into the field, |
854 |
|
preceded by an equal sign, like @samp{=$1+$2}. When you press |
855 |
|
@key{TAB} or @key{RET} or @kbd{C-c C-c} with the cursor still in the |
856 |
|
field, the formula will be evaluated and replaced with the result. If |
857 |
|
the field contains only @samp{=}, the formula most recently applied |
858 |
|
anywhere in the @emph{same column} will be used. |
859 |
|
|
860 |
|
For each column, Org-mode will remember the most recently used |
861 |
|
formula. The information is stored in a special line directly below |
862 |
|
the table. When adding/deleting/moving columns with the appropriate |
863 |
|
commands, the stored equations will be modified accordingly. When a |
864 |
|
column used in a calculation is removed, references to this column |
865 |
|
become invalid and will cause an error upon applying the equation. |
866 |
|
|
867 |
|
Instead of typing an equation into the field, you may also use the |
868 |
|
command @kbd{C-c =}. It prompts for a formula (with default taken |
869 |
|
from the @samp{#+TBLFM:} line) and applies it to the current field. |
870 |
|
If you use a prefix argument (i.e. @kbd{C-u C-c =}), the formula will |
871 |
|
be applied to the current field and down to the next separator line |
872 |
|
or the end of the table. A numerical prefix will apply it to that |
873 |
|
many fields in the current column. |
874 |
|
|
875 |
|
When the evaluation of a formula leads to an error, the field content |
876 |
|
becomes the string @samp{#ERROR}. If you would like see what is going |
877 |
|
on during variable substitution and calculation in order to find a |
878 |
|
bug, turn on formula debugging in the menu and repeat the calculation |
879 |
|
by pressing, for example by pressing @kbd{C-c = @key{RET}} in a field. |
880 |
|
Detailed information will be displayed. |
881 |
|
|
882 |
|
@node Recalculation, Summing, Applying a formula, Table calculations |
883 |
|
@subsection Recalculation |
884 |
|
|
885 |
|
To recompute all the fields in a line, use the command @kbd{C-c *}. |
886 |
|
It re-applies all stored equations to the current row, from left to |
887 |
|
right. With a @kbd{C-u} prefix, this will be done to every line in |
888 |
|
the table, so use this command it you want to make sure the entire |
889 |
|
table is up-to-date. A more automatic way of recalculating the |
890 |
|
current line requires marking the line: If the first column of a row |
891 |
|
contains only @samp{#}, the row will be re-computed with every |
892 |
|
@key{TAB}, @key{RET}, and @kbd{C-c C-c} in this row. Here is an |
893 |
|
example of a table that collects exam results of students, with some |
894 |
|
rows activated for semi-automatic computations. |
895 |
|
|
896 |
|
@example |
897 |
|
@group |
898 |
|
|---+---------+--------+--------+--------+-------+------| |
899 |
|
| | Student | Prob 1 | Prob 2 | Prob 3 | Total | Note | |
900 |
|
|---+---------+--------+--------+--------+-------+------| |
901 |
|
| ! | | P1 | P2 | P3 | Tot | | |
902 |
|
| # | Maximum | 10 | 15 | 25 | 50 | 10.0 | |
903 |
|
|---+---------+--------+--------+--------+-------+------| |
904 |
|
| # | Peter | 10 | 8 | 23 | 41 | 8.2 | |
905 |
|
| # | Sara | 7 | 14 | 19 | 40 | 8.0 | |
906 |
|
| # | Sam | 2 | 4 | 3 | 9 | 1.8 | |
907 |
|
|---+---------+--------+--------+--------+-------+------| |
908 |
|
| $ | max=50 | | | | | | |
909 |
|
|---+---------+--------+--------+--------+-------+------| |
910 |
|
#+TBLFM: $6=vsum($P1..$P3)::$7=10*$Tot/$max;%.1f |
911 |
|
@end group |
912 |
|
@end example |
913 |
|
@noindent |
914 |
|
The example also demonstrates a number of convenience features: |
915 |
|
@enumerate |
916 |
|
@item |
917 |
|
If the first field of a row contains only @samp{!}, this row defines |
918 |
|
@emph{names} for the different columns so that you can write |
919 |
|
@samp{$Tot} instead of @samp{$6} --- useful in larger tables, |
920 |
|
when counting columns becomes error prone. |
921 |
|
@item |
922 |
|
If the first field of a row contains only @samp{$}, fields in this row |
923 |
|
can define @emph{parameters} for formulas. For example, if a field in |
924 |
|
a @samp{$} row contains @samp{max=50}, then formulas in this table can |
925 |
|
refer to the value 50 using @samp{$max}. Parameters work exactly like |
926 |
|
constants, only that they can be defined on a per-table basis. |
927 |
|
Changing a parameter and then recalculating the table can be useful |
928 |
|
and fun. |
929 |
|
@item |
930 |
|
A column range @samp{$P1..$P3} is expanded to a vector, so that calc's |
931 |
|
vector functions (in this case @samp{vsum}, but there are many more) |
932 |
|
can be applied to ranges. For a range, columns may be referenced by |
933 |
|
name or number, in either sequence. |
934 |
|
@end enumerate |
935 |
|
|
936 |
|
@noindent If a table contains any line with @samp{#} as the |
937 |
|
first field, @kbd{C-u C-c *} will only change the marked lines and |
938 |
|
leave all unmarked lines alone. You can also mark a line with |
939 |
|
@samp{*}. These lines will also be recalculated with @kbd{C-u C-c *}, |
940 |
|
but not upon @key{TAB} and @key{RET}. Use this for lines which are |
941 |
|
slow to calculate. |
942 |
|
|
943 |
|
Just to wet your appetite on what can be done with the fantastic |
944 |
|
@file{calc} package, here is a table that computes the Taylor series |
945 |
|
for a couple of functions (homework: try that with Excel :-) |
946 |
|
|
947 |
|
@example |
948 |
|
@group |
949 |
|
|---+-------------+---+-----+--------------------------------------| |
950 |
|
| | Func | n | x | Result | |
951 |
|
|---+-------------+---+-----+--------------------------------------| |
952 |
|
| # | exp(x) | 1 | x | 1 + x | |
953 |
|
| # | exp(x) | 2 | x | 1 + x + x^2 / 2 | |
954 |
|
| # | exp(x) | 3 | x | 1 + x + x^2 / 2 + x^3 / 6 | |
955 |
|
| # | x^2+sqrt(x) | 2 | x=0 | x*(0.5 / 0) + x^2 (2 - 0.25 / 0) / 2 | |
956 |
|
| # | x^2+sqrt(x) | 2 | x=1 | 2 + 2.5 x - 2.5 + 0.875 (x - 1)^2 | |
957 |
|
| * | tan(x) | 3 | x | 0.0175 x + 1.77e-6 x^3 | |
958 |
|
|---+-------------+---+-----+--------------------------------------| |
959 |
|
#+TBLFM: $5=taylor($2,$4,$3);n3 |
960 |
|
@end group |
961 |
|
@end example |
962 |
|
|
963 |
|
@node Summing, , Recalculation, Table calculations |
964 |
|
@subsection Summing |
965 |
|
|
966 |
|
Finally, when typing a formula into a field, a number of special |
967 |
|
keywords execute predefined sums over the current row or column and |
968 |
|
enter the result into the current field. These calculations are |
969 |
|
one-off, the formula is not stored, and you will neet to re-enter it |
970 |
|
in order to compute again. |
971 |
|
|
972 |
|
@example |
973 |
|
= @r{Execute the stored formula valid in this column.} |
974 |
|
=sum @r{Sum all fields above the current (alias @code{=sumv}).} |
975 |
|
=sumh @r{Sum all fields to the left of the current field.} |
976 |
|
=sum3 @r{Same as @samp{=sum}, but use just 3 fields above current.} |
977 |
|
@end example |
978 |
|
|
979 |
|
@node orgtbl-mode, table.el, Table calculations, Tables |
980 |
|
@section The Orgtbl minor mode |
981 |
|
@cindex orgtbl-mode |
982 |
|
@cindex minor mode for tables |
983 |
|
|
984 |
|
If you like the intuitive way the Org-mode table editor works, you |
985 |
|
might want to use it also in other modes like text-mode or mail-mode. |
986 |
|
The minor mode Orgtbl-mode makes this possible. You can always toggle |
987 |
|
the mode with @kbd{M-x orgtbl-mode}. To turn it on by default, for |
988 |
|
example in mail mode, use |
989 |
|
@lisp |
990 |
|
(add-hook 'mail-mode-hook 'turn-on-orgtbl) |
991 |
|
@end lisp |
992 |
|
|
993 |
|
@node table.el, , orgtbl-mode, Tables |
994 |
@section The @file{table.el} package |
@section The @file{table.el} package |
995 |
@kindex C-c C-c |
@kindex C-c C-c |
996 |
@cindex table editor, table.el |
@cindex table editor, @file{table.el} |
997 |
@cindex @file{table.el} |
@cindex @file{table.el} |
998 |
|
|
999 |
More complex ASCII tables (with automatic line wrapping, column- and |
Complex ASCII tables with automatic line wrapping, column- and |
1000 |
row-spanning, and alignment) can be created using the Emacs table |
row-spanning, and alignment can be created using the Emacs table |
1001 |
package by Takaaki Ota (@uref{http://sourceforge.net/projects/table}). |
package by Takaaki Ota (@uref{http://sourceforge.net/projects/table}). |
1002 |
When @key{TAB} or @kbd{C-c C-c} is pressed in such a table, Org-mode |
When @key{TAB} or @kbd{C-c C-c} is pressed in such a table, Org-mode |
1003 |
will call @command{table-recognize-table} and move the cursor into the |
will call @command{table-recognize-table} and move the cursor into the |
1004 |
table. Inside a table, the keymap of Org-mode is inactive. In order |
table. Inside a table, the keymap of Org-mode is inactive. In order |
1005 |
to execute org-related commands, leave the table. |
to execute Org-mode-related commands, leave the table. |
1006 |
|
|
1007 |
@table @kbd |
@table @kbd |
1008 |
@kindex C-c # |
@kindex C-c C-c |
1009 |
@item C-c # |
@item C-c C-c |
1010 |
|
Recognize @file{table.el} table. Works when the cursor is in a |
1011 |
|
table.el table. |
1012 |
|
|
1013 |
|
@kindex C-c ~ |
1014 |
|
@item C-c ~ |
1015 |
Insert a table.el table. If there is already a table at point, this |
Insert a table.el table. If there is already a table at point, this |
1016 |
command converts it between the table.el format and the Org-mode |
command converts it between the table.el format and the Org-mode |
1017 |
format. See the documentation string of the command |
format. See the documentation string of the command |
1019 |
possible. |
possible. |
1020 |
@end table |
@end table |
1021 |
|
|
|
@node orgtbl-mode, , table.el, Tables |
|
|
@section The Orgtbl minor mode |
|
|
@cindex orgtbl-mode |
|
|
@cindex Minor mode for tables |
|
|
|
|
|
If you like the intuitive way the Org-mode table editor works, you |
|
|
might want to use it also in other modes like text-mode or mail-mode. |
|
|
The minor mode Orgtbl-mode makes this possible. You can always toggle |
|
|
the mode with @kbd{M-x orgtbl-mode}. To turn it on by default, for |
|
|
example in mail mode, use |
|
|
@lisp |
|
|
(add-hook 'mail-mode-hook 'turn-on-orgtbl) |
|
|
@end lisp |
|
|
|
|
1022 |
@node Hyperlinks, TODO items, Tables, Top |
@node Hyperlinks, TODO items, Tables, Top |
1023 |
@chapter Hyperlinks |
@chapter Hyperlinks |
1024 |
@cindex hyperlinks |
@cindex hyperlinks |
1036 |
@cindex links |
@cindex links |
1037 |
@cindex GNUS links |
@cindex GNUS links |
1038 |
@cindex BBDB links |
@cindex BBDB links |
1039 |
|
@cindex URL links |
1040 |
|
@cindex file links |
1041 |
@cindex VM links |
@cindex VM links |
1042 |
@cindex RMAIL links |
@cindex RMAIL links |
1043 |
@cindex WANDERLUST links |
@cindex WANDERLUST links |
1089 |
@ref{Installation and Activation}. |
@ref{Installation and Activation}. |
1090 |
|
|
1091 |
@kindex C-c C-l |
@kindex C-c C-l |
1092 |
|
@cindex completion, of links |
1093 |
|
@cindex completion, of file names |
1094 |
@item C-c C-l |
@item C-c C-l |
1095 |
Insert a link. This prompts for a link to be inserted into the |
Insert a link. This prompts for a link to be inserted into the |
1096 |
buffer. You can just type a link, using one of the link type prefixes |
buffer. You can just type a link, using one of the link type prefixes |
1183 |
text has a headline, i.e. a first line that starts with a @samp{*}. |
text has a headline, i.e. a first line that starts with a @samp{*}. |
1184 |
If not, a headline is constructed from the current date and some |
If not, a headline is constructed from the current date and some |
1185 |
additional data. If the variable @code{org-adapt-indentation} is |
additional data. If the variable @code{org-adapt-indentation} is |
1186 |
non-@code{nil}, the entire text is also indented so that it starts in |
non-nil, the entire text is also indented so that it starts in the |
1187 |
the same column as the headline (after the asterisks). |
same column as the headline (after the asterisks). |
1188 |
|
|
1189 |
@node TODO items, Timestamps, Hyperlinks, Top |
@node TODO items, Timestamps, Hyperlinks, Top |
1190 |
@chapter TODO items |
@chapter TODO items |
1271 |
org-todo-interpretation 'sequence) |
org-todo-interpretation 'sequence) |
1272 |
@end lisp |
@end lisp |
1273 |
|
|
1274 |
|
@cindex completion, of TODO keywords |
1275 |
With this setup, the command @kbd{C-c C-t} will cycle an entry from |
With this setup, the command @kbd{C-c C-t} will cycle an entry from |
1276 |
TODO to FEEDBACK, then to VERIFY, and finally too DONE. You may also |
TODO to FEEDBACK, then to VERIFY, and finally too DONE. You may also |
1277 |
use a prefix argument to quickly select a specific state. For example |
use a prefix argument to quickly select a specific state. For example |
1299 |
|
|
1300 |
In this case, different keywords do not indicate a sequence, but |
In this case, different keywords do not indicate a sequence, but |
1301 |
rather different types. So it is normally not useful to change from |
rather different types. So it is normally not useful to change from |
1302 |
one type to another. Therefore, in this case the the behavior of the |
one type to another. Therefore, in this case the behavior of the |
1303 |
command @kbd{C-c C-t} is changed slightly@footnote{This is also true |
command @kbd{C-c C-t} is changed slightly@footnote{This is also true |
1304 |
for the @kbd{t} command in the timeline and agenda buffers}. When |
for the @kbd{t} command in the timeline and agenda buffers.}. When |
1305 |
used several times in succession, it will still cycle through all |
used several times in succession, it will still cycle through all |
1306 |
names. But when when you return to the item after some time and |
names. But when when you return to the item after some time and |
1307 |
execute @kbd{C-c C-t} again, it will switch from each name directly to |
execute @kbd{C-c C-t} again, it will switch from each name directly to |
1326 |
#+TYP_TODO: Fred Sara Lucy Mike DONE |
#+TYP_TODO: Fred Sara Lucy Mike DONE |
1327 |
@end example |
@end example |
1328 |
|
|
1329 |
@cindex Completing option keywords |
@cindex Completion, of option keywords |
1330 |
@kindex M-@key{TAB} |
@kindex M-@key{TAB} |
1331 |
@noindent To make sure you are using the correct keyword, type |
@noindent To make sure you are using the correct keyword, type |
1332 |
@samp{#+} into the buffer and then use @kbd{M-@key{TAB}} completion. |
@samp{#+} into the buffer and then use @kbd{M-@key{TAB}} completion. |
1386 |
@itemx S-@key{down} |
@itemx S-@key{down} |
1387 |
Increase/decrease priority of current item. Note that these keys are |
Increase/decrease priority of current item. Note that these keys are |
1388 |
also used to modify time stamps (@pxref{Creating timestamps}). |
also used to modify time stamps (@pxref{Creating timestamps}). |
1389 |
Furthermore, these keys is also used by CUA-mode |
Furthermore, these keys are also used by CUA-mode |
1390 |
(@pxref{Interaction}). |
(@pxref{Interaction}). |
1391 |
@end table |
@end table |
1392 |
|
|
1436 |
@end example |
@end example |
1437 |
|
|
1438 |
@item DEADLINE |
@item DEADLINE |
1439 |
@cindex deadline |
@cindex DEADLINE keyword |
1440 |
If a time stamp is preceded by the word @samp{DEADLINE:}, the task |
If a time stamp is preceded by the word @samp{DEADLINE:}, the task |
1441 |
(most likely a TODO item) is supposed to be finished on that date, and |
(most likely a TODO item) is supposed to be finished on that date, and |
1442 |
it will be listed then. In addition, the compilation for the |
it will be listed then. In addition, the compilation for @emph{today} |
1443 |
@emph{current day} will carry a warning about the approaching or |
will carry a warning about the approaching or missed deadline, |
1444 |
missed deadline, starting @code{org-deadline-warning-days} before the |
starting @code{org-deadline-warning-days} before the due date, and |
1445 |
due date, and continuing until the entry is marked DONE. An example: |
continuing until the entry is marked DONE. An example: |
1446 |
|
|
1447 |
@example |
@example |
1448 |
*** TODO write article about the Earth for the Guide |
*** TODO write article about the Earth for the Guide |
1449 |
The editor in charge is bbdb:Ford Prefect |
The editor in charge is <bbdb:Ford Prefect> |
1450 |
DEADLINE: <2004-02-29 Sun> |
DEADLINE: <2004-02-29 Sun> |
1451 |
@end example |
@end example |
1452 |
|
|
1453 |
@item SCHEDULED |
@item SCHEDULED |
1454 |
@cindex scheduled |
@cindex DEADLINE keyword |
1455 |
If a time stamp is preceded by the word @samp{SCHEDULED:}, it means |
If a time stamp is preceded by the word @samp{SCHEDULED:}, it means |
1456 |
you are planning to start working on that task on the given date. The |
you are planning to start working on that task on the given date. The |
1457 |
headline will be listed under the given date. In addition, a reminder |
headline will be listed under the given date. In addition, a reminder |
1458 |
that the scheduled date has passed will be present in the compilation |
that the scheduled date has passed will be present in the compilation |
1459 |
for the @emph{current day}, until the entry is marked DONE. I.e., the |
for the @emph{today}, until the entry is marked DONE. I.e., the |
1460 |
task will automatically be forwarded. |
task will automatically be forwarded. |
1461 |
@end table |
@end table |
1462 |
|
|
1525 |
Change the item under the cursor in a timestamp. The cursor can be on |
Change the item under the cursor in a timestamp. The cursor can be on |
1526 |
a year, month, day, hour or minute. Note that if the cursor is not at |
a year, month, day, hour or minute. Note that if the cursor is not at |
1527 |
a time stamp, these same keys modify the priority of an item. |
a time stamp, these same keys modify the priority of an item. |
1528 |
(@pxref{Priorities}). These key bindings conflict with CUA-mode |
(@pxref{Priorities}). The key bindings also conflict with CUA-mode |
1529 |
(@pxref{Interaction}). |
(@pxref{Interaction}). |
1530 |
|
|
1531 |
|
|
1540 |
@cindex date, reading in minibuffer |
@cindex date, reading in minibuffer |
1541 |
@cindex time, reading in minibuffer |
@cindex time, reading in minibuffer |
1542 |
@cindex calendar, for selecting date |
@cindex calendar, for selecting date |
1543 |
When org prompts for a date/time, the function reading your input will |
When Org-mode prompts for a date/time, the function reading your input |
1544 |
replace anything you choose not to specify with the current date and |
will replace anything you choose not to specify with the current date |
1545 |
time. For details, see the documentation string of |
and time. For details, see the documentation string of |
1546 |
@command{org-read-date}. Also, a calender will pop up to allow |
@command{org-read-date}. Also, a calender will pop up to allow |
1547 |
selecting a date. The calendar can be fully controlled from the |
selecting a date. The calendar can be fully controlled from the |
1548 |
minibuffer, and a date can be selected with the following commands: |
minibuffer, and a date can be selected with the following commands: |
1702 |
The display in the agenda buffer looks best if the category is not |
The display in the agenda buffer looks best if the category is not |
1703 |
longer than 10 characters. |
longer than 10 characters. |
1704 |
|
|
1705 |
@subsection Time Specifications |
@subsection Time-of-Day Specifications |
1706 |
|
|
1707 |
Org-mode checks each agenda item for a time specification. The time |
Org-mode checks each agenda item for a timeof-day specification. The |
1708 |
can be part of the time stamp that triggered inclusion into the agenda, |
time can be part of the time stamp that triggered inclusion into the |
1709 |
for example as in @w{@samp{<2005-05-10 Tue 19:00>}}. Time ranges can |
agenda, for example as in @w{@samp{<2005-05-10 Tue 19:00>}}. Time |
1710 |
be specified with two time stamps, like |
ranges can be specified with two time stamps, like |
1711 |
@c |
@c |
1712 |
@w{@samp{<2005-05-10 Tue 20:30>--<2005-05-10 Tue 22:15>}}. |
@w{@samp{<2005-05-10 Tue 20:30>--<2005-05-10 Tue 22:15>}}. |
1713 |
|
|
1823 |
|
|
1824 |
@kindex w |
@kindex w |
1825 |
@item w |
@item w |
1826 |
Toggle between weekly and daily view. |
Switch to weekly view (7 days displayed together) |
1827 |
|
|
1828 |
@kindex d |
@kindex d |
1829 |
@item d |
@item d |
1830 |
|
Switch to daily view (just one day displayed) |
1831 |
|
|
1832 |
|
@kindex D |
1833 |
|
@item D |
1834 |
Toggle the inclusion of diary entries. See @ref{Calendar/Diary integration}. |
Toggle the inclusion of diary entries. See @ref{Calendar/Diary integration}. |
1835 |
|
|
1836 |
@kindex g |
@kindex g |
1882 |
@kindex + |
@kindex + |
1883 |
@kindex S-@key{up} |
@kindex S-@key{up} |
1884 |
@item + |
@item + |
1885 |
@item S-@key{up} |
@itemx S-@key{up} |
1886 |
Increase the priority of the current item. The priority is changed in |
Increase the priority of the current item. The priority is changed in |
1887 |
the original buffer, but the agenda is not resorted. Use the @kbd{r} |
the original buffer, but the agenda is not resorted. Use the @kbd{r} |
1888 |
key for this. |
key for this. |
1890 |
@kindex - |
@kindex - |
1891 |
@kindex S-@key{down} |
@kindex S-@key{down} |
1892 |
@item - |
@item - |
1893 |
@item S-@key{down} |
@itemx S-@key{down} |
1894 |
Decrease the priority of the current item. |
Decrease the priority of the current item. |
1895 |
|
|
1896 |
@kindex S-@key{right} |
@kindex S-@key{right} |
2001 |
entries including holidays, anniversaries etc will be included in the |
entries including holidays, anniversaries etc will be included in the |
2002 |
agenda buffer created by Org-mode. @key{SPC}, @key{TAB}, and |
agenda buffer created by Org-mode. @key{SPC}, @key{TAB}, and |
2003 |
@key{RET} can be used from the agenda buffer to jump to the diary |
@key{RET} can be used from the agenda buffer to jump to the diary |
2004 |
file, in order to edit existing diary entries. Also the @kbd{i} |
file, in order to edit existing diary entries. The @kbd{i} command to |
2005 |
command to insert new entries for the current date works in the agenda |
insert new entries for the current date works in the agenda buffer, as |
2006 |
buffer, as well as the commands @kbd{S}, @kbd{M}, and @kbd{C} to |
well as the commands @kbd{S}, @kbd{M}, and @kbd{C} to display |
2007 |
display Sunrise/Sunset times, show lunar phases and to convert to |
Sunrise/Sunset times, show lunar phases and to convert to other |
2008 |
other calendars, respectively. @kbd{c} can be used to switch back and |
calendars, respectively. @kbd{c} can be used to switch back and forth |
2009 |
forth between calendar and agenda. |
between calendar and agenda. |
2010 |
|
|
2011 |
@node Agenda to diary, , Diary to agenda, Calendar/Diary integration |
@node Agenda to diary, , Diary to agenda, Calendar/Diary integration |
2012 |
@subsection Including the agenda into the diary |
@subsection Including the agenda into the diary |
2046 |
@node Exporting, Miscellaneous, Timeline and Agenda, Top |
@node Exporting, Miscellaneous, Timeline and Agenda, Top |
2047 |
@chapter Exporting |
@chapter Exporting |
2048 |
@cindex exporting |
@cindex exporting |
2049 |
@cindex ASCII file |
@cindex ASCII export |
2050 |
@cindex HTML |
@cindex HTML export |
|
|
|
2051 |
|
|
2052 |
@cindex headline levels, for exporting |
@cindex headline levels, for exporting |
2053 |
For printing and sharing of notes, an Org-mode document can be |
For printing and sharing of notes, an Org-mode document can be |
2114 |
@item |
@item |
2115 |
Simple @TeX{}-like math constructs are interpreted: |
Simple @TeX{}-like math constructs are interpreted: |
2116 |
|
|
2117 |
|
@cindex completion, of @TeX{} symbols |
2118 |
@itemize @minus |
@itemize @minus |
2119 |
@item |
@item |
2120 |
@samp{10^22} and @samp{J_n} are super- and subscripts. You can quote |
@samp{10^22} and @samp{J_n} are super- and subscripts. You can quote |
2150 |
@section Export options |
@section Export options |
2151 |
@cindex options, for export |
@cindex options, for export |
2152 |
|
|
2153 |
|
@cindex completion, of option keywords |
2154 |
The exporter recognizes special lines in the buffer which provide |
The exporter recognizes special lines in the buffer which provide |
2155 |
additional information. These lines may be put anywhere in the file. |
additional information. These lines may be put anywhere in the file. |
2156 |
The whole set of lines can be inserted into the buffer with @kbd{C-c |
The whole set of lines can be inserted into the buffer with @kbd{C-c |
2173 |
@cindex headline levels |
@cindex headline levels |
2174 |
@cindex section-numbers |
@cindex section-numbers |
2175 |
@cindex table of contents |
@cindex table of contents |
2176 |
@cindex linebreak-preservation |
@cindex linebreak preservation |
2177 |
@cindex quoted html tags |
@cindex quoted html tags |
2178 |
@cindex fixed-width sections |
@cindex fixed-width sections |
2179 |
@cindex tables |
@cindex tables |
2223 |
|
|
2224 |
@node Completion, Customization, Miscellaneous, Miscellaneous |
@node Completion, Customization, Miscellaneous, Miscellaneous |
2225 |
@section Completion |
@section Completion |
2226 |
@cindex complete @TeX{} symbols |
@cindex completion, of @TeX{} symbols |
2227 |
@cindex complete TODO keywords |
@cindex completion, of TODO keywords |
2228 |
@cindex complete dictionary words |
@cindex completion, of dictionary words |
2229 |
@cindex complete option keywords |
@cindex completion, of option keywords |
2230 |
|
@cindex completion, of keyword formulas |
2231 |
|
|
2232 |
Org-mode supports in-buffer completion. This type of completion does |
Org-mode supports in-buffer completion. This type of completion does |
2233 |
not make use of the minibuffer. You simply type a few letters into |
not make use of the minibuffer. You simply type a few letters into |
2248 |
option keyword is already complete, pressing @kbd{M-@key{TAB}} again |
option keyword is already complete, pressing @kbd{M-@key{TAB}} again |
2249 |
will insert example settings for this keyword. |
will insert example settings for this keyword. |
2250 |
@item |
@item |
2251 |
|
After @samp{=}, complete keyword formulas for tables. |
2252 |
|
@item |
2253 |
Elsewhere, complete dictionary words using ispell. |
Elsewhere, complete dictionary words using ispell. |
2254 |
@end itemize |
@end itemize |
2255 |
@end table |
@end table |
2270 |
@section Frequently asked questions |
@section Frequently asked questions |
2271 |
|
|
2272 |
@enumerate |
@enumerate |
2273 |
@item @b{Org-mode seems to be useful default mode for the various |
@item @b{Org-mode seems to be auseful default mode for the various |
2274 |
@file{README} files I have scattered through my directories. How do I |
@file{README} files I have scattered through my directories. How do I |
2275 |
turn it on for all @file{README} files?} |
turn it on for all @file{README} files?} |
2276 |
@example |
@example |
2288 |
|
|
2289 |
@item @b{Is there an easy way to insert links to web locations?}@* |
@item @b{Is there an easy way to insert links to web locations?}@* |
2290 |
@cindex URL, paste into buffer |
@cindex URL, paste into buffer |
2291 |
Sure, just paste them into the buffer. A plain-text URL-like string |
Sure, just type or paste them into the buffer. A plain-text URL-like |
2292 |
is directly interpreted as a link. |
string is directly interpreted as a link. |
2293 |
|
|
2294 |
@item @b{When I export my TODO list, every TODO item becomes a |
@item @b{When I export my TODO list, every TODO item becomes a |
2295 |
separate section. How do I enforce these items to be exported as an |
separate section. How do I enforce these items to be exported as an |
2330 |
@code{org-table-default-size}. However, just starting to type the |
@code{org-table-default-size}. However, just starting to type the |
2331 |
first line is usually much easier. |
first line is usually much easier. |
2332 |
|
|
2333 |
|
@item @b{One of my table columns has started to fill up with |
2334 |
|
@samp{#ERROR}. What is going on?}@* |
2335 |
|
Org-mode tried to compute the column from other fields using a |
2336 |
|
formula stored in the @samp{#+TBLFMT:} line just below the table, and |
2337 |
|
the evaluation of the formula fails. Fix the fields used in the |
2338 |
|
formula, or fix the formula, or remove it! |
2339 |
|
|
2340 |
@item @b{When I am in the last column of a table and just above a |
@item @b{When I am in the last column of a table and just above a |
2341 |
horizontal line in the table, pressing TAB creates a new table line |
horizontal line in the table, pressing TAB creates a new table line |
2342 |
@i{before} the horizontal line. How can I quickly move to the line |
@i{before} the horizontal line. How can I quickly move to the line |
2355 |
@node Interaction, Bugs, FAQ, Miscellaneous |
@node Interaction, Bugs, FAQ, Miscellaneous |
2356 |
@section Interaction with other packages |
@section Interaction with other packages |
2357 |
@cindex packages, interaction with other |
@cindex packages, interaction with other |
2358 |
@cindex @file{planner.el} |
Org-mode can cooperate with the following packages: |
|
@cindex @file{remember.el} |
|
|
@cindex @file{table.el} |
|
|
@file{Org.el} can cooperate with the following packages: |
|
2359 |
|
|
2360 |
@table @asis |
@table @asis |
|
@cindex @file{remember.el} |
|
|
@item @file{remember.el} by John Wiegley |
|
|
Org mode cooperates with remember, see @ref{Remember}. |
|
|
@cindex @file{plannner.el} |
|
|
@item @file{planner.el} by John Wiegley |
|
|
Planner is another tool to plan work and keep track of tasks. Planner |
|
|
uses a multi-file approach with project pages and day pages. Is based |
|
|
on Emacs-Wiki. It can be useful to display the agenda entries |
|
|
resulting from org files in day-pages of the planner. This can be |
|
|
done through the diary of the calendar: Integrate org files into the |
|
|
diary as described above, and then turn on the diary support of |
|
|
planner. |
|
2361 |
@cindex @file{table.el} |
@cindex @file{table.el} |
2362 |
@item @file{table.el} by Takaaki Ota |
@item @file{table.el} by Takaaki Ota |
2363 |
Org mode cooperates with table.el, see @ref{table.el}. |
Org mode cooperates with table.el, see @ref{table.el}. |
2364 |
|
@cindex @file{calc.el} |
2365 |
|
@item @file{calc.el} by Dave Gillespie |
2366 |
|
Org-mode uses the calc package for implementing spreadsheet |
2367 |
|
functionality in its tables (@pxref{Table calculations}). Org-modes |
2368 |
|
checks for the availability of calc by looking for the function |
2369 |
|
@code{calc-eval} which should be autoloaded in your setup if calc has |
2370 |
|
been installed properly. As of Emacs 22, calc is part of the Emacs |
2371 |
|
distribution. Another possibility for interaction between the two |
2372 |
|
packages is using calc for embedded calculations. @xref{Embedded Mode, |
2373 |
|
, Embedded Mode, calc, The calc maanual}. |
2374 |
|
@cindex @file{constants.el} |
2375 |
|
@item @file{constants.el} by Carsten Dominik |
2376 |
|
In a table formula (@pxref{Table calculations}), it is possible to use |
2377 |
|
names for natural constants or units. Instead of defining you own |
2378 |
|
constants in the variable @code{org-table-formula-constants}, install |
2379 |
|
the @file{constants} package which defines a large number of constants |
2380 |
|
and units, and lets you use unit prefixes like @samp{M} for |
2381 |
|
@samp{Mega} etc. You will need version 2.0 of this package, available |
2382 |
|
at @url{http://www.astro.uva.nl/~dominik/Tools}. Org-mode checks for |
2383 |
|
the function @code{constants-get}, which has to be autoloaded in your |
2384 |
|
setup. See the installation instructions in the file |
2385 |
|
@file{constants.el}. |
2386 |
|
@cindex @file{remember.el} |
2387 |
@cindex @file{CUA.el} |
@cindex @file{CUA.el} |
2388 |
@item @file{CUA.el} by Kim. F. Storm |
@item @file{CUA.el} by Kim. F. Storm |
2389 |
Keybindings in Org-mode conflict with the @kbd{S-<cursor>} keys |
Keybindings in Org-mode conflict with the @kbd{S-<cursor>} keys |
2390 |
used by CUA-mode (as well as pc-select-mode and s-region-mode) to |
used by CUA-mode (as well as pc-select-mode and s-region-mode) to |
2391 |
select and extend the region. If you want to use one of these |
select and extend the region. If you want to use one of these |
2392 |
packages along with Org-mode, configure the variable |
packages along with Org-mode, configure the variable |
2393 |
@code{org-CUA-compatible}. When set, Org-mode will move the folowing |
@code{org-CUA-compatible}. When set, Org-mode will move the following |
2394 |
keybindings in org-mode files, and in the agenda buffer (but not |
keybindings in org-mode files, and in the agenda buffer (but not |
2395 |
during date selection). |
during date selection). |
2396 |
@example |
@example |
2401 |
Yes, these are unfortunately more difficult to remember. If you want |
Yes, these are unfortunately more difficult to remember. If you want |
2402 |
to have other replacement keys, look at the variable |
to have other replacement keys, look at the variable |
2403 |
@code{org-disputed-keys}. |
@code{org-disputed-keys}. |
2404 |
|
@item @file{remember.el} by John Wiegley |
2405 |
|
Org mode cooperates with remember, see @ref{Remember}. |
2406 |
|
@cindex @file{planner.el} |
2407 |
|
@item @file{planner.el} by John Wiegley |
2408 |
|
Planner is another tool to plan work and keep track of tasks. Planner |
2409 |
|
uses a multi-file approach with project pages and day pages. Is based |
2410 |
|
on Emacs-Wiki. If Planner is your primary tool, it can be useful to |
2411 |
|
display the agenda entries resulting from org files in day-pages of |
2412 |
|
the planner. This can be done through the diary of the calendar: |
2413 |
|
Integrate org files into the diary as described above, and then turn |
2414 |
|
on the diary support of planner. |
2415 |
@end table |
@end table |
2416 |
|
|
2417 |
@node Bugs, Acknowledgments, Interaction, Miscellaneous |
@node Bugs, Acknowledgments, Interaction, Miscellaneous |
2425 |
@item |
@item |
2426 |
If you call @code{fill-paragraph} (bound to @kbd{M-q}) in a table, the |
If you call @code{fill-paragraph} (bound to @kbd{M-q}) in a table, the |
2427 |
filling is correctly disabled. However, if some text directly |
filling is correctly disabled. However, if some text directly |
2428 |
(without an empty line in between) preceeds or follws a table, calling |
(without an empty line in between) preceeds or follows a table, calling |
2429 |
@code{fill-paragraph} in that text will also fill the table like |
@code{fill-paragraph} in that text will also fill the table like |
2430 |
normal text. Also, @code{fill-region} does bypass the |
normal text. Also, @code{fill-region} does bypass the |
2431 |
@code{fill-paragraph} code and will fill tables like normal text. |
@code{fill-paragraph} code and will fill tables like normal text. |
2434 |
(for example because the application does not exits or refuses to open |
(for example because the application does not exits or refuses to open |
2435 |
the file), it does so silently. No error message is displayed. |
the file), it does so silently. No error message is displayed. |
2436 |
@item |
@item |
2437 |
|
Recalculating a table line applies the formulas from left to right. |
2438 |
|
If a formula calculated fields further doen the row, multiple |
2439 |
|
recalculation may be needed to get all fields consistent. |
2440 |
|
@item |
2441 |
Under XEmacs, if Org-mode entries are included into the diary, it is |
Under XEmacs, if Org-mode entries are included into the diary, it is |
2442 |
not possible to jump back from the diary to the org file. Apparently, |
not possible to jump back from the diary to the org file. Apparently, |
2443 |
the text properties are lost when the fancy-diary-display is used. |
the text properties are lost when the fancy-diary-display is used. |
2466 |
|
|
2467 |
@itemize @bullet |
@itemize @bullet |
2468 |
@item |
@item |
2469 |
Matthias Rempe (Oelde) provided ideas and suggestions, a patch |
Matthias Rempe (Oelde) provided ideas, a patch introducing Windows |
2470 |
introducing Windows NT/2000 support, and quality control. |
NT/2000 support, and quality control. |
2471 |
@item |
@item |
2472 |
Kevin Rogers contributed code to access VM files on remote hosts. |
Kevin Rogers contributed code to access VM files on remote hosts. |
2473 |
@item |
@item |
2481 |
Philip Rooke created the Org-mode reference card. He also helped with |
Philip Rooke created the Org-mode reference card. He also helped with |
2482 |
beta testing and contributed a number of very useful ideas. |
beta testing and contributed a number of very useful ideas. |
2483 |
@item |
@item |
2484 |
Christian Schlauer proposed angular brackets around links, and some |
Christian Schlauer proposed angular brackets around links, among other |
2485 |
|
things. |
2486 |
other useful stuff. |
other useful stuff. |
2487 |
@item |
@item |
2488 |
David Wainberg suggested to implement an archiving mechanism. |
David Wainberg suggested to implement an archiving mechanism. |