* ox-taskjuggler.el (org-taskjuggler-get-start): Use memq
instead of member as we are searching for symbols. Also
search in valid-task-attributes instead of
valid-resource-attributes.
* contrib/lisp/org-contacts.el (org-contacts-property-values-separators):
Definition of a new constant that will be used as default value of
separators for `org-contacts-split-property'.
* contrib/lisp/org-contacts.el (org-contacts-vcard-format): We are now
using the default separator in general.
* contrib/lisp/org-contacts.el (org-contacts-show-map): Line break
corrected.
* contrib/lisp/org-contacts.el (org-contacts-split-property): Correct
the comment describing the function. Application of the newly
defined constant `org-contacts-property-values-separators'.
* contrib/lisp/org-contacts.el (org-contacts-split-property):
Introduce a custom version of split-string that keeps org links
intact.
* contrib/lisp/org-contacts.el (org-contacts-strip-link): Introduce a
new function that removes brackets, description, link type and colon
from an org link string returning the pure link target.
* contrib/lisp/org-contacts.el (provide 'org-contacts): Remove a
redundant line.
* contrib/lisp/org-contacts.el (org-contacts-complete-group,
org-contacts-complete-name, org-contacts-view-send-email,
org-contacts-get-icon, org-contacts-vcard-format): Apply the new
functions to the already existing functions extracting telephone
numbers and email addresses from the properties.
Allowed separators for email addresses and phone numbers are `,', `;'
and whitespace. `:' is not allowed anymore as separator to avoid
confusion with implicit links.
Examples of properties that are possible after those changes:
* Surname, Name
:PROPERTIES:
:EMAIL: mailto:test2@test.de; [[mailto:name@test.de]] foo@bar.biz
:PHONE: [[tel:+49 351 4129535]], +491766626196 [[+49 (351) 41295-35]]
:END:
Phone links of the form [[tel:+49 351 412 95-35][My phone number]] or
[[tel:+49 351 41295-35]] are expected. `-', `/', `(', `)' and
whitespace characters are allowed in telephone numbers.
* contrib/lisp/org-contacts.el (org-contacts-db): fix typo in the
word `matching'.
* contrib/lisp/org-contacts.el (org-contacts-complete-group): fix typo
in the word `found'.
TINYCHANGE
* ox-taskjuggler.el (org-taskjuggler-resolve-dependencies): When
resolving dependencies do not only look for matching task_id
properties but also for the standard ID property.
That way the user can make use of the standard org-id functionality to
create unique ids for a task and yanking the id in another task as a
BLOCKER.
* ox-taskjuggler.el (org-taskjuggler-default-reports)
(org-taskjuggler-project-plan): If the default reports contain
%title it will be replaced with the document title.
This is based on a suggestion by John Hendy.
* ox-taskjuggler.el (org-taskjuggler-get-start): Use both the
scheduled and the start property (if it is in
org-taskjuggler-valid-resource-attributes) to determine the
start of a task or the project.
Thanks to John Hendy for the report and thorough analysis.
* ox-taskjuggler.el (org-taskjuggler-process-command)
(org-taskjuggler-reports-directory): Add a defcustom to define
the tj3 command and the directory where the reports are to be
generated.
(org-taskjuggler-export-and-process)
(org-taskjuggler-export-process-and-open): Split the command
so that you can now process and open in separate commands.
(org-taskjuggler-compile): New function to process a tjp file
using org-taskjuggler-process-command.
Finally we have support for processing and opening the exported file
with tj3. For TaskJuggler 2.4 this always worked. Now it also works
for tj3. `org-taskjuggler-export-and-process' exports the file and
runs it through tj3. `org-taskjuggler-export-process-and-open'
additionally opens the reports in a browser.
* ox-koma-letter.el (org-koma-letter-template): Treat `#+LCO:'
variable as a list of multiple LCO files separated by spaces.
Example:
#+LCO: Default Signed
will result in the following LaTeX fragment
#+BEGIN_SRC latex
\LoadLetterOption{Default}
\LoadLetterOption{Signed}
#+END_SRC
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* ox-koma-letter.el ((org-koma-letter-use-subject):
Configure printing of subject line.
(org-koma-letter-use-backaddress): Configure presence of back
address.
(org-koma-letter-use-foldmarks): Configure presence of foldmarks.
(org-koma-letter-use-phone): Configure printing of phone number.
(org-koma-letter-use-email): Configure printing of email.
(org-koma-letter-use-place): Configure printing of place.
(koma-letter): Add export option to exporter backend.
(org-koma-letter-template): Evaluate export options in
exporter template.
Usage:
#+OPTIONS: backaddress:t foldmarks:t subject:titled phone:t email:t place:t
Except for `subject', all options are boolean, i.e., the accept the
values `nil' and `t'. `subject' accepts the values defined in
`scrlttr2`, i.e., `afteropening', `beforeopening', `centered', `left',
`right', `titled', `underlined', and `untitled'.
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* ox-koma-letter.el (org-koma-letter-closing): More
business-like closing.
(org-koma-letter-from-address): Do not set default personal
information.
(org-koma-letter-opening): Gendered opening.
(org-koma-letter-phone-number): Do not set default personal
information.
(org-koma-letter-sender): Use `#+SENDER:' instead of
`#+AUTHOR:' because the latter is always set by the LaTeX
exporter.
(org-koma-letter-email): Duplicte `#+EMAIL:' in this exporter
because it is always set by the LaTeX exporter.
(koma-letter): Add additional `#+SENDER:' and `#+EMAIL:' to
exporter (see above).
(org-koma-letter-template): Set LCO before evaluating other
KOMA variables if they are set; add `#+SENDER:' and `#+EMAIL:'
to template (see above).
The LCO file is set loaded first and KOMA variables are only set if
their value is not `nil'.
Example:
#+LCO: Default
#+SIGNATURE: A friend
will result in the following LaTeX code:
#+BEGIN_SRC latex
\LoadLetterOption{Default} % LCO file, with default signature
\setkomavar{signature}{A friend} % Overwrite signature
#+END_SRC
Other KOMA variables defined in the LCO file, e.g., `fromaddress', will
not be overwritten.
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* ox-koma-letter.el (koma-letter): Use `L' to export to LaTeX
buffer, `l' to export to LaTeX file, and `o' to export to PDF
file and open.
Patch suggested by Rasmus.
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* ox-taskjuggler.el (org-taskjuggler-default-reports): Set the default
reports so that the user gets a good out-of-the-box experience with
tj3.
The defaults in the defcustom now out-of-the-box support tj3. If you
really want to export to taskjuggler 2.x the documentation explains
how you can do that.
* ox-taskjuggler.el: Update the comment section to TaskJuggler
3.x.
(org-taskjuggler-target-version): Add a link to
`org-taskjuggler-default-reports' to make it clear that both
need to be changed in order to support TaskJuggler 2.4.
* contrib/lisp/org-contacts.el (org-contacts-alias-property): add new
varible
(org-contacts-matcher): add org-contacts-alias-property to this list
Name alias is a very useful feature, especially for CJK users.
* contrib/lisp/org-contacts.el (org-contacts-export-as-vcard): Don't use
non-existent function `org-install-letbind'.
Thanks to Simon Thum for reporting this.
* org-contacts.el (org-contacts-vcard-format): let the function
work with email-address list.
The org-contact file is :
* Name
:PROPERTIES:
:EMAIL: name1@test.org; name2@test.org, name3@test.orgname4@test.org
:END:
The export result is like:
BEGIN:VCARD
VERSION:3.0
N:Name;;;
FN:Name
EMAIL:name1@test.org
EMAIL:name2@test.org
EMAIL:name3@test.org
EMAIL:name4@test.org
END:VCARD
* contrib/lisp/org-git-link.el: Wrap into `eval-and-compile'
to silent warnings.
(org-git-show): Use `with-current-buffer' instead
of (save-excursion (set-buffer ...))
TINYCHANGE
* contrib/lisp/ox-deck.el (org-deck--build-meta-info): Use
`org-export-get-date'.
* contrib/lisp/ox-groff.el (org-groff--mt-head): Use
`org-export-get-date'.
* contrib/lisp/ox-koma-letter.el (org-koma-letter-template): Use
`org-export-get-date'.
* ox-rss.el (org-rss-headline): Convert the PUBDATE property
value to a RFC 822 time string.
(org-rss-add-pubdate-property): Set the PUBDATE property value
as an Org time-stamp, so that users can edit it easily.
* contrib/lisp/ox-s5.el (org-s5-template): Set org-html-divs based on
:html-container. If it's "li", use XOXO format ("ol").
(org-s5-divs): Changed to internal variable from option and renamed to
`org--s5--divs' -- Changing the element type or id of the
preamble (header) or postamble (footer) breaks the S5 stylesheets.
backend.
* lisp/ox-html.el (org-html--build-pre/postamble): Add css class to
wrapper div (defaults to `org-pre/postamble-class'). Move spec
building to separate function (`org-html-format-spec').
(org-html-format-spec): New function.
(org-pre/postamble-class): New variable.
* contrib/lisp/ox-deck.el: Replace :html-{pre,post}amble export
options with :deck versions.
(org-deck-postamble): Replaces `org-deck-postamble-template', uses
format-spec (and `org-html-format-spec') instead of custom template
option.
(org-deck-preamble): Replaces `org-deck-postamble-template', uses
format-spec (and `org-html-format-spec') instead of custom template
option.
(org-deck-title-slide-template): Use standard format specs.
(org-deck-template): Use org-html--build-pre/postamble instead of
`org-deck-fill-template'. Use fill-template for title slide (with
standard format specs) instead of custom `org-fill-template'
(org-deck-template-alist): Delete.
(org-deck-postamble-template): Delete.
(org-deck-preamble-template): Delete.
* contrib/lisp/ox-s5.el: Same overall set of changes as ox-deck.
(org-s5-divs): New option, similar usage to `org-html-divs'.
(org-s5-footer-template): Delete.
(org-s5-header-template): Delete.
specification.
* contrib/lisp/ox-deck.el:
- Rename header/footer options and methods to preamble/postamble to
be more consistent with underlining html exporter. Also remove
included wrapper section to allow for using the element specified in
`org-html-divs'.
- add `org-deck-preamble-postamble-styles' variable
- Rename `org-deck-title-page-styles' to `org-deck-styles'.
- Rename `org-deck-title-page-* to `org-deck-title-slide-*'
(org-deck-template):
- use :html-doctype instead of forcing html5.
- use xhtml valid meta charset tag
- Use elements specified in `org-html-divs'.
- Cleanup embeded css (move into a single style section)
* contrib/lisp/ox-s5.el:
- Use `org-html-div' container class for content
- Change header/footer templates to remove wrapper from
customization string.
(org-s5-toc): Use :html-container instead of hard-coded div.
(org-s5-template): use :html-doctype, :html-container and
`org-html-divs' container class.
* contrib/lisp/org-bullets.el (org-bullets-mode): Remove bad require.
Add comma in backticked list to evaluate org-outline-regexp-bol,
which replaced a regexp constant.
* lisp/ox.el (org-export-read-attribute): Do not use `read' to read
attributes. Instead, extract keywords and values from it, which
means each value will be a string when non-nil.
* contrib/lisp/ox-groff.el (org-groff-link--inline-image): Use new
attribute syntax. Small refactoring.
* lisp/ox-ascii.el (org-ascii-horizontal-rule): Use new attribute
syntax.
* lisp/ox-beamer.el (org-beamer-plain-list): Use new attribute syntax.
* lisp/ox-html.el (org-html--textarea-block): Use new attribute
syntax.
* lisp/ox-latex.el (org-latex--inline-image, org-latex--org-table,
org-latex--math-table): Use new attribute syntax.
* lisp/ox-man.el (org-man-table--org-table): Use new attribute syntax.
Small refactoring.
* lisp/ox-odt.el (org-odt-link--inline-image, org-odt-table-cell): Use
new attribute syntax.
* testing/lisp/test-ox.el: Add tests.
This patch introduces two changes. To begin with, it removes the need
for quoting and escaping characters. Also, all non-nil values are
stored as strings. As an exception "nil" is stored as nil.
* contrib/lisp/org-bullets.el (org-bullets)
(org-bullets-bullet-list, org-bullets-mode): Fix docstrings. Use
`org-outline-regexp-bol' instead of a hardcoded regexp.
* contrib/lisp/ox-taskjuggler.el (org-taskjuggler-target-version): The
default target is now tj3
Since taskjuggler is not developed anymore and hardly any
distributions carry it anymore we ought to target tj3 by default now.
* contrib/lisp/ox-taskjuggler.el (org-taskjuggler--build-task): Fix
the check whether a node has no children
A milestone should only (automatically) be inserted if a node has no
children and no duration defined.
* lisp/ox-latex.el (latex): Introduce new buffer keyword.
(org-latex-template): Use new keyword.
* lisp/ox-beamer.el (org-beamer-template): Use new keyword.
* lisp/org.el (org-create-formula--latex-header): Use new keyword.
* contrib/lisp/ox-koma-letter.el (org-koma-letter-template): Use new
keyword.
Previewing of LaTeX snippets takes account of LATEX_HEADER keywords.
LATEX_HEADER_EXTRA keyword allows to specify some header lines that
will not be used for building snippets.
* contrib/lisp/ox-deck.el: Remove unnecessary overrides and
rationalize name of in-buffer option for include-default-style.
* contrib/lisp/ox-s5.el: Same as above.
(org-s5--build-head): Renamed from org-s5--build-style for consistency
with ox-html.
From the comment section:
Mark and find your favorite things and locations in org easily: Create
and update a lookup table of your references and links. Often used
entries bubble to the top and entering some keywords displays only the
matching entries. That way the right entry one can be picked easily.
References are essentially small numbers (e.g. "R237" or "-455-"),
which are created by this package; they are well suited to be used
outside of org. Links are just normal org-mode links.
* org.el (org-modules): Do not include org-mew.el, org-vm.el,
org-w3m.el, org-wl.el as these files are now part of contrib/.
* org-w3m.el:
* org-vm.el:
* org-w3m.el:
* org-wl.el: Move to contrib/.
The purpose behind this change is to prepare a future split between
org-mode.git and org-contrib.git: org-mode.git will contain all files
that are directly relevant to GNU Emacs, while org-contrib.git will
contain files that are more peripheral and/or from authors who cannot
assign their copyright to the FSF.
This is *not* a way do downgrade those files, it is a way to prepare
org-contrib.org so that it gets more attention and more contributors,
thanks to the fact that there is no legal barrier to contribute to it.
* contrib/lisp/org-contacts.el: Add defvar for date. Similar to org.el.
(org-contacts-anniversaries): Setting date to nil breaks the
function. Bug was introduced in e4cebbe40.
Signed-off-by: Rüdiger Sonderfeld <ruediger@c-plusplus.de>
* contrib/lisp/ox-freemind.el: New file.
* lisp/ox-html.el (org-html--tags, org-html-format-headline)
(org-html--format-toc-headline, org-html-checkbox)
(org-html-table-cell, org-html-timestamp)
(org-html-verse-block, org-html-special-string-regexps):
Replace named HTML entities with their numeric counterparts.
This keeps Freemind backend happy.
* contrib/lisp/org-contacts.el (org-contacts-complete-name): Compute the
completion-list a bit earlier to prevent an error when there is no
completion available.
* contrib/lisp/org-contacts.el (org-contacts-enable-completion): A
custom boolean variable to enable the completion with
`org-contacts'. Enabled by default.
* contrib/lisp/org-contacts.el: Remove some compile-time warnings by adding the proper declarations.
(org-contacts-anniversaries): Hack around an undefined variable
because I wasn't able to understand how this function works.
(org-contacts-wl-get-from-header-content): Check whether the variable
`wl-summary-buffer-elmo-folder' is bound or not.
* contrib/lisp/org-contacts.el (org-contacts-db-need-update?): New
function to determine whether we need to refresh `org-contacts-db'.
(org-contacts-db): Use `org-contacts-db-need-updated?'.
* contrib/lisp/ox-deck.el: Default org-deck-directories to "./deck.js".
(org-deck-toc): Sync w/ ox-html name change (org-html--toc-text.)
(org-deck-inner-template): Remove duplicate toc generation code.
* contrib/lisp/ox-s5.el: Add inner template to fix duplicate content
div error.
(org-s5-toc): Sync w/ ox-html name change (org-html--toc-text) and
make toc entries static since s5 doesn't support deep linking.
* contrib/lisp/ox-deck.el: Change menu key to ?d to avoid conflict
with ox-s5.
(org-deck-toc): Use HTML_CONTAINER_CLASS instead of html-container-class.
(org-deck-headline): Simplify code to use HTML_CONTAINER_CLASS
directly, and use org-element-get-relative-level.
(org-deck-item): Use uppercase property.
* contrib/lisp/ox-s5.el (s5): Add configuration variables for S5 meta data.
(org-s5--build-meta-info): ditto.
(org-s5-headline): Simplify code to use HTML_CONTAINER_CLASS directly,
and use org-element-get-relative-level.
(org-s5-plain-list): Use uppercase property.
(org-s5-template-alist): Fix bug. (Don't try and substring nil.)
* lisp/ox-html.el (org-html-format-headline--wrap, org-html-headline):
Use :CUSTOM_ID, not :custom-id.
* contrib/lisp/ox-deck.el (org-deck-toc): Use :CUSTOM_ID,
not :custom-id.
* lisp/ox-latex.el (org-latex-property-drawer): Remove function.
* contrib/lisp/ox-groff.el (org-groff-property-drawer): Remove
function.
This changes ensures that:
paragraph
# comment
another paragraph
will be exported as:
paragraph
another paragraph
and not as:
paragraph
another paragraph
It only applies on back-end where empty lines are meaningful (e.g. not
html).
* contrib/lisp/ox-koma-letter.el (org-koma-letter-template): Allow to
span documentclass options accross multiple lines in template.
* lisp/ox-beamer.el (org-beamer-template): Allow to span documentclass
options accross multiple lines in template.
* lisp/ox-latex.el (org-latex-template): Allow to span documentclass
options accross multiple lines in template.
Thanks to Michael Strey for reporting this bug.
* contrib/lisp/org-contacts.el: Use `org-agenda-prefix-format' to
format entry instead of unused org-agenda-format.
Signed-off-by: Rüdiger Sonderfeld <ruediger@c-plusplus.de>
* contrib/lisp/org-contacts.el (org-contacts-message-complete-function):
Remove `completion-in-region--postch' from `post-command-hook'
because it doesn't (seem?) do anything really useful.
* org-contacts.el: Improve the completion part:
- When a group is found, it now replaces the name of the group by the
addresses of the member of the group rather than appending the
addresses.
- One can now complete on all part of an address and not only on the
beginning of the name.
* ox-koma-letter.el (org-koma-letter-template): rename
org-export-latex to org-latex for package lists.
These variable names were changed with the merge of the new exporter.
* lisp/org-macs.el (org-if-unprotected, org-if-unprotected-1,
org-if-unprotected-at): Removed macros.
(org-re-search-forward-unprotected): Removed function.
* lisp/org.el (org-format-latex): Remove reference to `org-protected'.
* lisp/org-list.el (org-list-struct): Remove reference to
`org-example' and `org-protected'.
* lisp/org-footnote.el (org-footnote-at-reference-p): Remove reference
to `org-protected'.
* lisp/org-capture.el (org-capture-fill-template): Remove reference to
`org-protected'.
* contrib/lisp/org-wikinodes.el (org-wikinodes-process-links-for-export):
Remove reference to `org-protected' value.
These text properties were used by the old export framework. They are
not needed anymore.
* contrib/lisp/org-mime.el (org-mime-htmlize, org-mime-compose): Use
new exporter.
* lisp/ob-haskell.el (org-babel-haskell-export-to-lhs): Use new
exporter.
* lisp/ob-latex.el (org-babel-execute:latex): Use new exporter.
* lisp/ob-org.el (org-babel-execute:org): Use new exporter.
* lisp/org-agenda.el (org-agenda-menu, org-agenda-write): Use new
iCalendar export back-end.
* lisp/org-table.el (org-table-export, orgtbl-export): Remove
dependency on `org-exp' library.
(org-table-clean-before-export): New function.
(org-table-colgroup-info): New variable.
(orgtbl-to-html): Use to new HTML export back-end.
* lisp/org.el (org-modules): Remove modules relative to obsolete
export framework and add those relative to the new one.
(org-create-formula-image-with-dvipng, org-format-latex
org-create-formula-image-with-imagemagick): Use new exporter.
(org-indent-line): INCLUDE keywords are indented like regular
keywords.
(org-mode-map): Bind C-c C-e to new export dispatcher.
(org-menu): Install new exporter in menu.
* contrib/lisp/org-e-latex.el (org-e-latex-date-timestamp-format): New
variable.
(org-e-latex-date-format): Removed variable.
(org-e-latex-template): Allow to provide a format string iff date
consists in a single timestamp.
* contrib/lisp/org-export.el (org-export-get-footnote-definition):
Provide a fallback definition when none can be found.
* contrib/lisp/org-e-latex.el (org-e-latex-footnote-reference): Revert
change made in 30ef385ee0 since it is
now handled at the export framework level.
* testing/lisp/test-org-export.el: Add test.
* contrib/lisp/org-export.el (org-export-filters-alist): Install a new
filter to modify export options.
(org-export-filter-options-functions): New variable.
(org-export-as): Call new filter.
* contrib/lisp/org-export.el (org-export--get-subtree-options): When
point is at an headline and subtree export is called, make sure
export properties are extracted from parent headline.
* testing/lisp/test-org-export.el: Add test.
* org-depend.el (org-depend-trigger-todo): Fix bug: use
`org-refresh-properties'. Also fix some compiler warnings.
Thanks to Karl Voit for reporting this.
* contrib/lisp/org-e-latex.el: Added an option, :texht, and a
defcustom, org-e-latex-with-hyperref, to hold its default value.
It is possible to configure the exporter to omit the hyperref package,
which defines the \hypersetup{} command.
* contrib/lisp/org-e-latex.el (org-e-latex--inline-image): Added an
attribute, :comment-include, to toggle commenting the \includegraphics
call.
Journals sometimes ask for a list of figure captions.