Commit Graph

10428 Commits

Author SHA1 Message Date
Nicolas Goaziou 172ae310a8 org-export: Define tools for tables, table rows and table cells
* contrib/lisp/org-export.el (org-export-table-cell-width,
  org-export-table-cell-alignment, org-export-table-cell-borders,
  org-export-table-row-group, org-export-table-has-special-column-p,
  org-export-table-row-is-special-p, org-export-get-parent-table,
  org-export-table-dimensions, org-export-table-cell-address,
  org-export-get-table-cell-at, org-export-table-has-header-p,
  org-export-table-cell-starts-colgroup-p,
  org-export-table-cell-ends-colgroup-p,
  org-export-table-row-starts-rowgroup-p,
  org-export-table-row-ends-rowgroup-p,
  org-export-table-row-starts-header-p,
  org-export-table-row-ends-header-p): New functions.
(org-export-table-format-info, org-export-clean-table): Removed
functions.
(org-export-filter-table-cell-functions,
org-export-filter-table-row-functions): New variables.
(org-export-filters-alist): Install new filters.
(org-export-collect-tree-properties, org-export--skip-p): Mark special
rows and cells as ignored.
* testing/lisp/test-org-export.el: Add tests.
2012-04-22 19:41:45 +05:30
Nicolas Goaziou eeeee5f1da org-element: Split tables into table-row elements and table-cell objects
* contrib/lisp/org-element.el (org-element-table-parser): Split tables
  into table-row elements and table-cell objects.
(org-element-table-interpreter): Adapt interpreter to new code.
(org-element-table-row-parser, org-element-table-row-interpreter,
org-element-table-cell-parser, org-element-table-cell-interpreter,
org-element-table-cell-successor, org-element-table-row-successor,
org-element-restriction): New functions.
(org-element-headline-parser,
  org-element-inlinetask-parser, org-element-item-parser,
  org-element-verse-block-parser,
  org-element-footnote-reference-parser,
  org-element-collect-affiliated-keywords, org-element-parse-objects):
  Use new function
(org-element-all-objects): Add new objects.
(org-element-target-parser): Small change to docstring.
(org-element-object-restrictions): Merge `org-element-string-restrictions'
into it.
(org-element-string-restrictions): Remove variable.
(org-element-parse-elements): Parse objects in non-recursive elements
with contents.
(org-element-normalize-string): Small refactoring.
(org-element-at-point): Handle table navigation.
* testing/lisp/test-org-element.el: Add tests.
2012-04-22 19:41:28 +05:30
Jambunathan K aa2e5308ee Move contrib/lisp/org-e-*.el to EXPERIMENTAL/ 2012-04-22 19:41:10 +05:30
Bastien Guerry de7c48759c Let `org-toggle-sticky-agenda' output a message only when called interactively.
* org-agenda.el (org-toggle-sticky-agenda): Only shout a
message when called interactively.
(org-agenda-get-restriction-and-command): Call
`org-toggle-sticky-agenda' interactively.
2012-04-22 15:27:21 +02:00
Achim Gratz 0a9c29d305 allow customization of the "doc" target to skip certain types of documentation
* doc/Makefile: read targets to make for "doc" from $(ORG_MAKE_DOC),
  defaults to "info html pdf"; can be overridden by the user in
  local.mk.

* targets.mk: read targets to make for "doc" and "docs" from
  $(ORG_MAKE_DOC), defaults to "info html pdf"; can be overridden by
  the user in local.mk.

* default.mk: document ORG_MAKE_DOC and provide a (commented) example
  of how to have make only produce info documentation.
2012-04-22 10:51:29 +02:00
Achim Gratz 7993ae4816 fix bug introduced with aliasing target "doc" to "docs"
* targets.mk: $(SUBDIRS) must not be used as a dependency since "doc"
  is both an existing directory and a phony target
2012-04-22 10:51:25 +02:00
Achim Gratz 22447fe485 fix typo
* doc/Makefile: fix typo, it is org-version.inc, not org-version.texi
2012-04-22 10:51:21 +02:00
Bastien Guerry 18cf324f07 org-agenda.el: Fix bug in top-category filtering.
* org-agenda.el (org-agenda-top-category-filter): New variable
for storing the current top-category filter.
(org-agenda-redo): Apply a top-category filter, if any.
(org-agenda-filter-by-top-category)
(org-agenda-filter-top-category-apply): Set
`org-agenda-top-category-filter' to the right value.

