1
0
mirror of https://git.savannah.gnu.org/git/emacs/org-mode.git synced 2024-12-01 08:17:34 +00:00
Commit Graph

10861 Commits

Author SHA1 Message Date
Nicolas Goaziou
a605067181 org-element: Silence byte-compiler 2012-07-15 14:35:04 +02:00
Achim Gratz
6fbc226ca5 further cleanup for org version
* UTILITIES/org-fixup.el (org-make-org-version): Provide feature
  'org-version.
* lisp/org-compat.el (org-check-version): New macro.  Check if
  org-version.el exists and provide autoloads to that. Otherwise check
  if org-fixup.el exists and use it to provide definitions.  Finally
  if nothing worked, complain about a botched installation and provide
  fallback definitions.
* lisp/org.el: Use org-check-version.

This should finally provide the correct behaviour in all supported
use-cases as well as a few corner scenarios that were reported on the
mailing list and allow to always build on Git, ELPA and Emacs Bzr
correctly.  The file org-version.el must be added to the Emacs sources
and should be re-generated each time orgmode Git is synced to Emacs
Bzr (it would be best to automate this).

Note that the internal functions (org-release) and (org-git-release)
are not autoloaded when org-version is not present and become only
available when org.el is loaded.  This should pose no problem since
they are only used by (org-version), which is autoloaded from org.el.
2012-07-15 13:53:53 +02:00
Nicolas Goaziou
e6a88820bf org-export: Fix a docstring
* contrib/lisp/org-export.el (org-export-translate): Fix docstring.
2012-07-15 12:39:44 +02:00
Nicolas Goaziou
b6edf5649c org-element: Inline accessors
* contrib/lisp/org-element.el (org-element-type, org-element-property,
  org-element-contents, org-element-restriction): Inline functions.
2012-07-15 12:27:54 +02:00
Nicolas Goaziou
ebad68a059 org-export: Fix table test failure
* contrib/lisp/org-element.el (org-element-center-block-parser,
  org-element-drawer-parser, org-element-dynamic-block-parser,
  org-element-footnote-definition-parser, org-element-headline-parser,
  org-element-inlinetask-parser, org-element-item-parser,
  org-element-plain-list-parser, org-element-quote-block-parser,
  org-element-section-parser, org-element-special-block-parser,
  org-element-babel-call-parser, org-element-clock-parser,
  org-element-comment-parser, org-element-comment-block-parser,
  org-element-example-block-parser, org-element-export-block-parser,
  org-element-fixed-width-parser, org-element-horizontal-rule-parser,
  org-element-keyword-parser, org-element-latex-environment-parser,
  org-element-paragraph-parser, org-element-planning-parser,
  org-element-property-drawer-parser,
  org-element-quote-section-parser, org-element-src-block-parser,
  org-element-table-parser, org-element-table-row-parser,
  org-element-verse-block-parser, org-element-bold-parser,
  org-element-code-parser, org-element-entity-parser,
  org-element-export-snippet-parser,
  org-element-footnote-reference-parser,
  org-element-inline-babel-call-parser,
  org-element-inline-src-block-parser, org-element-italic-parser,
  org-element-latex-fragment-parser, org-element-line-break-parser,
  org-element-link-parser, org-element-macro-parser,
  org-element-radio-target-parser,
  org-element-statistics-cookie-parser,
  org-element-strike-through-parser, org-element-subscript-parser,
  org-element-superscript-parser, org-element-table-cell-parser,
  org-element-target-parser, org-element-timestamp-parser,
  org-element-underline-parser, org-element-verbatim-parser): Use
  `list' instead of backquotes to avoid using a quoted constant list
  as a non-last argument to `nconc'.
2012-07-15 12:25:09 +02:00
Nicolas Goaziou
ceaeb33629 org-element: Handle special cases in setter functions
* contrib/lisp/org-element.el (org-element-put-property,
  org-element-set-contents): Handle special cases like empty or string
  arguments.
