Commit Graph

7204 Commits

Author SHA1 Message Date
Bastien Guerry da9c67a7a5 org-agenda.el: Fix one byte-compiler warning 2012-08-28 15:10:44 +02:00
Bastien Guerry cc9487004d org-agenda.el: `org-search-view', `org-todo-list' and `org-tags-view' use sticky agenda correctly
* org-agenda.el (org-search-view, org-todo-list)
(org-tags-view): Do not let `org-agenda-sticky' prevent the
use of these functions programmatically.  Also use the sticky
agenda function correctly.
2012-08-28 15:06:47 +02:00
Bastien Guerry 38507b0493 org-agenda.el: Set `org-agenda-buffer-name' correctly in `org-agenda'
* org-agenda.el (org-agenda): Set `org-agenda-buffer-name'
correctly with sticky agendas and non-custom commands.
2012-08-28 14:37:49 +02:00
Bastien Guerry d2b807b1a6 Merge branch 'maint' of orgmode.org:org-mode into maint 2012-08-28 13:39:09 +02:00
Bastien Guerry e9fee9cd63 org-agenda.el (org-agenda-fit-window-to-buffer): Rename from `org-fit-agenda-window'
* org-agenda.el (org-agenda-fit-window-to-buffer): Rename from
`org-fit-agenda-window'.
(org-agenda-run-series, org-agenda-prepare, org-agenda-list)
(org-search-view, org-todo-list, org-tags-view): Use the new
name.
2012-08-28 13:36:43 +02:00
Bastien Guerry 29afec9cd0 org-agenda.el (org-agenda-prepare): Let `throw' display an error
* org-agenda.el (org-agenda-prepare): Let `throw' display an
error.
2012-08-28 13:31:52 +02:00
Bastien Guerry 23204aaab7 org-agenda.el: Fix bug in `org-agenda-list'
* org-agenda.el (org-agenda-list): Fix bug: don't throw an
error when called from programs as (org-agenda-list).

Thanks to Rainer Thiel for reporting this bug.
2012-08-28 13:29:37 +02:00
Nicolas Goaziou d58d40f0c8 Externalize filling and comments initializers
* lisp/org.el (org-mode): Call external initalizers.  Now both filling
  code and comments code have their own independant part in org.el.
(org-setup-filling): Renamed from `org-set-autofill-regexps'.
(org-setup-comments-handling): New function.
2012-08-28 13:27:58 +02:00
Bastien Guerry 72f25ccfd9 org-agenda.el (org-todo-list): Make arg optional
* org-agenda.el (org-todo-list): Make arg optional.
2012-08-28 13:17:29 +02:00
Nicolas Goaziou 11f119776a Improve filling
* lisp/org.el (org-fill-paragraph): Refine filling in comments and in
  paragraphs.  Allow commented blank lines.  Take into consideration
  the indentation of the second line of the paragraph being filled.
(org-comment-or-uncomment-region): Rewrite function.  Now comment
region at a fixed column: the minimal indentation of the region.
(org-fill-context-prefix): Rename function into
`org-adaptive-fill-function'. Also, In a paragraph, choose the same
prefix as the current line.
2012-08-28 13:12:09 +02:00
Bastien Guerry a9b8778b0c Code clean-up: rename some agenda internals.
* org.el (org-agenda-prepare-buffers): Rename from
`org-prepare-agenda-buffers'.
(org-match-sparse-tree, org-map-entries): Use the new names.

* org-agenda.el (org-agenda-prepare-window): Rename from
`org-prepare-agenda-window'.
(org-agenda-prepare): Rename from `org-prepare-agenda'.
(org-agenda-run-series, org-agenda-prepare, org-timeline)
(org-agenda-list, org-search-view, org-todo-list)
(org-tags-view, org-agenda-list-stuck-projects, org-diary)
(org-agenda-to-appt): Use the new names.

* org-mobile.el (org-mobile-create-index-file): Ditto.

* org-icalendar.el (org-export-icalendar): Ditto.

* org-clock.el (org-dblock-write:clocktable)
(org-dblock-write:clocktable): Ditto.

* org2rem.el (org2rem): Ditto.
2012-08-28 13:11:12 +02:00
Bastien Guerry 89cdbda63e org-agenda.el: Use the current command's match to set the buffer name
* org-agenda.el (org-agenda): In sticky agendas, use the
current command's match to set the buffer name.  This gives
more information to the user and allows to distinguish various
agendas triggered by the same key.
(org-batch-store-agenda-views): Handle the new sticky agenda
buffer name.
2012-08-28 13:02:01 +02:00
Bastien Guerry 9c2b17bac3 org-agenda.el: Use `S' as a key for searching words in TODO-only entries
* org-agenda.el (org-agenda)
(org-agenda-get-restriction-and-command): Use `S' as a key for
searching words in TODO-only entries.
2012-08-28 12:35:05 +02:00
Bastien Guerry 5590972648 org-agenda.el: Fit agenda window when displaying a sticky agenda
* org-agenda.el (org-prepare-agenda): Fit agenda window when
displaying a sticky agenda.
2012-08-27 21:24:23 +02:00
Bastien Guerry 3013b7c5dc org-table.el: Switch back to the old default for `org-table-number-regexp'
* org-table.el (org-table-number-regexp): Allow the user to
set it to a new regexp, which allows commas as decimal mark.
The default is to not use this setting, but the one before
commit 7ff8c1, which has ben reverted.

See the discussion here:
http://thread.gmane.org/gmane.emacs.orgmode/59389
2012-08-27 18:03:05 +02:00
Bastien Guerry 4a508fdfa4 Revert "org-table: Accept comma as a decimal mark to represent numbers"
This reverts commit 7ff8c166e6.
2012-08-27 17:55:18 +02:00
Bastien Guerry 97e4d643a8 Revert "org-table.el: Minor docstring update"
This reverts commit 5d57364256.
2012-08-27 17:55:05 +02:00
Bastien Guerry 424f3ecedb Fix bug when redoing multiple (agenda) blocks.
* org-agenda.el (org-agenda-overriding-cmd)
(org-agenda-multi-current-cmd)
(org-agenda-multi-overriding-arguments): New variables.
(org-agenda-run-series): `org-agenda-overriding-arguments'
defaults to the last agenda block arguments, so don't use it
globally.
(org-agenda-mark-header-line): Add properties needed so that
`org-agenda-overriding-arguments', `org-agenda-current-span'
and `org-agenda-last-arguments' can be set to their correct
contextual value.
(org-agenda-multi-back-to-pos): New variable.
(org-agenda-later): Retrieve `org-agenda-current-span' and
`org-agenda-overriding-arguments' from text properties.  Also
handle numeric span.
(org-agenda-later, org-agenda-change-time-span): Set
`org-agenda-overriding-cmd' so that we to take overriding
arguments into account for this command only.

