|
@@ -884,17 +884,17 @@ You can download Org latest release from @uref{http://orgmode.org/, Org's
|
|
|
website}. In this case, make sure you set the load-path correctly in your
|
|
|
@file{.emacs}:
|
|
|
|
|
|
-@example
|
|
|
+@lisp
|
|
|
(add-to-list 'load-path "~/path/to/orgdir/lisp")
|
|
|
-@end example
|
|
|
+@end lisp
|
|
|
|
|
|
The downloaded archive contains contributed libraries that are not included
|
|
|
in Emacs. If you want to use them, add the @file{contrib} directory to your
|
|
|
load-path:
|
|
|
|
|
|
-@example
|
|
|
+@lisp
|
|
|
(add-to-list 'load-path "~/path/to/orgdir/contrib/lisp" t)
|
|
|
-@end example
|
|
|
+@end lisp
|
|
|
|
|
|
Optionally, you can compile the files and/or install them in your system.
|
|
|
Run @code{make help} to list compilation and installation options.
|
|
@@ -1031,7 +1031,7 @@ is not necessary. In that case it is sufficient to start Emacs as
|
|
|
@code{emacs -Q}. The @code{minimal-org.el} setup file can have contents as
|
|
|
shown below.
|
|
|
|
|
|
-@example
|
|
|
+@lisp
|
|
|
;;; Minimal setup to load latest `org-mode'
|
|
|
|
|
|
;; activate debugging
|
|
@@ -1042,7 +1042,7 @@ shown below.
|
|
|
;; add latest org-mode to load path
|
|
|
(add-to-list 'load-path (expand-file-name "/path/to/org-mode/lisp"))
|
|
|
(add-to-list 'load-path (expand-file-name "/path/to/org-mode/contrib/lisp" t))
|
|
|
-@end example
|
|
|
+@end lisp
|
|
|
|
|
|
If an error occurs, a backtrace can be very useful (see below on how to
|
|
|
create one). Often a small example file helps, along with clear information
|
|
@@ -8785,40 +8785,55 @@ these special timestamps. By default, marks are removed after the bulk. If
|
|
|
you want them to persist, set @code{org-agenda-bulk-persistent-marks} to
|
|
|
@code{t} or hit @kbd{p} at the prompt.
|
|
|
|
|
|
-@example
|
|
|
-* @r{Toggle persistent marks.}
|
|
|
-$ @r{Archive all selected entries.}
|
|
|
-A @r{Archive entries by moving them to their respective archive siblings.}
|
|
|
-t @r{Change TODO state. This prompts for a single TODO keyword and}
|
|
|
- @r{changes the state of all selected entries, bypassing blocking and}
|
|
|
- @r{suppressing logging notes (but not timestamps).}
|
|
|
-+ @r{Add a tag to all selected entries.}
|
|
|
-- @r{Remove a tag from all selected entries.}
|
|
|
-s @r{Schedule all items to a new date. To shift existing schedule dates}
|
|
|
- @r{by a fixed number of days, use something starting with double plus}
|
|
|
- @r{at the prompt, for example @samp{++8d} or @samp{++2w}.}
|
|
|
-d @r{Set deadline to a specific date.}
|
|
|
-r @r{Prompt for a single refile target and move all entries. The entries}
|
|
|
- @r{will no longer be in the agenda; refresh (@kbd{g}) to bring them back.}
|
|
|
-S @r{Reschedule randomly into the coming N days. N will be prompted for.}
|
|
|
- @r{With prefix arg (@kbd{C-u B S}), scatter only across weekdays.}
|
|
|
-f @r{Apply a function@footnote{You can also create persistent custom functions through@code{org-agenda-bulk-custom-functions}.} to marked entries.}
|
|
|
- @r{For example, the function below sets the CATEGORY property of the}
|
|
|
- @r{entries to web.}
|
|
|
- @r{(defun set-category ()}
|
|
|
- @r{ (interactive "P")}
|
|
|
- @r{ (let* ((marker (or (org-get-at-bol 'org-hd-marker)}
|
|
|
- @r{ (org-agenda-error)))}
|
|
|
- @r{ (buffer (marker-buffer marker)))}
|
|
|
- @r{ (with-current-buffer buffer}
|
|
|
- @r{ (save-excursion}
|
|
|
- @r{ (save-restriction}
|
|
|
- @r{ (widen)}
|
|
|
- @r{ (goto-char marker)}
|
|
|
- @r{ (org-back-to-heading t)}
|
|
|
- @r{ (org-set-property "CATEGORY" "web"))))))}
|
|
|
-@end example
|
|
|
+@table @kbd
|
|
|
+@item *
|
|
|
+Toggle persistent marks.
|
|
|
+@item $
|
|
|
+Archive all selected entries.
|
|
|
+@item A
|
|
|
+Archive entries by moving them to their respective archive siblings.
|
|
|
+@item t
|
|
|
+Change TODO state. This prompts for a single TODO keyword and changes the
|
|
|
+state of all selected entries, bypassing blocking and suppressing logging
|
|
|
+notes (but not timestamps).
|
|
|
+@item +
|
|
|
+Add a tag to all selected entries.
|
|
|
+@item -
|
|
|
+Remove a tag from all selected entries.
|
|
|
+@item s
|
|
|
+Schedule all items to a new date. To shift existing schedule dates by a
|
|
|
+fixed number of days, use something starting with double plus at the prompt,
|
|
|
+for example @samp{++8d} or @samp{++2w}.
|
|
|
+@item d
|
|
|
+Set deadline to a specific date.
|
|
|
+@item r
|
|
|
+Prompt for a single refile target and move all entries. The entries will no
|
|
|
+longer be in the agenda; refresh (@kbd{g}) to bring them back.
|
|
|
+@item S
|
|
|
+Reschedule randomly into the coming N days. N will be prompted for. With
|
|
|
+prefix arg (@kbd{C-u B S}), scatter only across weekdays.
|
|
|
+@item f
|
|
|
+Apply a function@footnote{You can also create persistent custom functions
|
|
|
+through@code{org-agenda-bulk-custom-functions}.} to marked entries. For
|
|
|
+example, the function below sets the CATEGORY property of the entries to web.
|
|
|
|
|
|
+@lisp
|
|
|
+@group
|
|
|
+(defun set-category ()
|
|
|
+ (interactive "P")
|
|
|
+ (let* ((marker (or (org-get-at-bol 'org-hd-marker)
|
|
|
+ (org-agenda-error)))
|
|
|
+ (buffer (marker-buffer marker)))
|
|
|
+ (with-current-buffer buffer
|
|
|
+ (save-excursion
|
|
|
+ (save-restriction
|
|
|
+ (widen)
|
|
|
+ (goto-char marker)
|
|
|
+ (org-back-to-heading t)
|
|
|
+ (org-set-property "CATEGORY" "web"))))))
|
|
|
+@end group
|
|
|
+@end lisp
|
|
|
+@end table
|
|
|
|
|
|
@tsubheading{Calendar commands}
|
|
|
@cindex calendar commands, from agenda
|
|
@@ -9115,18 +9130,18 @@ say for example that you have an agenda commands @code{"o"} displaying a view
|
|
|
that you only need when reading emails. Then you would configure this option
|
|
|
like this:
|
|
|
|
|
|
-@example
|
|
|
+@lisp
|
|
|
(setq org-agenda-custom-commands-contexts
|
|
|
'(("o" (in-mode . "message-mode"))))
|
|
|
-@end example
|
|
|
+@end lisp
|
|
|
|
|
|
You can also tell that the command key @code{"o"} should refer to another
|
|
|
command key @code{"r"}. In that case, add this command key like this:
|
|
|
|
|
|
-@example
|
|
|
+@lisp
|
|
|
(setq org-agenda-custom-commands-contexts
|
|
|
'(("o" "r" (in-mode . "message-mode"))))
|
|
|
-@end example
|
|
|
+@end lisp
|
|
|
|
|
|
See the docstring of the variable for more information.
|
|
|
|
|
@@ -14795,11 +14810,11 @@ ask and nil not to ask.
|
|
|
For example, here is how to execute "ditaa" code (which is considered safe)
|
|
|
without asking:
|
|
|
|
|
|
-@example
|
|
|
+@lisp
|
|
|
(defun my-org-confirm-babel-evaluate (lang body)
|
|
|
(not (string= lang "ditaa"))) ; don't ask for ditaa
|
|
|
(setq org-confirm-babel-evaluate 'my-org-confirm-babel-evaluate)
|
|
|
-@end example
|
|
|
+@end lisp
|
|
|
|
|
|
@item Following @code{shell} and @code{elisp} links
|
|
|
Org has two link types that can directly evaluate code (@pxref{External
|
|
@@ -15586,7 +15601,7 @@ customize the @code{org-crypt-tag-matcher} setting.
|
|
|
To use org-crypt it is suggested that you have the following in your
|
|
|
@file{.emacs}:
|
|
|
|
|
|
-@example
|
|
|
+@lisp
|
|
|
(require 'org-crypt)
|
|
|
(org-crypt-use-before-save-magic)
|
|
|
(setq org-tags-exclude-from-inheritance (quote ("crypt")))
|
|
@@ -15604,7 +15619,7 @@ To use org-crypt it is suggested that you have the following in your
|
|
|
;; To turn it off only locally, you can insert this:
|
|
|
;;
|
|
|
;; # -*- buffer-auto-save-file-name: nil; -*-
|
|
|
-@end example
|
|
|
+@end lisp
|
|
|
|
|
|
Excluding the crypt tag from inheritance prevents already encrypted text
|
|
|
being encrypted again.
|