Commit Graph

8267 Commits

Author SHA1 Message Date
Nicolas Goaziou 57fb6ffa4d ox-latex: Set inputenc option according to `org-export-coding-system'
* lisp/ox-latex.el (org-latex-guess-inputenc): Set inputenc option
  according to `org-export-coding-system'.
2013-02-23 14:04:26 +01:00
Bastien Guerry 8ee6c13c7f Fix typo: an headline -> a headline. 2013-02-23 13:47:44 +01:00
Bastien Guerry 99d4c8f915 ox-latex.el (org-latex-format-headline-default-function): New option
* ox-latex.el (org-latex-format-headline-default-function):
New option.
(org-latex-format-headline-function): Use the new option as
the default value.

The rationale here is that most users will expect Org 8.0
to format headlines like Org <8.0 did.  If they want a different
formatting, then they can use `org-latex-format-headline-function'.
2013-02-23 13:40:47 +01:00
Bastien Guerry 5d5e5631ca ox-latex.el (org-latex-toc-command): Don't add vertical space after the table of contents
* ox-latex.el (org-latex-toc-command): Don't add vertical
space after the table of contents.

Let the user decides about such aesthetic issues.
2013-02-23 13:33:36 +01:00
Bastien Guerry 917cc1d516 Merge branch 'master-wip' 2013-02-23 11:48:21 +01:00
Bastien Guerry 82899fa841 Merge `org-with-buffer-modified-unmodified' into `org-unmodified'
* org.el (org-entry-blocked-p): Use `org-unmodified' instead
of `org-with-buffer-modified-unmodified'.
(org-agenda-prepare-buffers): Fix indentation.

* org-macs.el (org-unmodified): Rename from
`org-with-buffer-modified-unmodified'.
(org-with-buffer-modified-unmodified): Delete.
2013-02-23 11:44:24 +01:00
Nicolas Goaziou 65bacaac73 ox: Fix coding system error
* lisp/ox.el (org-export--generate-copy-script): Clone
  `buffer-file-coding-system' when creating a buffer copy.

This patches makes sure the output will share the same encoding as the
original buffer.
2013-02-23 11:22:58 +01:00
Bastien Guerry ef1bb160c6 ob-python.el: Use a defcustom for two variables.
* ob-python.el (org-babel-python-command): Use a defcustom.
(org-babel-python-mode): Use a defcustom and default to
'python-mode when featured.

Thanks to Andreas Röhler for providing a prelimiary patch.
2013-02-23 10:27:55 +01:00
Achim Gratz 570e0f93dc Replace `time-to-seconds´ with `org-float-time´
* lisp/org.el (org-current-time): Replace call to obsolete function
  `time-to-seconds´ with a call to compatibility function
  `org-float-time´.

XEmacs 21.5 already has float-time, so we may not need a compatibility
function here depending on what version of XEmacs introduced it and
what is the earliest version that Org is supposed to still support.
2013-02-23 10:20:03 +01:00
Achim Gratz ff064f89c2 Reverting "Fix compiler warning."
This reverts commit da22d29eb2.
2013-02-23 10:10:38 +01:00
Bastien Guerry e9e32173cc Update headers. 2013-02-23 09:56:24 +01:00
Bastien Guerry ceeee88f49 Update header information.
Those three files will be part of Emacs when Org 8.0
will be merged with Emacs trunk.