The behavior for agenda blocks where there is only one (agenda)
command is not changed.  Changing the time span and redoing with
`g' will keep the new time span.  The behavior changed for blocks
where there are multiples (agenda) blocks.  In this case, redoing
will restore the initial view (before any time span change) and
changing the time span is done independantly for each block.

Thanks to Charles Philip Chan for reporting this nasty bug.
2012-08-27 17:52:22 +02:00
Nicolas Goaziou 857b980515 Fix commit 40084a55d1
* lisp/org-exp.el (org-export-handle-comments): Also remove comments
  at column 0.
2012-08-27 12:13:25 +02:00
Nicolas Goaziou 40084a55d1 org-exp: Handle inline comments with new syntax
* lisp/org-exp.el (org-export-handle-comments): Handle inline comments
  with new syntax.
2012-08-27 11:21:52 +02:00
Nicolas Goaziou 805a9f019d Add missing colon to #+INCLUDE in structure template
* lisp/org.el (org-structure-template-alist): Add missing colon to
  #+INCLUDE.
2012-08-27 09:11:01 +02:00
Nicolas Goaziou 664132667b Fix org-backward-element with point on first element in section
* lisp/org.el (org-backward-element): When called at the beginning of
  first element in section, the function shouldn't return an error but
  move point to headline or point-min instead.
* testing/lisp/test-org.el: Add test.
2012-08-26 23:44:51 +02:00
Bastien Guerry 3404ac84ec Move `org-toggle-sticky-agenda' again and autoload it
The previous related commit was to prevent an error
when M-x org-reload RET was reloading org files from
an ELPA directory.  We now autoload the function so
that it is know by the time org-reload might be called.
2012-08-26 23:44:49 +02:00
Bastien Guerry 290a035bfc Fix compiler warning. 2012-08-26 23:43:30 +02:00
Bastien Guerry d832837693 org-agenda.el: Define `org-toggle-sticky-agenda' before calling it 2012-08-26 23:24:40 +02:00
Bastien Guerry 4bde726bbb * org-compat.el (org-check-version): Autoload. 2012-08-26 20:04:41 +02:00
Sean O'Halpin 4b6b6f4799 Make it possible to use buffer local noweb start/end patterns
* lisp/ob.el (org-babel-expand-noweb-references): Capture current
noweb start and end patterns then use to set buffer locals in
(with-temp-buffer) form.

This solves the problem that using different patterns for
org-babel-noweb-wrap-start and org-babel-noweb-wrap-end could be done
only globally.

TINYCHANGE
2012-08-26 19:26:01 +02:00
Achim Gratz bf352eceda Rename utils/ to mk/, move some files to mk/ and make the requisite changes throughout
* Makefile: Include default.mk and targets.mk from mk/ where they've
  been moved to.

* README_maintainer: Rename utils to make throughout.

* doc/Makefile: Rename utils to make throughout.

* doc/org.texi: Remove reference to utils/, x11idle.c is now in
  contrib/scripts.

* mk/make_emacs_changelog: Add mk/ to list of directories not to be
  reported in Emacs' ChangeLog.  Also retain utils/ and re-add
  UTILITIES; add a comment explaining why these need to stay.

* mk/default.mk: Rename utils to make throughout.  Include version.mk
  from mk/ where it's been moved to.

* mk/targets.mk: Rename utils to make throughout.

* mk/server.mk: Rename utils to make throughout.  Only put those files
  from mk/ into the archives that are needed outside the server:
  default.mk targets.mk version.mk and org-fixup.el.

* lisp/org-compat.el: Rename utils to make throughout.

* .gitignore:  Rename utils to make throughout.
2012-08-26 15:27:19 +02:00
Bastien Guerry d85e7bc10a org-agenda.el: Fix bug when calling `org-agenda-kill' and `org-agenda-archive-with' with a non-nil value of `org-agenda-stick'
* org-agenda.el (org-agenda-kill, org-agenda-archive-with):
Fix bug when called with a non-nil value of `org-agenda-stick'.

Thanks to Moritz Ulrich for reporting this.
2012-08-26 14:53:59 +02:00
Bastien Guerry 74d1658c60 org-agenda.el (org-agenda-refile): Fix bug when refiling an sticky agenda entry
* org-agenda.el (org-agenda-refile): Fix bug when refiling an
entry from a sticky agenda.

Thanks a lot to Moritz Ulrich for reporting this.
2012-08-26 11:20:02 +02:00
Nicolas Goaziou 11082518ee org-element: Tiny refactoring
* lisp/org-element.el (org-element-paragraph-parser): Tiny refactoring.
2012-08-25 23:45:14 +02:00
Nicolas Goaziou 3113c5fce9 org-element: Small code comment clean-up
* lisp/org-element.el (org-element-paragraph-parser): Remove trailing
  code comments.
2012-08-25 23:30:29 +02:00
Nicolas Goaziou 90f6324dbf Add missing part from commit b4604d2833
* lisp/org.el (org-fill-context-prefix): Fix incorrect output when
  called at the beginning of a plain list with an affiliated keyword.
(org-fill-paragraph): Remove useless variable.
2012-08-25 15:41:01 +02:00
Nicolas Goaziou b4604d2833 org-element: Fix filling bug in a list with affiliated keyword
* lisp/org-element.el (org-element-paragraph-parser): Fix parsing of
   paragraph at the beginning of an item.
* testing/lisp/test-org-element.el: Add test.
2012-08-25 15:27:01 +02:00
Nicolas Goaziou 53334042b5 Fix bug in comment-dwin when at a keyword
* lisp/org.el (org-mode): Set back comment-start-skip so comment-dwin
  can tell a keyword from a comment.
* testing/lisp/test-org.el: Add test.
2012-08-24 21:58:48 +02:00
Bastien Guerry d44b56e81e org-agenda.el: Fix bug about restoring existing window conf
* org-agenda.el (org-prepare-agenda-window): Use
`org-pre-agenda-window-conf' if already set.
(org-agenda-Quit): Set `org-pre-agenda-window-conf' to nil
when quitting.
(org-agenda-quit): Ditto.

Thanks to Moritz Ulrich for reporting a bug about this.
2012-08-24 15:54:58 +02:00
Bastien Guerry dd31878ee7 org-capture.el: Protect the text used for replacement from being further replaced
* org-capture.el (org-capture-fill-template): Protect the text
used for replacement from being further replaced.

Thanks to Moritz Ulrich for reporting this bug.
2012-08-24 15:45:03 +02:00
Nicolas Goaziou 82007c40da Fix comment auto-filling
* lisp/org.el (org-set-autofill-regexps): Install new comment line
  break function.
(org-comment-line-break-function): New function.
(org-mode): Remove unnecessary line.
2012-08-24 14:57:00 +02:00
Bastien Guerry 5e7ffbe1d4 Merge branch 'master' of orgmode.org:org-mode 2012-08-24 14:23:07 +02:00
Bastien Guerry bfe3e2102f org.el: Fix the contextual check against a function
* org.el (org-contextualize-validate-key): Fix the check
against a function.
2012-08-24 14:22:45 +02:00
Nicolas Goaziou 8a97c601a1 Do not fill verse blocks contents
* lisp/org.el (org-fill-context-prefix, org-fill-paragraph): Do not
  fill verse blocks contents.  Verse blocks can be used to format
  free-form poetry, so filling has to be done manually.
* testing/lisp/test-org.el: Remove unnecessary tests.
2012-08-24 12:58:43 +02:00
Nicolas Goaziou b1223be34d Auto-filling must not break current paragraph
* lisp/org.el (org-fill-paragraph-separate-nobreak-p): New function.
(org-set-autofill-regexps): Introduce new predicate.
(org-fill-item-nobreak-p): Remove function.
2012-08-24 12:58:42 +02:00
Nicolas Goaziou 4bc4e8ec18 org-element: Paragraphs don't end at incomplete latex environments
* lisp/org-element.el (org-element-paragraph-separate): Since this
  variable is meant to be searched forward, \end{...} shouldn't
  trigger the end of a paragraph before checking if it is the end of
  a complete environment.
(org-element-latex-environment-parser): Slight change to the regexp
matching the beginning of a latex environment.
(org-element-paragraph-parser): Paragraphs don't end at incomplete
latex environments.
(org-element-latex-or-entity-successor): Remove paragraph environments
from latex fragment search.
2012-08-24 12:58:42 +02:00
Bastien Guerry 10dbdf5fc2 Update the handling of agenda/capture keys contextualization.
* org.el (org-contextualize-keys): Rename from
`org-contextualize-agenda-or-capture'.  Fix normalization to
handle empty key replacement string.
(org-contextualize-validate-key): Rename from
`org-contexts-validate'.  Allow checking against a custom
function.