(org-element-parse-secondary-string): Correctly set `:parent' property
in objects within the secondary string if element or object containing
it is provided as an optional argument.
(org-element-parse-elements, org-element-parse-objects): Rewrite
functions using setter functions.
2012-07-15 12:25:09 +02:00
Achim Gratz
6762c7ea60 Clean-up for build system support and a fix for org-version.
* UTILITIES/org-fixup.el: Clean up and add doc strings.
* UTILITIES/org-fixup.el (org-make-autoloads): Add optional arguments
  and implementation for comopiling and force compiling.
* UTILITIES/org-fixup.el (org-make-autoloads-compile,
  org-make-autoloads-compile-force): Convenience definitions with
  pre-selected arguments, avoids complicated quoted on invocation from
  command line.
* UTILITIES/org-fixup.el (org-fixup): Add "-git" to git version when
  run from a bare Git worktree.  Give message instead of returning
  string inside quoted progn for easier tracing.
* lisp/org.el: Fix a subtle error resulting in version functions
  sometimes not being defined and byte-compiling failing.  Always
  compile in fallback definitions into org.elc -- org-fixup either
  provides re-definitions at compile-time or checks org-version.el and
  then the git work tree when run uncompiled.  So the fallback
  definitions will only come into effect when org-fixup is not
  available.
2012-07-14 20:42:18 +02:00
Jambunathan K
f0d5d935ce org-e-odt.el: Introduced `org-e-odt--export-wrap'
- Clean up work directory and buffers on error.
- Don't use `org-current-export-file'.
- Handle file paths robustly i.e., don't rely on `default-directory'.
- Remove stale code.
2012-07-14 18:21:31 +05:30
Nicolas Goaziou
373cb5a37e org-export: Silence byte-compiler 2012-07-14 12:05:20 +02:00
Bastien Guerry
b6cb722377 Explicitely says only letters are supported as fast TODO selection keys.
* org.texi (Fast access to TODO states): Explicitely says only
letters are supported as fast TODO selection keys.

* org.el (org-todo-keywords): Ditto.

Thanks to Samuel Wales for pointing at this.
2012-07-14 09:15:50 +02:00
Bastien Guerry
dacd62b98d org.el (org-use-fast-todo-selection): Reformat docstring.
* org.el (org-use-fast-todo-selection): Reformat docstring.
2012-07-14 09:06:24 +02:00
Bastien Guerry
fea1b82bef Bind `org-clock-in-last' to C-c C-x C-x and ̀org-clock-cancel' to C-c C-x C-q.
* org.el (org-flag-drawer): Add a docstring.
(org-mode-map): Bind ̀org-clock-cancel' to "C-cC-xC-q" and
`org-clock-in-last' to "C-cC-xC-x".  This fixes a bug in the
previous keybinding for `org-clock-in-last', which would
override the one for `org-clock-in'.

* org-clock.el (org-clock-in-last): Prevent errors when there
is no clocking history.
(org-clock-cancel): Fix bug when checking against a clock log
in a folded drawer.

Thanks to Bernt Hansen who reported the problem.
2012-07-14 08:33:48 +02:00
Bastien Guerry
ef3d4b5965 org.el: Allow %(my-function) as a specifier in abbreviated links.
* org.el (org-link-expand-abbrev): Implement "%(my-function)"
as a new specifier.  Update the docstring.

* org.texi (Link abbreviations): Illustrate the use of the
"%h" specifier.  Document the new "%(my-function)" specifier.

