Anda di halaman 1dari 24

ORG-MODE TEASER DEMO

Karl Voit

2013-10-06 Sun
Table of Contents

1 Org-mode by Examples
.. 1.1 activating Org-mode
.. 1.2 Org-mode documentation
..... 1.2.1 In case of Org-mode documentation does not work
.. 1.3 text formatting syntax [(docu)]
..... 1.3.1 COMMENT: no exported either
.. 1.4 outlining ([docu])
..... 1.4.1 Creating
..... 1.4.2 Using
..... 1.4.3 encryption
..... 1.4.4 time stamps when taking notes ([docu])
.. 1.5 sparse trees ([docu])
.. 1.6 lists [(docu)]
..... 1.6.1 examples
..... 1.6.2 Simple
..... 1.6.3 Checklists
..... 1.6.4 Headings with TODO items
..... 1.6.5 Taking notes during a meeting or similar ([docu])
.. 1.7 drawers, properties, columns ([docu])
..... 1.7.1 NEXT Test with category property
.. 1.8 blocks ([docu])
..... 1.8.1 examples for non-source-code blocks
.. 1.9 links [(docu)]
..... 1.9.1 heading with PROPERTIES drawer containing ID
.. 1.10 states; TODO items ([docu])
..... 1.10.1 making dependencies explicit
..... 1.10.2 logging state changes ([docu])
..... 1.10.3 habits ([docu])
..... 1.10.4 priorities ([docu])
..... 1.10.5 breaking down in subtasks ([docu])
.. 1.11 tags [(docu)]
..... 1.11.1 example
..... 1.11.2 Tag groups ([docu])
.. 1.12 tables simple [(docu)]
.. 1.13 tables complex ([docu], [tutorial])
..... 1.13.1 referencing example with detailed explanation
.. 1.14 column view ([docu])
..... 1.14.1 example sub-item
..... 1.14.2 NEXT another example
.. 1.15 capture, refile, archive ([docu])
.. 1.16 attachments ([docu])
.. 1.17 dates & time ([docu])
.. 1.18 agenda ([docu])
.. 1.19 clocking time ([docu])
..... 1.19.1 example sub-hierarchy with report
.. 1.20 dynamic blocks with ELISP ([docu])

.. 1.21 source code ([docu])


.. 1.22 babel ([docu])
..... 1.22.1 babel simple ([doc])
..... 1.22.2 babel advanced
.. 1.23 LaTeX ([docu])
.. 1.24 export formats ([docu])
..... 1.24.1 Export options ([docu])
.. 1.25 Mobile-org ([docu])
.. 1.26 many many many many more features!
.. 1.27 customization per
2 Still Missing Topics
1 Org-mode by Examples

This is a subset(!) of Org-mode basics to demonstrate the main