* org-agenda.el (org-agenda-custom-commands-contexts): Update.
(org-agenda): Use `org-contextualize-keys'.

* org-capture.el (org-capture-templates-contexts): Ditto.

* org.texi (Templates in contexts, Setting Options): Update to
reflect changes in how contexts options are processed.
2012-08-24 12:18:05 +02:00
Bastien Guerry 9d73d6d680 org.el (org-contextualize-agenda-or-capture): Normalize contexts
* org.el (org-contextualize-agenda-or-capture): Normalize
contexts.
2012-08-24 12:18:02 +02:00
Bastien Guerry 6c94ea0518 Implement key replacement depending on the contexts.
* org.el (org-contextualize-agenda-or-capture): Handle key
replacement depending on the contexts.

* org-capture.el (org-capture-templates-contexts): Allow to
use the context as a way to replace one capture template by
another one.

* org-agenda.el (org-agenda-custom-commands-contexts): Allow
to use the context as a way to replace one agenda custom
command by another one.

* org.texi (Templates in contexts): Document the new structure
of the variables `org-agenda-custom-commands-contexts' and
`org-capture-templates-contexts'.

In the setup below, X is not a real capture template, it is just
an alias to templates A and B in .txt and .el files.  A and B are
deactivated by default in all files.

(setq org-capture-templates
      '(("X" "Nothing but an alias")
	("A" "AAAA" entry (file+headline [...]))
	("B" "BBBB" entry (file+headline [...]))))

(setq org-capture-templates-contexts
      '(("A" "A" ((not-in-file . ".*")))
	("B" "B" ((not-in-file . ".*")))
	("X" "A" ((in-file . "\\.txt")))
	("X" "B" ((in-file . "\\.el")))))

Thanks to Carsten for suggesting this "key-replacement" idea!
2012-08-24 12:17:58 +02:00
Bastien Guerry 0c8e87b8d2 Rename UTILITIES/ to utils/ 2012-08-23 12:47:10 +02:00
Bastien Guerry d378c7b41b Implement context filtering for agenda commands and capture templates.
* org.el (org-contextualize-agenda-or-capture)
(org-rule-validate): New functions, implement context
filtering for agenda commands and capture templates.

* org-agenda.el (org-agenda-custom-commands-contexts): New
option.
(org-agenda): Use it.

* org-capture.el (org-capture-templates-contexts): New option.
(org-capture-select-template): Use it.

* org.texi (Templates in contexts): Document the new option
`org-capture-templates-contexts'.
(Storing searches): Document the new option
`org-agenda-custom-commands-contexts'.

This idea comes from Sylvain Rousseau, who implemented a similar
feature with org-context.el: https://github.com/thisirs/org-context

This implementation is a bit simpler and more general.  Simpler
because it relies on existing templates, no need to define other
contextual ones.  More general because contexts can be defined
wrt files and modes.

Thanks *very much* to Sylvain for paving the way -- certainly a
great addition to Org.
2012-08-23 11:08:47 +02:00
Achim Gratz dd76fceddc Makefile: error out on invalid values of ORGCM
* lisp/Makefile: Check validity of value given in ORGCM and terminate
  with an error message if an illegal value is used.
2012-08-22 20:02:47 +02:00
Bastien Guerry 841d949d9c org.el: Delete `org-beginning-of-defun' and `org-end-of-defun'
* org.el (org-beginning-of-defun, org-end-of-defun): Delete.
(org-mode): Set `beginning-of-defun-function' and
`end-of-defun-function' directly.
2012-08-22 19:02:39 +02:00
Bastien Guerry 53c230a9f6 org.el: Fix bug: include links abbreviations when completing
* org.el (org-insert-link): Fix bug: include links
abbreviations when completing.
2012-08-22 12:24:14 +02:00
Bastien Guerry 7d8f69068e org-icalendar.el: Fix bug.
* org-icalendar.el (org-icalendar-print-entries): Fix bug:
when `org-icalendar-use-plain-timestamp' is nil, scheduled and
deadline items should not be ignored.

Thanks to Friedrich Delgado for reporting this.
2012-08-22 02:41:18 +02:00
Bastien Guerry 655c7fb360 org.el: Small docstring clean-up
* org.el (org-ds-keyword-length, org-make-tags-matcher):
Docstring clean-up.
2012-08-22 02:39:18 +02:00
Bastien Guerry 8e307a8ef2 org-freemind.el: Fix bug when converting links
* org-freemind.el (org-freemind-convert-links-from-org):
Replace literally to prevent errors when replacing with string
containing backslashes.

Thanks to Martin Beck for reporting this.
2012-08-22 00:42:02 +02:00
Bastien Guerry 65e0b5bccd org-pcomplete.el: Allow to match and complete a "thing" containing dashes
* org-pcomplete.el (org-thing-at-point): Allow to match (and
then complete) a "thing" containing dashes.

Thanks to Aidan Gauland for reporting this problem.
2012-08-22 00:20:09 +02:00
Achim Gratz 226b15baa0 Makefile: implement different compilation methods, rename _COMPILE_ to ORGCM
* default.mk, targets.mk, lisp/Makefile: Rename _COMPILE_ to ORGCM.

* default.mk: Define ORGCM=dirall, show other possible values as
  comments

* targets.mk: Implement target `single´, temporarily set
  ORGCM (overriding configuration).  Show newly introduced
  configuration variables with `check-*´.

* lisp/Makefile: Implement dispatch for compile based on ORGCM.
  Output header that contains the target for easier debugging.

* Makefile: Document target `single´.
2012-08-21 21:24:23 +02:00
Achim Gratz 3c1c04d8bc Revert "Revert "Makefile: allow for different compilation methods""
This reverts commit 510f6464b0.
2012-08-21 21:24:21 +02:00
Bastien Guerry 51b9ad93c9 org-table.el: Better message when interactively toggling Row/Col display
* org-table.el (org-table-toggle-coordinate-overlays): Better
message when interactively toggling.
2012-08-21 20:09:25 +02:00
Jay McCarthy ade209b7c5 org-colview.el: Make sure to add a face to a string that has no face
* org-colview.el (org-columns-new-overlay): Make sure to add a
face to a string that has no face.

TINYCHANGE

See the description of the bug here:
http://thread.gmane.org/gmane.emacs.orgmode/58984
2012-08-21 20:05:34 +02:00
Bastien Guerry 5d57364256 org-table.el: Minor docstring update
* org-table.el (org-table-number-regexp): Update the docstring
to show an example of a decimal number using the comma as a
separation mark.
2012-08-21 18:31:12 +02:00
Bastien Guerry 43df5aa25a Merge branch 'master' of orgmode.org:org-mode 2012-08-21 18:16:11 +02:00
Bastien Guerry 6a69ceaed6 org-agenda.el: Fix a bug in category filtering
* org-agenda.el (org-prepare-agenda): Minor code clean-up.
(org-agenda-filter-by-category): Filtering must be turned off
only when a category filter has been set and this filter is
not empty.
2012-08-21 18:12:16 +02:00
Bastien Guerry 88213fff61 org-agenda.el: Code clean-up
* org-agenda.el (org-search-view, org-agenda-get-todos)
(org-agenda-get-timestamps, org-agenda-get-sexps)
(org-agenda-get-progress, org-agenda-get-deadlines)
(org-agenda-get-scheduled, org-agenda-get-blocks): Use
`category-pos' instead of `org-category-pos'.
2012-08-21 18:01:30 +02:00
Nicolas Goaziou 7ff8c166e6 org-table: Accept comma as a decimal mark to represent numbers
* lisp/org-table.el (org-table-number-regexp): By default, accept
  comma as a decimal mark to represent numbers.
2012-08-21 13:53:57 +02:00
Bastien Guerry c71b0dacb1 Replace "ob-" by "org-babel-" as a prefix for two functions
* ob-fortran.el (org-babel-fortran-transform-list): Rename
from `ob-fortran-transform-list'.
(org-babel-fortran-var-to-fortran): Use the new function's
name.

* ob-calc.el (org-babel-calc-maybe-resolve-var): Rename from
`ob-calc-maybe-resolve-var'.
(org-babel-execute:calc): Use the new function's name.
2012-08-21 13:17:08 +02:00
Bastien Guerry 1b35780196 Add licenses to embedded and external javascript code.
* org-jsinfo.el (org-infojs-template): Add a license.
(org-infojs-handle-options): Replace all template elements.

* org-html.el (org-export-html-scripts): Add a license.
(org-export-html-mathjax-config): Replace all template
elements.
(org-export-html-mathjax-template): Add a license.
(org-export-as-html): Minor code clean-up.
2012-08-21 12:37:32 +02:00
Bastien Guerry 0782bea46e org.el: Add "#+MATHJAX" and "#+INFOJS_OPT" to the list of keywords for completion
* org.el (org-options-keywords): Add "#+MATHJAX" and
"#+INFOJS_OPT" to the list of keywords for completion.
2012-08-21 12:34:02 +02:00
Bastien Guerry 4eb8b05a5b org.el (org-src-prevent-auto-filling): Remove unused and useless option
* org.el (org-src-prevent-auto-filling): Remove unused and
useless option.
2012-08-20 19:22:26 +02:00
Bastien Guerry d6db2566d9 org.el: Autoload `org-element-at-point' instead of requiring org-element it in some commands
* org.el (org-element-at-point): Autoload.
(org-element-up): Remove useless declaration.
(org-fill-context-prefix, org-fill-paragraph)
(org-mark-element, org-narrow-to-element)
(org-transpose-element, org-unindent-buffer): Do not require
org-element.
2012-08-20 13:31:22 +02:00
Nicolas Goaziou 49905a5669 org-element: Fix comment typo
* lisp/org-element.el (org-element-map): Fix comment typo.
2012-08-20 11:21:16 +02:00
Nicolas Goaziou ec9e7ab9c1 org-element: Add a couple of autoload cookies 2012-08-20 10:16:21 +02:00
Bastien Guerry dd7b0aa171 org.el (org-fill-paragraph): Require org-element
* org.el (org-fill-paragraph): Require org-element.
2012-08-20 08:35:54 +02:00
Bastien Guerry 4e5ed3c453 org-agenda.el (org-agenda-persistent-marks): Minor docstring enhancement
* org-agenda.el (org-agenda-persistent-marks): Minor docstring enhancement.
2012-08-20 08:02:36 +02:00
Bastien Guerry b4df37076d Don't use :version "24.3" until Emacs 24.3 is released and/or Org sync'ed in Emacs 2012-08-20 07:49:16 +02:00
Bastien Guerry 8393a76f78 Always use the compatibility function `org-region-active-p'
* org.el (org-create-math-formula): Use the compatibility
function `org-region-active-p'.

* org-odt.el (org-export-as-odf): Ditto.

* ob.el (org-babel-demarcate-block): Ditto.
2012-08-20 05:45:25 +02:00
Bastien Guerry 58a6d823ee org.el: Fix bug in `org-mark-subtree'
* org.el (org-mark-subtree): Maybe call `org-mark-element'
interactively.
(org-mark-element): Only mark further elements when called
interactively.

For example, M-x org-export RET calls `org-mark-subtree' and
should not mark the further element when an element is already
marked.