Thanks to Takaaki ISHIKAWA who came all the way down from Tokyo
to Paris and raised a not-so-distant issue: "could we translate
emails from the mailing list and have a URI for each translated
email?"  See the update in the manual for an answer.
2012-07-13 18:22:45 +02:00
Bastien Guerry
3ecd7a9ad0 Move `org-clock-out-time' to the right place.
Thanks to Achim Gratz for spotting the compiler warning.
2012-07-13 01:45:49 +02:00
Bastien Guerry
3270f3a0eb org.el (org-startup-options): Fix docstring formatting.
* org.el (org-startup-options): Fix docstring formatting.
2012-07-13 01:17:42 +02:00
Bastien Guerry
ce80dee476 org.el (org-use-sub-superscripts): Fix typo in docstring.
* org.el (org-use-sub-superscripts): Fix typo in docstring.
2012-07-13 01:14:32 +02:00
Jambunathan K
90a20261f1 org-e-html.el: Use `org-export-dictionary'
Don't use `org-export-language-setup'.  Lots of miscellaneous cleanups to
enable clean compilation.
2012-07-13 03:26:13 +05:30
Jambunathan K
22a6d99d5a org-export: Re-arrange entries in `org-export-dictionary'
* contrib/lisp/org-export.el (org-export-dictionary):
Re-arrange entries in ascending order.
2012-07-13 03:25:41 +05:30
Jambunathan K
936ff0703b org-export: Update org-export-dictionary
* contrib/lisp/org-export.el (org-export-dictionary): Add
follwing new entires - "Author", "Date", "Equation" and
"Figure".
2012-07-13 03:25:29 +05:30
Nicolas Goaziou
fd92868c13 org-export: Fix tests
* testing/lisp/test-org-export.el: Fix tests.
2012-07-12 23:36:01 +02:00
Bastien Guerry
620737757f org.el: Fix bug in `org-refile'.
* org.el (org-refile): Fix bug: prevent looping when calling
`org-set-tags' internally.
2012-07-12 14:29:54 +02:00
Bastien Guerry
a265b15f12 Merge branch 'master' of orgmode.org:org-mode 2012-07-12 14:05:01 +02:00
Bastien Guerry
3528fc6b42 Implement continuous clocking. Small other improvements. Update documentation.
* org.el (org-mode-map): Add `C-c C-x C-I' as a keybinding for
`org-clock-in-last'.

* org-clock.el (org-clock-continuously): New option.
(org-clock-in): Three universal prefix arguments set
`org-clock-continuously' to `t' temporarily.
(org-clock-in-last): Fix call to `org-clock-select-task' and
support continuous clocking.
(org-clock-out-time): New variable.
(org-clock-out): set `org-clock-out-time' when clocking out.
Small docstring rewriting.
(org-clock-remove-empty-clock-drawer): Fix "invalid search
bound" bug when trying to delete empty logbook drawer.
(org-clock-cancel): If the clock log is gone, send a warning
instead of deleting the region that is supposed to contain it.

* org.texi (Clocking commands): New cindex.
(Clocking commands): Update documentation for `org-clock-in'.
Document `org-clock-in-last'.  Mention `org-clock-out' and
`org-clock-in-last' as commands that can be globally bound.
(Resolving idle time): Document continuous clocking.
2012-07-12 14:04:54 +02:00
Nicolas Goaziou
1216df61cc org-export: Implement multi-backend dictionary
* contrib/lisp/org-export.el (org-export-translate): New function.
(org-export-dictionary): New variable.
* contrib/lisp/org-e-ascii.el (org-e-ascii--build-toc,
  org-e-ascii--list-listings, org-e-ascii--list-tables,
  org-e-ascii-template, org-e-ascii--translate): Use new translation
  system.
(org-e-ascii-dictionary): Remove variable.
2012-07-12 13:31:06 +02:00
Bastien Guerry
9fb530dc48 org.el: Allow moving the region by one line up and down.
* org.el (org-move-line-down, org-move-line-up): Remove.
(org-metaup, org-metadown): When the region is active, move it
up/down by one line, with no regard to the context.
2012-07-12 11:57:05 +02:00
Bastien Guerry
1fe42fd0bc New alias `org-condition-case-unless-debug'.
* org-odt.el (org-odt-cleanup-xml-buffers): Use the new alias.