features (sometimes probably more) of this wonderful tool
Find the newest version of this document on
[https://github.com/novoid/org-mode-workshop]

*key* *description*

M
Meta (often: Alt)
C
Ctrl
S
Shift
TAB
Tabulator
RET
Return, Enter, CRLF
UP
arrow: up
DOWN arrow: down
LEFT arrow: left
RIGHT arrow: right
SPC
Space

1.1 activating Org-mode

[http://orgmode.org/org.html#Activation]
[http://orgmode.org/worg/org-configs/org-customization-guide.html]
[Activation of Org-mode (external Tutorial)]:

(require 'org-install)
(add-to-list 'auto-mode-alist '("\\.org$" . org-mode))
(define-key global-map "\C-cl" 'org-store-link)
(define-key global-map "\C-ca" 'org-agenda)
(setq org-log-done t)

Org-mode *minor mode* (structure editing and lists) `orgstruct-mode'


([docu])
[Activation of Org-mode (external Tutorial)]
http://orgmode.org/worg/org-tutorials/orgtutorial_dto.html#sec-1-2

[docu] http://orgmode.org/org.html#Orgstruct-mode
1.2 Org-mode documentation

[http://orgmode.org/org.html] is up to date
`C-h i' (while being in an Org-mode file) gives you a local version
:-)
1.2.1 In case of Org-mode documentation does not work

For using Org-mode from a local git repository: add following to your
configuration:

(add-to-list 'Info-additional-directory-list "~/.emacs.d/<YOURDIRECTORY>/org-m


ode/doc/")

OR: install Org-mode documentation to your system with:

cd $ORGMODEDIRECTORY && sudo make install-info

1.3 text formatting syntax [(docu)]

*bold*
/italic/
_underline_
+strike through+
`code'
`commands'
[http://orgmode.org]

small example

1.3.1 COMMENT: no exported either

foo bar
1.4 outlining ([docu])

headlines start with asterisks


levels
visibility
`TAB' *visibility cycling*
`S-TAB' change buffer visibility

`C-c C-r' *reveal context*


per-file visibility `#+STARTUP: overview' and so on: ([docu])
motion
`C-c C-n' *next heading*
`C-c C-p' *previous heading*
`C-c C-u' one level up
`C-c C-j' jump (goto)
`C-c C-f' forward same level
`C-c C-b' backward same level
`M-x org-goto' nifty inerface for searching within an Org-mode
buffer
create basic elements
`C-RET' *new heading* below
move elements
`M-UP/DOWN' *move up/down* with subitems
`M-LEFT' *promote*
`M-RIGHT' *demote*
`M-S-LEFT/RIGHT' promote/demote with subitems
`C-c C-c' *toggle/modify* things ([docu])
checkbox: activate/deactivate, heading: tags, tables:
re-calculate, jump footnote and back, update tables, update
TODO-count,

[docu] http://orgmode.org/org.html#Visibility-cycling
[docu] http://orgmode.org/org.html#The-very-busy-C_002dc-C_002dc-key
1.4.1 Creating

DEMO: create headings


1.4.2 Using

DEMO: visibility cycling


DEMO: move headings
This is a quite boring text just to show some body content.
1.4.2.1 This is the 1st heading
This is a quite boring text just to show some body content.
1.4.2.1.1 Sub-heading 1
This is a quite boring text just to show some body content.
1.4.2.2 This is another heading
This is a quite boring text just to show some body content.
1.4.2.2.1 Sub-heading 2

This is a quite boring text just to show some body content.


1.4.2.3 This is yet another heading
1.4.2.4 OK, now this is getting boring :-)
1.4.3 encryption

whole Org-mode files


selective headlines using :crypt:
`org-decrypt-entry'
1.4.4 time stamps when taking notes ([docu])

`C-c C-x .' start timer


`C-c C-x -' insert list item with time
`M-<RET>' insert heading with time
~C-c C-x ,~ toggle timer pause
~C-u C-c C-x ,~ stop timer

also handy:
`C-c C-x ;' set countdown
1.5 sparse trees ([docu])

Filtering
`C-c /' Filter in *sparse trees*
`C-c / r' Filter using *Regular Expressions*
Moving in results
`M-g n' goto next match
`M-g o' goto previous match
[docu: property search]
`C-c a L' time sorted view of buffer
[docu: property search] http://orgmode.org/org.html#Property-searches
1.6 lists [(docu)]

`M-RET' *new list item*


`M-S-RET' create checkbox
`M-LEFT/RIGHT/UP/DOWN' move item
`C-c -' cycle item type OR turn into list item

1.6.1 examples

simple list:
Emacs
Org-mode
Lists
enumerate:
1. Emacs
2. Org-mode
3. Lists
check lists:
1.6.2 Simple

DEMO: create simple lists and move items around


1.6.3 Checklists

`M-S-RET' new item with checkbox


`C-c C-*' checkboxes become TODOs
Clean out garage
1. get stuff out
be careful with that axe, Eugene
2. get rid of old stuff
using eBay?
try to use rubbish as birthday presents for family
3. repaint garage
4. put stuff back in
1.6.4 Headings with TODO items

1.6.4.1 TODO Clean out garage [0/4]


1.6.4.1.1 TODO get stuff out
be careful with that axe, Eugene
1.6.4.1.2 TODO get rid of old stuff
using eBay?
try to use rubbish as birthday presents for family
1.6.4.1.3 TODO repaint garage
1.6.4.1.4 TODO put stuff back in
1.6.5 Taking notes during a meeting or similar ([docu])

`C-c C-x .' (re)start a timer


`C-c C-x -' or `M-<RET>' insert description list item with the
current relative time
~C-c C-x ,~ pause/continue
~C-u C-c C-x ,~ stop timer
Bonus feature:
`C-c C-x ;' count down timer
1.7 drawers, properties, columns ([docu])

meta-data on headings
standard drawers :PROPERTIES: and :LOGBOOK:
ends with :END:
FIXXME
`C-c C-z' timed LOGBOOK entry
`:ID: label' define ID in PROPERTIES
hint: the property CATEGORY gets inherited and displayed on the
agenda:
1.7.1 NEXT Test with category property

:mytag:

1.8 blocks ([docu])

encapsulating content with beginend structure


`<s + TAB' easy templates ([docu])

Some example from a text file.

more of it in the Babel section later on


differences between non-source-code blocks ([docu]):

*type* *indendation* *blank lines* *line breaks* *Org syntax* *notes*

example preserved
preserved
preserved
ignored
like SRC
block without a language
verse
preserved
preserved
preserved
recognized
quote
ng text
center

preserved

preserved

not preserved recognized

not preserved preserved

not preserved recognized

for quoti

[docu] http://orgmode.org/org.html#Easy-Templates

[docu] http://orgmode.org/org.html#Literal-examples
1.8.1 examples for non-source-code blocks

This is a test.

Demonstration of long lines within a non-source-code block like this or that o


r something else which is quite good.

Space upfront

[[id:foobar]] *bold* /italic/

This is a test.
Demonstration of long lines within a non-source-code block like this or
that or something else which is quite good.
Space upfront
[id:foobar] *bold* /italic/
This is a test.
Demonstration of long lines within a non-source-code block
like this or that or something else which is quite good.
Space upfront
[id:foobar] *bold* /italic/
This is a test.
Demonstration of long lines within a non-source-code block like this
or that or something else which is quite good.
Space upfront
[id:foobar] *bold* /italic/
[id:foobar] See section
1.9 links [(docu)]

[[link]]
[[link][description]]

target:

# <<link>>

[id:myexampleid]
[file:~/.zshrc.local]
[http://orgmode.org]
[docu: list of external links]
custom links: contact:John Smith
[docu: link abbrevations]

`C-c
`C-c
`C-u
`C-c

l' store link (also in many other buffer types: [docu])


C-l' *inserting link* (or edit existing link)
C-c C-l' file link (shortcut)
C-o' open link

"radio targets" are auto-links created by target like `<<<target


name>>>'
all occurrences of "target name" will be links
`C-c C-x C-v' toggle show inline images
`C-c %' push position into ring
`C-c &' goto last saved position in ring
footnotes ([docu])
plain [1]
with own label [2]
reference [3] [4]
`C-c C-c' jump between footnote and reference
`C-c C-x f' footnote action command (see [docu])
[id:myexampleid] See section 1.9.1
[docu: list of external links]
http://orgmode.org/org.html#External-links
[docu: link abbrevations]
http://orgmode.org/org.html#Link-abbreviations
[docu] http://orgmode.org/org.html#Handling-links
[docu] http://orgmode.org/org.html#Footnotes
1.9.1 heading with PROPERTIES drawer containing ID

foo bar
1.10 states; TODO items ([docu])

`C-c C-t'
`C-c / t'
`C-c a t'
`C-S-RET'

*rotate TODO state*


sparse tree with TODOs
global TODO list in agenda
*new TODO heading*

per-file keywords `#+TODO: TODO(t) FEEDBACK(f) | DONE(d!)


CANCELED(c!@)'
`!' timestamp

`@' add note


1.10.1 making dependencies explicit

simple, ordered method with PROPERTIES drawer:

:ORDERED: t

`C-c C-x o' toggle ORDERED property


see only tasks that are *not* depending on other *open* tasks
see only things that can be done now
[http://orgmode.org/worg/org-contrib/org-depend.html]
to define workflows (see demo below)
task dependencies with org-depend ([docu])
`:BLOCKER: an-heading-id another-heading-id' define blocking task
`:TRIGGER: chain-siblings(NEXT)' define trigger for setting NEXT
`:TRIGGER: my-heading-id(NEXT)' define trigger for specific
heading to set to NEXT
[docu] http://orgmode.org/worg/org-contrib/org-depend.html
1.10.1.1 example with chain siblings
1.10.1.1.1 NEXT buy bike
1.10.1.1.2 take tour
1.10.1.1.3 goto hospital
1.10.1.2 example with triggers and blockers
1.10.1.2.1 NEXT go for shopping
After setting this task to DONE, enjoying new clothes get to state
NEXT and looking out for next errands to TODO.
1.10.1.2.2 enjoy new clothes
1.10.1.2.3 look out for next errands
I can not finish this task as long as I did not enjoy my new
clothes.
1.10.2 logging state changes ([docu])

`!' in todo state definition


`org-log-into-drawer' for setting default behavior

1.10.3 habits ([docu])

enable habits module by customizing the variable `org-modules'


TODO items with property STYLE is set to the value `habit':

:STYLE: habit

** TODO Shave

SCHEDULED: <2009-10-17 Sat .+2d/4d>

- State "DONE"
from "TODO"

- State "DONE"
from "TODO"

- State "DONE"
from "TODO"

- State "DONE"
from "TODO"

- State "DONE"
from "TODO"

- State "DONE"
from "TODO"

- State "DONE"
from "TODO"

- State "DONE"
from "TODO"

- State "DONE"
from "TODO"

- State "DONE"
from "TODO"

:PROPERTIES:

:STYLE:
habit

:LAST_REPEAT: [2009-10-19 Mon 00:36]

:END:

[2009-10-15
[2009-10-12
[2009-10-10
[2009-10-04
[2009-10-02
[2009-09-29
[2009-09-25
[2009-09-19
[2009-09-16
[2009-09-12

Thu]
Mon]
Sat]
Sun]
Fri]
Tue]
Fri]
Sat]
Wed]
Sat]

1.10.4 priorities ([docu])

~C-c ,~ set priorities


`S-UP/DOWN' *change priority*
[A], [B], [C]
no priority is ordered like [B]
1.10.4.1 TODO example
1.10.5 breaking down in subtasks ([docu])

for TODO-headings: stat cookies `[/]' or `[%]' (will be `[1/3]' or


`[33%]')
also possible:
for checkboxes
recursive
mark entry to DONE if all children are DONE
1.10.5.1 TODO example [1/3] [33%]
1.10.5.1.1 DONE subtask 1

1.10.5.1.2 TODO subtask 2


1.10.5.1.3 TODO subtask 3
1.11 tags [(docu)]

inherited tags
per-file definition of tags:

#+TAGS: { @work(w) @home(h) } online(o) kids(k)

per-file tags for all entries:

#+FILETAGS: :this:that:foo:

`C-c C-q' *set tags*


`C-c C-c' set tags if cursor is on a heading
`C-c / m' *search for tags* in sparse tree
`C-c a m' global list of tag matching
`C-c a M' same but check only TODO items
syntax ([docu])
`+boss+urgent' AND
`boss|urgent' OR
`+boss+urgent-project' combination of tags
~work+TODO="WAITING"|home+TODO="WAITING"~ Waiting tasks both at
work and at home
[docu] http://orgmode.org/org.html#Matching-tags-and-properties
1.11.1 example

:tag:

1.11.2 Tag groups ([docu])

searching for a group tag return matches of all member tags as well
example:

(setq org-tag-alist '((:startgroup . nil)

("@read" . nil)

(:grouptags . nil)

("@read_book" . nil)

("@read_ebook" . nil)

(:endgroup . nil)))

searching for "@read" also returns "@read_book" and "@read_ebook"

1.12 tables simple [(docu)]

`C-c C-c' *update table*


`TAB' *move next field*
`RET' next row
`M-LEFT/RIGHT/UP/DOWN' *moving rows/columns*
`C-c -' insert vertical bar below
`C-c |' convert region into table
`C-c ^' sort lines (in region)

DEMO: create table


1.13 tables complex ([docu], [tutorial])

`C-c |' move region into table (see [docu])


TABs, CSV,
`C-c +' sum current column (or marked rectangle)
`=$1+$2' value = sum of 1st and 2nd column
`:=vsum(@I..@II)' field = sum between 1st and 2nd hline
`C-u C-u C-c C-c' recompute table with iterations ([docu])
`#+TBLFM: $3 = $1 + $2' table formula
@2$1 = 1~ incremental numbers
`org-table-import' import data from CSV file
`org-table-export' export data to CSV file

*US-Dollar*
*EUR*
1 0.76481836

*When* *What*
*USD* *EUR*

2012-02-03 Taxi Graz-Airport


18.00
2012-02-03 Taxi Seattle Airport
25.00 19.12
2012-02-13 Taxi
7.00 5.35
2012-02-14 Taxi
8.00 6.12
2012-02-17 Taxi to Airport SeaTac 35.00 26.77
2012-02-22 Taxi Airport-Graz
16.00

91.36

`C-c C-c' update values


`C-c }' visualize rows/columns
~C-c '~ edit formula in separate buffer
`C-c C-r' switch between internal references (@3$2) and standard
references (B3)
`S-<up>/<down>/<left>/<right>' shift reference at point
[debugging formulas]
many, many, many more table features in the documentation!
[http://orgmode.org/worg/org-tutorials/index.html#sec-3-2]
[http://orgmode.org/worg/org-faq.html#Tables]

[incremental numbers], [what to do on #ERROR in columns],


[http://orgmode.org/worg/org-hacks.html#sec-1-4]
calculations using time, date, hex, GPS,
[docu] http://orgmode.org/org.html#Built_002din-table-editor
[docu] http://orgmode.org/org.html#Updating-the-table
[debugging formulas]
http://orgmode.org/worg/org-tutorials/org-spreadsheet-intro.html#sec-7
[incremental numbers]
http://orgmode.org/worg/org-faq.html#fill-table-column-with-incremental-number
s
[what to do on #ERROR in columns]
http://orgmode.org/worg/org-faq.html#table-column-filled-with-ERROR
1.13.1 referencing example with detailed explanation

Here is another example working with tables and referencing other


tables. I did this example twice: first in a column (vertical) based
layout and then the very same example in a row (horizontal) based
layout:
1.13.1.1 column-based

Income May 2012 Income June 2012

Joe
12
10
Alice
22
24
Bob
16
17

sum
50
51

June 2012 (from above) plus 20 percent June 2013 Difference

Joe
10
12.0
11
-1.0
Alice
24
28.8
31
2.2
Bob
17
20.4
21
0.6

sum
51
1.8

all formulas explained in detail:


`@>$5=vsum(@I..@II)'
value: `1.8'
last row (`@>') of column five (`$5') is the sum of column five
between first and second horizontal line (`@I..@II')
`@>$3=string("")'
no value (empty)
overwrite the last row (`@>') of column three (`$3') with an
empty string

otherwise it would get 1.2 times the value of corresponding


column of table Income2012v as well - I chose not to want this
sum in this column
`$1=remote(Income2012v, @@#$1)'
values: `Joe' until `sum'
copy content of the first column of table "Income2012v"
(`remote(Income2012v, @@#$1)') to the first column in this table
(`$1')
this is because I am too lazy to enter all names once again :-)
see also [Org-hacks] for field formulas
`$2=remote(Income2012v, @@#$3)'
values: `10; 24; 17; 51'
copy the content of the second column of table "Income2012v" to
the second column in this table
you could skip this column and calculate the values of the next
columns with direct references to `remote(Income2012v, @@#$3)'
as well. However, it is more easy to compare visually if the
values from 2012 are shown here as well (usability/readability)
note: by convention, only the values after the first horizontal
line are taken
`$3=1.2 * remote(Income2012v, @@#$3);%.1f'
values: `12.0; 28.8; 20.4; 61.2'
column three (`$3') is 120 percent of the values of the third
column of table "Income2012v" with one decimal place (`;%.1f')
note: 61.2 (1.2 times 51) is overwritten by formula `@>$3' from
above
`$5=$4-$3;%.1f'
values: `-1.0; 2.2; 0.6'
column five (`$5') is the difference between column four to
column three with one decimal place

[Org-hacks]
http://orgmode.org/worg/org-hacks.html#field-coordinates-in-formulas
1.13.1.2 row-based

Joe Alice Bob sum


Income May 2012
12
22 16 50
Income June 2012 10
24 17 51

Joe Alice Bob sum


2012 Income June
10
24
17
51
plus 20 percent 12.0 28.8 20.4 60.0
June 2013
11
31
21
Difference
-1.0
2.2 0.6 1.8

all formulas explained in detail:


`@>$>=vsum(@5$2..@5$4)'
value: `1.8'
last column in last row (`@>$>') is the vector-sum (`vsum') of
column two to four of fifth row (`@5$2..@5$4')
`@1$2..@1$4=remote(Income2012h, @1$$#)'
values: `Joe | Alice | Bob | sum'
column two to four of first row (`@1$2..@1$4') are copied from

the corresponding fields of the first row (`@1$$#') of table


"Income2012h"
see also [Org-hacks] for field formulas
`@2=remote(Income2012h, @3$$#)'
values: `2012 Income June | 10 | 24 | 17 | 51'
the second row (`@2') is copied from the corresponding fields of
the first row (`@1$$#') of table "Income2012h"
my guess: "2012" is moved to the beginning of the field most
probably because it is interpreted as numeric value and not as
string
`@3$2..@3$4=1.2 * remote(Income2012h, @3$$#);%.1f'
values: `12.0 | 28.8 | 20.4 | 60.0'
the columns two to four of the third row (`@3$2..@3$4') is 120
percent of the corresponding values of the third row (`@3$$#')
of the table "Income2012h" with one decimal place (`;%.1f')
`@5$2..@5$4=@4-@3;%.1f'
values: `-1.0 | 2.2 | 0.6'
the column two to four of the fifth row (`@5$2..@5$4') is the
difference of the values in the corresponding values of the
fourth row and the third row (`@4-@3') with one decimal place
(`;%.1f')
[Org-hacks]
http://orgmode.org/worg/org-hacks.html#field-coordinates-in-formulas
1.14 column view ([docu])

`C-c C-x C-c' activate column view


`e' edit value
`n/p' next/previous value
`q' quit column view
`a' edit allowed values
`C-c C-x p' set property

1.14.1 example sub-item

:mytag1:

1.14.2 NEXT another example

:mytag2:

1.15 capture, refile, archive ([docu])

`C-c
`C-c
`C-c
`C-u

c' *capture*
C-w' *refile*
C-x C-a' *archive*
C-u C-c c' *goto last capture*

`#+ARCHIVE: %s_done::' per-file archive


`C-c C-x a' toggle ARCHIVE tag
`C-u C-c C-x a' check direct children for archiving

;; ######################################################

;; templates for capturing C-c c


;; http://orgmode.org/org.html#Capture-templates
(setq org-capture-templates

'(

("s" "shorts-todo" entry (file+headline "~/share/all/org-mode/misc.org


" "shorts")

"* NEXT %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n" :empty-lines 1)

("e" "Event" entry (file+headline "~/share/all/org-mode/misc.org" "Eve


nts")

"* %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n" :empty-lines 1)

("i" "IST Templates")

("is" "IST shorts" entry (file+headline "~/share/all/org-mode/IST.org"


"shorts")

"* NEXT %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n" :empty-lines 1)

("ie" "IST event" entry (file+headline "~/share/all/org-mode/IST.org"


"Events")

"* %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n" :empty-lines 1)

("ii" "IST isst" entry (file+headline "~/share/all/org-mode/IST.org" "


Events")

"* %? IST isst: \n:PROPERTIES:\n:CREATED: %U\n:END:\n\n- [[contact:In


go Pill][Ingo Pill]]\n- [[contact:Thomas Quartisch][Thomas Quartisch]]\n\n" :emp
ty-lines 1)

("b" "Besorgung" entry (file+headline "~/share/all/org-mode/hardware.o


rg" "Besorgungen")

"* TODO %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n" :empty-lines 1)

("C" "Clipboard" entry (file+headline "~/share/all/org-mode/misc.org"


"shorts")

"* TODO %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n%x\n\n" :empty-lines 1


)

("c" "capture to inbox, refile later" entry (file "~/share/all/org-mod


e/inbox.org")

"\n* %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n" :empty-lines 1)

("m" "movie" entry (file+headline "~/share/all/org-mode/movies.org" "i


nbox")

"* TODO %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n" :empty-lines 1)

("x" "xlog")

("xh" "xlog hometrainer" table-line (id "xlog-hometrainer") "| %T | |


| |")

("xk" "Keyboard Akkus leer" table-line (id "3407c9b7-1b41-443b-9254-32


c4af3a54e8") "| %T |")

)
)

1.16 attachments ([docu])

`C-c C-a' *org-attach* (menu)


`i' *inherit*
`s' *set directory*
`a' attach: move file to task directory
`c/m/l' attach: copy/move/link file
much more
1.17 dates & time ([docu])

`C-c .' *insert active* <2012-04-23 Mon> (with `C-u': <2012-04-23

Mon 19:14>)
`C-c !' insert inactive [2012-04-23 Mon] (with `C-u': [2012-04-23
Mon 19:14])
`S-RIGHT/LEFT/UP/DOWN' interactively change timestamp
`C-c <' *insert today*
`C-c C-o' open agenda for current timestamp
`C-c C-d' *insert DEADLINE*
`C-c C-s' *insert SCHEDULED*
`C-u C-c C-d' removing DEADLINE
`C-u C-c C-s' removing SCHEDULED
`C-c / d' sparse tree with deadlines

`DEADLINE <YYYY-MM-DD DoW +2d>' defining repeated events/tasks


`.+2w' repetition interval starting with last DONE timestamp
`++3m' never show multiple times even if not DONE
`.+2d/4d' show up on agenda not earlier as 2 days until 4 days
`+1w -2d' repeat weekly but show not earlier as two days before

`C-c C-x c' clone (recurring) event with time-shift


(`org-clone-subtree-with-time-shift')
good idea: create recurring event and clone it with time-shift
this way, canceling single events or moving single events is
possible
`13:00-15:15' or `13:00+2:15' time duration
`<2013-11-15 Fri>-<2013-11-17 Sun>' date duration
`C-c C-y' return time range between dates
`UP/DOWN' on time stamp start/end -> toggle active/inactive
*Note:* please do not use time-stamps prior to [UNIX epoch] which is
1970-01-01. Some systems do handle those time-stamps fine, others
produce errors.
[UNIX epoch] https://en.wikipedia.org/wiki/Unix_time
1.18 agenda ([docu])

`C-c
`C-c
`C-c
`C-c

[' add buffer to agenda


]' remove buffer from agenda
a' show agenda command menu
a a' *invoke agenda view*

`C-c C-x <' *lock agenda* to subtree


`C-c C-x >' *release* agenda restriction *lock*
when being *in agenda* mode:
`q' *quit agenda*

`j' *jump to date*


`.' *goto today*
`f/b' *forward/back*
`v' *choose view menu*
`d/w' *day/week view*

`v d/w/m' view for day/week/month


`r' *refresh*

`RET' *goto item*


`SPC' show item
`<' *toggle filter to file*
`F' *toggle follow mode*
`o' *delete other window*
`/' filter by tag

`E' toggle entry text


`R' toggle clock report

`t' *change TODO state*


`:' or `T' *set tags*
`S-UP/DOWN' *set priority*
~,~ set priority
`S-LEFT/RIGHT' *change timestamp day*
`>' change timestamp to today
`e' set effort

`m' mark
`u' unmark
`B' bulk action
`S' *scatter marked TODOs* over the next N days
clocking
`I' start
`O' stop
`X' cancel
`J' jump to running clock entry
attachments to TODO entries
`C-c C-a' *attachment menu*
`C-c C-a s' *set attachment folder*
`C-c C-a i' inherit attachment folder
`C-c C-a o' *open attachment*
1.19 clocking time ([docu])

`C-c
`C-c
`C-c
`C-c
`C-c

C-x C-i' start clock on item


C-x C-o/x' stop or cancel clock on item
C-x C-d' display total subtree times
C-c' remove displayed times
C-x C-r' insert/update table with report

1.19.1 example sub-hierarchy with report

Clock summary at [2012-11-19 Mon 11:17]

Headline
Time

*Total time* *27:16*

1.19.1.1 example item


1.19.1.2 another item
1.20 dynamic blocks with ELISP ([docu])

execute ELISP functions in special blocks (see docu)


`C-c C-x C-u' update block
`C-u C-c C-x C-u' update buffer blocks
1.21 source code ([docu])

python "Hello World"


~C-c '~ *edit in native mode*
`<s + TAB' *easy templates* ([docu])

def foo(argument):

print "Hello World"

[docu] http://orgmode.org/org.html#Easy-Templates
1.22 babel ([docu])

[http://orgmode.org/org.html#Languages]
2012-04-23: 35(!) languages
`C-c C-c' *execute code*
`C-c C-v j' insert header argument (menu)
*many* shortcuts for all kind of things
debugging
output control
navigation
session handling
`C-c C-v b' execute babel in buffer
`C-c C-v s' execute babel in subtree
1.22.1 babel simple ([doc])

some examples are taken from [Worg: Introduction to Babel]


[Worg: Introduction to Babel]
http://orgmode.org/worg/org-contrib/babel/intro.html

1.22.1.1 shell

pwd

1.22.1.2 ruby

require 'date'
"This file was last evaluated on #{Date.today}"

1.22.1.3 python

return 42 + 7

1.22.1.4 ditaa

+---------+
| cBLU
|
|
|
|
+----+
|
|cPNK|
|
|
|
+----+----+

1.22.2 babel advanced

1.22.2.1 session with shell and R

cd ~/archive/events_memories && du -sc * |grep -v total

Using result set "directories" from above as "dirs" in R below:

pie(dirs[,1], labels = dirs[,2])

1.22.2.2 table using python function to calculate values

time = epoch
import datetime
strtime = str(time)
datetimestamp = datetime.datetime.utcfromtimestamp(int(strtime[:10]))
print datetimestamp.strftime('[%Y-%m-%d %a %H:%M:%S]')

*UNIX epoch* *time-stamp*

1262675465119 [2010-01-05 Tue 07:11:05]


1234567890 [2009-02-13 Fri 23:31:30]
1000000000 [2001-09-09 Sun 01:46:40]

1.23 LaTeX ([docu])

~C-c '~ *open block native buffer*


`C-c C-x C-l' preview LaTeX fragments
`C-c C-c' quit preview
`C-c C-x \' toggle preview TeX characters as UTF-8
Greek characters \LTeX{} $\vrphi$
`M-x org-cdltex-mode' CDLTeX minor mode
rom [http://st.science.uv.nl/~dominik/Tools/cdltex/]
similr to AucTeX
`C-c {' insert environment
`equ TAB' expnds eqution
``' insert mth symols (menu)
1.24 export ormts ([docu])

`C-c C-e' *export menu*


`C-c ;' toggle COMMENT keyword on entry
tag: "noexport"

ASCII/Latin-1/UTF-8 export
HTML
LaTeX
PDF
DocBook
OpenDocument Text
TaskJuggler
Freemind
XOXO
iCalendar

DEMO: export this as PDF (plain)


DEMO: export this as PDF (beamer)
1.24.1 Export options ([docu])

per file:
`C-c C-e t' (org-insert-export-options-template)
per heading:

see properties drawer above


EXPORT_OPTIONS: see [docu]
[docu] http://orgmode.org/manual/Export-options.html
1.25 Mobile-org ([docu])

great [iOS app]


no iOS on my side
"advanced-beta" of [Android app]
Dropbox, ssh, scp, WEBDAV, gpg encryption,

;;; http://orgmode.org/org.html#MobileOrg
;;; directory where to store MobileOrg-files
(setq org-mobile-directory "~/share/all/org-mode/mobile-org/")
(setq org-directory "~/share/all/org-mode")
(setq org-mobile-inbox-for-pull "~/share/all/org-mode/inbox.org")
(setq org-mobile-force-id-on-agenda-items nil)
'(org-mobile-files (quote ("~/share/all/org-mode/contacts.org" "~/data/share/a
ll/org-mode/hardware.org" )))

[iOS app] http://mobileorg.ncogni.to/


[Android app] http://wiki.github.com/matburt/mobileorg-android/
1.26 many many many many more features!

sections above are only a small fraction of the feature-set of


Org-mode!
read [the manual] or [the mailinglist] to get inspired :-)
[the manual] http://orgmode.org/org.html
[the mailinglist] http://news.gmane.org/gmane.emacs.orgmode
1.27 customization per

per configuration
per file
per heading
2 Still Missing Topics

Things I did not include yet but are worth mentioning:


org-protocol

Footnotes

[1] great content here


[2] great content here
[3] This is a footnote from reference above.
[4] This is a footnote with a simple number as label.
*many external link types* see [docu]
(http://orgmode.org/org.html#External-links)

Anda mungkin juga menyukai