org-mode/contrib
Gustav Wikström 1bdff9f73d Org document property-drawers
Add functionality to define property-blocks on document level, in
addition to at headline level.

* doc/org-manual.org:
* etc/ORG-NEWS: Document new functionality.

* lisp/org.el (org-keyword-regexp): Define constant instead of
  hardcoding.
(org-file-properties): Renamed, see next line.
(org-keyword-properties): Renamed from above.  Due to the fact that
  properties can be defined for the whole document using property
  drawers this local variable needs a rename to make its name less
  ambigous.
(org-refresh-properties, org-refresh-property, org-entry-properties)
(org-refresh-category-properties, org-get-property-block)
(org-entry-get-with-inheritance, org-entry-put)
(org-insert-property-drawer, org-end-of-subtree): Made to work before
  first headline.
(org-at-property-block-p): New function to validate if point is at the
start of a property block.
(org-property-global-value): Renamed, see next line.
(org-property-global-or-keyword-value): Renamed from above to match
  its functionality better.
(org-back-to-heading-or-point-min): New function to make a document
  work as a level 0 node in the outline.
(org-at-keyword-p): Predicate function to answer to if we're currently
at a keyword line or not.
(org-up-heading-or-point-min): New function to make a document work as
a level 0 node in the outline.

* lisp/org-element.el (org-element--current-element): Can now detect
  property-blocks before first headline according to it's positional
  rules.

* lisp/org-attach.el (org-attach): Make it possible to call the
  attachment dispatcher also before the first headline, since document
  property drawers make attachments possible for the whole document
  now.

* lisp/org-capture.el: Modified only due to rename of function in
  org.el.

* lisp/org-compat.el (org-file-properties)
(org-property-global-value): Renamed functions declared obsolete.

* testing/lisp/test-org.el (org/insert-property-drawer)
(org/set-property, org/delete-property, org/delete-property-globally):
  Additions of tests to check if they work before first headline.
(org/at-property-p, org/at-property-block-p, org/get-property-block)
(org/entry-get, org/refresh-properties): New tests

* testing/examples/property-inheritance.org: Switch from
  property-keywords to a property-drawer in the testfile.
  Functionality should be the same, but now using a document drawer
  instead of property-keywords.

  Reason for switching is that I'd like us to slowly depricate
  property-keywords.

* testing/lisp/test-org-element.el:

* contrib/lisp/ox-taskjuggler.el: A comment is modified only due to
  rename of function in org.el.
2019-10-19 14:07:58 +02:00
..
lisp Org document property-drawers 2019-10-19 14:07:58 +02:00
scripts Use https for links to orgmode.org 2018-01-19 18:14:58 +01:00
README contrib: Remove Org Drill 2019-07-11 22:55:02 +02:00

README

This directory contains add-ons to Org-mode.

These contributions are not part of GNU Emacs or of the official
Org-mode package.  But the git repository for Org-mode is glad to
provide useful way to distribute and develop them as long as they
are distributed under a free software license.

Please put your contribution in one of these directories:

LISP (Emacs Lisp)
=================