Thanks to John Wiegley for reporting this.
2012-04-22 09:21:42 +02:00
Bastien Guerry ef956d7181 When clocking, Don't modify `frame-title-format' if it is a string.
* org-clock.el (org-clock-out, org-clock-cancel)
(org-clock-in): Don't modify `frame-title-format' if it is a
string.

Thanks to Mike McLean for reporting this and to Matt Lundin for
pointing at the problem in the code.
2012-04-22 09:01:28 +02:00
Bastien Guerry a1fd7c4626 org-latex.el: Fix bug when escaping special characters in a table.
* org-latex.el (org-export-latex-special-chars): Fix bug when
escaping special characters in a table.

Thanks to Alexander Willand for reporting this.
2012-04-22 08:42:35 +02:00
Bastien Guerry c2a6f5de6e Use :inverse-video t for `org-date-selected'.
* org.el (org-read-date): Set cursor-type to nil in the calendar.

* org-faces.el (org-date-selected): Use inverse video.  Don't explicitely
set bold to nil as it causes `customize-face' to show the weight property
and thus encourage the user to change it.  Warn in the docstring that using
bold might cause problems when displaying the calendar.

Using inverse video for the selected date might be too much for many
people, but with cursor-type set to nil (thanks to Toby Cubitt for this)
and with a light-weight font, we need to really highlight the selected
date -- and a simple color change is not catchy enough IMO.
2012-04-22 07:54:32 +02:00
Bastien Guerry eabf8984be Merge branch 'maint' 2012-04-22 00:44:27 +02:00
Bastien Guerry 76c38183bb org-faces.el (org-date-selected): Fix docstring.
* org-faces.el (org-date-selected): Fix docstring.

Thanks to Toby Cubitt for pointing this.
2012-04-22 00:44:03 +02:00
Martyn Jago 6b6f0d625b Fix require path due to removal of EXPERIMENTAL
* contrib/lisp/org-export.el:

path relative to org-export.el has changed due
to relocation of org-e-publish.el (removal of
EXPERIMENTAL)
2012-04-21 23:51:38 +02:00
Bastien Guerry abd49c8aae Deleate trailing whitespaces. 2012-04-21 17:44:47 +02:00
François Allisson 0189c5d2d9 Update of contrib/README 2012-04-21 17:44:29 +02:00
Achim Gratz c83da85416 provide an easier way to get the old behaviour of plain "make" back
* Makefile: move setup includes to top

* lisp/Makefile: reduce verbosity of org-version.el target, add a more
  friendly @echo instead.

* targets.mk: provide compatibility target "oldorg" to do "compile
  autoloads info" which is closest to the old behaviour.
2012-04-21 17:38:49 +02:00
Achim Gratz c5377f6034 always make version files
* doc/Makefile: make org-version.inc .PHONY so that it is always re-made.

* lisp/Makefile: make org-version.el .PHONY so that it is always re-made.
2012-04-21 17:38:43 +02:00
Andrew Hyatt 44e7ed1a59 Allow archiving to a datetree.
* org-archive.el (org-archive-subtree): Allow archiving to a
datetree.

* org.el (org-archive-location): Ditto.

* org.texi (Moving subtrees): Document the ability to archive
to a datetree.

TINYCHANGE
2012-04-21 17:37:48 +02:00
Bastien Guerry b112ac9c2f Add etc/ORG-NEWS
This file will go in Emacs repository.

