123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730 |
- \input texinfo
- setfilename ../../info/orgguide
- include org-version.inc
- c Cf. Texinfo manual 14.2
- set txicodequotebacktick
- set MAINTAINERSITE
- set AUTHOR Carsten Dominik
- set MAINTAINEREMAIL
- set MAINTAINERCONTACT
- c %**end of header
- c Macro definitions
- c
- end iftex
- macro tsubheading{text}
- subsubheading \text\
- ifnotinfo
- b{\text\}
- end macro
- noindent *
- end macro
- copyright{} 2010--2013 Free Software Foundation
- end quotation
- dircategory Emacs
- end direntry
- title The compact Org-mode Guide
- value{VERSION}
- c The following two commands start the copyright page.
- vskip 0pt plus 1filll
- end titlepage
- shortcontents
- node Top, Introduction, (dir), (dir)
- insertcopying
- menu
- * Introduction:: Getting started
- * Document Structure:: A tree works like your brain
- * Tables:: Pure magic for quick formatting
- * Hyperlinks:: Notes in context
- * TODO Items:: Every tree branch can be a TODO item
- * Tags:: Tagging headlines and matching sets of tags
- * Properties:: Properties
- * Dates and Times:: Making items useful for planning
- * Capture - Refile - Archive:: The ins and outs for projects
- * Agenda Views:: Collecting information into views
- * Markup:: Prepare text for rich export
- * Exporting:: Sharing and publishing of notes
- * Publishing:: Create a web site of linked Org files
- * Working With Source Code:: Source code snippets embedded in Org
- * Miscellaneous:: All the rest which did not fit elsewhere
- * GNU Free Documentation License:: This manual license.
- LaTeX{}::
- LaTeX{} and PDF export:: Exporting to
- end detailmenu
- node Introduction, Document Structure, Top, Top
- menu
- * Preface:: Welcome
- * Installation:: How to install a downloaded version of Org
- * Activation:: How to activate Org for certain buffers
- * Feedback:: Bug reports, ideas, patches etc.
- node Preface, Installation, Introduction, Introduction
- i{This document is a much compressed derivative of the
- node Installation, Activation, Preface, Introduction
- b{Important:}
- ref{Activation}.}
- If you have downloaded Org from the Web, either as a distribution
- file{.tar} file, or as a Git archive, it is best to run it directly from
- the distribution directory. You need to add the
- file{.emacs}:
- end smallexample
- smallexample
- make
- node Activation, Feedback, Installation, Introduction
- file{.emacs} file. The last three lines
- define
- smalllisp
- ;; The following lines are always needed. Choose your own keys.
- (add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode)) ; not needed since Emacs 22.2
- (add-hook 'org-mode-hook 'turn-on-font-lock) ; not needed when global-font-lock-mode is on
- (global-set-key "\C-cl" 'org-store-link)
- (global-set-key "\C-ca" 'org-agenda)
- (global-set-key "\C-cb" 'org-iswitchb)
- samp{.org} will be put
- into Org mode.
- section Feedback
- If you find problems with Org, or if you have questions, remarks, or ideas
- about it, please mail to the Org mailing list
- node Document Structure, Tables, Introduction, Top
- menu
- * Outlines:: Org is based on Outline mode
- * Headlines:: How to typeset Org tree headlines
- * Visibility cycling:: Show and hide, much simplified
- * Motion:: Jumping to other headlines
- * Structure editing:: Changing sequence and level of headlines
- * Sparse trees:: Matches embedded in context
- * Plain lists:: Additional structure within an entry
- * Footnotes:: How footnotes are defined in Org's syntax
- node Outlines, Headlines, Document Structure, Document Structure
- command{org-cycle}, which is bound to the
- node Headlines, Visibility cycling, Outlines, Document Structure
- footnote{See
- the variable
- kbd{C-a} and
- smallexample
- * Top level headline
- ** Second level
- *** 3rd level
- some text
- *** 3rd level
- more text
- * Another top level headline
- noindent Some people find the many stars too noisy and would prefer an
- outline that has whitespace followed by a single star as headline
- starters.
- node Visibility cycling, Motion, Headlines, Document Structure
- key{TAB} and
- key{TAB}} to change the visibility in the buffer.
- kbd
- key{TAB}
- smallexample
- ,-> FOLDED -> CHILDREN -> SUBTREE --.
- '-----------------------------------'
- kbd{C-u
- item S-r{and} C-u
- emph{Global cycling}: Rotate the entire buffer among the states
- end smallexample
- key{TAB}
- Show all, including drawers.
- : only the top level headlines are visible. This can be
- configured through the variable
- code{overview},
- code{showall}, like this:
- end smallexample
- section Motion
- The following commands jump to other headlines in the buffer.
- kbd
- item C-c C-p
- Previous heading.
- item C-c C-b
- Previous heading same level.
- end table
- section Structure editing
- kbd
- key{RET}
- Insert new heading with same level as current. If the cursor is in a plain
- list item, a new item is created (
- footnote{If you do not want the line to be split,
- customize the variable
- item M-S-
- item r{in new, empty entry}
- In a new entry with no text yet,
- item M-r{/}
- item M-S-r{/}
- item M-S-r{/}
- item C-c C-w
- Refile entry or region to a different location.
- item C-x n s/w
- Narrow buffer to current subtree / widen it again
- node Sparse trees, Plain lists, Structure editing, Document Structure
- emph{sparse
- trees} for selected information in an outline tree, so that the entire
- document is folded as much as possible, but the selected information is made
- visible along with the headline structure above it
- code{org-show-hierarchy-above},
- code{org-show-siblings}, and
- table
- item C-c /
- This prompts for an extra key to select a sparse-tree creating command.
- kbd{C-c C-c}.
- node Plain lists, Footnotes, Sparse trees, Document Structure
- pxref{Checkboxes}). Org supports editing such lists,
- and the HTML exporter (
- itemize
- item
- samp{-},
- samp{*} as bullets.
- emph{Ordered} list items start with samp{1)}.
- emph{Description} list use emph{term} from the
- description.
- smallexample
- b{Elijah Wood} :: He plays Frodo
- -
- end group
- table
- item
- item M-
- pxref{Structure editing}).
- key{RET}
- Insert a new item with a checkbox (
- item M-S-r{/}
- item M-r{/}M-
- item M-S-r{/}
- item C-c C-c
- If there is a checkbox (
- item C-c -
- Cycle the entire list level through the different itemize/enumerate bullets
- (samp{+}, samp{1.},
- end table
- section Footnotes
- A footnote is defined in a paragraph that is started by a footnote marker in
- square brackets in column 0, no indentation allowed. The footnote reference
- is simply the marker in square brackets, inside text. For example:
- end smallexample
- table
- item C-c C-x f
- The footnote action command. When the cursor is on a footnote reference,
- jump to the definition. When it is at a definition, jump to the (first)
- reference. Otherwise, create a new footnote. When this command is called
- with a prefix argument, a menu of additional options including renumbering is
- offered.
- end table
- uref{http://orgmode.org/manual/Document-Structure.html#Document-Structure,
- Chapter 2 of the manual}
- uref{http://sachachua.com/wp/2008/01/outlining-your-notes-with-org/,
- Sacha Chua's tutorial}}
- chapter Tables
- Org comes with a fast and intuitive table editor. Spreadsheet-like
- calculations are supported in connection with the Emacs
- ifinfo
- (
- end ifinfo
- end ifnotinfo
- Org makes it easy to format tables in plain ASCII. Any line with
- samp{|} is also the column separator. A table might look like
- this:
- end smallexample
- A table is re-aligned automatically each time you press
- key{RET} or key{TAB} also moves to
- the next field (
- samp{|-} is considered as a horizontal separator line and will be
- expanded on the next re-align to span the whole table width. So, to
- create the above table, you would only type
- end smallexample
- key{TAB} to align the table and start filling in
- fields. Even faster would be to type
- kbd{C-c
- key{DEL},
- emph{immediately after the cursor was moved into a new field
- with key{TAB}}, key{TAB}} or key{RET}}}, the
- field is automatically made blank.
- kbd
- item C-c |
- Convert the active region to table. If every line contains at least one TAB
- character, the function assumes that the material is tab separated. If every
- line contains a comma, comma-separated values (CSV) are assumed. If not,
- lines are split at whitespace into fields.
- kbd{|Name|Phone|Age C-c
- tsubheading{Re-aligning and field motion}
- c
- key{TAB}
- Re-align the table, move to the next field. Creates a new row if
- necessary.
- item S-
- c
- key{RET}
- Re-align the table and move down to next row. Creates a new row if
- necessary.
- item M-
- itemx M-
- c
- key{left}
- Kill the current column.
- item M-S-
- c
- key{up}
- key{down}
- Move the current row up/down.
- item M-S-
- c
- key{down}
- Insert a new row above the current row. With a prefix argument, the line is
- created below the current one.
- item C-c -
- Insert a horizontal line below current row. With a prefix argument, the line
- is created above the current line.
- item C-c
- c
- end table
- uref{http://orgmode.org/manual/Tables.html#Tables, Chapter 3 of the
- manual}
- uref{http://orgmode.org/worg/org-tutorials/tables.php, Bastien's
- table tutorial}
- uref{http://orgmode.org/worg/org-tutorials/org-spreadsheet-intro.php,
- Bastien's spreadsheet tutorial}
- uref{http://orgmode.org/worg/org-tutorials/org-plot.php, Eric's plotting tutorial}}
- chapter Hyperlinks
- Like HTML, Org provides links inside a file, external links to
- other files, Usenet articles, emails, and much more.
- end menu
- section Link format
- Org will recognize plain URL-like links and activate them as
- clickable links. The general link format, however, looks like this:
- r{or alternatively} [[link]]
- noindent
- Once a link in the buffer is complete (all brackets present), Org will change
- the display so that
- samp{[[link][description]]} and
- samp{[[link]]}. To edit the invisible kbd{C-c
- C-l} with the cursor on the link.
- section Internal links
- If the link does not look like a URL, it is considered to be internal in the
- current file. The most important case is a link like
- code{CUSTOM_ID} property
- samp{[[My Target]]} or
- samp{<<My Target>>}.
- section External links
- Org supports links to files, websites, Usenet and email messages,
- BBDB database entries and links to both IRC conversations and their
- logs. External links are URL-like locators. They start with a short
- identifying string followed by a colon. There can be no space after
- the colon. Here are some examples:
- r{on the web}
- file:/home/dominik/images/jupiter.jpg
- r{same as above}
- file:papers/last.pdf
- r{another Org file}
- docview:papers/last.pdf::NNN
- r{Link to heading by ID}
- news:comp.emacs
- r{Mail link}
- vm:folder
- r{VM message link}
- wl:folder#id
- r{MH-E message link}
- rmail:folder#id
- r{Gnus article link}
- bbdb:R.*Stallman
- r{IRC link}
- info:org:External%20links
- end smallexample
- A link should be enclosed in double brackets and may contain a
- descriptive text to be displayed instead of the URL (
- smallexample
- [[http://www.gnu.org/software/emacs/][GNU Emacs]]
- noindent
- If the description is a file name or URL that points to an image, HTML export
- (
- node Handling links, Targeted links, External links, Hyperlinks
- table
- item C-c l
- Store a link to the current location. This is a
- c
- key{up} and
- kbd{C-u} prefix argument, file name completion is used to
- link to a file.
- item C-c C-l
- kbd{C-c C-l} allows you to edit the
- link and description parts of the link.
- item C-c C-o r{or} mouse-2
- Open link at point.
- kbd{C-c %}. Using this
- command several times in direct succession moves through a ring of
- previously recorded positions.
- end table
- section Targeted links
- File links can contain additional information to make Emacs jump to a
- particular location in the file when following a link. This can be a
- line number or a search option after a double colon.
- Here is the syntax of the different ways to attach a search to a file
- link, together with an explanation:
- r{Find line 255}
- [[file:~/xx.org::My Target]] samp{<<My Target>>}}
- [[file:~/xx.org::#my-custom-id]]
- end smallexample
- uref{http://orgmode.org/manual/Hyperlinks.html#Hyperlinks, Chapter 4 of the
- manual}}
- chapter TODO Items
- Org mode does not maintain TODO lists as separate documents
- menu
- * Using TODO states:: Setting and switching states
- * Multi-state workflows:: More than just on/off
- * Progress logging:: Dates and notes for progress
- * Priorities:: Some things are more important than others
- * Breaking down tasks:: Splitting a task into manageable pieces
- * Checkboxes:: Tick-off lists
- node Using TODO states, Multi-state workflows, TODO Items, TODO Items
- samp{TODO}, for example:
- end smallexample
- table
- item C-c C-t
- Rotate the TODO state of the current item among
- end smallexample
- The same rotation can also be done ``remotely'' from the timeline and
- agenda buffers with the pxref{Agenda commands}).
- key{right}key{left}
- Select the following/preceding TODO state, similar to cycling.
- emph{sparse tree} (
- item C-c a t
- Show the global TODO list. Collects the TODO items from all agenda files
- (xref{Global TODO list}, for
- more information.
- key{RET}
- Insert a new TODO entry below the current one.
- noindent
- Changing a TODO state can also trigger tag changes. See the docstring of the
- option
- node Multi-state workflows, Progress logging, Using TODO states, TODO Items
- emph{sequential} states
- in the process of working on an item, for example:
- end smalllisp
- The vertical bar separates the TODO keywords (states that
- emph{no further action}). If
- you don't provide the separator bar, the last state is used as the DONE
- state.
- With this setup, the command
- code{TODO}/
- smalllisp
- (setq org-todo-keywords
- '((sequence "TODO(t)" "|" "DONE(d)")
- (sequence "REPORT(r)" "BUG(b)" "KNOWNCAUSE(k)" "|" "FIXED(f)")
- (sequence "|" "CANCELED(c)")))
- kbd{C-c C-t}.
- To define TODO keywords that are valid only in a single file, use the
- following text anywhere in the file.
- end smallexample
- After changing one of these lines, use
- node Progress logging, Priorities, Multi-state workflows, TODO Items
- ref{Clocking
- work time}.
- end menu
- unnumberedsubsec Closing items
- The most basic logging is to keep track of
- footnote{The corresponding
- in-buffer setting is:
- smalllisp
- (setq org-log-done 'time)
- noindent
- Then each time you turn an entry from a TODO (not-done) state into any of the
- DONE states, a line
- footnote{The corresponding in-buffer setting is:
- smalllisp
- (setq org-log-done 'note)
- noindent
- You will then be prompted for a note, and that note will be stored below
- the entry with a
- node Tracking TODO state changes, , Closing items, Progress logging
- code{org-log-into-drawer} to get this behavior.
- For state logging, Org mode expects configuration on a per-keyword basis.
- This is achieved by adding special markers
- samp{} (for a note) in parentheses after each keyword. For example:
- end smallexample
- code{org-todo-keywords}.
- section Priorities
- If you use Org mode extensively, you may end up with enough TODO items that
- it starts to make sense to prioritize them. Prioritizing can be done by
- placing a
- smallexample
- *** TODO [#A] Write letter to Sam Fortune
- noindent
- Org mode supports three priorities: samp{B}, and
- samp{A} is the highest,
- table
- item
- samp{A},
- samp{C} to select a priority, or
- c
- key{up}
- key{down}
- Increase/decrease priority of current headline
- node Breaking down tasks, Checkboxes, Priorities, TODO Items
- samp{[/]} or
- kbd{C-c C-c} on the
- cookie. For example:
- end smallexample
- section Checkboxes
- Every item in a plain list (
- samp{[ ]}. Checkboxes are not included in
- the global TODO list, so they are often great to split a task into a number
- of simple steps.
- Here is an example of a checkbox list.
- end smallexample
- Checkboxes work hierarchically, so if a checkbox item has children that
- are checkboxes, toggling one of the children checkboxes will make the
- parent checkbox reflect if none, some, or all of the children are
- checked.
- table
- item C-c C-c
- Toggle checkbox status or (with prefix arg) checkbox presence at point.
- key{RET}
- Insert a new item with a checkbox.
- This works only if the cursor is already in a plain list item
- (
- end table
- uref{http://orgmode.org/manual/TODO-Items.html#TODO-Items, Chapter 5 of the manual}
- uref{http://orgmode.org/worg/org-tutorials/orgtutorial_dto.php, David
- O'Toole's introductory tutorial}
- uref{http://members.optusnet.com.au/~charles57/GTD/gtd_workflow.html,
- Charles Cave's GTD setup}}
- chapter Tags
- An excellent way to implement labels and contexts for cross-correlating
- information is to assign
- samp{_}, and
- samp{:work:}. Several tags can be specified, as in
- menu
- * Tag inheritance:: Tags use the tree structure of the outline
- * Setting tags:: How to assign tags to a headline
- * Tag searches:: Searching for combinations of tags
- * Tag searches:: Searching for combinations of tags
- node Tag inheritance, Setting tags, Tags, Tags
- i{Tags} make use of the hierarchical structure of outline trees. If a
- heading has a certain tag, all subheadings will inherit the tag as
- well. For example, in the list
- end smallexample
- samp{:work:},
- samp{:notes:}, and
- footnote{As
- with all these in-buffer settings, pressing
- smallexample
- #+FILETAGS: :Peter:Boss:Secret:
- node Setting tags, Tag searches, Tag inheritance, Tags
- kbd{M-
- table
- item C-c C-q
- Enter new tags for the current headline. Org mode will either offer
- completion or a special single-key interface for setting tags, see
- below. After pressing
- code{org-tags-column}. When called with a
- item C-c C-c
- When the cursor is in a headline, this does the same as
- end table
- Org will support tag insertion based on a
- code{org-tag-alist}. Finally you can set
- the default tags for a given file with lines like
- end smallexample
- By default Org mode uses the standard minibuffer completion facilities for
- entering tags. However, it also implements another, quicker, tag selection
- method called
- code{org-tag-alist} in your
- samp{:home:}. In this case you can set something
- like:
- end smalllisp
- smallexample
- #+TAGS: work(w) home(h) tennisclub(t) laptop(l) pc(p)
- node Tag searches, Tag searches, Setting tags, Tags
- cindex group tags
- emph{group tag}. When you search for a group tag, it will return matches
- for all members in the group. In an agenda view, filtering by a group tag
- will display headlines tagged with at least one of the members of the
- group. This makes tag searches and filters even more flexible.
- You can set group tags by inserting a colon between the group tag and other
- tags, like this:
- { read : read_book read_ebook
- end example
- In this example, emph{group tag} for a set of three
- tags: samp{read_book} and
- code{:grouptags} keyword directly when setting
- lisp
- (setq org-tag-alist '((:startgroup . nil)
- ("@@read" . nil)
- (:grouptags . nil)
- ("@@read_book" . nil)
- ("@@read_ebook" . nil)
- (:endgroup . nil)))
- kindex C-c C-x q
- command{org-toggle-tags-groups}, bound to
- var{org-group-tags} to nil.
- section Tag searches
- Once a system of tags has been set up, it can be used to collect related
- information into special lists.
- kbd
- itemx C-c / m
- Create a sparse tree with all headlines matching a tags search. With a
- item C-c a m
- Create a global list of tag matches from all agenda files.
- item C-c a M
- Create a global list of tag matches from all agenda files, but check
- only TODO items and force checking subitems (see variable
- end table
- These commands all prompt for a match string which allows basic Boolean logic
- like samp{boss} and
- samp{project1}, or
- samp{Kathy} or
- ref{Matching tags and properties}.
- uref{http://orgmode.org/manual/Tags.html#Tags, Chapter 6 of the manual}
- uref{http://sachachua.com/wp/2008/01/tagging-in-org-plus-bonus-code-for-timeclocks-and-tags/,
- Sacha Chua's article about tagging in Org-mode}}
- chapter Properties
- Properties are key-value pairs associated with an entry. They live in a
- special drawer with the name
- smallexample
- * CD collection
- ** Classic
- *** Goldberg Variations
- :PROPERTIES:
- :Title: Goldberg Variations
- :Composer: J.S. Bach
- :Publisher: Deutsche Grammophon
- :NDisks: 1
- :END:
- samp{:Xyz:}
- by setting a property
- emph{inherited}, so if you set it in a level 1 entry, it will apply to
- the entire tree. When allowed values are defined, setting the
- corresponding property becomes easier and is less prone to typing
- errors. For the example with the CD collection, we can predefine
- publishers and the number of disks in a box like this:
- end smallexample
- or globally using
- smallexample
- #+PROPERTY: NDisks_ALL 1 2 3 4
- table
- item C-c C-x p
- Set a property. This prompts for a property name and a value.
- end table
- To create sparse trees and special lists with selection based on properties,
- the same commands are used as for tag searches (
- ref{Matching tags and
- properties}.
- kbd
- seealso{
- *
- node Dates and Times, Capture - Refile - Archive, Properties, Top
- emph{timestamp} in Org mode.
- end menu
- section Timestamps
- A timestamp is a specification of a date (possibly with a time or a range of
- times) in a special format, either
- samp{<2003-09-16 Tue 09:39>} or
- pxref{Weekly/daily agenda}). We distinguish:
- b{Plain timestamp; Event; Appointment}
- smallexample
- * Meet Peter at the movies
- <2006-11-01 Wed 19:15>
- * Discussion on climate change
- <2006-11-02 Thu 20:00-22:00>
- noindent *
- A timestamp may contain a
- smallexample
- * Pick up Sam at school
- <2007-05-16 Wed 12:30 +1w>
- noindent *
- For more complex date specifications, Org mode supports using the
- special sexp diary entries implemented in the Emacs calendar/diary
- package. For example
- end smallexample
- b{Time/Date range}
- samp{--} denote a range.
- end smallexample
- b{Inactive timestamp}
- emph{not} trigger an entry to show up in the agenda.
- end smallexample
- section Creating timestamps
- For Org mode to recognize timestamps, they need to be in the specific
- format. All commands listed below produce timestamps in the correct
- format.
- kbd
- c
- kbd{C-c .}, but insert an inactive timestamp that will not cause
- an agenda entry.
- item S-r{/}
- c
- key{up}key{down}
- Change the item under the cursor in a timestamp. The cursor can be on a
- year, month, day, hour or minute. When the timestamp contains a time range
- like
- end table
- When Org mode prompts for a date/time, it will accept any string containing
- some date and/or time information, and intelligently interpret the string,
- deriving defaults for unspecified information from the current date and time.
- You can also select a date in the pop-up calendar. See the manual for more
- information on how exactly the date/time prompt works.
- section Deadlines and scheduling
- A timestamp may be preceded by special keywords to facilitate planning:
- b{DEADLINE}
- table
- item C-c C-d
- Insert
- end table
- On the deadline date, the task will be listed in the agenda. In
- addition, the agenda for
- code{org-deadline-warning-days} before the due date, and continuing
- until the entry is marked DONE. An example:
- end smallexample
- b{SCHEDULED}
- i{planning to start working} on that task on the given
- date
- i{scheduling a meeting}, which is done in Org-mode by just inserting a time
- stamp without keyword.}.
- kbd
- samp{SCHEDULED} keyword along with a stamp, in the line following the
- headline.
- footnote{It will still
- be listed on that date after it has been marked DONE. If you don't like
- this, set the variable
- emph{today}, until the entry is marked DONE.
- I.e.
- smallexample
- *** TODO Call Trillian for a date on New Years Eve.
- SCHEDULED: <2004-12-25 Sat>
- smallexample
- ** TODO Pay the rent
- DEADLINE: <2005-10-01 Sat +1m>
- noindent
- the
- node Clocking work time, , Deadlines and scheduling, Dates and Times
- table
- item C-c C-x C-i
- Start the clock on the current item (clock-in). This inserts the CLOCK
- keyword together with a timestamp. When called with a
- c
- samp{=>
- HH:MM}.
- item C-c C-x C-x
- Cancel the current clock. This is useful if a clock was started by
- mistake, or if you ended up working on something else.
- kbd{C-u} prefix arg, select the target task from a list of recently clocked
- tasks.
- smallexample
- #+BEGIN: clocktable :maxlevel 2 :emphasize nil :scope file
- #+END: clocktable
- noindent
- For details about how to customize this view, see
- item C-c C-c
- Update dynamic block at point. The cursor needs to be in the
- end table
- The pxref{Timeline}) and in
- the agenda (
- seealso{
- *
- *
- node Capture - Refile - Archive, Agenda Views, Dates and Times, Top
- i{attachments}) in a special directory. Once in the system, tasks and
- projects need to be moved around. Moving completed project trees to an
- archive file keeps the system compact and fast.
- end menu
- section Capture
- Org's method for capturing new items is heavily inspired by John Wiegley
- excellent
- menu
- * Setting up a capture location:: Where notes will be stored
- * Using capture:: Commands to invoke and terminate capture
- * Capture templates:: Define the outline of different note types
- node Setting up a capture location, Using capture, Capture, Capture
- footnote{Using capture
- templates, you can define more fine-grained capture locations, see
- footnote{Please select your own key,
- example
- (setq org-default-notes-file (concat org-directory "/notes.org"))
- (define-key global-map "\C-cc" 'org-capture)
- node Using capture, Capture templates, Setting up a capture location, Capture
- table
- item C-c c
- Start a capture process. You will be placed into a narrowed indirect buffer
- to edit the item.
- kbd{C-c C-c} will return you to the window configuration before the capture
- process, so that you can resume your work without further distraction.
- pxref{Refile and copy}).
- end table
- unnumberedsubsec Capture templates
- You can use templates to generate different types of capture notes, and to
- store them in different places. For example, if you would like
- to store new tasks under a heading file{TODO.org}, and
- journal entries in a date tree in
- smallexample
- (setq org-capture-templates
- '(("t" "Todo" entry (file+headline "~/org/gtd.org" "Tasks")
- "* TODO %?\n %i\n %a")
- ("j" "Journal" entry (file+datetree "~/org/journal.org")
- "* %?\nEntered on %U\n %i\n %a")))
- noindent In these entries, the first string is the key to reach the
- template, the second is a short description. Then follows the type of the
- entry and a definition of the target location for storing the note. Finally,
- the template itself, a string with %-escapes to fill in information based on
- time and context.
- When you call
- smallexample
- * TODO
- [[file:
- end smallexample
- kbd{%}-escapes
- kbd{%} with a backslash.}
- allow dynamic insertion of content. Here is a small selection of the
- possibilities, consult the manual for more.
- r{annotation, normally the link created with
- r{initial content, the region when capture is called with C-u.}
- %t
- r{timestamp with date and time}
- %u, %U
- end smallexample
- section Refile and copy
- When reviewing the captured data, you may want to refile or copy some of the
- entries into a different list, for example into a project. Cutting, finding
- the right location, and then pasting the note is cumbersome. To simplify
- this process, you can use the following special command:
- kbd
- code{org-refile}, except that the original note will not be deleted.
- *
- By default, all level 1 headlines in the current buffer are considered to be
- targets, but you can have more complex definitions across a number of files.
- See the variable
- item C-u C-c C-w
- Use the refile interface to jump to a heading.
- code{org-refile} last moved a tree to.
- node Archiving, , Refile and copy, Capture - Refile - Archive
- table
- item C-c C-x C-a
- Archive the current entry using the command specified in the variable
- item C-c C-x C-sr{or short}
- code{org-archive-location}.
- file{_archive} to the
- current file name. For information and examples on how to change this,
- see the documentation string of the variable
- smallexample
- #+ARCHIVE: %s_done::
- seealso{
- *
- uref{}
- node Agenda Views, Markup, Capture - Refile - Archive, Top
- emph{agenda buffer}.
- This buffer is read-only, but provides commands to visit the corresponding
- locations in the original Org files, and even to edit these files remotely.
- Remote editing from the agenda buffer means, for example, that you can
- change the dates of deadlines and appointments from the agenda buffer.
- The commands available in the Agenda buffer are listed in
- menu
- * Agenda files:: Files being searched for agenda information
- * Agenda dispatcher:: Keyboard access to agenda views
- * Built-in agenda views:: What is available out of the box?
- * Agenda commands:: Remote editing of Org trees
- * Custom agenda views:: Defining special searches and views
- node Agenda files, Agenda dispatcher, Agenda Views, Agenda Views
- emph{agenda
- files}, the files listed in the variable
- table
- item C-c [
- Add current file to the list of agenda files. The file is added to
- the front of the list. If it was already in the list, it is moved to
- the front. With a prefix argument, file is added/moved to the end.
- item C-,
- Cycle through agenda file list, visiting one file after the other.
- node Agenda dispatcher, Built-in agenda views, Agenda files, Agenda Views
- kbd{C-c a} (
- kbd{C-c a}, an additional letter is required to execute a
- command:
- kbd
- pxref{Weekly/daily agenda}).
- r{/} T
- A list of all TODO items (
- item m
- pxref{Matching
- tags and properties}).
- pxref{Timeline}).
- end table
- section The built-in agenda views
- end menu
- subsection The weekly/daily agenda
- The purpose of the weekly/daily
- table
- item C-c a a
- Compile an agenda for the current week from a list of Org files. The agenda
- shows the entries for each day.
- smallexample
- * Birthdays and similar stuff
- #+CATEGORY: Holiday
- %%(org-calendar-holiday) ; special function for holiday names
- #+CATEGORY: Ann
- %%(diary-anniversary 5 14 1956)code{calendar-date-style}.} Arthur Dent is %d years old
- %%(diary-anniversary 10 2 1869) Mahatma Gandhi would be %d years old
- code{org-agenda-to-appt}. See the docstring for details.
- subsection The global TODO list
- The global TODO list contains all unfinished TODO items formatted and
- collected into a single place. Remote editing of TODO items lets you
- can change the state of a TODO entry with a single key press. The commands
- available in the TODO list are described in
- table
- item C-c a t
- Show the global TODO list. This collects the TODO items from all
- agenda files (
- item C-c a T
- Like the above, but allows selection of a specific TODO keyword.
- node Matching tags and properties, Timeline, Global TODO list, Built-in agenda views
- emph{tags} (
- pxref{Properties}), you can select headlines
- based on this metadata and collect them into an agenda buffer. The match
- syntax described here also applies when creating sparse trees with
- ref{Agenda
- commands}.
- kbd
- samp{+work+urgent-withboss} or
- pxref{Tags}). If you often need a specific search,
- define a custom command for it (
- item C-c a M
- Like
- end table
- samp{&} for AND and
- samp{&} binds more strongly than
- code{PROPERTY OPERATOR
- VALUE} with a comparison operator, accessing a property value. Each element
- may be preceded by samp{+} is syntactic
- sugar for positive selection. The AND operator
- samp{+} or
- table
- item +work-boss
- Select headlines tagged
- samp{:boss:}.
- samp{:work:} or
- item work|laptop+night
- Like before, but require the
- samp{:night:}.
- node Timeline, Search view, Matching tags and properties, Built-in agenda views
- emph{time-sorted view}. The main purpose of this command is
- to give an overview over events in a project.
- kbd
- kbd{C-u} prefix, all unfinished TODO entries
- (scheduled or not) are also listed under the current date.
- node Search view, , Timeline, Built-in agenda views
- table
- item C-c a s
- This is a special search that lets you select entries by matching a substring
- or specific words using a boolean logic.
- samp{computer equipment} will find entries
- that contain
- samp{+computer +wifi -ethernet -}}
- will search for note entries that contain the keywords
- code{wifi}, but not the keyword
- code{8\.11[bg]}, meaning to
- exclude both 8.11b and 8.11g.
- Note that in addition to the agenda files, this command will also search
- the files listed in
- node Agenda commands, Custom agenda views, Built-in agenda views, Agenda Views
- code{Agenda} menu and the manual for a complete list.
- kbd
- item n
- Next line (same as kbd{C-p}).
- key{down} and
- tsubheading{View/Go to Org file}
- itemx
- c
- key{TAB}
- Go to the original location of the item in another window. Under Emacs
- 22,
- c
- key{RET}
- Go to the original location of the item and delete other windows.
- tsubheading{Change display}
- c
- r{/} w
- Switch to day/week view.
- item f
- code{org-agenda-current-span} days. For example, if the display covers a
- week, switch to the following/previous week.
- item .
- Go to today.
- item j
- Prompt for a date and go there.
- item v l r{or short}
- code{org-log-done}) are shown in the agenda, as are
- entries that have been clocked on that day. When called with a
- c
- r{or} g
- Recreate the agenda buffer, to reflect the changes.
- tsubheading{Secondary filtering and query editing}
- samp{-} first to select against the tag.
- tsubheading{Remote editing (see the manual for many more commands)}
- c
- c
- c
- c
- a
- Archive the subtree corresponding to the entry at point using the default
- archiving command set in
- c
- $
- Archive the subtree corresponding to the current headline.
- item C-c C-s
- Schedule this item, with prefix arg remove the scheduling timestamp
- item C-c C-d
- Set a deadline for this item, with prefix arg remove the deadline.
- item S-r{and} S-
- c
- c
- item J
- Jump to the running clock in another window.
- node Custom agenda views, , Agenda commands, Agenda Views
- code{org-agenda-custom-commands}. You can customize this variable, for
- example by pressing
- file{.emacs}. The following example contains all valid
- search types:
- group
- (setq org-agenda-custom-commands
- '(("w" todo "WAITING")
- ("u" tags "+boss-urgent")
- ("v" tags-todo "+boss-urgent")))
- end smalllisp
- kbd{C-c a} in order to access the command. Usually this
- will be just a single character. The second parameter is the search type,
- followed by the string or regular expression to be used for the matching.
- The example above will therefore define:
- kbd
- samp{WAITING} as the TODO
- keyword
- samp{:boss:} but not
- item C-c a v
- as the same search as
- end table
- uref{http://orgmode.org/manual/Agenda-Views.html#Agenda-Views, Chapter 10 of
- the manual}
- uref{http://orgmode.org/worg/org-tutorials/org-custom-agenda-commands.php,
- Mat Lundin's tutorial about custom agenda commands}
- uref{http://www.newartisans.com/2007/08/using-org-mode-as-a-day-planner.html,
- John Wiegley's setup}}
- chapter Markup for rich export
- When exporting Org-mode documents, the exporter tries to reflect the
- structure of the document as accurately as possible in the backend. Since
- export targets like HTML,
- menu
- * Structural markup elements:: The basic structure as seen by the exporter
- * Images and tables:: Tables and Images will be included
- * Literal examples:: Source code examples with special formatting
- * Include files:: Include additional files into a document
- * Embedded LaTeX{} can be freely used inside Org documents
- node Structural markup elements, Images and tables, Markup, Markup
- menu
- * Document title:: Where the title is taken from
- * Headings and sections:: The document structure as seen by the exporter
- * Table of contents:: The if and where of the table of contents
- * Paragraphs:: Paragraphs
- * Emphasis and monospace:: Bold, italic, etc.
- * Comment lines:: What will *not* be exported
- node Document title, Headings and sections, Structural markup elements, Structural markup elements
- noindent
- The title of the exported document is taken from the special line
- end smallexample
- subheading Headings and sections
- The outline structure of the document as described in
- code{org-export-headline-levels}, or on a
- per-file basis with a line
- end smallexample
- subheading Table of contents
- The table of contents is normally inserted directly before the first headline
- of the file.
- end smallexample
- subheading Paragraphs, line breaks, and quoting
- Paragraphs are separated by at least one empty line. If you need to enforce
- a line break within a paragraph, use
- smallexample
- #+BEGIN_VERSE
- Great clouds overhead
- Tiny black birds rise and fall
- Snow covers Emacs
- -- AlexSchroeder
- #+END_VERSE
- smallexample
- #+BEGIN_QUOTE
- Everything should be made as simple as possible,
- but not any simpler -- Albert Einstein
- #+END_QUOTE
- smallexample
- #+BEGIN_CENTER
- Everything should be made as simple as possible, \\
- but not any simpler
- #+END_CENTER
- node Emphasis and monospace, Comment lines, Paragraphs, Structural markup elements
- b{*bold*}, code{=code=}
- and samp{+strike-through+}. Text
- in the code and verbatim string is not processed for Org-mode specific
- syntax, it is exported verbatim. To insert a horizontal rules, use a line
- consisting of only dashes, and at least 5 of them.
- subheading Comment lines
- Lines starting with zero or more whitespace characters followed by
- samp{COMMENT} will never be exported. Finally,
- regions surrounded by samp{#+END_COMMENT} will
- not be exported.
- kbd
- end table
- section Images and Tables
- For Org mode tables, the lines before the first horizontal separator line
- will become table header lines. You can use the following lines somewhere
- before the table to assign a caption and a label for cross references, and in
- the text you can refer to the object with {tab:basic-data
- smallexample
- #+CAPTION: This is the caption for the next table (or link)
- #+LABEL: tbl:basic-data
- | ... | ...|
- |-----|----|
- LaTeX{}, and DocBook) allow you to directly include
- images into the exported document. Org does this, if a link to an image
- files does not have a description part, for example
- smallexample
- #+CAPTION: This is the caption for the next figure link (or table)
- #+LABEL: fig:SED-HR4049
- [[./img/a.jpg]]
- node Literal examples, Include files, Images and tables, Markup
- smallexample
- #+BEGIN_EXAMPLE
- Some example from a text file.
- #+END_EXAMPLE
- smallexample
- Here is an example
- : Some example from a text file.
- smallexample
- #+BEGIN_SRC emacs-lisp
- (defun org-xor (a b)
- "Exclusive or."
- (if a (not b) b))
- #+END_SRC
- kbd{C-c '} to both enter and leave the editing buffer.
- LaTeX{}, Literal examples, Markup
- file{.emacs} file, you could use:
- end smallexample
- :
- samp{example}, or samp{src}, the
- language for formatting the contents. The markup is optional, if it is not
- given, the text will be assumed to be in Org mode format and will be
- processed normally.
- node Embedded
- section Embedded
- LaTeX{} code into
- its files. You can directly use TeX-like macros for special symbols, enter
- formulas and entire
- smallexample
- Angles are written as Greek letters \alpha, \beta and \gamma. The mass if
- the sun is M_sun = 1.989 x 10^30 kg. The radius of the sun is R_} =
- 6.96 x 10^8 m. If $a^2=b$ and $b=2$, then the solution must be either
- $a=+\sqrt}$ or $a=-\sqrt}$.
- \begin}
- x=\sqrt}
- \end}
- noindent With
- LaTeX{} snippets will be included as images when exporting to HTML.
- uref{http://orgmode.org/manual/Markup.html#Markup, Chapter 11 of the manual}}
- chapter Exporting
- Org-mode documents can be exported into a variety of other formats: ASCII
- export for inclusion into emails, HTML to publish on the web,
- menu
- * Export options:: Per-file export settings
- * The export dispatcher:: How to access exporter commands
- * ASCII/Latin-1/UTF-8 export:: Exporting to flat files with encoding
- * HTML export:: Exporting to HTML
- * LaTeX{}, and processing to PDF
- * DocBook export:: Exporting to DocBook
- * iCalendar export::
- node Export options, The export dispatcher, Exporting, Exporting
- kbd{C-c
- C-e t}.
- kbd
- end table
- code{user-full-name})
- #+DATE: a date, fixed, of a format string for
- code{user-mail-address})
- #+DESCRIPTION: the page description, e.g.
- : for the XHTML meta tag
- #+LANGUAGE: language for HTML, e.g.samp{en} (
- LaTeX{} header, like \usepackage}
- node The export dispatcher, ASCII/Latin-1/UTF-8 export, Export options, Exporting
- table
- item C-c C-e
- Dispatcher for export and publishing commands.
- node ASCII/Latin-1/UTF-8 export, HTML export, The export dispatcher, Exporting
- table
- item C-c C-e a
- Export as ASCII file.
- r{and} C-c C-e N
- Like the above commands, but use Latin-1 encoding.
- r{and} C-c C-e U
- Like the above commands, but use UTF-8 encoding.
- node HTML export,
- section HTML export
- kbd
- file{myfile.html}.
- end table
- To insert HTML that should be copied verbatim to
- the exported file use either
- end smallexample
- smallexample
- #+BEGIN_HTML
- All lines between these markers are exported literally
- #+END_HTML
- node
- section
- table
- item C-c C-e l
- Export as file{myfile.tex}.
- LaTeX{} and then process to PDF.
- LaTeX{} and then process to PDF, then open the resulting PDF file.
- LaTeX{} output uses the class
- code{#+LaTeX_CLASS: myclass} in your
- file. The class must be listed in
- LaTeX{} as described in LaTeX{}}, will be correctly
- inserted into the
- code{#+LaTeX:} and
- LaTeX{} code.
- LaTeX{} and PDF export, Exporting
- table
- item C-c C-e D
- Export as DocBook file.
- code{#+DOCBOOK:} and
- LaTeX{}
- code.
- section iCalendar export
- kbd
- file{.ics} file.
- code{org-agenda-files} and write it to the file given by
- end table
- uref{http://orgmode.org/manual/Exporting.html#Exporting, Chapter 12 of the manual}
- uref{http://orgmode.org/worg/org-tutorials/images-and-xhtml-export.php,
- Sebastian Rose's image handling tutorial}
- uref{http://orgmode.org/worg/org-tutorials/org-latex-export.php, Thomas
- Dye's LaTeX export tutorial}
- node Publishing, Working With Source Code, Exporting, Top
- emph{projects} composed of interlinked org
- files. You can also configure Org to automatically upload your exported HTML
- pages and related attachments, such as images and source code files, to a web
- server. For detailed instructions about setup, see the manual.
- Here is an example:
- end smalllisp
- kbd
- item C-c C-e P
- Publish the project containing the current file.
- item C-c C-e E
- Publish every project.
- seealso{
- *
- *
- node Working With Source Code, Miscellaneous, Publishing, Top
- subheading Structure of Code Blocks
- The structure of code blocks is as follows:
- end example
- Where
- code{<language>} specifies the language of the code block
- (e.g.code{emacs-lisp}, code{R},
- code{<switches>} can be used to control export of the code block,
- code{<body>} contains the actual source
- code.
- kbd{C-c '} to edit the current code block. This brings up a language
- major-mode edit buffer containing the body of the code block. Saving this
- buffer will write the new contents back to the Org buffer. Use
- subheading Evaluating code blocks
- Use
- code{emacs-lisp} code blocks, however support exists for evaluating blocks
- in many languages. For a complete list of supported languages see the
- manual. The following shows a code block and its results.
- end example
- kbd{C-c C-v t} to create pure source code files by extracting code from
- source blocks in the current buffer. This is referred to as ``tangling''---a
- term adopted from the literate programming community. During ``tangling'' of
- code blocks their bodies are expanded using
- code{:tangle} header argument, see the
- manual for details.
- kbd{C-c C-v l} to load the code blocks from an Org-mode files into the
- ``Library of Babel'', these blocks can then be evaluated from any Org-mode
- buffer. A collection of generally useful code blocks is distributed with
- Org-mode in
- subheading Header Arguments
- Many aspects of the evaluation and export of code blocks are controlled
- through header arguments. These can be specified globally, at the file
- level, at the outline subtree level, and at the individual code block level.
- The following describes some of the header arguments.
- code
- code{:var} header argument is used to pass arguments to code blocks.
- The values passed to arguments can be literal values, values from org-mode
- tables and literal example blocks, or the results of other named code blocks.
- code{:results} header argument controls the
- emph{type}, and
- code{output} or
- code{vector},
- code{file} code{html} code{code} specify the
- type of the results of the code block which dictates how they will be
- incorporated into the Org-mode buffer. Values of
- code{replace}, code{append} specify handling of code
- block results, specifically if and how the results should be inserted into
- the Org-mode buffer.
- code{:session} will cause the code block to be
- evaluated in a persistent interactive inferior process in Emacs. This allows
- for persisting state between code block evaluations, and for manual
- inspection of the results of evaluation.
- emph{code} or the
- code{:results} header
- argument to code{results} code{both}.
- code{:tangle yes} will cause a code block's contents to
- be tangled to a file named after the filename of the Org-mode buffer. An
- alternate file name can be specified with
- item :cache
- A header argument of
- item :noweb
- A header argument of
- item :file
- Code blocks which output results to files (e.g.
- code{:file filename} header argument in which case the results
- are saved to the named file, and a link to the file is inserted into the
- Org-mode buffer.
- seealso{
- *
- node Miscellaneous, GNU Free Documentation License, Working With Source Code, Top
- menu
- * Completion:: M-TAB knows what you need
- * Clean view:: Getting rid of leading stars in the outline
- * MobileOrg:: Org-mode on the iPhone
- node Completion, Clean view, Miscellaneous, Miscellaneous
- kbd{M-
- TeX{} symbols after
- samp{:} in a
- headline.
- section A cleaner outline view
- Some people find it noisy and distracting that the Org headlines start with a
- potentially large number of stars, and that text below the headlines is not
- indented. While this is no problem when writing a
- emph{list-oriented} outline, indented structure is a lot cleaner:
- group
- * Top level headline | * Top level headline
- ** Second level | * Second level
- *** 3rd level | * 3rd level
- some text | some text
- *** 3rd level | * 3rd level
- more text | more text
- * Another top level headline | * Another top level headline
- end smallexample
- code{org-indent-mode}, which will prepend intangible space to each line.
- You can turn on
- code{org-startup-indented}, or you can turn it on for individual
- files using
- end smallexample
- If you want a similar effect in earlier version of Emacs and/or Org, or if
- you want the indentation to be hard space characters so that the plain text
- file looks as similar as possible to the Emacs display, Org supports you by
- helping to indent (with
- smallexample
- #+STARTUP: hidestars odd
- node MobileOrg, , Clean view, Miscellaneous
- i{MobileOrg} is the name of the mobile companion app for Org mode, currently
- available for iOS and for Android.
- uref{http://mobileorg.ncogni.to/, iOS implementation} for the
- uref{http://wiki.github.com/matburt/mobileorg-android/, MobileOrg Android}
- by Matt Jones. The two implementations are not identical but offer similar
- features.
- uref{http://orgmode.org/manual/Miscellaneous.html#Miscellaneous, Chapter 15
- of the manual}
- uref{http://orgmode.org/manual/MobileOrg.html#MobileOrg, Appendix B of the
- manual}
- uref{http://orgmode.org/orgcard.pdf,Key reference card}}
- appendix GNU Free Documentation License
- bye
- c fill-column: 77
- c LocalWords: webdavhost pre
|