Org utils
~~~~~~~~~
org-annotate-file.el     --- Annotate a file with org syntax
org-bibtex-extras.el     --- Extras for working with org-bibtex entries
org-bookmark.el          --- Links to bookmarks
org-checklist.el         --- org functions for checklist handling
org-choose.el            --- Use TODO keywords to mark decision states
org-collector.el         --- Collect properties into tables
org-colview-xemacs.el	 --- Column View in Org-mode, XEmacs-specific version
org-contacts.el          --- Contacts management
org-contribdir.el        --- Dummy file to mark the org contrib Lisp directory
org-depend.el            --- TODO dependencies for Org-mode
org-effectiveness.el     --- Measuring your personal effectiveness
org-element.el           --- Parser and applications for Org syntax
org-eldoc.el             --- Eldoc documentation for SRC blocks
org-elisp-symbol.el      --- Org links to emacs-lisp symbols
org-eval-light.el        --- Evaluate in-buffer code on demand
org-eval.el              --- The <lisp> tag, adapted from Muse
org-expiry.el            --- Expiry mechanism for Org entries
org-export-generic.el    --- Export framework for configurable backends
org-git-link.el          --- Provide org links to specific file version
org-interactive-query.el --- Interactive modification of tags query
org-invoice.el           --- Help manage client invoices in OrgMode
org-learn.el             --- SuperMemo's incremental learning algorithm
org-license.el		 --- Insert free licenses to your org documents
org-link-edit.el	 --- Slurp and barf with Org links
org-mac-iCal.el          --- Imports events from iCal.app to the Emacs diary
org-mac-link.el          --- Grab links and URLs from various Mac applications
org-mairix.el 	         --- Hook mairix search into Org for different MUAs
org-man.el 	         --- Support for links to manpages in Org-mode
org-mew.el		 --- Support for links to Mew messages
org-mime.el              --- org html export for text/html MIME emails
org-mtags.el 	         --- Support for some Muse-like tags in Org-mode
org-notify.el            --- Notifications for Org-mode
org-notmuch.el           --- Support for links to notmuch messages
org-panel.el 	         --- Simple routines for us with bad memory
org-registry.el          --- A registry for Org links
org-screen.el            --- Visit screen sessions through Org-mode links
org-screenshot.el        --- Take and manage screenshots in Org-mode files
org-secretary.el         --- Team management with org-mode
org-static-mathjax.el    --- Muse-like tags in Org-mode
org-sudoku.el            --- Create and solve SUDOKU puzzles in Org tables
org-toc.el 	         --- Table of contents for Org-mode buffer
org-track.el             --- Keep up with Org development
org-velocity.el          --- something like Notational Velocity for Org
org-vm.el		 --- Support for links to VM messages
org-w3m.el		 --- Support link/copy/paste from w3m to Org-mode
org-wikinodes.el         --- CamelCase wiki-like links for Org
org-wl.el		 --- Support for links to Wanderlust messages
orgtbl-sqlinsert.el      --- Convert Org-mode tables to SQL insertions

Org exporters
~~~~~~~~~~~~~
ox-confluence.el         --- Confluence Wiki exporter
ox-deck.el               --- deck.js presentations exporter
ox-groff.el              --- Groff exporter
ox-koma-letter.el        --- KOMA Scrlttr2 exporter
ox-rss.el		 --- RSS 2.0 exporter
ox-s5.el                 --- S5 presentations exporter
ox-taskjuggler.el        --- TaskJuggler exporter

Org Babel languages
~~~~~~~~~~~~~~~~~~~
ob-eukleides.el    	 --- Org-babel functions for eukleides evaluation
ob-fomus.el        	 --- Org-babel functions for fomus evaluation
ob-julia.el  	 	 --- Org-babel functions for julia evaluation
ob-mathomatic.el   	 --- Org-babel functions for mathomatic evaluation
ob-oz.el           	 --- Org-babel functions for Oz evaluation
ob-stata.el              --- Org-babel functions for Stata evaluation
ob-tcl.el 		 --- Org-babel functions for tcl evaluation

External libraries
~~~~~~~~~~~~~~~~~~
htmlize.el               --- Convert buffer text and decorations to HTML


SCRIPTS (shell, bash, etc.)
===========================
StartOzServer.oz     	 --- implements the Oz-side of the Org-babel Oz interface
dir2org.zsh              --- Org compatible fs structure output
ditaa.jar            	 --- ASCII to PNG converter by Stathis Sideris, GPL
org-docco.org        	 --- docco side-by-side annotated code export to HTML
org2hpda             	 --- Generate hipster pda style printouts from Org-mode
staticmathjax        	 --- XULRunner application to process MathJax statically
x11idle.c            	 --- get the idle time of your X session

This directory also contains supporting files for the following
packages: ob-oz.el, org-docco.org, and org-static-mathjax.el.