Thanks to Nick Dokos for pointing this.
2013-02-23 08:59:23 +01:00
Nicolas Goaziou 3e95e859cd ox-html: Handle external fuzzy links
* lisp/ox-html.el (org-html-link): Resolve external links with search
  options like [[file.org::#custom-id]] or
  [[file.org::*headline-search]].

In particular, this allows to resolve completely links produced by
index generation during publishing.
2013-02-23 00:05:10 +01:00
Nicolas Goaziou 93a70ac598 ox-publish: Implement tools to resolve external fuzzy links
* lisp/ox-publish.el (org-publish-collect-numbering,
  org-publish-resolve-external-fuzzy-link): New functions.
(org-publish-org-to): Add new collecting function to final output
filter.  Move index collecting function to the same filter.
(org-publish-collect-index): Called from final output filter.

An external fuzzy link is: [[file.org::*headline search]]
2013-02-23 00:05:10 +01:00
Christopher Schmidt 14df16d931 org.el: Use longest form when translating keys.
* org.el (orgstruct-setup): Use longest form when translating
keys.
2013-02-22 19:50:51 +01:00
Nicolas Goaziou b10e2bde13 export back-ends: Fix leftover downcase :custom-id properties
* 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.
2013-02-22 14:51:58 +01:00
Nicolas Goaziou 6c565ec533 org-element: Fix latex environment parsing
* lisp/org-element.el (org-element-latex-environment-parser): Fix
  wrong value for :post-affiliated property when parsing a latex
  environment.
2013-02-22 14:31:05 +01:00
Bastien Guerry d7fe32a0aa org-agenda.el (org-agenda-start-day): Refer to `org-read-date' in the docstring
* org-agenda.el (org-agenda-start-day): Refer to
`org-read-date' in the docstring.

Thanks to Xiao-Yong Jin for suggesting this.
2013-02-22 14:15:17 +01:00
Bastien Guerry e4a8f7b8c1 ox-org.el (org-org-publish-to-org): Autoload
* ox-org.el (org-org-publish-to-org): Autoload.
2013-02-22 13:42:02 +01:00
Bastien Guerry bfa47dcb94 Merge branch 'master' into master-wip 2013-02-22 12:57:16 +01:00
Bastien Guerry 65399674d5 Remove remember support
* org-protocol.el:
* org-bibtex.el: Remove remember support.

* org-clock.el (org-clock-heading-for-remember): Delete.
(org-clock-in): Do not set the heading for remember.

Users are encouraged to migrate their remember templates to
`org-capture-templates' instead of `org-remember-templates'.
See `org-capture-import-remember-templates' on how to ease
the transition.
2013-02-22 11:44:29 +01:00
Nicolas Goaziou 61bf4a5c3f export back-ends: Preserve subsequent blank lines when ignoring comments
* 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).
2013-02-22 11:43:38 +01:00
Bastien Guerry 6c788fe738 Move org-remember.el to contrib/lisp/ 2013-02-22 11:41:09 +01:00
Bastien Guerry 71c3c12b39 Use `user-error' when moving or modifying the element at point is not possible
* org.el (org-move-subtree-down, org-forward-element)
(org-backward-element):
* org-table.el (org-table-previous-field)
(org-table-move-column, org-table-move-row):
* org-list.el (org-move-item-down, org-move-item-up)
(org-cycle-item-indentation): Use `user-error' when moving or
modifying the element at point is not possible.
2013-02-22 10:31:35 +01:00
Bastien Guerry db0143f70e ox-html.el: Fix a few FIXMEs
* ox-html.el (org-html-table-header-tags)
(org-html-table-data-tags, org-html-table-row-tags)
(org-html-table-align-individual-fields): Use the
org-export-html group.
(org-html-inline-src-block, org-html-link): Fix error
messages.
(org-html-begin-plain-list): Fix formatting, better FIXME
comment.
2013-02-22 10:28:25 +01:00
Bastien Guerry da717614ac Remove some FIXME issues in the final list. 2013-02-22 09:58:58 +01:00
Bastien Guerry da22d29eb2 Fix compiler warning.
Thanks to Thomas S. Dye for reporting this.
2013-02-21 22:11:30 +01:00
Nicolas Goaziou 985321ea1f ox-ascii: Fix a docstring
* lisp/ox-ascii.el (org-ascii-filter-paragraph-spacing): Remove
  reference to now renamed `e-ascii' back-end.
2013-02-20 20:32:30 +01:00
Nicolas Goaziou f1e23104e3 ox-latex: Allow to span documentclass options accross multiple lines in template
* 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.
2013-02-20 20:26:08 +01:00
Nicolas Goaziou 6e1bac2430 ox-texinfo: Fix 1efac41
* lisp/ox-texinfo.el (org-texinfo--get-node): Upcase property name.
  This is required since ae5932282d.
2013-02-20 20:07:43 +01:00
Nicolas Goaziou 1efac41f03 ox-texinfo: Fix fuzzy links to headlines
* lisp/ox-texinfo.el (org-texinfo--get-node): New function.
(org-texinfo-headline, org-texinfo-link): Use new function.

The same function is used to create @node entries and links to nodes,
to avoid any discrepancy between them
2013-02-20 11:10:49 -05:00
Bastien Guerry 2bd97a5ae6 org.el (org-fill-paragraph): Fill using `org-mode-transpose-word-syntax-table'
* org.el (org-fill-paragraph): Fill using
`org-mode-transpose-word-syntax-table'.

Thanks to Samuel Wales for raising this issue.
2013-02-20 16:46:27 +01:00
Stephen Eglen c0f8844b05 org-agenda.el (org-agenda-prefix-format): Small docstring enhancement
* org-agenda.el (org-agenda-prefix-format): Small docstring
enhancement.

TINYCHANGE
2013-02-20 16:38:34 +01:00
Bastien Guerry f35e82641c Merge branch 'maint' 2013-02-20 16:31:17 +01:00
Bastien Guerry 9a21403bd7 org-agenda.el (org-agenda-to-appt): Fix typos
* org-agenda.el (org-agenda-to-appt): Fix typos.

Thanks to Sean Allred for reporting this.
2013-02-20 16:30:48 +01:00
Bastien Guerry 272ca45701 Fix compiler warnings.
Thanks to Achim Gratz for reporting these problems.
2013-02-19 20:32:09 +01:00
Bastien Guerry 4354eb7223 Merge branch 'maint' 2013-02-19 19:38:59 +01:00
Bastien Guerry bf5a33a3c0 org-agenda.el (org-agenda-local-vars): Don't include `org-agenda-show-window'
* org-agenda.el (org-agenda-local-vars): Don't include
`org-agenda-show-window' as it needs to be checked outside of
the agenda window.

Thanks to Bernt Hansen for reporting this.
2013-02-19 19:38:47 +01:00
Bastien Guerry bfa648be7d ox-org.el (org-org-publish-to-org): New defun
* ox-org.el (org-org-publish-to-org): New defun.
2013-02-19 19:17:20 +01:00
Bastien Guerry 3891c97a72 Remove useless code (leftover from the new exporter merge). 2013-02-19 19:07:02 +01:00
Bastien Guerry 8134e80bdf org-html.el: Rename org-export-htmlize-* options to org-html-htmlize-*
* ox-html.el (org-export-htmlize): Delete group.
(org-html-htmlize-output-type)
(org-html-htmlized-org-css-url)
(org-html-htmlize-region-for-paste): Rename from
org-export-htmlize-*.
(org-html-htmlize-generate-css, org-html-fontify-code): Use
the correct names.
2013-02-19 19:03:59 +01:00
Suvayu Ali 57aa34f6b2 Change default org-mark-subtree speed command
* org.el (org-speed-commands-default): Change default binding
  for org-mark-subtree from "." to "@" to be more consistent with "C-c
  @".

TINYCHANGE
2013-02-19 18:02:31 +01:00
Bastien Guerry 5ea1322c99 org-compat.el (org-file-equal-p): New compatibility function
* org-compat.el (org-file-equal-p): New compatibility function.

* ox.el (org-export-output-file-name): Use the new function.

Thanks to Mark Edgington for reporting this.
2013-02-19 18:01:03 +01:00
Bastien Guerry 23057a57b4 Fix compiler warning 2013-02-19 13:02:14 +01:00
Bastien Guerry 85a1395efa org-clock.el: Minor code clean-up
* org-clock.el (org-clock-set-current)
(org-clock-delete-current): Delete.
(org-clock-in, org-clock-out): Set and delete
`org-clock-current-task'.  Minor code clean-up.
2013-02-19 12:59:46 +01:00
Bastien Guerry d1e57bd884 Fix bug with `org-clock-rounding-minutes'
* org-clock.el (org-clock-in, org-clock-in-last): Tell
`org-current-time' to always return a past time.

* org.el (org-current-time): New argument `past' to force
returning a past time when rounding.

If (setq org-clock-rounding-minutes 5) and time is 12:33
the clock start time would be 12:35, and the clock mode-line
would display 0:-2.  The fix ensures the rounded value is
always in the past.
2013-02-19 12:40:33 +01:00
Bastien Guerry 8a910bd40b Merge branch 'master-fixes' into master-new 2013-02-19 11:05:04 +01:00
Bastien Guerry 9bec2ec5d0 org-agenda.el: Small bug fixes
* org-agenda.el (org-agenda-unmark-clocking-task): New
function.
(org-agenda-mark-clocking-task): Use it.
(org-agenda-clock-in): Let the cursor where it is.
(org-agenda-clock-out): Ditto.  Also remove the
`org-agenda-clocking' overlay.
2013-02-19 11:04:26 +01:00
Bastien Guerry 66cba1c51f org-agenda.el (org-agenda-set-restriction-lock): Fix restriction
* org-agenda.el (org-agenda-set-restriction-lock): Fix
restriction so that it ends at the beginning of the next
headline at the same level.
2013-02-19 10:33:07 +01:00
Bastien Guerry 19a0b74ce6 org.el (org-set-effort, org-property-next-allowed-value): When needed, update the current clock effort time
* org.el (org-set-effort, org-property-next-allowed-value):
When needed, update the current clock effort time.
2013-02-19 10:24:59 +01:00
Bastien Guerry efb2ce9c12 org.el: Fix `org-next-link' and use it for `org-previous-link'
* org.el (org-next-link): New parameter `search-backward'.
Fix bug when at a link with no 'org-link face, e.g., in a DONE
headline.  Throw a message instead of an error.
(org-previous-link): Use `org-next-link'.
2013-02-19 10:02:34 +01:00
Bastien Guerry c64c599221 org-agenda.el (org-agenda-format-item): Only set the breadcrumbs when `org-prefix-has-breadcrumbs' is non-nil
* org-agenda.el (org-agenda-format-item): Only set the
breadcrumbs when `org-prefix-has-breadcrumbs' is non-nil.
2013-02-19 09:48:11 +01:00
Bastien Guerry 33d362788e Fix commit aa0e0068. 2013-02-19 09:41:40 +01:00
Nicolas Goaziou 27da9a2a0f Revert "Export: Prevent babel src blocks from being evaluated if org-export-babel-evaluate is nil"
This reverts commit 12d592b732.  When
the variable is nil, no block will be processed, which is a bug.
2013-02-18 21:14:00 +01:00
Nicolas Goaziou 99307eb786 ox-ascii: Fix quote block transcoding
* lisp/ox-ascii.el (org-ascii-quote-block): Do not fill quote block
  contents.  Just indent them.
2013-02-18 20:55:04 +01:00
Nicolas Goaziou 1513f89f7e ox-publish: Do not create an "* Index" headline in "theindex.inc"
* lisp/ox-publish.el (org-publish-index-generate-theindex): Do not
  create an "* Index" headline in "theindex.inc".  Though, create an
  "Index" title in fallback "theindex.org".
2013-02-18 20:34:55 +01:00
Nicolas Goaziou 5c61a34e5b ox-publish: Publish "theindex.org" last
* lisp/ox-publish.el (org-publish-projects): Publish "theindex.org"
  last, so that "theindex.inc" can be completed.
2013-02-18 20:34:55 +01:00
Nicolas Goaziou 875f5cc69b ox-publish: Fix docstring
* lisp/ox-publish.el (org-publish-project-alist): Fix docstring.
2013-02-18 20:34:54 +01:00
Nicolas Goaziou 38eca24f07 ox-publish: Fix code typo
* lisp/ox-publish.el (org-publish-collect-index): Fix typo.
2013-02-18 18:57:47 +01:00
Nicolas Goaziou f541bff087 ox: Prevent invisible cursor from highlighting brackets in UI
* lisp/ox.el (org-export--dispatch-ui): Prevent invisible cursor from
  highlighting brackets in UI

This is another try following f849239d73.
2013-02-18 18:35:21 +01:00
Bastien Guerry e8a6b56db9 Fix commit 5cdf84ea68
* org.el (org-mode): Don't make characters from
`org-emphasis-alist' word constituants.
(org-mode-transpose-word-syntax-table): Rename from
`org-syntax-table'.
(org-transpose-words): Use
`org-mode-transpose-word-syntax-table'.

Thanks to Achim Gratz and T.F. Torrey for reporting the broken tests.
2013-02-18 18:07:04 +01:00
Carsten Dominik 4708a4804f Merge branch 'fix-spacing-when-insert-new-heading' 2013-02-18 09:29:04 +01:00
Carsten Dominik 65b404427e Improve spacing when inserting new headline after end of subtree
When using C-RET to insert a new headline, the new headline was
inserted after arbitrary amounts of whitespace at the end of the
subtree.  This whitespace is now shrunk, to avoid unnatural spacing.

* lisp/org.el (org-insert-heading): Shrink whitespace at end of
  subtree when `org-insert-heading-respect-content' is on.
2013-02-18 09:28:05 +01:00
Nicolas Goaziou a385c6e0e4 org-element: Fix docstring, add tests
* lisp/org-element.el (org-element-headline-parser,
  org-element-inlinetask-parser): Fix docstring.
* testing/lisp/test-org-element.el: Add tests.

This follows ae5932282d.
2013-02-18 08:58:59 +01:00
Nicolas Goaziou af9191d18b ox-taskjuggler: Port TaskJuggler back-end to new export framework
* contrib/lisp/ox-taskjuggler.el: New file.
* lisp/org.el (org-export-backends): Add new back-end in customize
  interface.
2013-02-18 00:26:39 +01:00
Nicolas Goaziou 324a2cb3f9 export-back-ends: Apply changes from b692064e621acbc93876670585f8a4b0fd6a7ffa
* lisp/ox-beamer.el (org-beamer--get-label, org-beamer--frame-level,
  org-beamer--format-section, org-beamer--format-frame,
  org-beamer--format-block, org-beamer-headline): Apply changes to
  properties.
* lisp/ox-html.el (org-html-headline, org-html-link,
  org-html-section): Apply changes to properties.
* lisp/ox-icalendar.el (org-icalendar-create-uid,
  org-icalendar-blocked-headline-p, org-icalendar-entry,
  org-icalendar--valarm): Apply changes to properties.
* lisp/ox-odt.el (org-odt-headline): Apply changes
* lisp/ox-publish.el (org-publish-collect-index): Apply changes to
  properties.
* lisp/ox-texinfo.el (org-texinfo--generate-menu-list,
  org-texinfo--generate-menu-items, org-texinfo-template,
  org-texinfo-headline, org-texinfo-link): Apply changes to
  properties.
* lisp/ox.el (org-export-resolve-id-link, org-export-get-category):
  Apply changes to properties.
  (org-export-get-node-property): Update docstring.
* testing/lisp/test-ox.el: Update tests.
2013-02-18 00:12:57 +01:00
Nicolas Goaziou ae5932282d org-element: Headlines properties from property drawer are upcased
* lisp/org-element.el (org-element-headline-parser,
  org-element-inlinetask-parser): Upcase properties.  This is done to
  avoid confusion between properties from parser (e.g. `:end') and
  properties from the property drawer (e.g. :END:).

In particular, it means that :CUSTOM_ID: property is accessed through:

  (org-element-property :CUSTOM_ID headline)
2013-02-18 00:01:52 +01:00
Bastien Guerry 45442fbfb7 ox.el: Use integers for control chars
* ox.el (org-export--dispatch-ui)
(org-export--dispatch-action): Use integers for control chars.
2013-02-17 09:10:40 +01:00
Bastien Guerry f849239d73 Fix commit h9034345aa
Modifying the syntax char here broke The ODT exporter.
2013-02-17 09:10:37 +01:00
Nicolas Goaziou adc01ecf37 ox-publish: Preserve order in files when building the index
* lisp/ox-publish.el (org-publish-index-generate-theindex): Preserve
  order in file.
2013-02-17 01:40:53 +01:00
Nicolas Goaziou 8e2318a722 ox-publish: Fix error when two index entries were identical
* lisp/ox-publish.el (org-publish-index-generate-theindex): Fix error
  when two index entries were identical.
2013-02-17 01:31:14 +01:00
Nicolas Goaziou fb039937f9 ox-publish: Create again theindex.inc
* lisp/ox-publish.el (org-publish-index-generate-theindex): Create
  again theindex.inc.  See dd98619286.
2013-02-17 01:30:44 +01:00
Nicolas Goaziou 229d08e44e org-element: Allow to map over arbitrary lists
* lisp/org-element.el (org-element-map): Allow to map over any list.
  Do not restrict mapping to object types.
2013-02-17 00:49:13 +01:00
Bastien Guerry aa0e0068de org-agenda.el (org-agenda-set-restriction-lock): Put the overlay until the end of the subtree
* org-agenda.el (org-agenda-set-restriction-lock): Put the
overlay until the end of the subtree, not the end of the
headline.

When the agenda restriction is on, user expect agenda views to check
every entry in the subtree.  If a user add an entry outside of the
overlay without noticing it, this entry will not be checked and the
user will wonder why.  Put the end of the overlay at the end of the
subtree so that the user always knows if the entries she is adding
are within the current restriction.

We might need to find a less instrusive overlay color, though.
2013-02-16 23:09:57 +01:00
Bastien Guerry c4d8d26d1d org.el (org-toggle-ordered-property): Delete the drawer "PROPERTIES" if empty
* org.el (org-entry-delete, org-delete-property): New optional
arg delete-empty-drawer, a string, to delete any empty drawer
with that name.
(org-toggle-ordered-property): Delete the drawer "PROPERTIES"
if empty.
2013-02-16 23:04:12 +01:00
Bastien Guerry 3128edcbf8 Merge branch 'maint' 2013-02-16 22:29:42 +01:00
Bastien Guerry f8b15da24c org.el (org-set-tags-command): Fix bug.
* org.el (org-set-tags-command): Fix bug when setting tags for
multiple headlines in an active region.

Do not set the end of the region back to the beginning of the
previous headline.
2013-02-16 22:29:34 +01:00
Nicolas Goaziou 5f095f5909 Fontify latex, entities and sub/superscript again
* lisp/org-faces.el (org-latex-and-related): Renamed from
  `org-latex-and-export-specials', which wasn't appropriate anymore.
* lisp/org.el (org-highlight-latex-and-related,
  org-latex-and-related-regexp): New variables.
(org-compute-latex-and-related-regexp, org-do-latex-and-related): New
function, revived from a previous commit.
(org-set-regexps-and-options, org-set-font-lock-defaults): Use new
functions.
2013-02-16 22:19:37 +01:00
Bastien Guerry 3f95d811c2 Merge branch 'master' of orgmode.org:org-mode 2013-02-16 21:33:45 +01:00
Bastien Guerry c1cdb379af org-src.el: Use C-c C-k for `org-edit-src-abort'
* org-src.el (org-src-mode-map, org-edit-src-code)
(org-edit-fixed-width-region, org-edit-src-save): Use C-c C-k
for `org-edit-src-abort'.

Thanks to Bernt Hansen for the suggestion.
2013-02-16 21:33:28 +01:00
Nicolas Goaziou 9a6127d77b Small cleanup
* lisp/org.el (org-set-regexps-and-options): Remove reference to
  LATEX_CLASS and beamer back-end.
2013-02-16 21:27:34 +01:00
Nicolas Goaziou 3fbdb193b6 Reverting "ox-publish: Small refactoring"
Revert "ox-publish: Small refactoring"

This reverts commit 1d6f5b62b8.
2013-02-16 20:10:36 +01:00
Nicolas Goaziou 1d6f5b62b8 ox-publish: Small refactoring
* lisp/ox-publish.el (org-publish-org-to): Small refactoring.
2013-02-16 18:49:07 +01:00
Nicolas Goaziou 8858e1ffef ox-publish: Fix index generation
* lisp/ox.el (org-export-install-filters): Properly install filters
  send through ext-plist mechanism.
* lisp/ox-publish.el (org-publish-org-to): Small refactoring.
* lisp/ox-html.el (org-html-keyword): Remove INDEX keyword handling.
  ox-publish.el takes care of it already.
2013-02-16 18:44:22 +01:00
Nicolas Goaziou 48da6a46e0 Move macro expansion code into its own library
* lisp/org-macro.el: New file.
* lisp/org.el: Remove macro code.
* lisp/ox.el: Require new library
* testing/lisp/test-org-macro.el: New file.
* testing/lisp/test-org.el: Remove macro test.
2013-02-16 15:55:30 +01:00
Nicolas Goaziou f33d90fb28 ox: Fuzzy link matching ignores statistics cookies
* lisp/ox.el (org-export-resolve-fuzzy-link): Ignore statistics
  cookies when matching an headline.
* testing/lisp/test-ox.el: Add test.
2013-02-16 15:05:45 +01:00
Bastien Guerry 9c4d403ada org.el (org-mode): Use org-unmodified during startup initialization for functions that may be inhibited
* org.el (org-mode): Use org-unmodified during startup
initialization for functions that may be inhibited.
2013-02-16 14:10:14 +01:00
Bastien Guerry adcc0d414b org-table.el (org-table-align): Only set the window start when table alignment is performed in the selected window
* org-table.el (org-table-align): Only set the window start
when table alignment is performed in the selected window.

Thanks to Michael Brand for reporting this.

When opening an .org file from another .org file, org-mode
is initialized in the second one while the window is not yet
selected.  So, functions run during org-mode's initialization
need to check if the org-mode window is the selected one before
manipulating the "current window".
2013-02-16 14:08:47 +01:00
Bastien Guerry 09ffff9cee Merge branch 'master' of orgmode.org:org-mode 2013-02-16 11:35:59 +01:00
Bastien Guerry 25aabd7d2f org-src.el (org-edit-src-auto-save-idle-delay): New option
* org-src.el (org-edit-src-auto-save-idle-delay): New option.
(org-src-ask-before-returning-to-edit-buffer): Make a defcustom.
(org-edit-src-code-timer): New timer variable.
(org-edit-src-code): Run the timer.
(org-edit-fixed-width-region): Enhance message.
(org-edit-src-exit): Cancel the timer.

Thanks to Andreas Leha for suggesting this.
2013-02-16 11:35:39 +01:00
Achim Gratz 213e168c53 Merge branch 'maint' 2013-02-16 11:15:37 +01:00
Achim Gratz 45d52bfb4c fix wrong key for org-reload uncompiled in menu
* lisp/org.el (org-org-menu): Use correct key "C-u C-c C-x !" to do
  org-reload uncompiled in the menu.

The key binding has been changed in 8619361669 due to a conflict with
agenda mode, but the menu entry had never been corrected.
2013-02-16 11:14:35 +01:00
Bastien Guerry 602d6edb56 org-src.el: Prevent saving when editing fixed-width buffer, exiting will save already
* org-src.el (org-edit-src-save): Prevent saving when editing
fixed-width buffer, exiting will save already.
(org-edit-src-exit): Inconditionally kill the src/example
editing buffer.
2013-02-16 10:35:08 +01:00
Nicolas Goaziou 3eac442249 ox: Display a visible help for scrolling dispatcher's buffer
* lisp/ox.el (org-export--dispatch-ui): Display a help message in
  header line for scrolling dispatcher's buffer
2013-02-16 08:59:45 +01:00
Bastien Guerry 9215a8c6c3 org-pcomplete.el (pcomplete/org-mode/file-option): Require 'org-element.
* org-pcomplete.el (pcomplete/org-mode/file-option): Require
'org-element.  This fixes a bug about unbound variable
`org-element-affiliated-keywords' when trying to complete a
keyword before 'org-element was required.
2013-02-16 08:26:08 +01:00
Bastien Guerry 88c79b8071 Clean up commented code. 2013-02-16 07:56:43 +01:00
Aaron Ecay 23d9920e00 org-bibtex.el: Use visual-line-mode instead of longlines-mode
* org-bibtex.el (org-bibtex-ask): Use visual-line-mode instead
of longlines-mode.

TINYCHANGE
2013-02-15 23:36:16 +01:00
Bastien Guerry 996e3b6da3 Merge branch 'master' of orgmode.org:org-mode 2013-02-15 23:11:28 +01:00
Bastien Guerry 1ee94060bc org-list.el (org-list-bullet-string): Small fix
* org-list.el (org-list-bullet-string): Replace match when
there is a match, otherwise just return the bullet.
2013-02-15 23:09:10 +01:00
Nicolas Goaziou 2df6ded853 ox: Fix radio link resolution
* lisp/ox.el (org-export-resolve-radio-link): Radio targets are
  case-insensitive.
* testing/lisp/test-ox.el: Add test.
2013-02-15 23:03:29 +01:00
Bastien Guerry 6dd035c925 Merge branch 'master' of orgmode.org:org-mode 2013-02-15 22:59:29 +01:00
Bastien Guerry 7c9663eb4a org-src.el: Allow to abort editing with C-c k
* org-src.el (org-src-mode-map): New binding C-c k to abort
editing.
(org-edit-src-code): Mention the keybinding to abort editing
and go back to the correct position.
(org-edit-src-abort): New command to abort editing.

Thanks to Zech for suggesting this.
2013-02-15 22:59:13 +01:00
Nicolas Goaziou daa1d7d8f8 Fix some docstrings
* lisp/ox-icalendar.el (org-export-icalendar): Fix docstring.
* lisp/ox.el (org-export-dispatch): Fix docstring.
2013-02-15 22:01:49 +01:00
Bastien Guerry 451e8be770 ox-html.el (org-html--build-meta-info): Add a newline before the title meta information
* ox-html.el (org-html--build-meta-info): Add a newline before
the title meta information.
2013-02-15 21:50:35 +01:00
Nicolas Goaziou 68ab722a49 ox: Small improvement to scrolling
* lisp/ox.el (org-export--dispatch-action): Small improvement to line
  by line scrolling.
2013-02-15 18:32:47 +01:00
Nicolas Goaziou 4f2fccefc5 ox: Small refactoring
* lisp/ox.el (org-export-resolve-fuzzy-link): Refactor.
2013-02-15 18:30:14 +01:00
Nicolas Goaziou 78a652716e ox: Whitespaces are not significant when matching a fuzzy link
* lisp/ox.el (org-export-resolve-fuzzy-link): Whitespaces are not
  significant when matching a fuzzy link.
* lisp/org-element.el (org-element-link-parser): Do not remove
  newlines characters in paths anymore, since this is not required.
* testing/lisp/test-org-element.el: Update tests.
* testing/lisp/test-ox.el: Add test.
2013-02-15 18:08:03 +01:00
Nicolas Goaziou 5a1d46b990 ox: Implement vertical scrolling in non-expert UI
* lisp/ox.el (org-export--dispatch-ui): Renamed from
  `org-export-dispatch-ui'.  Handle scrolling.
(org-export--dispatch-action): Renamed from
`org-export-dispatch-action'.  Implement scrolling.
(org-export-dispatch): Apply renaming.

Heavily based on a patch from Jambunathan K.
2013-02-15 17:24:20 +01:00
Bastien Guerry 1298b6468a Merge branch 'master' of orgmode.org:org-mode 2013-02-15 16:48:40 +01:00
Bastien Guerry 7306e04193 org.el (org-return-follows-link): Mention that this does not affect the behavior of RET in tables
* org.el (org-return-follows-link): Mention that this does not
affect the behavior of RET in tables.
2013-02-15 16:44:58 +01:00
Bastien Guerry 4d7f4d87fb Fix last commit 2013-02-15 16:42:04 +01:00
Nicolas Goaziou 0b6a2e2416 C-c C-c does nothing when at a blank line
* lisp/org.el (org-ctrl-c-ctrl-c): Do nothing when at a blank line,
  but still run `org-ctrl-c-ctrl-c-final-hook'.
2013-02-15 16:14:15 +01:00
Nicolas Goaziou dbadb2916b Remove unnecessary `ignore-error'
* lisp/org.el (org-end-of-line): Remove `ignore-error'.  It is
  unnecessary since 3bc8c9647a.
2013-02-15 16:14:09 +01:00
Nicolas Goaziou 3bc8c9647a org-element: Fix error and infloop in `org-element-at-point'
* lisp/org-element.el (org-element-at-point): Return nil when in the
  first empty lines of the buffer.  Return headline when in empty
  lines just after the headline.
2013-02-15 16:13:53 +01:00
Bastien Guerry 94dbeedd4a ox-html.el (org-html--build-mathjax-config): Do not always include MathJax configuration
* ox-html.el (org-html--build-mathjax-config): Only include
MathJax configuration if the resulting HTML contains LaTeX
fragments.
2013-02-15 15:50:38 +01:00
Bastien Guerry 0641a22606 Fix typo and compiler warnings 2013-02-15 15:39:12 +01:00
Nicolas Goaziou a8e48bd3a8 Prevent export to file from overwriting current file
* lisp/ox.el (org-export-output-file-name): Add a protection when
  output file name is the same as the original org.
* testing/lisp/test-ox.el: Add tests.
2013-02-15 15:06:01 +01:00
Nicolas Goaziou 5bceb62142 ox-latex/beamer: Fix reported error when no suitable class is found
* lisp/ox-beamer.el (org-beamer-template): Add missing `class'
argument for `format-string'.
* lisp/ox-latex.el (org-latex-template): Add missing `class' argument
for `format-string'.

Thanks to Sébastien Vauban for reporting the problem and providing the
initial patch.
2013-02-15 14:18:59 +01:00
Bastien Guerry 5cdf84ea68 org.el: New functions `org-drag-line-forward' and `org-drag-line-backward'
* org.el (org-syntax-table, org-transpose-words): Delete.
(org-mode): Syntactically Define {} and <> as parentheses.
(org-drag-line-forward, org-drag-line-backward): New
functions.
(org-shiftmetaup, org-shiftmetadown): Fall back on the new
functions instead of throwing an error.

M-up/down used to drag a line up or down in contexts where it could not do
another move.  When org-element.el was integrated to core, dragging line by
line was not possible anymore since a line is not an "element".  This
commit reintroduces the ability to drag a line up/down with S-M-<up/down>.
2013-02-15 12:12:15 +01:00
Bastien Guerry 7afb487a28 org.el (org-make-org-heading-search-string): Don't use statistic or [x/y] cookies when creating a link
* org.el (org-make-org-heading-search-string): Don't use
statistic or [x/y] cookies when creating a link.

Thanks to William Lechelle for reporting this.
2013-02-15 11:15:57 +01:00
Nicolas Goaziou 8768fd125f ox: Docstring fix
* lisp/ox.el (org-export-stack-mode): Fix docstring.
2013-02-14 20:38:31 +01:00
Gregor Kappler 12d592b732 Export: Prevent babel src blocks from being evaluated if org-export-babel-evaluate is nil
* lisp/ox.el (org-export-as): Make sure org-export-babel-evaluate is not nil before calling `org-export-execute-babel-code'.

TINYCHANGE
2013-02-14 18:58:51 +01:00
Jonathan Leech-Pepin 0f6cb7f850 ox-texinfo: Ensure detailed menu generation does not exceed maximum
recognized depth

* lisp/ox-texinfo.el (org-texinfo-max-toc-depth): Maximum depth
  recognized by texinfo for nodes and sectioning.  Left as a constant
  to be updated if ever necessary.
(org-texinfo--generate-detailed): Use the smaller between
org-texinfo-max-toc-depth and headline levels (H: )
2013-02-14 11:59:48 -05:00
Nicolas Goaziou 3f421f309f Small fixes to completion
* lisp/org-pcomplete.el (pcomplete/org-mode/file-option): Allow
  completion for ATTR_ prefixed keywords.
* lisp/org.el (org-options-keywords): Add missing colons.
2013-02-14 17:50:58 +01:00
Bastien Guerry 131d70ab48 ox-html.el (org-html-table): Append #+attr_html attributes
* ox-html.el (org-html-table): Append #+attr_html attributes.

Thanks to Дядов Васил Стоянов for reporting this and for a preliminary
patch.
2013-02-14 11:07:18 +01:00
Bastien Guerry 6aa8829a1a Merge branch 'maint' 2013-02-14 10:40:04 +01:00
Bastien Guerry 981c6db3d7 Enhance doc wrt interactions between `org-startup-folded' and `org-agenda-inhibit-startup'
* org.el (org-startup-folded):
* org.texi (Visibility cycling): Suggest to set
`org-agenda-inhibit-startup' to nil if user wants the startup
visibility settings to be honored in any circumstances.

Thanks to Tassilo for pointing this.
2013-02-14 10:39:54 +01:00
Bastien Guerry 7a4d026b67 Remove references to the DocBook exporter
* org.el (org-emphasis-alist, org-protecting-blocks):
* org-src.el (org-edit-src-find-region-and-lang):
* org-list.el (org-list-forbidden-blocks):
* org-footnote.el (org-footnote-forbidden-blocks): Remove
references to the deleted DocBook exporter.

* org.texi (Top, Markup, Initial text, Images and tables)
(@LaTeX{} fragments, @LaTeX{} fragments, Exporting)
(Export options, JavaScript support, Beamer class export):
Remove references to the DocBook export, which has been
deleted.
(History and Acknowledgments): Mention that DocBook has been
deleted, suggest to use the Texinfo exporter instead, then to
convert the .texi to DocBook with makeinfo.
(Links in ODT export, Tables in ODT export): Fix indices.
2013-02-14 09:48:36 +01:00
Grégoire Jadi 7ddeb6fdf5 org.el (org-startup-with-latex-preview): New option
* org.el (org-startup-with-latex-preview): New option.
(org-startup-options): New startup keywords for the new
option.
(org-mode): Turn on/off LaTeX preview depending on the new
option.
2013-02-14 09:15:38 +01:00
Arun Persaud b0b3fcf49b added option %b to display breadcrumbs in agenda
* org-agenda.el (org-agenda-prefix-format): Add documentation for
the new %b option.
(org-prefix-has-breadcrumbs): Add flag, `t' when %b is set.
(org-agenda-format-item): Add breadcrumbs if requested.
(org-compile-prefix-format): Add compiled information for
breadcrumbs, add %b option.

If org file has the structure

* project
** task1
*** TODO item1

then when using %b in org-agenda-prefix-format the agenda will display
"project->taks1->TODO item1".
2013-02-14 08:54:00 +01:00
Nicolas Goaziou 19eae5dc00 org-pcomplete: Fix completion for file options
* lisp/org.el (org-options-keywords): Add missing colons.
* lisp/org-macs.el (org-default-options): Removed function.
* lisp/org-pcomplete.el (org-command-at-point): Fix bug with some file
  options.
(pcomplete/org-mode/file-option/x): Removed macro.
(pcomplete/org-mode/file-option): Refactor code.
(pcomplete/org-mode/file-option/author,
pcomplete/org-mode/file-option/date,
pcomplete/org-mode/file-option/title,
pcomplete/org-mode/file-option/tags,
pcomplete/org-mode/file-option/select_tags,
pcomplete/org-mode/file-option/priorities,
pcomplete/org-mode/file-option/language,
pcomplete/org-mode/file-option/filetags,
pcomplete/org-mode/file-option/exclude_tags,
pcomplete/org-mode/file-option/email): New functions.
2013-02-14 08:48:18 +01:00
Bastien Guerry 791a8d6bcc Merge branch 'maint' 2013-02-13 19:27:01 +01:00
Bastien Guerry 6d7142b145 Fix `org-insert-heading-respect-content'
* org-mobile.el (org-mobile-edit): DTRT when inserting a heading
in an invisible region.

* org.el (org-insert-heading-respect-content): New
`invisible-ok' parameter.  Add docstring.
(org-insert-todo-heading-respect-content): Add docstring.

Thanks to James Harkins for the extra detailed reports and
the proposed solutions, both for org.el and org-mobile.el.
2013-02-13 19:26:50 +01:00
Bastien Guerry afcb175e05 org.el (org-end-of-line): Don't throw an error outside elements
* org.el (org-end-of-line): Don't throw an error outside
elements.
2013-02-13 16:43:55 +01:00
Bastien Guerry 2108d294db Silent byte-compiler 2013-02-13 16:30:36 +01:00
Grégoire Jadi 67febc3600 Unify `org-id-reverse-string' and `org-babel-reverse-string' into `org-reverse-string'
* lisp/org.el (org-reverse-string): Add `org-reverse-string' to
  reverse a string.
* lisp/org-id.el(org-id-new, org-id-decode): Replace
  `org-id-reverse-string' by `org-reverse-string'.
* lisp/ob-core.el(org-babel-trim): Replace `org-babel-reverse-string'
  by `org-reverse-string' and declare it.

TINYCHANGE
2013-02-13 16:29:09 +01:00
Samuel Loury 9964d89d1b org.el (org-open-at-point): Open a plain link even if the cursor is before it
* org.el (org-open-at-point): Open a plain link even if the
cursor is before it, which is consistent with the behavior
with respect to bracket and angle links.

TINYCHANGE
2013-02-13 16:22:04 +01:00
Bastien Guerry 69032736c1 Merge branch 'master' of orgmode.org:org-mode 2013-02-13 16:04:02 +01:00
Nicolas Goaziou 39ed70495c ox: Correctly handle footnote section
* lisp/ox.el (org-export--collect-headline-numbering): Remove footnote
  section from TOC.
(org-export-collect-headlines): Do not count footnote section when
numbering a headline.
* testing/lisp/test-ox.el: Add tests.
2013-02-13 16:00:27 +01:00
Bastien Guerry 9d85946992 ox-html.el (org-html-link): Don't throw an error if the value of the :ID: property has not been generated by uuidgen
* ox-html.el (org-html-link): Don't throw an error if the
value of the :ID: property has not been generated by uuidgen.

Thanks to Florian Beck for requesting this.
2013-02-13 15:55:26 +01:00
Bastien Guerry a6ac2b5fed Merge branch 'maint' 2013-02-13 15:15:53 +01:00
Bastien Guerry fa3385e68b ob-tangle.el (org-babel-tangle-collect-blocks): Bugfix: remove code references from blocks
* ob-tangle.el (org-babel-tangle-collect-blocks): Bugfix:
remove code references from blocks.

Thanks a lot to Michael Alan Dorman for reporting this.
2013-02-13 15:15:42 +01:00
Bastien Guerry e292a1e2b8 Fix commit 03f1cf and 3f0b60. 2013-02-13 15:13:57 +01:00
Nicolas Goaziou 2fa53e44a7 ox-beamer: Allow both #+attr_latex and #+attr_beamer attributes
* lisp/ox-beamer.el (org-beamer-plain-list): Also read #+attr_latex
  attributes in order to determine list's options.
2013-02-13 14:31:38 +01:00
Bastien Guerry 977412f468 Merge branch 'master' of orgmode.org:org-mode 2013-02-13 14:29:36 +01:00
Bastien Guerry 03f1cffcd5 Restore completion over the most important keywords
* org-pcomplete.el (pcomplete/org-mode/file-option/x):
Resurrect.  Use `org-default-options' to initialize completion
fonctions for the most important keywords.

* org-macs.el (org-default-options): Rename and adapt from
`org-get-current-options'.

This is a partial revert of e14cf780 feature-wise.  The idea is
that it may be useful to get completion, even when it ends up with
the default value, because the user may want to adapt the default
values instead of re-typing them.
2013-02-13 14:29:31 +01:00
Bastien Guerry 3f0b608243 org.el (org-options-keywords): Add keywords
* org.el (org-options-keywords): Add keywords.
2013-02-13 14:25:36 +01:00
Nicolas Goaziou 88925e2e0b ox-ascii: Include footnote definitions even in a body-only export
* lisp/ox-ascii.el (org-ascii-inner-template): New function.
(org-ascii-template): Use new function.
(org-ascii-export-as-ascii, org-ascii-export-to-ascii): Update
docstring.
2013-02-13 13:57:34 +01:00
Nicolas Goaziou f3c79f9181 org-element: Fix 9f8f32c360
* lisp/org-element.el (org-element-link-parser): Take into
  consideration links filled and indented.
2013-02-13 13:29:07 +01:00
Christopher Schmidt e7403d6912 org.el: Ignore errors when bindings keys in orgstruct-setup
* org.el (orgstruct-setup): Ignore errors around org-defkey.
2013-02-13 13:01:23 +01:00