* org-compat.el: Alias `org-condition-case-unless-debug' to
`condition-case-unless-debug' or `condition-case-no-debug'.
2012-07-12 10:30:33 +02:00
Bastien Guerry
9b264cf3a0 org-pcomplete.el: Ignore trailing whitespaces while looking-back at properties.
* org-pcomplete.el (org-thing-at-point): Ignore trailing
whitespaces while looking-back at properties.

Thanks to David Coate who reported a related issue.
2012-07-12 10:02:15 +02:00
Bastien Guerry
7445ee7d04 org.texi: Small update.
* org.texi (Top, Introduction): Fix formatting.
(Activation): Add index entries.
(Conventions): Update section.
(Embedded @LaTeX{}): Fix formatting.

Mention that `C-c a' is assumed to be the keybinding for `org-capture'
in the whole manual.  Thanks to Vagn Johansen who triggered this.
2012-07-12 09:11:10 +02:00
Bastien Guerry
8610790a4e org.el: Update comment section about mapping outline.el commands. 2012-07-12 08:31:20 +02:00
Bastien Guerry
7d41c87aee Merge branch 'master' of orgmode.org:org-mode 2012-07-11 22:21:00 +02:00
Achim Gratz
b050afa06f Let the user override the version strings produced in org-fixup.
* UTILITIES/org-fixup.el (org-fixup): Let the user override the
  version strings produced in org-fixup whith strings stored in
  org-fake-release and org-fake-git-version.  Skip loading them from a
  pre-existing org-version.el or trying to determine them from git in
  this case.  This is predominantly useful if Git is not available,
  but the user wants to install from a Git tarball which is missing a
  pre-configured org-version.el file.
2012-07-11 22:20:52 +02:00
Jambunathan K
963b1c53bb Merge remote-tracking branch 'origin/maint' 2012-07-12 00:59:52 +05:30
Jambunathan K
73165e8ba5 org-odt.el: Use `condition-case-no-debug'
* lisp/org-odt.el (org-odt-cleanup-xml-buffers): Use
`condition-case-no-debug' instead of
`condition-case-unless-debug'.  This ensures backward
compatibility with Emacs versions < 24.1.
2012-07-12 00:57:36 +05:30
Bastien Guerry
be56d706ae org.el: New function `org-indent-region'.
* org.el (org-mode): Set `indent-region-function'.
(org-indent-region): New function.
(org-fill-paragraph): When in a src block, use `indent-region'
to indent the whole source code instead of falling back on
`fill-paragraph', as this function messes up the code.
2012-07-11 20:45:17 +02:00
Bastien Guerry
afe5eb140e Fix some docstrings format.
* org-src.el (org-edit-src-code): Fix docstring formatting.

* ob.el (org-babel-do-key-sequence-in-edit-buffer): Ditto.
2012-07-11 19:33:29 +02:00
Bastien Guerry
d5aa0e0d73 Rename org-indent-line-function' to org-indent-line'.
* org.el (org-mode, org-add-log-setup)
(org-get-property-block, org-entry-put)
(org-property-next-allowed-value, org-return)
(org-indent-line): Rename `org-indent-line-function' to
`org-indent-line'.

* org-timer.el (org-timer-item): Ditto.

* org-table.el (org-table-store-formulas): Ditto.

* org-clock.el (org-clock-in, org-clock-find-position): Ditto.
2012-07-11 19:11:26 +02:00
Bastien Guerry
94b9bec27c Merge branch 'master' of orgmode.org:org-mode 2012-07-11 18:36:31 +02:00
Bastien Guerry
dadc199491 org-src.el: Fix some typos in docstrings.
* org-src.el (org-src-font-lock-fontify-block)
(org-src-strip-leading-and-trailing-blank-lines)
(org-src-ask-before-returning-to-edit-buffer)
(org-edit-src-code, org-edit-src-continue)
(org-edit-fixed-width-region)
(org-src-do-key-sequence-at-code-block)
(org-src-font-lock-fontify-block, org-src-fontify-buffer): Fix
typos in docstrings.
2012-07-11 18:36:22 +02:00
Bastien Guerry
bd4c629e96 Fix docstring and comment typos.
* org-docbook.el (org-export-docbook-emphasis-alist): Fix
typo: use "format string" instead of "formatting string".

* org-latex.el (org-export-latex-emphasis-alist)
(org-export-latex-title-command, org-export-latex-tables):
Ditto.

* org-html.el (org-export-html-postamble): Ditto.
2012-07-11 18:03:02 +02:00
Bastien Guerry
97e001e88e org-latex.el: New option `org-export-latex-hyperref-options-format'.
* org-latex.el (org-export-latex-hyperref-options-format): New option.
(org-export-latex-make-header): Use it.
2012-07-11 17:59:56 +02:00
Nicolas Goaziou
e886c548e4 Merge branch 'maint' 2012-07-11 17:58:03 +02:00
Nicolas Goaziou
a821be219a org-entities: Fix `org-entities-create-table'
* lisp/org-entities.el (org-entities-create-table): Function chokes
  when CAR of `org-entities' is a string.
