|
@@ -17925,35 +17925,8 @@ code block header arguments:
|
|
|
#+cindex: source code, languages
|
|
|
#+cindex: code block, languages
|
|
|
|
|
|
-Code blocks in the following languages are supported.
|
|
|
-
|
|
|
-#+attr_texinfo: :columns 0.25 0.25 0.25 0.20
|
|
|
-| Language | Identifier | Language | Identifier |
|
|
|
-|------------+---------------+----------------+--------------|
|
|
|
-| Asymptote | =asymptote= | Lisp | =lisp= |
|
|
|
-| Awk | =awk= | Lua | =lua= |
|
|
|
-| C | =C= | MATLAB | =matlab= |
|
|
|
-| C++ | =C++=[fn:142] | Mscgen | =mscgen= |
|
|
|
-| Clojure | =clojure= | Objective Caml | =ocaml= |
|
|
|
-| CSS | =css= | Octave | =octave= |
|
|
|
-| D | =D=[fn:143] | Org mode | =org= |
|
|
|
-| ditaa | =ditaa= | Oz | =oz= |
|
|
|
-| Emacs Calc | =calc= | Perl | =perl= |
|
|
|
-| Emacs Lisp | =emacs-lisp= | Plantuml | =plantuml= |
|
|
|
-| Eshell | =eshell= | Processing.js | =processing= |
|
|
|
-| Fortran | =fortran= | Python | =python= |
|
|
|
-| Gnuplot | =gnuplot= | R | =R= |
|
|
|
-| GNU Screen | =screen= | Ruby | =ruby= |
|
|
|
-| Graphviz | =dot= | Sass | =sass= |
|
|
|
-| Haskell | =haskell= | Scheme | =scheme= |
|
|
|
-| Java | =java= | Sed | =sed= |
|
|
|
-| Javascript | =js= | shell | =sh= |
|
|
|
-| LaTeX | =latex= | SQL | =sql= |
|
|
|
-| Ledger | =ledger= | SQLite | =sqlite= |
|
|
|
-| Lilypond | =lilypond= | Vala | =vala= |
|
|
|
-
|
|
|
-Additional documentation for some languages is at
|
|
|
-https://orgmode.org/worg/org-contrib/babel/languages.html.
|
|
|
+Code blocks in dozens of languages are supported. See Worg for
|
|
|
+[[https://orgmode.org/worg/org-contrib/babel/languages/index.html][language specific documentation]].
|
|
|
|
|
|
#+vindex: org-babel-load-languages
|
|
|
By default, only Emacs Lisp is enabled for evaluation. To enable or
|
|
@@ -18067,7 +18040,7 @@ for Python and Emacs Lisp languages.
|
|
|
|
|
|
#+cindex: @samp{noweb-ref}, header argument
|
|
|
Source code blocks can include references to other source code blocks,
|
|
|
-using a noweb[fn:144] style syntax:
|
|
|
+using a noweb[fn:142] style syntax:
|
|
|
|
|
|
: <<CODE-BLOCK-ID>>
|
|
|
|
|
@@ -18578,7 +18551,7 @@ Org Tempo expands snippets to structures defined in
|
|
|
~org-structure-template-alist~ and ~org-tempo-keywords-alist~. For
|
|
|
example, {{{kbd(< s TAB)}}} creates a code block. Enable it by
|
|
|
customizing ~org-modules~ or add =(require 'org-tempo)= to your Emacs
|
|
|
-init file[fn:145].
|
|
|
+init file[fn:143].
|
|
|
|
|
|
#+attr_texinfo: :columns 0.1 0.9
|
|
|
| {{{kbd(a)}}} | =#+BEGIN_EXPORT ascii= ... =#+END_EXPORT= |
|
|
@@ -18658,7 +18631,7 @@ in the desired amount with hard spaces and hiding leading stars.
|
|
|
To display the buffer in the indented view, activate Org Indent minor
|
|
|
mode, using {{{kbd(M-x org-indent-mode)}}}. Text lines that are not
|
|
|
headlines are prefixed with virtual spaces to vertically align with
|
|
|
-the headline text[fn:146].
|
|
|
+the headline text[fn:144].
|
|
|
|
|
|
#+vindex: org-indent-indentation-per-level
|
|
|
To make more horizontal space, the headlines are shifted by two
|
|
@@ -18686,9 +18659,9 @@ use =STARTUP= keyword as follows:
|
|
|
|
|
|
It is possible to use hard spaces to achieve the indentation instead,
|
|
|
if the bare ASCII file should have the indented look also outside
|
|
|
-Emacs[fn:147]. With Org's support, you have to indent all lines to
|
|
|
+Emacs[fn:145]. With Org's support, you have to indent all lines to
|
|
|
line up with the outline headers. You would use these
|
|
|
-settings[fn:148]:
|
|
|
+settings[fn:146]:
|
|
|
|
|
|
#+begin_src emacs-lisp
|
|
|
(setq org-adapt-indentation t
|
|
@@ -18955,7 +18928,7 @@ changes.
|
|
|
|
|
|
#+vindex: org-startup-indented
|
|
|
Dynamic virtual indentation is controlled by the variable
|
|
|
- ~org-startup-indented~[fn:149].
|
|
|
+ ~org-startup-indented~[fn:147].
|
|
|
|
|
|
| =indent= | Start with Org Indent mode turned on. |
|
|
|
| =noindent= | Start with Org Indent mode turned off. |
|
|
@@ -19774,7 +19747,7 @@ Tags]]) only for those set in these variables.
|
|
|
|
|
|
#+vindex: org-mobile-directory
|
|
|
The mobile application needs access to a file directory on
|
|
|
-a server[fn:150] to interact with Emacs. Pass its location through
|
|
|
+a server[fn:148] to interact with Emacs. Pass its location through
|
|
|
the ~org-mobile-directory~ variable. If you can mount that directory
|
|
|
locally just set the variable to point to that directory:
|
|
|
|
|
@@ -19795,7 +19768,7 @@ With a public server, consider encrypting the files. Org also
|
|
|
requires OpenSSL installed on the local computer. To turn on
|
|
|
encryption, set the same password in the mobile application and in
|
|
|
Emacs. Set the password in the variable
|
|
|
-~org-mobile-use-encryption~[fn:151]. Note that even after the mobile
|
|
|
+~org-mobile-use-encryption~[fn:149]. Note that even after the mobile
|
|
|
application encrypts the file contents, the file name remains visible
|
|
|
on the file systems of the local computer, the server, and the mobile
|
|
|
device.
|
|
@@ -19811,15 +19784,15 @@ The command ~org-mobile-push~ copies files listed in
|
|
|
~org-mobile-files~ into the staging area. Files include agenda files
|
|
|
(as listed in ~org-agenda-files~). Customize ~org-mobile-files~ to
|
|
|
add other files. File names are staged with paths relative to
|
|
|
-~org-directory~, so all files should be inside this directory[fn:152].
|
|
|
+~org-directory~, so all files should be inside this directory[fn:150].
|
|
|
|
|
|
Push creates a special Org file =agendas.org= with custom agenda views
|
|
|
-defined by the user[fn:153].
|
|
|
+defined by the user[fn:151].
|
|
|
|
|
|
Finally, Org writes the file =index.org=, containing links to other
|
|
|
files. The mobile application reads this file first from the server
|
|
|
to determine what other files to download for agendas. For faster
|
|
|
-downloads, it is expected to only read files whose checksums[fn:154]
|
|
|
+downloads, it is expected to only read files whose checksums[fn:152]
|
|
|
have changed.
|
|
|
|
|
|
*** Pulling from the mobile application
|
|
@@ -19836,7 +19809,7 @@ data in an inbox file format, through the following steps:
|
|
|
|
|
|
1.
|
|
|
#+vindex: org-mobile-inbox-for-pull
|
|
|
- Org moves all entries found in =mobileorg.org=[fn:155] and appends
|
|
|
+ Org moves all entries found in =mobileorg.org=[fn:153] and appends
|
|
|
them to the file pointed to by the variable
|
|
|
~org-mobile-inbox-for-pull~. It should reside neither in the
|
|
|
staging area nor on the server. Each captured entry and each
|
|
@@ -20132,9 +20105,9 @@ of these strategies:
|
|
|
#+cindex: @LaTeX{}, and Orgtbl mode
|
|
|
|
|
|
To wrap a source table in LaTeX, use the =comment= environment
|
|
|
-provided by =comment.sty=[fn:156]. To activate it, put
|
|
|
+provided by =comment.sty=[fn:154]. To activate it, put
|
|
|
~\usepackage{comment}~ in the document header. Orgtbl mode inserts
|
|
|
-a radio table skeleton[fn:157] with the command {{{kbd(M-x
|
|
|
+a radio table skeleton[fn:155] with the command {{{kbd(M-x
|
|
|
orgtbl-insert-radio-table)}}}, which prompts for a table name. For
|
|
|
example, if =salesfigures= is the name, the template inserts:
|
|
|
|
|
@@ -20153,7 +20126,7 @@ The line =#+ORGTBL: SEND= tells Orgtbl mode to use the function
|
|
|
~orgtbl-to-latex~ to convert the table to LaTeX format, then insert
|
|
|
the table at the target (receive) location named =salesfigures=. Now
|
|
|
the table is ready for data entry. It can even use spreadsheet
|
|
|
-features[fn:158]:
|
|
|
+features[fn:156]:
|
|
|
|
|
|
#+begin_example
|
|
|
% BEGIN RECEIVE ORGTBL salesfigures
|
|
@@ -20369,7 +20342,7 @@ Dynamic blocks, like any other block, can be narrowed with
|
|
|
#+vindex: org-agenda-skip-function
|
|
|
#+vindex: org-agenda-skip-function-global
|
|
|
Org provides a special hook to further limit items in agenda views:
|
|
|
-~agenda~, ~agenda*~[fn:159], ~todo~, ~alltodo~, ~tags~, ~tags-todo~,
|
|
|
+~agenda~, ~agenda*~[fn:157], ~todo~, ~alltodo~, ~tags~, ~tags-todo~,
|
|
|
~tags-tree~. Specify a custom function that tests inclusion of every
|
|
|
matched item in the view. This function can also skip as much as is
|
|
|
needed.
|
|
@@ -20412,7 +20385,7 @@ meaningful string suitable for the agenda view.
|
|
|
#+vindex: org-agenda-skip-function
|
|
|
Search for entries with a limit set on levels for the custom search.
|
|
|
This is a general approach to creating custom searches in Org. To
|
|
|
-include all levels, use =LEVEL>0=[fn:160]. Then to selectively pick
|
|
|
+include all levels, use =LEVEL>0=[fn:158]. Then to selectively pick
|
|
|
the matched entries, use ~org-agenda-skip-function~, which also
|
|
|
accepts Lisp forms, such as ~org-agenda-skip-entry-if~ and
|
|
|
~org-agenda-skip-subtree-if~. For example:
|
|
@@ -21823,64 +21796,64 @@ to remove code evaluation from the {{{kbd(C-c C-c)}}} key binding.
|
|
|
are not evaluated when they appear in a keyword (see [[*Summary of
|
|
|
In-Buffer Settings]]).
|
|
|
|
|
|
-[fn:142] C++ language is handled in =ob-C.el=. Even though the
|
|
|
+[fn:159] C++ language is handled in =ob-C.el=. Even though the
|
|
|
identifier for such source blocks is =C++=, you activate it by loading
|
|
|
the C language.
|
|
|
|
|
|
-[fn:143] D language is handled in =ob-C.el=. Even though the
|
|
|
+[fn:160] D language is handled in =ob-C.el=. Even though the
|
|
|
identifier for such source blocks is =D=, you activate it by loading
|
|
|
the C language.
|
|
|
|
|
|
-[fn:144] For noweb literate programming details, see
|
|
|
+[fn:142] For noweb literate programming details, see
|
|
|
http://www.cs.tufts.edu/~nr/noweb/.
|
|
|
|
|
|
-[fn:145] For more information, please refer to the commentary section
|
|
|
+[fn:143] For more information, please refer to the commentary section
|
|
|
in =org-tempo.el=.
|
|
|
|
|
|
-[fn:146] Org Indent mode also sets ~wrap-prefix~ correctly for
|
|
|
+[fn:144] Org Indent mode also sets ~wrap-prefix~ correctly for
|
|
|
indenting and wrapping long lines of headlines or text. This minor
|
|
|
mode also handles Visual Line mode and directly applied settings
|
|
|
through ~word-wrap~.
|
|
|
|
|
|
-[fn:147] This works, but requires extra effort. Org Indent mode is
|
|
|
+[fn:145] This works, but requires extra effort. Org Indent mode is
|
|
|
more convenient for most applications.
|
|
|
|
|
|
-[fn:148] ~org-adapt-indentation~ can also be set to ='headline-data=,
|
|
|
+[fn:146] ~org-adapt-indentation~ can also be set to ='headline-data=,
|
|
|
in which case only data lines below the headline will be indented.
|
|
|
|
|
|
-[fn:149] Note that Org Indent mode also sets the ~wrap-prefix~
|
|
|
+[fn:147] Note that Org Indent mode also sets the ~wrap-prefix~
|
|
|
property, such that Visual Line mode (or purely setting ~word-wrap~)
|
|
|
wraps long lines, including headlines, correctly indented.
|
|
|
|
|
|
-[fn:150] For a server to host files, consider using a WebDAV server,
|
|
|
+[fn:148] For a server to host files, consider using a WebDAV server,
|
|
|
such as [[https://nextcloud.com][Nextcloud]]. Additional help is at this [[https://orgmode.org/worg/org-faq.html#mobileorg_webdav][FAQ entry]].
|
|
|
|
|
|
-[fn:151] If Emacs is configured for safe storing of passwords, then
|
|
|
+[fn:149] If Emacs is configured for safe storing of passwords, then
|
|
|
configure the variable ~org-mobile-encryption-password~; please read
|
|
|
the docstring of that variable.
|
|
|
|
|
|
-[fn:152] Symbolic links in ~org-directory~ need to have the same name
|
|
|
+[fn:150] Symbolic links in ~org-directory~ need to have the same name
|
|
|
as their targets.
|
|
|
|
|
|
-[fn:153] While creating the agendas, Org mode forces =ID= properties
|
|
|
+[fn:151] While creating the agendas, Org mode forces =ID= properties
|
|
|
on all referenced entries, so that these entries can be uniquely
|
|
|
identified if Org Mobile flags them for further action. To avoid
|
|
|
setting properties configure the variable
|
|
|
~org-mobile-force-id-on-agenda-items~ to ~nil~. Org mode then relies
|
|
|
on outline paths, assuming they are unique.
|
|
|
|
|
|
-[fn:154] Checksums are stored automatically in the file
|
|
|
+[fn:152] Checksums are stored automatically in the file
|
|
|
=checksums.dat=.
|
|
|
|
|
|
-[fn:155] The file will be empty after this operation.
|
|
|
+[fn:153] The file will be empty after this operation.
|
|
|
|
|
|
-[fn:156] https://www.ctan.org/pkg/comment
|
|
|
+[fn:154] https://www.ctan.org/pkg/comment
|
|
|
|
|
|
-[fn:157] By default this works only for LaTeX, HTML, and Texinfo.
|
|
|
+[fn:155] By default this works only for LaTeX, HTML, and Texinfo.
|
|
|
Configure the variable ~orgtbl-radio-table-templates~ to install
|
|
|
templates for other modes.
|
|
|
|
|
|
-[fn:158] If the =TBLFM= keyword contains an odd number of dollar
|
|
|
+[fn:156] If the =TBLFM= keyword contains an odd number of dollar
|
|
|
characters, this may cause problems with Font Lock in LaTeX mode. As
|
|
|
shown in the example you can fix this by adding an extra line inside
|
|
|
the =comment= environment that is used to balance the dollar
|
|
@@ -21888,11 +21861,11 @@ expressions. If you are using AUCTeX with the font-latex library,
|
|
|
a much better solution is to add the =comment= environment to the
|
|
|
variable ~LaTeX-verbatim-environments~.
|
|
|
|
|
|
-[fn:159] The ~agenda*~ view is the same as ~agenda~ except that it
|
|
|
+[fn:157] The ~agenda*~ view is the same as ~agenda~ except that it
|
|
|
only considers /appointments/, i.e., scheduled and deadline items that
|
|
|
have a time specification =[h]h:mm= in their time-stamps.
|
|
|
|
|
|
-[fn:160] Note that, for ~org-odd-levels-only~, a level number
|
|
|
+[fn:158] Note that, for ~org-odd-levels-only~, a level number
|
|
|
corresponds to order in the hierarchy, not to the number of stars.
|
|
|
|
|
|
[fn:161] If you move entries or Org files from one directory to
|