Thanks To Bernt Hansen for reporting a bug related to this.
2012-08-20 05:40:25 +02:00
Bastien Guerry 7d117bd981 org.el: Add (require 'org-element) for more org-element commands
* org.el (org-mark-element, org-narrow-to-element)
(org-transpose-element): Require org-element.
2012-08-20 04:36:38 +02:00
Bastien Guerry 523f13dd08 org-agenda.el: New 'warntime property for agenda entries
* org-agenda.el (org-agenda-get-timestamps)
(org-agenda-get-sexps, org-agenda-get-deadlines)
(org-agenda-get-scheduled): Add the 'warntime as a text
property, getting its value from the APPT_WARNTIME property.
(org-agenda-to-appt): Use the 'warntime text property.

Thanks to Ivan Kanis for reporting a bug related to this.
2012-08-19 21:48:52 +02:00
Bastien Guerry 92271aecea org-capture.el (org-capture-place-table-line): Fix bug
* org-capture.el (org-capture-place-table-line): Fix bug.

Thanks to Ian Barton for reporting this.
2012-08-19 17:41:01 +02:00
Bastien Guerry de015ad055 Merge branch 'master' of orgmode.org:org-mode
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2012-08-19 16:57:28 +02:00
Bastien Guerry ad35e2ac6c org.el: Don't activate a plain link when it is part of a bracketed link
* org.el (org-activate-plain-links): Don't activate a plain
link when it is part of a bracketed link, unless bracketed
links are not enlisted in `org-activate-links'.
(org-open-at-point): Don't consider the text immediately after
a bracketed link is part of a plain link.

This fixes a bug when fontifying [[http://orgmode.org][Org]]Mode --
where "Mode" should not be fontified, because it is not part of the
bracketed link.

Note that there was another related bug: C-c C-o on "Mode" used to
try opening a plain link.  Also fixed in this commit.
2012-08-19 16:56:52 +02:00
Nicolas Goaziou 2fd696716a Forgot a `save-excursion'
* lisp/org.el (org-fill-paragraph): Add a `save-excursion' to avoid
  returning funny results.
2012-08-19 15:51:55 +02:00
Nicolas Goaziou bb895827c2 Try to be smarter when filling paragraphs in message-mode
* lisp/org.el (org-fill-paragraph): Try not to include message header
  and citation lines in a paragraph when filling it.
2012-08-19 14:46:27 +02:00
Bastien Guerry 655da8d1d3 Remove useless (t nil) sexps at the end of some (cond ...) constructs
* org.el (org-compute-latex-and-specials-regexp)
(org-paste-subtree, org-sort-entries, org-store-link)
(org-open-at-point, org-file-remote-p, org-add-log-setup)
(org-set-tags-to, org-fast-tag-selection)
(org-diary-sexp-entry): Ditto.

* org-agenda.el (org-agenda-get-blocks, org-cmp-priority)
(org-cmp-effort, org-cmp-todo-state, org-cmp-alpha)
(org-cmp-tag, org-cmp-time): Remove useless (t nil) sexps at
the end of (cond ...) constructs.

* org-mobile.el (org-mobile-create-index-file): Ditto.

* org-lparse.el (org-lparse-format-table-row): Ditto.

* org-list.el (org-sort-list): Ditto.

* org-id.el (org-id-get): Ditto.

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

* org-exp.el (org-default-export-plist)
(org-table-clean-before-export): Ditto.

(t nil) in (cond (...) (...) (t nil)) has no other meaning that to
remind the developer that the cond sexp returns nil in case no condition
is matched.  For several (cond ...) constructs this is obvious from reading
the code.  For others, the reminder might be useful and we leave it.

See the discussion about this on emacs-devel:
http://thread.gmane.org/gmane.emacs.devel/152664
2012-08-19 14:42:54 +02:00
Nicolas Goaziou a3c4e10ac1 Fix filling in in a narrowed buffer
* lisp/org.el (org-fill-paragraph): Fix filling in a narrowed buffer.
(org-fill-context-prefix): Fill prefix doesn't depend on current
narrowing.
* testing/lisp/test-org.el: Add test.
2012-08-19 13:44:00 +02:00
Nicolas Goaziou ecb8fbd7d5 Line with a single hash sign on it is a comment
* lisp/org.el (org-mode): Line with a single hash sign on it is a comment.
2012-08-19 11:07:50 +02:00
Nicolas Goaziou e8046d2f63 Fix comment fontification
* lisp/org.el (org-set-font-lock-defaults): Fix comment fontification.
2012-08-19 10:28:21 +02:00
Bastien Guerry 6309dcae6b org.el: Be more strict about matching option keywords
* org.el (org-options-keywords): Add "TODO".
(org-make-options-regexp): Make the hashtag mandatory for
options and don't allow whitespaces between the hashtag and
the plus sign.
2012-08-19 10:15:59 +02:00
Bastien Guerry f926d9019b org.el: Allow lowercase "#+category" and "#+begin:" dynamic blocks
* org.el (org-refresh-category-properties)
(org-find-dblock, org-dblock-start-re, org-dblock-end-re):
Allow lowercase "#+category" and "#+begin:" dynamic blocks.
2012-08-19 08:48:53 +02:00
Bastien Guerry 788f7da285 org.el: Use case-folding when trying to match clocktables and source blocks contexts
* org.el (org-context): Use case-folding when trying to match
clocktables and source blocks contexts.
2012-08-19 08:26:35 +02:00
Bastien Guerry 62064c73fc org-clock.el: Fix clock overlays bug
* org-clock.el (org-clock-put-overlay): Put the overlay on the
whole headline, not only on the last character.  This fixes a
bug with overlays on headlines ending with a bracketed link.

Thanks to Ryan Kaskel for reporting this.
2012-08-19 08:01:43 +02:00
Bastien Guerry 56b731087e Fix HTML export bug for empty headlines when `org-export-with-priority' is nil
* org-html.el (org-export-as-html): Make sure we always
process a string.

* org-exp.el (org-export-cleanup-toc-line): Always return a
string.

Thanks to Friedrich Delgado for reporting this.
2012-08-18 18:44:56 +02:00
Bastien Guerry 90e9aeeff5 org.el: Fix bug in ̀org-fontify-meta-lines-and-blocks-1'
* org.el (org-fontify-meta-lines-and-blocks-1): Correctly
handle metalines with #+results[...]:.
2012-08-18 17:52:02 +02:00
Bastien Guerry f25baf9e1e org-exp.el: Merge functions for removing tables and source blocks metalines
* org-exp.el (org-export-handle-metalines): Rename from
`org-export-handle-table-metalines'.  Now also handle source
block metalines.
(org-export-res/src-name-cleanup): Delete.
(org-export-preprocess-string): Use
`org-export-handle-metalines'.  Don't use
`org-export-res/src-name-cleanup' anymore.

This fixes a but reported by Feiming Chen, thanks to him.
2012-08-18 17:49:01 +02:00
Bastien Guerry 8d382158e7 org-html.el: Don't include the caption tag for empty captions in HTML export
* org-html.el (org-format-org-table-html): Don't include the
caption tag for empty captions in HTML export.  Keep it in the
DocBook export so that it produces valid DocBook XML.
2012-08-18 16:58:28 +02:00
Nicolas Goaziou 7a1bd94df1 org-element: Fix some code comments 2012-08-18 13:34:27 +02:00
Nicolas Goaziou ad94a9433b Addendum to 50a434bb9f
* lisp/org-element.el (org-element-item-parser): Do not remove tag
  from body if list isn't descriptive.
* lisp/org-list.el (org-insert-item): Only ask about a term for
  descriptive lists.
(org-list-struct, org-list-insert-item): Do not recognize a tag in an
ordered list.
* testing/lisp/test-org-element.el: Add test.
2012-08-18 13:13:31 +02:00
Nicolas Goaziou 3f57803fb4 org-element: Generalize `org-element-adopt-element' into `org-element-adopt-elements'
* lisp/org-element.el (org-element-set-element): Rewrite function.
(org-element-adopt-elements): New function.
(org-element-adopt-element): Removed function.
(org-element--parse-elements, org-element--parse-objects): Use new function.
* testing/lisp/test-org-element.el: Update tests.
2012-08-18 10:13:35 +02:00
Nicolas Goaziou 50a434bb9f org-list: Fix list type with mixed constructs
* lisp/org-list.el (org-list-automatic-rules): Remove `bullet' rule,
  which is now hard-coded.
(org-cycle-list-bullet): Hard code `bullet' rule.
(org-list-get-list-type): Make sure a list with numbered bullets
cannot have `descriptive' type.
* testing/lisp/test-org-list.el: Add tests.
2012-08-18 09:30:33 +02:00
Nicolas Goaziou 8ab1d76529 org-element: Fix previous patch
* lisp/org-element.el (org-element-paragraph-parser): Fix previous patch.
* testing/lisp/test-org-element.el: Add tests.
2012-08-17 17:40:32 +02:00
Nicolas Goaziou b1ed817e38 org-element: Use strict comment syntax (no "#+" allowed)
* lisp/org.el (org-fill-paragraph): No need to use
  `org-element-paragraph-separate' in a verse block since blank lines
  only can end a "paragraph".
* lisp/org-element.el (org-element-paragraph-separate): Apply changes
  to comments.
(org-element-paragraph-parser): Correctly find end of paragraphs.
(org-element--current-element): Require colons for Babel calls.
(org-element-center-block-parser, org-element-dynamic-block-parser,
org-element-quote-block-parser, org-element-special-block-parser,
org-element-comment-block-parser, org-element-example-block-parser,
org-element-export-block-parser, org-element-src-block-parser,
org-element-verse-block-parser): Fall-back to paragraph parsing when
incomplete or ill-formed.
* testing/lisp/test-org-element.el: Update tests.
2012-08-17 16:58:26 +02:00
Bastien Guerry d2200b2bed org.el: Allow both "8am Wed" and "Wed 8am" to be parsed correctly
* org.el (org-read-date-analyze): Allow both "8am Wed" and
"Wed 8am" to be parsed correctly with respect to possible
values of `org-read-date-prefer-future'.
(org-read-date-prefer-future): Update docstring to remove the
restriction about inserting only the time.  The user can now
insert the time and the day.
2012-08-16 09:42:55 +02:00
Bastien Guerry 76b0d582b8 Replace Emacs version to "24.2" by "24.3"
This is needed because the current HEAD of the git repository
will not be synced with Emacs 24.2 but more likely with Emacs 24.3.
2012-08-16 09:24:58 +02:00
Bastien Guerry 009c530e83 org-icalendar.el: Code clean up.
* org-icalendar.el (org-icalendar-print-entries): Rename from
`org-print-icalendar-entries'.
(org-icalendar-start-file): Rename from
`org-start-icalendar-file'.
(org-icalendar-finish-file): Rename from
`org-finish-icalendar-file'.
(org-icalendar-ts-to-string): Rename from
`org-ical-ts-to-string'.
(org-export-icalendar): Use the correct functions.
2012-08-16 09:22:22 +02:00
Bastien Guerry e4c4d85e59 ob-ref.el (org-babel-ref-index-list): Fix bug introduced by commit e85479
* ob-ref.el (org-babel-ref-index-list): Fix bug introduced by
commit e85479.

Thanks to Ivars Finvers who reported it and gave the correct patch.
2012-08-16 00:27:35 +02:00
Bastien Guerry 5ca6e3d703 org.el: Fix bug when adjusting another clock
* org.el (org-fill-context-prefix): Require org-element.
(org-timestamp-change): Fix bug by saving excursion when
adjusting another clock.

Thanks to Steinar Bang for reporting this.
2012-08-15 21:08:45 +02:00
Bastien Guerry cacb08334a Merge branch 'org-no-properties' 2012-08-15 14:43:35 +02:00
Bastien Guerry d14ed316cc Revert "org.el: Fix bug in interpreting `org-read-date-prefer-future' for time"
This reverts commit 053d0597e6.
2012-08-15 11:11:12 +02:00
Bastien Guerry 053d0597e6 org.el: Fix bug in interpreting `org-read-date-prefer-future' for time
* org.el (org-read-date-prefer-future): Fix docstring
formatting.
(org-read-date-analyze): Fix the interpretation of
`org-read-date-prefer-future'.
2012-08-15 11:02:24 +02:00
Bastien Guerry 57166defd1 org-agenda.el (org-agenda-menu-two-column): Rename to `org-agenda-menu-two-columns'
* org-agenda.el (org-agenda-menu-two-column): Rename to
`org-agenda-menu-two-columns'.
2012-08-15 10:31:22 +02:00
Bastien Guerry b62604236d Replace `org-labels' by `let*'
* ob.el (org-babel-sha1-hash, org-babel-noweb-p): Replace
`org-labels' by `let*'.

* org-bibtex.el (org-bibtex-headline): Ditto.

* org-compat.el: Delete `org-labels'.
2012-08-15 09:56:35 +02:00
Bastien Guerry 9afc2ac56b ob-*.el: Use ̀org-no-properties' instead of `org-babel-clean-text-properties'
* ob.el (org-babel-get-src-block-info)
(org-babel-check-src-block, org-babel-current-result-hash)
(org-babel-parse-src-block-match, org-babel-read-link)
(org-babel-insert-result, org-babel-clean-text-properties):
Use ̀org-no-properties' instead of
`org-babel-clean-text-properties'.
(org-babel-clean-text-properties): Delete redundant function
`org-babel-clean-text-properties'.

* ob-tangle.el (org-babel-tangle-collect-blocks)
(org-babel-tangle-comment-links): Ditto.

* ob-table.el (sbe): Ditto.

* ob-lob.el (org-babel-lob-get-info)
(org-babel-lob-execute): Ditto.

* ob-exp.el (org-babel-exp-non-block-elements): Ditto.
2012-08-15 09:39:24 +02:00
Bastien Guerry 722e0e0c83 Remove `org-substring-no-properties' and some redundant code
* org-macs.el (org-no-properties): Allow a new parameter
`restricted' to restrict the properties removal to those in
`org-rm-props'.  The default is now to remove all properties.

* org-compat.el (org-substring-no-properties): Remove unused
defun.

* org-remember.el (org-remember-apply-template): Remove
redundant removal of text properties.
(org-remember-apply-template): Use `org-no-properties'.

* org-capture.el (org-capture-fill-template): Remove redundant
removal of text properties.
(org-capture-fill-template): Use `org-no-properties'.

* org-gnus.el (org-gnus-open, org-gnus-follow-link): Use
`org-no-properties'.
2012-08-15 09:35:21 +02:00
Bastien Guerry 16ea0364a4 Call `buffer-substring-no-properties' and remove `org-no-properties'
* org-colview-xemacs.el (org-columns-display-here): Use
`buffer-substring-no-properties' and remove `org-no-properties'.

* org-colview.el (org-columns-display-here): Ditto.

* org-table.el (org-table-eval-formula): Ditto.

* org.el (org-entry-properties): Ditto.
2012-08-15 09:22:51 +02:00
Bastien Guerry 7f6a127e46 org-icalendar.el: Fix bug about handling `alarm-time'
* org-icalendar.el (org-print-icalendar-entries): Fix bug
about handling `alarm-time'.

Thanks to Charles Philip Chan for reporting this.
2012-08-15 03:42:58 +02:00
Bastien Guerry 510f6464b0 Revert "Makefile: allow for different compilation methods"
This reverts commit 3e63c3e97a.
2012-08-15 00:10:32 +02:00
Bastien Guerry 32e3257c2d Revert "Makefile: add elint to compilation methods, ensure *.elc files exist after compilation"
This reverts commit 1e47e65e97.
2012-08-15 00:10:13 +02:00
Bastien Guerry b57a91f8dd ob-R.el (org-babel-edit-prep:R): Don't set the session
* ob-R.el (org-babel-edit-prep:R): Don't set the session.

See the discussion for this issue here:
http://article.gmane.org/gmane.emacs.orgmode/58600

Thanks to Mikhail Titov and to Andrew Young for exploring it.
2012-08-14 23:57:24 +02:00
Bastien Guerry 922772e012 org.el: Only skip comments starting with "# " when storing a note.
* org.el (org-store-log-note): Only skip comments starting
with "# " when storing a note.

Thanks to Thomas Wallrafen for reporting this bug.
2012-08-14 13:09:56 +02:00
Bastien Guerry 570e30b5dd Merge branch 'master' of orgmode.org:org-mode
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2012-08-14 12:02:03 +02:00
Bastien Guerry a4f5e94dc8 org.el: New command ̀org-toggle-custom-properties-visibility'
* org.el (org-custom-properties): New option.
(org-custom-properties-overlays): New variable.
(org-toggle-custom-properties-visibility): New command to
toggle the visibility of custom properties.
(org-check-before-invisible-edit): Also prevent errors when
trying to edit invisible properties.

Thanks to Torsten Wagner for triggering this discussion.
2012-08-14 11:51:09 +02:00
Nicolas Goaziou 16a2203f6f org-element: Small refactoring
* lisp/org-element.el (org-element-swap-A-B): Small refactoring.
2012-08-14 10:18:42 +02:00
Bastien Guerry fdcf9dceb7 org-datetree.el: New option `org-datetree-add-timestamp'
* org-datetree.el (org-datetree-add-timestamp): New option.
(org-datetree-insert-line): Use it.
2012-08-14 10:09:40 +02:00
Bastien Guerry 944fd9d651 org.el: Fix bug in `org-fill-template'
* org.el (org-fill-template): Fix bug when filling template for
a key associated to the nil value.

Thanks to Ken Williams for reporting this.
2012-08-13 23:53:18 +02:00
Bastien Guerry d1b72db961 org-agenda.el (org-diary): Fix tiny typo
* org-agenda.el (org-diary): Fix tiny typo.
2012-08-13 16:30:43 +02:00
Eric Schulte 37e19ea2d0 Revert "Don't use `org-labels'"
This reverts commit 9d4e1517b6.
2012-08-13 08:17:46 -06:00
Eric Schulte 9d4e1517b6 Don't use `org-labels'
Reworking the previous commit which attempted to remove org-labels.

* org-compat.el (org-labels): Remove.

* org-bibtex.el (org-bibtex-headline): Don't use `org-labels'.

* ob.el (org-babel-sha1-hash, org-babel-noweb-p): Ditto.
2012-08-13 07:42:17 -06:00
Bastien Guerry d59acaa632 org.el (message-in-body-p): Move declaration up to fix compiler warning
* org.el (message-in-body-p): Move declaration up to fix compiler
warning.
2012-08-13 14:54:20 +02:00
Bastien Guerry bbc1dde930 org.el (org-fill-context-prefix): Fix auto-filling in `message-mode'.
* org.el (org-fill-context-prefix): Fix auto-filling in
`message-mode'.
2012-08-13 09:56:39 +02:00
Bastien Guerry 3496df0b4d org.el: Fix bugs in `org-indent-line' and `org-fill-paragraph'
* org.el (org-fill-paragraph): Correctly fill paragraph in
message-mode.
(org-indent-line): Correctly indent according to mode when
`orgstruct++-mode' is on.
(orgstruct++-mode): Add `fill-prefix' to the variable temporarily
stored in `org-fb-vars'.
2012-08-13 09:18:11 +02:00
Bastien Guerry 396e413f6b org.el: Fix bug about filling message headers and citations
* org.el (org-fill-paragraph): Make a command.  Fix bug about
filling message headers and citations.
2012-08-13 07:15:49 +02:00
Bastien Guerry 525e96a97e Revert "Don't use `org-labels'"
This reverts commit ba16c3c6f5.
2012-08-13 06:37:57 +02:00
Bastien Guerry 09743f48d6 Fix many small typos. 2012-08-13 05:59:44 +02:00
Bastien Guerry 9a9d4e3666 Fix some warnings. 2012-08-13 00:36:15 +02:00
Bastien Guerry 7532ace049 org.el: New command `org-redisplay-inline-images'
* org.el (org-redisplay-inline-images): New command.
(org-mode-map): Bind it to C-c C-x C-M-v.

Thanks to Petro for suggesting this.
2012-08-12 23:14:13 +02:00
Bastien Guerry 16d7b71762 Merge branch 'master' of orgmode.org:org-mode
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2012-08-12 23:01:52 +02:00
Bastien Guerry 74e9a23c01 Fix a bug in `org-columns-get-format-and-top-level' and a compiler warning.
* org-colview.el (org-columns-get-format-and-top-level): Fix bug.
(org-columns-get-format): Fix compiler warning.
2012-08-12 23:00:55 +02:00
Achim Gratz 1e47e65e97 Makefile: add elint to compilation methods, ensure *.elc files exist after compilation
* lisp/Makefile: Add targets `slint3´ (one Emacs process for all
  sources) and `slint4´ (one Emacs instance for each source) using
  ELINTL and ELINTF to lint lisp files.  Split out compile actions
  into internal targets and implement `compile-*´ targets in terms of
  these internal targets.  Follow all targets that do not
  procude *.elc files with `dirall´ so that the *.elc files exist at
  the end of compilation.

* default.mk: Add configuration variables ELINTL and ELINTF.

* targets.mk: Add ELINTL and ELINTF to CONF_CALL.
2012-08-12 15:41:35 +02:00
Michael Brand e1d5a31786 Improve parsing of org-capture-inside-embedded-elisp-p
* org-capture.el (org-capture-inside-embedded-elisp-p): Improve parsing.
2012-08-12 12:12:04 +02:00
Ippei FURUHASHI 601e783405 org-colview.el: Add new ways of specifying the columnview format
* org-colview.el (org-columns): New argument `columns-fmt-string'.
* org-colview.el (org-columns-get-format-end-top-level): Split
into `org-columns-get-format' and `org-columns-goto-top-level'.
* lisp/org-colview.el (org-dblock-write:columnview): Add a new parameter
:format which specifies the column view format for the output of the
columnview dynamic block.

This patch allows to interactively set a column view like this:

  M-: (org-columns "%66ITEM(Task) %6Effort(Estim.){:}") RET

or to specify a column view in columnview dynamic blocks:

TINYCHANGE
2012-08-12 11:48:44 +02:00
Bastien Guerry 267e6a9d00 org-feed.el: Add declarations
* org-feed.el: Add declarations.
2012-08-12 10:40:02 +02:00
Nicolas Goaziou 31aa36ca19 org-element: Fix typo in docstring
* lisp/org-element.el (org-element-text-markup-successor): Fix typo in
  docstring.
2012-08-12 00:51:50 +02:00
Nicolas Goaziou 8fc893a036 org-element: Fix small bug
* lisp/org-element.el (org-element-at-point): Return consistent value
  when function is called on a blank line within a plain list.
* testing/lisp/test-org-element.el: Add test.
2012-08-12 00:48:09 +02:00
Bastien Guerry 82af1bb96c org-agenda.el (org-agenda-get-sexps): Use `org-get-tags-at' to allow tag inheritance
* org-agenda.el (org-agenda-get-sexps): Use `org-get-tags-at'
to allow tag inheritance.

Thanks to Simon Thum for suggesting this.
2012-08-11 19:52:56 +02:00
Bastien Guerry e5c93760c8 org-capture.el (org-capture): Fix bug introduced by commit 1737d3
* org-capture.el (org-capture): Fix bug introduced by commit
1737d3.

Thanks to Simon Thum for reporting this.
2012-08-11 19:50:20 +02:00
Bastien Guerry b422af282d org-capture.el: Minor code cleanup 2012-08-11 19:35:34 +02:00
Bastien Guerry 70dd1196d2 Massive code clean-up.
Delete trailing whitespaces.
Indent all sexps correctly.
Sentences end with double spaces.
2012-08-11 19:10:44 +02:00
Michael Brand 042db379fc Add the capture feature sexp to org feed
* org-feed.el (org-feed-format-entry): Require `org-capture'.
Expand Elisp %(...) templates.
(org-feed-default-template): Update docstring.

* org-capture.el (org-capture-expand-embedded-elisp): New
function.
(org-capture-fill-template): Use it.
(org-capture-inside-embedded-elisp-p): New function to tell if
we are within an Elisp %(...) template.
2012-08-11 18:55:12 +02:00
Bastien Guerry 6966f20af2 org-publish.el: Fix problem with `org-publish-cache-ctime-of-src' not expanding from the correct directory
* org-publish.el (org-publish-needed-p)
(org-publish-update-timestamp, org-publish-file)
(org-publish-cache-file-needs-publishing): New argument
`base-dir'.
(org-publish-cache-ctime-of-src): Use the new argument to make
sure we find the file according to :base-directory.
2012-08-11 18:50:48 +02:00
Nicolas Goaziou d856b29b3b org-element: Fix comments in paragraph separator regexp
* lisp/org-element.el (org-element-paragraph-separate): Fix comments
  in paragraph separator regexp.  Optimize it.
2012-08-11 17:38:46 +02:00
Bastien Guerry 1737d3c4ee New command `org-capture-string'
* org-capture.el (org-capture-string): New command to prompt
for the interactive text interactively.  This can also be used
in Elisp programs to use ̀org-capture' with some initial text.
(org-capture-initial): New variable to store the initial text.
(org-capture): Use `org-capture-initial'.
2012-08-11 11:17:35 +02:00
Bastien Guerry 777ee3a4f9 org.el (org-emph-re): Tiny docstring formatting fix
* org.el (org-emph-re): Tiny docstring formatting fix.

Replay commit 8fb39a, but correctly this time.
2012-08-11 10:45:16 +02:00
Bastien Guerry ba16c3c6f5 Don't use `org-labels'
* org-compat.el (org-labels): Remove.

* org-bibtex.el (org-bibtex-headline): Don't use `org-labels'.

* ob.el (org-babel-sha1-hash, org-babel-noweb-p): Ditto.
2012-08-11 10:43:56 +02:00
Bastien Guerry ae21293a2e Revert "org.el (org-emph-re): Tiny formatting fix"
This reverts commit 8fb39ad25b.

Er.  Some changed should not be here.
2012-08-11 10:39:23 +02:00
Bastien Guerry 8fb39ad25b org.el (org-emph-re): Tiny formatting fix
* org.el (org-emph-re): Tiny formatting fix.
2012-08-11 09:57:01 +02:00
Bastien Guerry c5bc43133b org.el (orgstruct-setup): Require `org-element'.
* org.el (orgstruct-setup): Require `org-element'.

This prevents an error for git users who use orgstruct-mode
(and orgstruct++-mode) and forget to make autoloads.
2012-08-11 09:15:30 +02:00
Bastien Guerry 73c1948c15 org.el (org-store-link, org-open-at-point): New link type "help"
* org.el (org-store-link, org-open-at-point): New link type
"help".
2012-08-11 09:11:55 +02:00
Bastien Guerry baaa4873c7 org-compat.el (org-flet): Remove alias
* org-compat.el (org-flet): Remove alias.
2012-08-10 17:45:16 +02:00
Bastien Guerry 6c7ac786aa ob.el: Don't use `org-flet'
* ob.el (org-babel-edit-distance, org-babel-sha1-hash)
(org-babel-get-rownames, org-babel-insert-result)
(org-babel-merge-params)
(org-babel-expand-noweb-references): Don't use `org-flet'.
Also indent some functions correctly.
2012-08-10 17:44:45 +02:00
Bastien Guerry 57104f9fb2 ob.el: Don't use `org-flet'
* ob.el (org-babel-execute-src-block)
(org-babel-join-splits-near-ch, org-babel-format-result)
(org-babel-examplize-region): Don't use `org-flet'.
(org-babel-tramp-handle-call-process-region): Fix typo.
2012-08-10 17:23:00 +02:00
Bastien Guerry 966447c454 Don't use `org-flet' in ob-awk.el and ob-sh.el
* ob-awk.el (org-babel-awk-var-to-awk): Don't use `org-flet'.

* ob-sh.el (org-babel-sh-var-to-string): Ditto.
2012-08-10 16:05:26 +02:00
Bastien Guerry 1edf05f14c ob-tangle.el: Don't use `org-flet'
* ob-tangle.el (org-babel-tangle, org-babel-spec-to-string):
Don't use `org-flet'.
2012-08-10 15:40:00 +02:00
Bastien Guerry 9156bc2d64 Various minor fixes.
* org-pcomplete.el (org-compat): Require.

* ob-tangle.el (org-babel-load-file): Don't use `org-flet'.

* org-bibtex.el (org-bibtex-write): Use let*.
2012-08-10 15:32:24 +02:00
Bastien Guerry 8562d230ff org-plot.el (org-plot/gnuplot-script): Don't use `org-flet'
* org-plot.el (org-plot/gnuplot-script): Don't use `org-flet'.
2012-08-10 15:21:52 +02:00
Bastien Guerry 1be0faa40e org-bibtex.el: Don't use `org-flet'
* org-bibtex.el (org-bibtex-headline, org-bibtex-fleshout)
(org-bibtex-read, org-bibtex-write): Don't use `org-flet'.
2012-08-10 15:17:16 +02:00
Bastien Guerry 002b700cb3 Use ̀org-looking-back' instead of `looking-back' to keep compat with XEmacs
* org-clock.el (org-clock-cancel): Use `org-looking-back'.

* org-pcomplete.el (org-thing-at-point): Ditto.

* org.el (org-timestamp-change): Ditto.
2012-08-10 15:02:45 +02:00
Bastien Guerry 090634584e org-mouse.el: Don't use `org-flet'
* org-mouse.el (org-mouse-timestamp-today)
(org-mouse-set-priority, org-mouse-popup-global-menu)
(org-mouse-context-menu): Don't use ̀org-flet'.
2012-08-10 14:57:19 +02:00
Bastien Guerry 4cc6a9db5e org.el (org-priority): Fix docstring
* org.el (org-priority): Fix docstring.
2012-08-10 14:56:36 +02:00
Bastien Guerry 0ac65cc663 org-publish.el: Small code clean-up
* org-publish.el (org-publish-write-cache-file)
(org-publish-initialize-cache)
(org-publish-cache-file-needs-publishing)
(org-publish-cache-get): Small code clean-up.
2012-08-10 12:46:01 +02:00
Bastien Guerry 640b8c4076 org-publish.el (org-publish-cache-ctime-of-src): Simplify.
* org-publish.el (org-publish-cache-ctime-of-src): Simplify.
2012-08-10 12:41:13 +02:00
Bastien Guerry 621364fc6d org-agenda.el: Add a 'tags property for agenda entries created from sexps
* org-agenda.el (org-agenda-get-sexps): Add a 'tags property
for agenda entries created from sexps.

Thanks to Simon Thum for reporting this.
2012-08-10 12:29:51 +02:00
Bastien Guerry d9ebb7c8be org-capture.el: Fix bug in placing point according to %?
* org-capture.el (org-capture-templates): Docstring clean up.
(org-capture-place-entry, org-capture-place-item)
(org-capture-place-plain-text, org-capture-place-table-line):
Ensure to always position the point according to %?.

Thanks to Gsqual for reporting this and to Nick Dokos for digging into this
issue.
2012-08-10 11:48:54 +02:00
Bastien Guerry ad67f20a39 Fix a compiler warning. 2012-08-10 11:17:02 +02:00
Bastien Guerry 24c9083bd5 org-table.el: Fix bug when converting remote table references.
* org-table.el (org-table-convert-refs-to-rc): Fix bug when
converting remote table references.

Thanks to Jose E. Marchesi who provided a preliminary patch for this.
2012-08-10 11:00:15 +02:00
Bastien Guerry 068a354747 org-agenda.el (org-agenda-switch-to): Run hooks in ̀org-agenda-after-show-hook'
* org-agenda.el (org-agenda-switch-to): Run hooks in
̀org-agenda-after-show-hook'.

Thanks to Jack Erwin for suggesting this.
2012-08-10 10:12:44 +02:00
T.F. Torrey a4e3ed9a2f org-rmail.el: Use `rmail-widen' instead of `widen'
* org-rmail.el (org-rmail-follow-link): Use `rmail-widen'
instead of `widen' and don't toggle header as `rmail-widen'
already takes care of this.

TINYCHANGE

--
T.F. Torrey
2012-08-10 09:59:16 +02:00
Bastien Guerry e85479aeb1 Don't use `org-flet' in some functions
* ob-ref.el (org-babel-ref-index-list): Use let* and rename
the variable `length' to `lgth'.

* org-plot.el (org-plot/gnuplot-to-grid-data): Don't use
̀org-flet'.

* org-exp.el (org-export-format-source-code-or-example):
Ditto.

* org-exp-blocks.el (org-export-blocks-preprocess): Ditto.

* ob.el (org-babel-view-src-block-info)
(org-babel-execute-src-block, org-babel-edit-distance)
(org-babel-switch-to-session-with-code)
(org-babel-balanced-split, org-babel-insert-result): Ditto.

* ob-ref.el (org-babel-ref-index-list): Ditto.

* ob-python.el (org-babel-python-evaluate-session): Ditto.

* ob-lob.el (org-babel-lob-get-info): Ditto.

* ob-gnuplot.el (org-babel-expand-body:gnuplot): Ditto.

* ob-exp.el (org-babel-exp-do-export): Ditto.
2012-08-09 21:06:33 +02:00
Achim Gratz 3e63c3e97a Makefile: allow for different compilation methods
* targets.mk: Remove targets compile-source and compile-single,
  obsoleted by new configuration option.  Remove repetitive code in
  clean targets by using pattern substitution.  Avoid superfluous
  invocations of find by using multiple path arguments.

* Makefile: Remove compile-source and compile-single target
  documentation.

* default.mk: Add new option _COMPILE_ to select compilation method.
  Set default value to keep current behaviour.

* lisp/Makefile: Use new $(_COMPILE_) to dispatch compilation target.
  Implement private targets compile-dirall (default), compile-single,
  compile-slint1 and compile-slint2.

The additional compilation methods catch more and/or different errors
in the sources by compiling the sources in a single Emacs process per
compilation and with different conditions of the source directory, but
take much longer to compile even in the absence of such errors.  The
default method to use can be changed (like all other options) via
local.mk or temporarily on the command line.
2012-08-09 18:25:27 +02:00
Bastien Guerry 0c77568f67 org-table.el (orgtbl-to-generic): Fix docstring.
* org-table.el (orgtbl-to-generic): Fix docstring.
2012-08-09 16:17:05 +02:00
Bastien Guerry bc19977534 org-clock.el: Let C-u M-x org-clock-out RET now prompts for a state to switch to
* org-clock.el (org-clock-in): Call `org-clock-out' with the
new argument `switch-to-state' set to nil.  Fix docstring.
(org-clock-in-last): Prompt for a todo state to switch to when
called with three universal prefix arguments.  Don't display a
message when the clock is already running.  Update docstring.
(org-clock-out): New argument `switch-to-state'.  When this
argument is non-nil, prompt for a state to switch the clocked
out task to, overriding `org-clock-out-switch-to-state'.
2012-08-09 14:52:38 +02:00
Bastien Guerry ced90464dd org.el (org-entry-get): Don't use `org-flet'
* org.el (org-entry-get): Don't use `org-flet'.
2012-08-08 15:19:24 +02:00
Bastien Guerry d70cf44e7b org.el: Fix compiler warnings. 2012-08-08 14:55:40 +02:00
Bastien Guerry 12101efc2f org.el: Fix names I forgot to change in the previous patch. 2012-08-08 14:48:35 +02:00
Nicolas Goaziou b523a3edf5 Fix tests
* lisp/org-element.el: Update code commets.
* testing/lisp/test-org-element.el: Remove tests for renamed
  navigation and manipulation fuctions.
* testing/lisp/test-org.el: Add tests for renamed navigation and
  manipulation functions.
2012-08-08 13:58:14 +02:00
Bastien Guerry ee483e98f7 Merge branch 'master' of orgmode.org:org-mode 2012-08-08 12:11:57 +02:00
Bastien Guerry 1c595f3e5d org.el: Rename `org-backward/forward-same-level' to `org-backward/forward-heading-same-level'
* org.el (org-forward-heading-same-level): Rename from
`org-forward-same-level'.
(org-backward-heading-same-level): Rename from
`org-backward-same-level'.
2012-08-08 12:11:51 +02:00
Bastien Guerry f485b0a889 Move org-element commands to org.el and rename them.
* org.el (org-forward-element): Rename from
`org-element-forward'.
(org-backward-element): Rename from `org-element-backward'.
(org-up-element): Rename from `org-element-up'.
(org-down-element): Rename from `org-element-down'.
(org-drag-element-backward): Rename from
`org-element-drag-backward'.
(org-drag-element-forward): Rename from
`org-element-drag-forward'.
(org-mark-element): Rename from `org-element-mark-element'.
(org-transpose-element): Rename from `org-element-transpose'.
(org-unindent-buffer): Rename from
`org-element-unindent-buffer'.
(org-mode-map): Update the names of a commands.
Remove useless declarations.

* org-element.el (org-element-forward, org-element-backward)
(org-element-up, org-element-down)
(org-element-drag-backward, org-element-drag-forward)
(org-element-mark-element, org-narrow-to-element)
(org-element-transpose, org-element-unindent-buffer): Move to
org.el.
2012-08-08 11:57:37 +02:00
Nicolas Goaziou 694a858506 Fix bug when marking subtree with point on an inlinetask
* lisp/org.el (org-mark-subtree): Fix bug when marking subtree with
  point on an inlinetask.  Refactor code.
* testing/lisp/test-org.el: Add test.
2012-08-08 11:50:09 +02:00
Bastien Guerry 06c8457f0c Merge branch 'master' of orgmode.org:org-mode 2012-08-08 11:36:48 +02:00
Nicolas Goaziou 0a04169769 org-element: Fix `org-element-at-point' in some corner cases
* lisp/org-element.el (org-element-item-parser,
  org-element-plain-list-parser): Make sure that the element ends at
  the beginning of a line if possible.
(org-element-at-point): Return expected element when point is at an
element's end or at its contents' end.
* testing/lisp/test-org-element.el: Add test.
* testing/lisp/test-org.el: Add test.
2012-08-08 09:56:28 +02:00
Bastien Guerry a66f44d123 org.el (org-forward-same-level): Fix typo in docstring.
* org.el (org-forward-same-level): Fix typo in docstring.
2012-08-08 09:32:13 +02:00
Christophe Junke 9dae6f04b1 Let `org-agenda-time-grid' control if the grid is displayed.
* org-agenda.el (org-agenda-list): Ensure that the
list returned by `org-agenda-add-time-grid-maybe' is appended
to `rtnall' before checking if the latter is emtpy.

In the case where rtnall is empty (no item for current day), we do not
call org-agenda-add-time-grid-maybe.  This seems bogus because that
function is already computing whether the time grid must be included,
and does so according to the user's preferences.

In particular, the `org-agenda-time-grid' variable has a
'require-timed' parameter controlling the visibility of the time grid.

So, this patch :

 - removes the premature check for rtnall being empty,
 - inconditionally calls org-agenda-add-time-grid-maybe,
 - and finally checks the emptiness of the resulting list
   before pretty printing.

TINYCHANGE
2012-08-07 23:44:08 +02:00
Bastien Guerry 179f5e484a org-agenda.el: New commands `org-agenda-next/previous-item'.
* org-agenda.el (org-agenda-mode-map): Bind
`org-agenda-show-priority' to `C-c,' instead of `P'.
(org-agenda-next-item, org-agenda-previous-item): New
commands to move by one item down/up in the agenda.
(org-agenda-mode-map): Bind `org-agenda-next-item' and
`org-agenda-previous-item' to `N' and `P' respectively.

Thanks to Eric Abrahamsen for this idea and a first patch.
2012-08-07 23:11:26 +02:00
Nicolas Goaziou d70f965486 Do not make a special case for inlinetasks when marking a subtree
* lisp/org.el (org-mark-subtree): Do not make a special case for
  inlinetasks when marking a subtree. These are handled by
  `org-element-mark-element'.
* testing/lisp/test-org.el: Add test.
2012-08-07 13:38:32 +02:00
Bastien Guerry 7bc9b2242e org-rmail.el: Fix compiler warnings. 2012-08-07 13:27:18 +02:00
Bastien Guerry 1f7263d6b1 org-rmail.el: Fix bug when storing and inserting a link.
* org-rmail.el (org-rmail-store-link, org-rmail-follow-link):
Toggle headers when necessary.

Thanks to T.F. Torrey for reporting this bug and for proposing a fix.
2012-08-07 12:09:33 +02:00
Bastien Guerry 93acc82b96 Fix yet another compiler warning.
Let's go to sleep now.
2012-08-07 02:05:10 +02:00
Bastien Guerry 01bd28be69 org-element.el (org-narrow-to-element): Autoload.
* org-element.el (org-narrow-to-element): Autoload.
2012-08-06 20:11:33 +02:00
Bastien Guerry 7efbd4222d org.el: Enhance `C-c @' and use `M-h' for `org-element-mark-element'.
* org.el (org-mode-map): Use `M-h' for
`org-element-mark-element'.
(org-mark-subtree): Allow a numeric prefix argument to move up
into the hierarchy of headlines.

* org-element.el (org-element-up, org-element-down): Autoload.
2012-08-06 20:02:54 +02:00
Bastien Guerry 1276ab3ff1 Fix compiler warnings.
* org.el: Declare functions and don't require org-element.

* org-element.el (org-element-at-point, org-element-forward)
(org-element-backward, org-element-drag-backward)
(org-element-drag-forward, org-element-mark-element)
(org-element-transpose, org-element-unindent-buffer): Autoload.
Require 'org and remove all declarations.
2012-08-06 19:13:43 +02:00