org-fm
supports taking and exporting minutes in org-mode
files. org-fm
assumes a very simple but effective minutes format consisting of plain lists, where list items can be typed and assigned to participants using the dictionary notation of org-mode
lists.
Emacs screenshot:
Example of PDF export via LaTeX:
Minutes taken with org-fm
consist of one arbitrarily deeply embedded list, where the topmost level is an enumeration (1)
, 2)
, …).
org-fm
items have the following structure
1) (I:? <TIMESTAMP>? <NAMES>? <SEPARATOR>)? <CONTENT>
- (<TYPE>? <TIMESTAMP>? <NAMES>? <SEPARATOR>)? <CONTENT>
which means:
<TYPE>
is the type of the item. There is a choice of item types built in:<TYPE> description A:
,[ ]
action/agenda D:
,E:
decision/Entscheidung I:
information C:
,B:
consultation/Beratung N:
note AC:
,[X]
cleared <TIMESTAMP>
is an (inactive)org-timestamp
.<NAMES>
is a comma-separated list of participant names.<SEPARATOR>
can be::
or||
.- When
<TYPE>
,<TIMESTAMP>
or<NAMES>
are given, there also has to be a<SEPARATOR>
. - When
<NAMES>
but not<TYPE>
is given, the implicit type will beI:
(information).
org-fm
also provides two types of inline elements:
inline element | description |
---|---|
enclosed by ?: and :? | question about minutes |
enclosed by #: and :# | private comment |
There is a number of special org-fm
keywords that are used during export:
keywords | description |
---|---|
#+MINUTES_TITLE: | title of the document; used as #+TITLE: |
#+MINUTES_EVENT: | name of the event |
#+MINUTES_PLACE: | place of the event |
#+MINUTES_DATE: | date of the event; used as #+DATE: |
#+MINUTES_AUTHOR: | name of minute taker; used as #+AUTHOR: |
#+MINUTES_CHAIR: | chair of the event |
#+MINUTES_DRAFT-TEXT: | text of the draft watermark |
#+MINUTES_PARTICIPANTS: | names of participants |
#+MINUTES_LANGUAGE: | language of minutes |
#+MINUTES_LATEX_STYLE: | name of \LaTeX style file |
#+MINUTES_OPTIONS: | used as #+OPTIONS: |
Participants can be included using the drawer :PARTICIPANTS-LIST:
which is assumed to contain exactly one list. The content of :PARTICIPANTS-LIST:
will overwrite #+MINUTES_PARTICIPANTS:
.
org-fm
lets you easily define abbreviations of participant names that are expanded during export.
Within :PARTICIPANTS-LIST:
, abbreviations (and optionally expansions) can be specified in square brackets:
- [X] Susan Parker [SP=Sue] - [ ] Kim Miller [KM]
When no expansion is given, either the part preceding a comma (,) or the last word in the preceding name will be used.
One can mask abbreviations (and suppress their expansion) by prefixing it with ##
, which will be removed during expansion.
See example.org.
The export is triggered with org-fm-export
.
org-fm-export
will first copy the content of the org-mode
heading at point into a temporary buffer, perform a couple of replacements and then call org-export-dispatch
.
Items may contain an inactive org-timestamp
, which is located after <TYPE>
and before <NAMES>
:
- N: [2020-06-08 Mo 12:18] :: This is a note.
Timestamps can be inserted or updated with org-fm-add-or-update-timestamp
.
Timestamps are not exported with org-fm-export
except for the note type (N:
).
- [X] add easy way to include the time
- [X] add automatic expansion of abbreviations
- instad use links? https://en.wikibooks.org/wiki/LaTeX/Hyperlinks#Hyperlink_and_Hypertarget
- Full name is given in the link label.
- instad use links? https://en.wikibooks.org/wiki/LaTeX/Hyperlinks#Hyperlink_and_Hypertarget
- [ ] activate faces only in headings with minutes?
- [ ] check in and ckeck out participants