* contrib/lisp/ob-vbnet.el: Add org-babel functions for VB.Net evaluation.
(org-babel-vbnet-command): Name of the VB command (mono)
(org-babel-vbnet-compiler): Name of the VB compiler (vbnc)
(org-babel-execute:vbnet): Execute VB.Net code
(org-babel-prep-session:vbnet): Throw error (sessions are not supported)
* contrib/lisp/ob-csharp.el: Add org-babel functions for C# evaluation.
(org-babel-csharp-command): Name of the C# command (mono)
(org-babel-csharp-compiler): Name of the C# compiler (mcs)
(org-babelexecute:csharp): Execute C# code.
(org-babel-prep-session:csharp): Throw error (sessions are not supported).
* lisp/org.el (org-find-if): Remove function.
(org-key):
* contrib/lisp/org-contacts.el (org-contacts-db-need-update-p):
(org-contacts-filter):
(org-contacts-test-completion-prefix):
(org-contacts-remove-ignored-property-values): Use `cl-find-if'
* lisp/org-compat.el (org-find-if): Mark function as an obsolete alias
for `cl-find-if'.
* contrib/lisp/org-mime.el (org-mime-replace-images): Change signature.
Always use temporary directory to create LaTeX images.
(org-mime-htmlize):
(org-mime-compose): Apply signature change above.
When exporting an org buffer with a LaTeX snippet including the Org
option "tex: dvipng" the images were always created in "/tmp/ltxpng/",
but the reported link in the htmlized buffer was the local "./ltxpng"
folder; so, unless the org file to htmlize was actually in "/tmp", the
user got an error saying that the image could not be found.
This was caused by the two different ways in which the function
`org-mime-replace-images' is used inside of
`org-mime-org-buffer-htmlize' and `org-mime-htmlize.'
To correct the problem, the function org-mime-replace-images doesn't
take anymore the current-file parameter (that was only used to get its
directory) and instead always creates a temporary directory using
temporary-file-directory.
* contrib/lisp/ox-rss.el (org-rss-headline): Put author's email
address in <author> element.
The RSS specification requires the email address and the name of the
author to be provided in the <author> element in the format
"email@domain.com (Name)". Currently, only the author's name is
provided. This is invalid RSS.
* contrib/lisp/ox-rss.el (org-rss-build-channel-info, org-rss-headline):
Encode disallowed characters in `title' to their XML entities.
The `title' field is user specified and may contain characters such as
"&", "<" or ">" that are disallowed in XML. These characters should be
encoded into their corresponding XML entities.
* lisp/org-element.el (org-element-example-block-parser): Use cons cell
for :number-lines specifying offset in addition to type (new/continue).
('continue . offset) for :number-lines will add this offset count to
the last line number. ('new . offset) for :number-lines will reset the
line number counting starting at offset
(org-element-src-block-parser): same for SRC block as EXAMPLE block
* lisp/ox-html.el (org-html-format-code):
* lisp/ox-latex.el (org-latex-src-block):
* lisp/ox-odt.el (org-odt-format-code):
* lisp/ox.el (org-export-resolve-coderef):
(org-export-get-loc):
(org-export-format-code-default):
* contrib/lisp/ox-groff.el (org-groff-src-block): Use new cons cell
for :number-lines.
* testing/lisp/test-ox.el (ert-deftest test-org-export/get-loc): Tests for
changes
(test-org-gen-loc-list): Helper function for `test-org-export/get-loc'.
* contrib/lisp/ox-rss.el (org-rss-headline): Transcode lower level
headlines (headlines with level > 1) using the html backend. Do not
drop them.
Previously, lower level headlines were dropped and did not appear in the
exported RSS output.
* lisp/org.el (org-show-context-detail): Change default visibility span
for agenda context.
* lisp/org-agenda.el (org-agenda-goto):
(org-agenda-todo):
(org-agenda-add-note):
(org-agenda-priority):
(org-agenda-set-tags):
(org-agenda-set-property):
(org-agenda-set-effort):
(org-agenda-toggle-archive-tag):
(org-agenda-clock-in): Special visibility is taken care of by
`org-show-context'. Do not hard-code anything else.
* contrib/lisp/org-contacts.el (org-contacts-gnus-article-from-goto):
Special visibility is taken care of by `org-show-context'. Do not
hard-code anything else.
* contrib/lisp/ox-koma-letter.el (koma-letter): Duplicated code
used for 'place' variable, renamed as 'location'
Whenever OPTION keyword contains a 'location' item or LOCATION
keyword is used in the buffer, set KOMA option 'location' after
LCO inclusion.
* ox-koma-letter.el (koma-letter backend): Add :inbuffer-from.
(org-koma-letter--get-tagged-contents): Check that value is not empty.
(org-koma-letter-template): Remove from address block from
template and find to address directly.
(org-koma-letter--build-settings): Determine from address.
(org-koma-letter--special-contents-inline): Remove function.
* ox-koma-letter.el
(org-koma-letter-special-tags-after-closing): Add after_closing.
(org-koma-letter-special-tags-as-macro): New defvar.
(koma-letter backend): Revamp special tags options.
(org-koma-letter--get-value): Rewrite function.
(org-koma-letter--keyword-or-headline): Get special tags dynamically
(org-koma-letter-template): Use new specifications.
* contrib/lisp/ox-confluence.el: (org-confluence-paragraph): New function.
(confluence): Use new function.
ox-confluence was generating filled paragraphs. Since Confluence treats
each newline as a line break, this caused unexpected formatting. Added
a paragraph function to generate unfilled paragraphs (taken from
ox-md.el).
* contrib/lisp/ox-rss.el (org-rss-build-channel-info): Try to use the
specified RSS_FEED_URL option keyword as publink before resorting to
concatenating blogurl with output filename.
The RSS_FEED_URL goes into the atom:link element that identifies the
feed's own URL. Currently, the feed URL is assumed to be html-link-home
or publishing-directory concatenated with the output filename of the
feed. This need not always be so. So, the RSS_FEED_URL option keyword
is introduced to let the user customize the feed URL.
* lisp/ob-core.el (org-babel-get-src-block-info): Rewrite function.
Change signature.
(org-babel-parse-src-block-match):
(org-babel-parse-inline-src-block-match): Remove functions.
(org-babel-execute-src-block): Remove useless function call.
* lisp/ob-exp.el (org-babel-exp-process-buffer): Make use of signature
change.
(org-babel-exp-results): Use new return value from
`org-babel-get-src-block-info'. Tiny refactoring.
* testing/lisp/test-ob.el (test-ob/nested-code-block): Fix test.
* contrib/lisp/org-eldoc.el (org-eldoc-get-src-lang): Use parser instead
of removed function.
* testing/examples/babel.org: Fix test environment.
* contrib/lisp/ox-bibtex.el (org-bibtex-process-bib-files): Fix
insertion location of bibliography in HTML export.
Reported-by: gongzhitaao <zhitaao.gong@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/104117>
* lisp/org.el (org-make-tags-matcher): Return a function instead of
a sexp. Refactor code.
(org--matcher-tags-todo-only): New variable. Replace `todo-only'
dynamic binding.
(org-scan-tags): Apply changes to `org-make-tags-matcher'.
(org-match-sparse-tree):
(org-map-entries): Use new variable.
* lisp/org-crypt.el (org-encrypt-entries):
(org-decrypt-entries): Use new variable.
* lisp/org-clock.el (org-clock-get-table-data): Apply changes to
`org-make-tags-matcher'.
* lisp/org-agenda.el (org-tags-view): Use new variable.
* lisp/org-element.el (org-element-export-block-parser):
(org-element--current-element): Use new syntax for export blocks.
(org-element-block-name-alist): Remove.
* lisp/ox.el (org-export-register-backend):
(org-export-define-derived-backend): Remove :export-block keyword from
back-end's definition.
(org-export-expand-include-keyword): Use new syntax for include
keywords.
* lisp/ox-ascii.el (ascii):
* lisp/ox-beamer.el (beamer):
* lisp/ox-html.el (html):
* lisp/ox-latex.el (latex):
(org-latex-prefer-user-labels):
* lisp/ox-man.el (man):
* lisp/ox-md.el (md):
* lisp/ox-odt.el (odt):
* lisp/ox-texinfo.el (texinfo): Propagate changes to "ox.el".
* lisp/ob-core.el (org-babel-insert-result):
* lisp/ob-haskell.el (org-babel-haskell-export-to-lhs): Use new syntax.
* lisp/org.el (org-structure-template-alist): Use new syntax.
(org-protecting-blocks): Add "export" to protected blocks. Remove
back-ends blocks, which are now special blocks.
(org-fontify-meta-lines-and-blocks-1): Fontify correctly new blocks.
* lisp/org-footnote.el (org-footnote-forbidden-blocks):
* lisp/org-list.el (org-list-forbidden-blocks): Add "export" to
forbidden blocks. Remove back-ends blocks, which are now special
blocks.
* contrib/lisp/ox-extra.el: Update comments.
* testing/lisp/test-org-element.el (test-org-element/export-block-parser):
(test-org-element/export-block-interpreter):
* testing/lisp/test-ob.el (test-ob/org-babel-remove-result--results-html):
(test-ob/org-babel-remove-result--results-latex):
* testing/lisp/test-ox.el (test-org-export/expand-include): Update tests.
Export blocks are explicitly marked as such at the syntax level to
disambiguate their parsing from special blocks. The new syntax is
#+BEGIN_EXPORT backend
...
#+END_EXPORT
instead of
#+BEGIN_backend
...
#+END_backend
As a consequence, =INCLUDE= keywords syntax is modified, e.g.,
#+INCLUDE: "file.org" HTML
becomes
#+INCLUDE: "file.org" export html
(org-mac-grab-Evernote-app-p, org-mac-evernote-path): New custom
variables to control Evernote grabbing
(org-mac-evernote-note-open): New function to open an Evernote note by
ID
(org-as-get-selected-evernote-notes,
org-mac-evernote-note-insert-selected): New functions to get the
selected Evernote note(s) and insert them into current buffer
Note this change also defines a new link type ("mac-evernote") via a
call to “org-add-link-type”.
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* org-mac-link.el (org-mac-outlook-path): New Custom String to hold the file system path to Microsoft Outlook
(org-mac-outlook-message-open, org-as-get-selected-outlook-mail): Use
the new custom string instead of hard-coding the path to Outlook
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* ox-latex.el (org-latex--make-preamble): Renamed
org-latex--make-header.
(org-latex--insert-compiler): New function.
(org-latex-template):
* ox-koma-letter.el: Use new function.
* contrib/lisp/ox-koma-letter.el (koma-letter):
(org-koma-letter--build-settings): Allow to disable place locally.
Whenever OPTION keyword contains a "place" item or PLACE keyword is used
in the buffer, set KOMA option place after LCO inclusion.
Reported-by: Alan Schmitt <alan.schmitt@polytechnique.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/101010>
Add new link type "acrobat" to grab links to documents open in Adobe
Acrobat application.
* contrib/lisp/org-mac-link.el (org-mac-acrobat-open): Open Adobe
Acrobat document pointed to by a link.
* contrib/lisp/org-mac-link.el (org-mac-as-get-acrobat-page-link):
Invoke applescript to generate a link to an open and active Adobe
Acrobat document.
* contrib/lisp/org-mac-link.el (org-mac-acrobat-get-page,
org-mac-acrobat-insert-page): methods used when an Adobe Acrobat link
grab request is issued or a link is clicked in an org document.
* contrib/lisp/org-mac-link.el (org-mac-grab-Acrobat-app-p): predicate
that enables grabbing Adobe Acrobat links.
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* contrib/lisp/org-mac-link.el (org-mac-firefox-get-frontmost-url)
(org-mac-vimperator-get-frontmost-url)
(org-mac-chrome-get-frontmost-url)
(org-mac-skim-get-page)
(org-mac-outlook-message-get-links)
(org-mac-devonthink-get-links): Replace the handling of AppleScript
results code with `org-mac-paste-applescript-links'.
This fixes some bugs where links would have a dangling quote at the end.
* ox-koma-letter.el (org-koma-letter--keyword-or-headline):
New function.
(org-koma-letter-template): Use new function.
(org-koma-letter-opening, org-koma-letter-closing)
(org-koma-letter-signature)
(org-koma-letter-headline-is-opening-maybe): Update docstring.
If both org-koma-letter-headline-is-opening-maybe and
org-koma-letter-prefer-special-headings is non-nil, always prefer
special headline title for opening and closing.
* contrib/lisp/org-notify.el (org-notify-make-todo): Properties from
org-element are all uppercase now.
* (org-notify-maybe-too-late): Fix typo in docstring (thanks to davemq,
https://github.com/p-m/org-notify/issues/3).
* ox-latex.el (org-latex--make-header): New function.
(org-latex-template): Use new function.
* ox-koma-letter.el (org-koma-letter-template): Use new function.
* ox-koma-letter.el (org-koma-letter-special-tags-in-letter):
Add closing.
(org-koma-letter-template): Potentially take closing value
from closing spcical heading.
(org-koma-letter--build-settings): Potentially take signature
value from closing special heading.
(org-koma-letter-closing):
(org-koma-letter-signature): Update docstring.
Suggested-by: Suvayu Ali <fatkasuvayu+linux@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/99028>
* contrib/lisp/org-eww.el (org-eww-copy-for-org-mode): Lines starting
with '*' get quoted at special kill.
This allows yanking content containing lines starting with a '*' without
changing the outline structure.
* org-contacts.el (org-contacts-db): Catch `nextfile'.
When a file in the list returned by the `org-contacts-files' function
doesn't exist and the user selects the option to attempt to remove it
from the `org-agenda-files' list, 'nextfile is thrown. Catch it and
skip processing that file instead of failing.
TINYCHANGE
* contrib/lisp/ox-koma-letter.el (org-koma-letter-template): Insert
"\begin{document}" even if :with-title and :with-subject are both
nil.
Reported-by: Dieter Faulbaum <mail@faulbaum.in-berlin.de>
* org-mac-link.el (org-mac-outlook-message-open, org-as-get-selected-outlook-mail): Specify Microsoft Outlook.app non-ambiguously
If the user has:
- a virtual solution (Parallels, etc.)
- with Office for PC installed
- and configured to expose WinTel applications to the Macintosh Finder
The AppleScript commands may try to select the WinTel version of
"Microsoft Outlook". This—obviously—doesn’t work. By adding the Mac
~.app~ file extension and path, we reduce this confusion and more
reliably call the Macintosh version of Outlook.
TINYCHANGE
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* org-notmuch.el (org-notmuch-search-open): Bug fix
When opening a notmuch-search link, we use =message= to display the
path at the bottom of the screen. This would signal "Not enough
arguments for format string" when the path contained %-signs, as it is
likely to when the query contains spaces:
[[notmuch-search:tag:inbox%2520not%2520tag:bulk%2520org]]
That query appears to be double-escaped, which also might contribute
to the problem, but either way: we should use =(message "%s" str)= to
print arbitrary strings, not =(message str)=.
* contrib/lisp/ox-koma-letter.el (koma-letter): Set "SUBJECT" as
parsed.
(org-koma-letter-template): Apply.
* lisp/ox-latex.el (latex): Set "DESCRIPTION" and "KEYWORDS" as
parsed.
(org-latex--format-spec): Apply.
* contrib/lisp/org-mime.el (org-mime-send-subtree, org-mime-compose):
`cl-letf' doesn't exist in Emacs <= 23, but `letf' won't exist in
future Emacs. Replace with `lambda' and `funcall'.
* ox.el: Remove #+KEYWORD: and #+DESCRIPTION:.
* ox-deck.el, ox-rss.el, ox-html, ox-latex, ox-odt, ox-org: Add
#+KEYWORD and #+DESCRIPTION.
* org.texi (Export settings): Explicit state which backends
support #+DESCRIPTION and #+KEYWORDS.
* lisp/ox-ascii.el (ascii):
* lisp/ox-latex.el (latex):
* lisp/ox-man.el (man):
* lisp/ox-md.el (md):
* lisp/ox-org.el (org):
* lisp/ox-texinfo.el (texinfo):
* contrib/lisp/ox-groff.el (groff): Remove `comment' and
`comment-block' translators.
`comment' and `comment-block' translators are not needed since both
commented lines and comment blocks do not appear anymore in the parse
tree. See 69dd4301ab.
* ox-koma-letter.el (org-koma-letter--special-tag): New function.
(org-koma-letter-headline): Use org-koma-letter--special-tag
and do not guess opening.
(org-koma-letter-template): Directly infer subject from first
non-special headline.
* ox.el (org-export-with-title): New variable.
* ox (org-export-options-alist),
ox-ascii.el (org-ascii-template--document-title),
ox-beamer.el (org-beamer-template), ox-html.el (org-html-template),
ox-latex.el (org-latex-template), ox-man.el (org-man-template),
ox-odt.el (org-odt-template), ox-org.el (org-org-template),
ox-publish.el (org-publish-project-alist),
ox-texinfo.el (org-texinfo-template),
ox-groff.el (org-groff--mt-head): Use new variable.
* ox-koma-letter.el (org-koma-letter-use-title): Mark obsolete.
* test-ox.el (test-org-export/parse-option-keyword): Add :with-title.
* ORG-NEWS, org.texi: Mention org-export-with-title.
This is useful in e.g. ox-html where title can be set via
`org-html-preamble-template' or when using the {{{title}}}-macro.
* org-mime.el (org-mime-change-element-style): Correctly capture the
HTML element instead of partially.
Passing element of "p" would end up matching and altering "pre"
elements as well. Need to properly anchor the regex to HTML elements.
TINYCHANGE
* contrib/lisp/org-eww.el (org-eww-store-link): Depending on the Emacs
version use the appropriate interface to store the url of an
eww-mode buffer.
This patch fixes the org-store-link feature for eww-mode buffers for
Emacs 25.
* lisp/org-colview.el (org-columns-display-here): Use regular "ITEM"
value instead of computing another one. Simplify process.
(org-columns-cleanup-item): Remove function.
* contrib/lisp/org-colview-xemacs.el (org-columns-display-here): Use
regular "ITEM" value instead of computing another one. Simplify
process. (org-columns-cleanup-item): Remove function.
* etc/ORG-NEWS: Document change.
Eldoc wil show:
- a 'breadcrumb' of headers when on headerline
- properties of SRC block when on BEGIN/END_SRC line
- inside body of SRC block it will try to use that mode's eldoc function
* contrib/lisp/ox-taskjuggler.el (org-taskjuggler-format-dependencies):
Pass string that was used in string-match to
org-match-string-no-properties. This fixes a problem with dependency
options.
* contrib/lisp/org-mac-link.el (org-as-mac-safari-get-frontmost-url):
Run only the AppleScript.
(org-mac-safari-get-frontmost-url): reuse
`org-mac-paste-applescript-links' to properly deal with quotes.
* contrib/lisp/org-passwords.el (org-passwords-default-password-size):
New variable.
(org-passwords-default-random-words-number): New variable.
(org-passwords-copy-username, org-passwords-copy-password): Use
`org-entry-get' to obtain the property value.
(org-passwords-open-url): New function.
(org-passwords): Can be called with universal argument.
(org-passwords-generate-password): Use default size given by
`org-passwords-default-password-size'.
(org-passwords-random-words): Use default number given by
`org-passwords-default-random-words-number'.
(org-passwords-concat-this-with-string): Fix bug.
The patch adds several functionality:
Open the URL property directly from the mode. URLs can be inherit.
Universal argument in org-passwords allows for longer browsing. Two
arguments is used for editing.
There is a default password size and random-words number for faster
password generating.
Fix bug in C-u M-x org-passwords-generate-password.
Commentary in file has more information.
* org-passwords.el (org-passwords-generate-password-with-symbols): Do not insert password,
this matches how `org-passwords-generate-password-without-symbols` behaves.
* contrib/lisp/org-mac-link.el (org-mac-message-get-links): Fix and use the `org-mac-paste-applescript-links' helper.
The existing code inserted links which should have been "[[message:ABC][the subject]]"
as "[[essage:ABC][the subjec]]".
Based on a patch by Steve Purcell <steve@sanityinc.com>.
* contrib/lisp/org-mac-link.el: Shorten the file description, which shouldn't span lines.
TINYCHANGE
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* contrib/lisp/org-mac-link.el (org-as-get-flagged-mail): Don't assume Growl is installed.
Applescript can't run if it refers to uninstalled apps, so since Growl is not universally
installed, references to it should be dropped. This change also provides a less cryptic
message when `org-mac-mail-account' is unset at the time flagged messages are grabbed.
TINYCHANGE
Signed-off-by: Alan Schmitt <alan.schmitt@polytechnique.org>
* contrib/lisp/org-eww.el(org-eww-copy-for-org-mode): Realization of
the kill.
(org-eww-goto-next-url-property-change,
org-eww-no-next-link-p, org-eww-url-below-point): Auxiliaries
for accessing a eww buffer
(org-eww-extend-eww-keymap): Add the new kill to eww keymap
The code has emerged from the very similar org-w3m.el.
* contrib/lisp/org-eww.el: New file
* contrib/README: Added org-eww.
* lisp/org.el (org-modules): Add org-eww to the pool of org-modules.
The hook gets hooked in the module.
The file is more or less a fraction of the org-w3m module with 'w3m'
replaced by 'eww'.
* contrib/lisp/ox-koma-letter.el (koma-letter): Properly display
default "from" address from template.
(org-koma-letter--determine-to-and-from): Do not provide a default
"to" value as it might be set through a LCO file.
(org-koma-letter-template): Remove trailing whitespace.
* contrib/lisp/ox-groff.el (org-groff-link):
* lisp/ox-beamer.el (org-beamer-link):
* lisp/ox-html.el (org-html-link):
* lisp/ox-latex.el (org-latex-link):
* lisp/ox-odt.el (org-odt-link): When radio link has no valid
target (e.g., this is a subtree export and the radio target is not
in the exported subtree), simply return contents.
Thanks to Daniel Clement for reporting it.
http://permalink.gmane.org/gmane.emacs.orgmode/90218
* contrib/lisp/ob-stata.el: New file based on ob-julia.el.
* contrib/README: Document addition of new file.
ob-stata.el provides basic support for evaluating Stata code.
* ox-taskjuggler.el (org-taskjuggler--build-project): Insert all
valid attributes from project.
* ox-taskjuggler.el (org-taskjuggler--build-attributes): Add project
as possible ITEM to docstring.
* ox-taskjuggler.el (org-taskjuggler-valid-project-attributes): New
defcustom.
As reported by Nick Garber, project attributes like 'timingresolution'
could not be changed via Org-mode properties. This patch makes the
exporter treat project-attributes just like it treats task-, resource-
and report-attributes.
* org-git-link.el (org-git-open): Jump to the line if provided in the link.
(org-git-split-string): Parse a third element of the list and change the error
message accordingly.
(org-git-create-git-link): Accept the third optional line argument.
(org-git-store-link): call `org-git-create-git-link' with the current line
number.
* contrib/lisp/org-notmuch.el: org-notmuch-open-function,
org-notmuch-open-search-function: New defcustoms, can be used to set
custom notmuch-open functions.
* contrib/lisp/ox-rss.el (org-rss-publish-to-rss): Fix a bug that
causes ID properties to be generated in org buffer emacs is
currently visiting rather than the file containing the feed.
* contrib/lisp/org-contacts.el (org-contacts-export-as-vcard): Wrap
`org-contacts-export-as-vcard-internal' to prompt for the parameters
when called interactively.
(org-contacts-export-as-vcard-internal): The old function
`org-contacts-export-as-vcard'.
Thanks to Esben Stien for the suggestion.
* contrib/lisp/org-contacts.el (org-contacts-complete-tags-props): New
function that allows the user to retrieve contacts based on tags and
properties.
(org-contacts-complete-functions): Add
org-contacts-complete-tags-props to the completion functions.
(org-contacts-tags-props-prefix): Prefix used to detect the
completion method wished.
Based on the idea and implementation of John Kitchin
* contrib/lisp/org-bibtex-extras.el: Remove functions to find
citations, moved into ox-bibtex.
* contrib/lisp/ox-bibtex.el: Add functionality to follow cite links.
These options break citation handling for these other backends, so we
should just drop them.
* contrib/lisp/ox-bibtex.el (org-bibtex-merge-contiguous-citations):
Drop citation options for HTML and ASCII export.
* contrib/lisp/org-contacts.el (org-contacts-at-point): New function
used to return the contact at point.
(org-contacts-db): Factorize the construction of the database using
`org-contacts-at-point' and fix a small typo.
* contrib/lisp/org-contacts.el (org-contacts-complete-functions): A
hook that contains the list of functions used to complete contacts.
(org-contacts-message-complete-function): Use the new hook.
Suggested by John Kitchin.
* org-mac-link.el (org-mac-grab-Addressbook-app-p): New option.
(org-mac-grab-link): New interactive option.
(org-devonthink-item-open)
(org-as-get-selected-devonthink-item)
(org-mac-devonthink-get-links)
(org-mac-devonthink-item-insert-selected): New functions.
* contrib/lisp/org-mac-link.el (org-as-get-selected-mail): Make sure
no extra new line is present in the string returned from the
AppleScript.
* contrib/lisp/org-mac-link.el (org-mac-message-get-links): Get rid of
the enclosing quotes before splitting the string.
* contrib/lisp/ox-bibtex.el (org-bibtex-merge-contiguous-citations):
Add the ability to specify options so that for example the following
link "[[cite:(Chapter 2)foo]]" will be converted to the following
LaTeX "\cite[Chapter 2](foo)".
* contrib/lisp/org-passwords.el: New file.
The file gives a mode for consulting a passwords database with entries
in org format. The database opens in Read-Only mode and a timer is
set to close the database. The file provides functions for making
usernames and passwords available to the facility for pasting text of
the window system (clipboard on X and MS-Windows, pasteboard on
Nextstep/Mac OS, etc.) without inserting them in the kill-ring. It
also provides functions for generating passwords as a random string of
characters or as a number of random words from a dictionary.
* contrib/lisp/org-annotate-file.el (org-annotate-file): New customization
group.
(org-annotate-file-storage-file org-annotate-file-add-search
org-annotate-file-always-open): Convert `defvar' symbols to `defcustom' using the new group.