Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
file 1148 lines (869 sloc) 36.786 kb

Org-mode Teaser Demo

1 Org-mode by Examples

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

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)

1.2 Org-mode documentation

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-mode/doc/")

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

cd $ORGMODEDIRECTORY && sudo make install-info

1.3 text formatting syntax (docu)

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, …

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

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.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

1.8 blocks (docu)

  • encapsulating content with begin…end 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 preserved preserved not preserved recognized for quoting text
center not preserved preserved not preserved recognized

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 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

1.9 links (docu)

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

target:

# <<link>>

myotherlabel This is a footnote from reference above. 2 This is a footnote with a simple number as label.

  • many external link types see docu

Footnotes:

mylabelgreat content here

great content here

1.9.1 heading with PROPERTIES drawer containing ID

foo bar

Footnotes:

mylabelgreat content here

great content here

1.10 states; TODO items (docu)

  • C-c C-t rotate TODO state
  • C-c / t sparse tree with TODOs
  • C-c a t global TODO list in agenda
  • C-S-RET new TODO heading
  • per-file keywords #+TODO: TODO(t) FEEDBACK(f) | DONE(d!) CANCELED(c!@)
    • ! timestamp
    • @ add note

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

1.10.1.1 example with chain siblings

Footnotes:

mylabelgreat content here

great content here
1.10.1.1.1 NEXT buy bike

Footnotes:

mylabelgreat content here

great content here
1.10.1.1.2 take tour

Footnotes:

mylabelgreat content here

great content here
1.10.1.1.3 goto hospital

Footnotes:

mylabelgreat content here

great content here

1.10.1.2 example with triggers and blockers

Footnotes:

mylabelgreat content here

great content here
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.

Footnotes:

mylabelgreat content here

great content here
1.10.1.2.2 enjoy new clothes

Footnotes:

mylabelgreat content here

great content here
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.

Footnotes:

mylabelgreat content here

great content here

1.10.2 logging state changes (docu)

  • ! in todo state definition
  • org-log-into-drawer for setting default behavior

Footnotes:

mylabelgreat content here

great content here

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"       [2009-10-15 Thu]
   - State "DONE"       from "TODO"       [2009-10-12 Mon]
   - State "DONE"       from "TODO"       [2009-10-10 Sat]
   - State "DONE"       from "TODO"       [2009-10-04 Sun]
   - State "DONE"       from "TODO"       [2009-10-02 Fri]
   - State "DONE"       from "TODO"       [2009-09-29 Tue]
   - State "DONE"       from "TODO"       [2009-09-25 Fri]
   - State "DONE"       from "TODO"       [2009-09-19 Sat]
   - State "DONE"       from "TODO"       [2009-09-16 Wed]
   - State "DONE"       from "TODO"       [2009-09-12 Sat]
   :PROPERTIES:
   :STYLE:    habit
   :LAST_REPEAT: [2009-10-19 Mon 00:36]
   :END:

Footnotes:

mylabelgreat content here

great content here

1.10.4 priorities (docu)

  • ~C-c ,~ set priorities
  • S-UP/DOWN change priority
  • [A], [B], [C]
  • no priority is ordered like [B]

Footnotes:

mylabelgreat content here

great content here

1.10.4.1 TODO [#A] example

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

1.10.5.1 TODO example [1/3] [33%]

Footnotes:

mylabelgreat content here

great content here
1.10.5.1.1 DONE subtask 1

Footnotes:

mylabelgreat content here

great content here
1.10.5.1.2 TODO subtask 2

Footnotes:

mylabelgreat content here

great content here
1.10.5.1.3 TODO subtask 3

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

1.11.1 example

Footnotes:

mylabelgreat content here

great content here

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”

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

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
~#+TBLFM: $1 = -1 + 1
@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

Footnotes:

mylabelgreat content here

great content here

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:

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

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)

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

1.14.1 example sub-item

Footnotes:

mylabelgreat content here

great content here

1.14.2 NEXT [#B] another example

Footnotes:

mylabelgreat content here

great content here

1.15 capture, refile, archive (docu)

  • C-c c capture
  • C-c C-w refile
  • C-c C-x C-a archive
  • C-u 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" "Events")
	 "* %?\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:Ingo Pill][Ingo Pill]]\n- [[contact:Thomas Quartisch][Thomas Quartisch]]\n\n" :empty-lines 1)
	("b" "Besorgung" entry (file+headline "~/share/all/org-mode/hardware.org" "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-mode/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" "inbox")
	 "* 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-32c4af3a54e8") "| %T |")
      )
)

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

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.

Footnotes:

mylabelgreat content here

great content here

1.18 agenda (docu)

  • C-c [ add buffer to agenda
  • C-c ] remove buffer from agenda
  • C-c a show agenda command menu
  • C-c 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
  • 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

Footnotes:

mylabelgreat content here

great content here

1.19 clocking time (docu)

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

Footnotes:

mylabelgreat content here

great content here

1.19.1 example sub-hierarchy with report

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

Headline Time
Total time 27:16

Footnotes:

mylabelgreat content here

great content here

1.19.1.1 example item

Footnotes:

mylabelgreat content here

great content here

1.19.1.2 another item

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

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"

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

1.22.1 babel simple (doc)

Footnotes:

mylabelgreat content here

great content here

1.22.1.1 shell

pwd

Footnotes:

mylabelgreat content here

great content here

1.22.1.2 ruby

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

Footnotes:

mylabelgreat content here

great content here

1.22.1.3 python

return 42 + 7

Footnotes:

mylabelgreat content here

great content here

1.22.1.4 ditaa

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

Footnotes:

mylabelgreat content here

great content here

1.22.2 babel advanced

Footnotes:

mylabelgreat content here

great content here

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])

Footnotes:

mylabelgreat content here

great content here

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]')
[2010-01-05 Tue 07:11:05]
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]

Footnotes:

mylabelgreat content here

great content here

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 α β φ \LaTeX{} $\varphi$

Footnotes:

mylabelgreat content here

great content here

1.24 export formats (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)

Footnotes:

mylabelgreat content here

great content here

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

Footnotes:

mylabelgreat content here

great content here

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/all/org-mode/hardware.org" )))

Footnotes:

mylabelgreat content here

great content here

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 :-)

Footnotes:

mylabelgreat content here

great content here

1.27 customization per …

  • per configuration
  • per file
  • per heading

Footnotes:

mylabelgreat content here

great content here

2 Still Missing Topics

Things I did not include yet but are worth mentioning:

  • [ ] org-protocol

Footnotes:

mylabelgreat content here

Something went wrong with that request. Please try again.