2012-07-11 17:56:33 +02:00
Nicolas Goaziou
c75120aa71 org-element: Refactoring 2012-07-11 14:17:02 +02:00
Bastien Guerry
7b6171735f Prevent errors when `org-current-export-file' is void.
* ob.el (org-babel-confirm-evaluate): Prevent errors when
`org-current-export-file' is void.

Thanks to John Wiegley for reporting this.
2012-07-10 22:07:43 +02:00
Thomas S. Dye
69aa5ab26f Manual does not list :results output graphics as babel header arg
Aloha all,

The attached patch changes the link to the languages supported by babel
from a directory listing to the Worg page that uses a table to link to
the language-specific documentation pages.  It was suggested by John
Hendy.

All the best,
Tom
John Hendy <jw.hendy@gmail.com> writes:

> On Tue, Jul 10, 2012 at 10:19 AM, Thomas S. Dye <tsd@tsdye.com> wrote:
>> John Hendy <jw.hendy@gmail.com> writes:
>>
>>> On Mon, Jul 9, 2012 at 7:35 PM, Thomas S. Dye <tsd@tsdye.com> wrote:
>>>> John Hendy <jw.hendy@gmail.com> writes:
>>>>
>>>>> I have typically outputted graphics from R via tikzDevice manually,
>>>>> but gave my first whirl to just including things via the :file
>>>>> argument in my block header. In the process, I was trying to get this
>>>>> to work and found I needed to use:
>>>>>
>>>>> -----
>>>>> :results output graphics
>>>>> -----
>>>>>
>>>>> This is listed on Worg ob-R-doc:
>>>>> - http://orgmode.org/worg/org-contrib/babel/languages/ob-doc-R.html#sec-4-3
>>>>>
>>>>> But I didn't originally know about it, as it's not a listed header
>>>>> argument in the manual, which is where I check since they're all
>>>>> listed in one place:
>>>>> - http://orgmode.org/manual/results.html#results
>>>>>
>>>>> Does the manual only list universal babel header arguments and R is in
>>>>> a subset of ones using =:results output graphics= or should it be
>>>>> there?
>>>>>
>>>>
>>>> Hi John,
>>>>
>>>> The babel header arguments are implemented at two levels.
>>>>
>>>> There are general babel arguments that apply to all the supported
>>>> languages.  These are described in the manual.
>>>>
>>>> It is also possible for the individual language implementations to
>>>> define their own header arguments.  R is a good example, where the very
>>>> many arguments to the various R output devices are built into ob-R.el.
>>>> These language specific header arguments are not described in the
>>>> manual, but instead appear in the language specific documentation on
>>>> Worg.
>>>>
>>>> Re: your specific question about :results output graphics.  I believe
>>>> this is an R specific header argument and that it is described in the
>>>> appropriate place in the documentation on Worg (see lines 68 and 230
>>>> of ob-R.el).
>>>>
>>>> The manual is not a one-stop source for answers to all Babel questions.
>>>> Recourse to the language specific documentation is typically necessary,
>>>> which is why it would be great if someone could find time to work up
>>>> documentation for the 20 or so languages that still lack it :)
>>>
>>> Thanks for the clarification and that answers the question. This was a
>>> specific header argument for R. Perhaps the manual could link to this
>>> page?
>>> - http://orgmode.org/worg/org-contrib/babel/languages.html
>>>
>>> Maybe with a diddy: "Some languages feature their own unique header
>>> arguments. The above document only universal, system wide Babel header
>>> arguments and one should consult the specific language page on Worg
>>> for additional features."
>>>
>>> Just a thought.
>>
>> Hi John,
>>
>> Thanks for this thought, which is indeed reasonable.  I thought the
>> manual might lack this structure, but when I went back to the
>> manual I found that
>> http://orgmode.org/manual/Specific-header-arguments.html#Specific-header-arguments
>> has this at the bottom of the page: "Additional header arguments are
>> defined on a language-specific basis, see Languages", where "Languages"
>> is a link to another manual page, one with a table of supported
>> languages and a link to the Worg page you cite.
>>
>
> Wow. You see only what you look for. :embarrassed:
>
>> The language is a bit different than your proposal, but the path seems
>> clear enough to me.
>
> Technically the path points to
> http://orgmode.org/worg/org-contrib/babel/languages/; I'd point it to
> http://orgmode.org/worg/org-contrib/babel/languages.html as it looks
> cleaner vs. just looking at the directory of .html files. Either
> way... the manual totally does it's job and I missed it!
>
> Thanks for bearing with me!
> John
>
>>
>> Of course, there is still the issue of the languages that lack
>> language-specific documentation :)
>>
>> All the best,
>> Tom
>>
>> --
>> T.S. Dye & Colleagues, Archaeologists
>> 735 Bishop St, Suite 315, Honolulu, HI 96813
>> Tel: 808-529-0866, Fax: 808-529-0884
>> http://www.tsdye.com