This version is a draft.  Instead of sorting by versions,
we should try to detail new features, incompatible changes
and important bug fixes.  Since 6.33x...
2012-04-21 16:26:28 +02:00
Bastien Guerry a43e1d0ce7 Delete BUGFIXING/org-log.el. 2012-04-21 16:23:03 +02:00
Bastien Guerry bafd9a42f8 Move EXPERIMENTAL/* into contrib/lisp/ and change org-export.el accordingly. 2012-04-21 16:22:31 +02:00
Achim Gratz f6c2848dfb * add missing dependencies on org-version.inc
* doc/Makefile: org-version.inc must be a dependency of "pdf" and "html"
2012-04-21 16:09:02 +02:00
Bastien Guerry cd053cc12f Merge branch 'maint' into master-merge-maint
Conflicts:
	lisp/org-footnote.el
	lisp/org.el
2012-04-21 16:05:22 +02:00
Bastien Guerry 9d01202a7b Remove * character in front of variable docstring.
* org-ctags.el (org-ctags-new-topic-template): Remove *
character in front of variable docstring.

* org-protocol.el (org-protocol-protocol-alist): Ditto.

See http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=0fc749f9cc4a3c6f36715bb05e03469eee149b15
2012-04-21 16:03:20 +02:00
Bastien Guerry 58bef074a7 org-id.el (org-id-update-id-locations): New parameter to silent `org-id-find'.
* org-id.el (org-id-update-id-locations): New parameter to
silent `org-id-find'.
(org-id-find): Use the new parameter.

Thanks to Sébastien Vauban for raising a related issue.
2012-04-21 15:46:02 +02:00
Max Mikhanosha 7094dddca4 * lisp/org-agenda.el (org-agenda-quit): Fixed messed up parenthesis in previous commit
TINYCHANGE
2012-04-21 08:40:58 -04:00
Max Mikhanosha 9e4cacc803 Fix q key in sticky agenda not honoring org-agenda-restore-windows-after-quit
* lisp/org-agenda.el (org-agenda-quit): copy the code for optionally
  restoring window configuration after burying the sticky agenda
  buffer.
2012-04-21 08:32:12 -04:00
Achim Gratz 4d97b47fe5 clean up documentation and provide "doc" as alternative target for "docs"
* Makefile: make documentation follow the implementation.

* targets.mk: add "doc" as alternative target for "docs" to adhere
  more closely to standards
some fixes
2012-04-21 12:27:18 +02:00
Nicolas Goaziou 97b0696212 org-list: Fix bugs relative to item indentation
* lisp/org-list.el (org-list-struct-indent): Follow
  `org-list-demote-modify-bullet' specifications for ordered bullets.
(org-list-indent-item-generic, org-indent-item-tree,
org-outdent-item-tree): Fix bug when operating on a region.
(org-outdent-item, org-indent-item): Allow to operate on a region.
* lisp/org.el (org-shiftmetaleft, org-shiftmetaright): Allow to
  operate on a region.
* testing/lisp/test-org-list.el: Add tests.
2012-04-21 12:13:49 +02:00
Nicolas Goaziou 60b84d7f4b org-footnote: Fix positionning in HTML export without a footnote section
* lisp/org-footnote.el (org-footnote-normalize): Fix positionning in
  HTML export without a footnote section.
2012-04-21 12:13:37 +02:00
Ippei FURUHASHI 32bd764573 org.texi: Fix typos of function names in Agenda commands
* org.texi (Agenda commands): Fix two typos by giving corresponding
function names, according to `org-agenda-view-mode-dispatch'.

TINYCHANGE
2012-04-21 12:13:25 +02:00
Madan Ramakrishnan edb7e341d1 org-agenda.el: Fix `org-agenda-bulk-toggle'.
* org-agenda.el (org-agenda-bulk-mark): Truly make arg optional as
advertised by the function.

Problem here was that `org-agenda-bulk-toggle' calls
`org-agenda-bulk-mark' with no parameters; however, the (max arg 1)
call inside `org-agenda-bulk-mark' will fail with no parameter.

TINYCHANGE
2012-04-21 12:13:16 +02:00
Zachary Kanfer 4e4a7eb029 org.el (org-read-date-display): Fix bug when displaying the overlay.
* org.el (org-read-date-display): Fix bug when displaying the
overlay.

TINYCHANGE
2012-04-21 12:13:06 +02:00
Bastien Guerry 628431b06f org.el (org-mode): Don't use `buffer-face-mode' by default.
* org.el (org-mode): Don't use `buffer-face-mode' by default.

Still set `org-default' as the face for `buffer-face-mode-face' in
case the user turn `buffer-face-mode' on.
2012-04-21 12:12:54 +02:00
Bastien Guerry cde8a35f54 org.el: New face `org-date-selected' for the selected calendar day.
* org-faces.el (org-date-selected): New face.

* org.el (org-date-ovl): Use `org-date-selected'.

This fixes a problem with bold faces enlarging the calendar window
unduely.  See http://patchwork.newartisans.com/patch/1286/
2012-04-21 12:12:30 +02:00
Jambunathan K fef07abefb org-odt.el: Fix handling of internal links
* lisp/org-odt.el (org-odt-format-org-link): Pay no heed to
whether the internal links destined for headlines provide a
description or not.  In fact, the `org-store-link' and
`org-insert-link' create internal links which do have a
description.

This fixes an issue where internal links terminating at an
invisible target (that is bound to a headline) was badly
rendered.  Refer following thread:
http://lists.gnu.org/archive/html/emacs-orgmode/2012-04/msg00757.html
2012-04-21 12:11:40 +02:00
Jambunathan K 452d491204 * etc/styles/README: Update Copyright year 2012-04-21 12:11:28 +02:00
Jambunathan K 7c03bd928f OrgOdtStyles.xml: Fix indentation issues with description lists
* etc/styles/OrgOdtStyles.xml (OrgDescriptionList): Modify
style.  With this change, in a description list, if the
description paragraph spawns multiple lines then it will
correctly indented.
2012-04-21 12:11:15 +02:00
Bastien Guerry 80cc1ccd9e org-clock.el (org-program-exists): Fix docstring.
* org-clock.el (org-program-exists): Fix docstring.

Thanks to Sébastien Vauban for reporting this.
2012-04-21 12:10:51 +02:00
Bastien Guerry 08bd0b8892 Merge branch 'local-Makefile' into test-makefile-merge 2012-04-21 10:02:28 +02:00
Toby S. Cubitt 501b76ad36 Capture: Allow more control over inserted whitespace in capture templates
* lisp/org-capture.el (org-capture-place-entry): Place captured entry
immediately after last subheading of target, instead of just before
next heading at same level as target.
* lisp/org-capture.el (org-capture-templates): Document new capture
template properties.
* lisp/org-capture.el (org-capture-place-entry,
org-capture-empty-lines-before): Make new :empty-lines-before property
override :empty-lines when inserting empty lines before captured
captured entry.
* lisp/org-capture.el (org-capture-finalize,
org-capture-empty-lines-after): Make new :empty-lines-after property
override :empty-lines when inserting empty lines after captured
captured entry.
2012-04-21 01:57:54 +02:00
Bastien Guerry b857974f7d Small reformatting of testing/README. 2012-04-21 00:59:14 +02:00
Brian van den Broek 8f3dc945b2 Change example timestamps to not occur in headlines.
* org.texi: Alter several examples of headings with timestamps
in them to include the timestamps in the body instead of the heading.

* orgguide.texi: Alter the same examples in the same way as for
org.texi.

The Org-mode manual explicitly discourages the inclusion of timestamps
in headlines, yet examples do just that. These changes make the manual
consistent with its own advice.

TINYCHANGE
2012-04-21 00:43:24 +02:00
Bastien Guerry d5c0af72cf Use (derived-mode-p 'org-mode) instead of (eq major-mode 'org-mode).
* org.el (org-show-hierarchy-above, org-cycle)
(org-global-cycle, org-files-list, org-store-link)
(org-link-search, org-open-file, org-display-outline-path)
(org-refile-get-location, org-update-all-dblocks)
(org-change-tag-in-region, org-entry-properties)
(org-save-all-org-buffers, org-revert-all-org-buffers)
(org-buffer-list, org-cdlatex-mode)
(org-install-agenda-files-menu, org-end-of-subtree)
(org-speedbar-set-agenda-restriction): Use (derived-mode-p
'org-mode) instead of (eq major-mode 'org-mode).

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

* org-table.el (orgtbl-mode, org-table-align, orgtbl-mode): Ditto.

* org-src.el (org-edit-src-exit, org-edit-src-code)
(org-edit-fixed-width-region, org-edit-src-exit): Ditto.

* org-remember.el (org-remember-handler): Ditto.

* org-mouse.el (dnd-open-file, org-mouse-insert-item): Ditto.

* org-macs.el (org-get-limited-outline-regexp): Ditto.

* org-lparse.el (org-replace-region-by): Ditto.

* org-latex.el (org-latex-to-pdf-process)
(org-replace-region-by-latex): Ditto.

* org-indent.el (org-indent-indent-buffer): Ditto.

* org-id.el (org-id-store-link, org-id-update-id-locations)
(org-id-store-link): Ditto.

* org-html.el (org-export-html-preprocess)
(org-replace-region-by-html): Ditto.

* org-footnote.el (org-footnote-normalize)
(org-footnote-goto-definition)
(org-footnote-create-definition, org-footnote-normalize): Ditto.

* org-docbook.el (org-replace-region-by-docbook): Ditto.

* org-ctags.el (find-tag): Ditto.

* org-colview.el (org-columns-redo)
(org-columns-display-here, org-columns-edit-value)
(org-columns-redo): Ditto.

* org-colview-xemacs.el (org-columns-redo)
(org-columns-display-here, org-columns-edit-value)
(org-columns-redo): Ditto.

* org-capture.el (org-capture-insert-template-here)
(org-capture, org-capture-finalize)
(org-capture-set-target-location)
(org-capture-insert-template-here): Ditto.

* org-ascii.el (org-replace-region-by-ascii):  Ditto.

* org-archive.el (org-archive-subtree): Ditto.

* org-agenda.el (org-agenda)
(org-agenda-get-restriction-and-command)
(org-agenda-get-some-entry-text, org-search-view)
(org-tags-view, org-agenda-get-day-entries)
(org-agenda-format-item, org-agenda-goto, org-agenda-kill)
(org-agenda-archive-with, org-agenda-switch-to): Ditto.
2012-04-21 00:43:16 +02:00
Dave Abrahams a84fa6eccd org.el: Make links more readable when selecting them for insertion.
* org.el (org-link-prettify): New function to prettify links
while displaying them with `org-insert-link'.
(org-insert-link): Use the new function.

TINYCHANGE
2012-04-21 00:43:02 +02:00
Feng Shu a9d3ce0bcd Allow to use imagemagick for previewing LaTeX fragements.
* org.el (org-latex-create-formula-image-program): New option
to use either dvipng or imagemagick to convert and preview
LaTeX fragments.
(org-preview-latex-fragment, org-format-latex): Handle the new
option.
(org-create-formula-image-with-dvipng): Rename from
`org-create-formula-image'.
(org-create-formula-image-with-imagemagick): New defun to
handle LaTeX preview with imagemagick.
(org-latex-color, org-latex-color-format): New defuns to
handle color conversions.

* org-latex.el (org-latex-to-pdf-process, org-export-as-pdf):
Allow to use imagemagick to convert LaTeX fragments.

* org-html.el (org-export-html-preprocess): Ditto.

* org-exp.el (org-export-with-LaTeX-fragments): Ditto.

* org.texi (@LaTeX{} fragments): Document imagemagick as an
alternative to dvipng.
2012-04-21 00:42:59 +02:00
Bastien Guerry ec921a2a68 Support hourly repeat cookies.
* org.el (org-repeat-re)
(org-clone-subtree-with-time-shift, org-auto-repeat-maybe)
(org-deadline, org-schedule, org-matcher-time)
(org-time-stamp, org-read-date, org-read-date-get-relative)
(org-display-custom-time, org-get-wdays)
(org-time-string-to-absolute, org-closest-date)
(org-timestamp-change): Allow to set hourly repeat cookie.
Send an error when an hourly repeat cookie is set and no hour
is specified in the timestamp.

* org.texi (Repeated tasks): Document repeat cookies for
years, months, weeks, days and hours.

* org-agenda.el (org-agenda-get-timestamps): Match hourly
repeat cookies.

* org-icalendar.el (org-print-icalendar-entries): Handle
hourly repeat cookies.

Thanks a lot to Takafumi Arakaki for this idea and for a preliminary
version of this patch.
2012-04-21 00:42:56 +02:00
Achim Gratz e102e411e4 doc/Makefile: rename/add auto-generated files to be compatible with Emacs
* doc/Makefile: rename auto-generated file "git-describe.texi" to
  "org-version.inc" to allow for easier inclusion into Emacs.

* doc/org.texi: include "org-version.inc" instead of
  "git-describe.texi".

* lisp/Makefile: new auto-generated file org-version.el with autoload
  cookies.  The version strings will be pulled during autoload
  extraction into org-install.el (standalone org-mode) or
  ../loaddefs.el (Emacs).
2012-04-20 21:04:14 +02:00
Achim Gratz b33a4d6be0 move testing configuration into user-defined part, add hints
* default.mk: move testing configuration $(BTEST_*) into
       user-defined part, add hints on what should go there. Some
       cosmetic fixes.
2012-04-20 21:04:14 +02:00