>From 0438f0ae1e23321dbacd0666119205985959433e Mon Sep 17 00:00:00 2001
From: Thomas Dye <tsd@tsdye.com>
Date: Tue, 10 Jul 2012 07:12:13 -1000
Subject: [PATCH] Changed babel languages link following a suggestion by John
 Hendy
2012-07-10 21:34:03 +02:00
Nicolas Goaziou
d5f5c77fcd org-export: Small refactoring
* contrib/lisp/org-export.el (org-export-get-previous-element,
  org-export-get-next-element): Small refactoring.
* testing/lisp/test-org-export.el: Add tests.
2012-07-10 19:22:04 +02:00
Nicolas Goaziou
bb9a26389c org-element: Rename org-export-set-element' into org-element-set-element'
* contrib/lisp/org-element.el (org-element-set-element): New function.
* contrib/lisp/org-export.el (org-export-set-element): Removed function.
* testing/lisp/test-org-element.el: Add test.
* testing/lisp/test-org-export.el: Remove test.
2012-07-10 17:29:13 +02:00
Nicolas Goaziou
d9f975cf7b org-element: Add setters to modify parse tree
* contrib/lisp/org-element.el (org-element-put-property,
  org-element-set-contents, org-element-adopt-element): New
  functions.
* testing/lisp/test-org-element.el: Add tests.
2012-07-10 17:23:33 +02:00
Nicolas Goaziou
9028c4655f org-export: Improve a docstring
* contrib/lisp/org-export.el (org-export-get-genealogy): Improve
  docstring.
2012-07-10 15:30:51 +02:00
Tim Howe
f88679a399 org-clock: Customizable variable syntax fix
* org-clock.el (org-clocktable-defaults): Revert extra layer of quoting.

It appears the goal in 9b23f082 was to allow defaulting a plist member
to a variable; however the plist was being constructed with LIST and
therefore the `, combination was unnecessary.

TINYCHANGE
2012-07-10 11:15:22 +02:00