0
0
Fork 1
mirror of https://git.savannah.gnu.org/git/emacs/org-mode.git synced 2024-09-23 05:10:44 +00:00
Commit graph

4631 commits

Author SHA1 Message Date
Dan Davison 76241dd192 PATCH: Support `org-export-process-option-filters' in latex export
`org-export-process-option-filters' is supported for HTML export but not
for latex export. The patch at the bottom fixes that.

I note that there is one other location in the same function where it
seems the same change could be made. I suspect this is not necessary,
but if someone is familiar with the org-latex code they might like to
have a look. (I didn't manage to understand the roles of the several
variables with names like *-opt-plist *-options-plist in that function.)

I'm protecting this patch from patchwork with ^$; it's the patch at the
bottom that I propose.

$ diff --git a/lisp/org-latex.el b/lisp/org-latex.el
$ index 51ee6d2..53d6b40 100644
$ --- a/lisp/org-latex.el
$ +++ b/lisp/org-latex.el
$ @@ -700,7 +700,8 @@ when PUB-DIR is set, use this as the publishing directory."
$  			     '(:org-license-to-kill nil))))
$    (org-update-radio-target-regexp)
$    (org-export-latex-set-initial-vars ext-plist arg)
$ -  (setq org-export-opt-plist org-export-latex-options-plist)
$ +  (setq org-export-opt-plist
$ +  	(org-export-process-option-filters org-export-latex-options-plist))
$    (org-install-letbind)
$    (run-hooks 'org-export-latex-after-initial-vars-hook)
$    (let* ((wcf (current-window-configuration))
$

    Support `org-export-process-option-filters' in latex export

    * lisp/org-latex.el (org-export-as-latex): Process export property
    list with `org-export-process-option-filters' early in latex export

	Modified lisp/org-latex.el
2011-01-26 19:01:04 +01:00
Julien Danjou 84d7165d74 org: remove org-invisible-p
I just found a left over in org-list.el. :)

Updated patch attached.

>From bf6c65a42e04d4753c58795442a479685bb5f318 Mon Sep 17 00:00:00 2001
From: Julien Danjou <julien@danjou.info>
Date: Wed, 26 Jan 2011 11:14:11 +0100
Subject: [PATCH] org: remove org-invisible-p

* org.el: Remove org-invisible-p: outline-invisible-p is
available in Emacs 22 and in recent XEmacs 21. Replace in
various files.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-01-26 18:26:46 +01:00
Julien Danjou 2d747caeab org-agenda: fix regexp in progress for state logging
* org-agenda.el (org-agenda-get-progress): Fix regexp for statep: it
must has \\ at the end of the line. This avoid matching the following
heading when there's no newline between the logged state and the next
heading.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-01-26 18:24:19 +01:00
Julien Danjou 9658a9909f org-agenda: simplify start/stop/duration time computing
* org-agenda.el (org-format-agenda-item): Simplify time comuting.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-01-26 11:16:27 +01:00
Carsten Dominik e10eaa2502 Revert "* org.el (org-fast-tag-selection): Fix bug when assigning keys"
This reverts commit c7d1e0f997.
2011-01-26 11:08:40 +01:00
Nicolas Goaziou 576c7bd520 Use existing macro to simplify code in LaTeX exporter
* lisp/org.el (org-current-level):
(org-store-link):
(org-mark-subtree): Use `org-with-limited-levels'.
2011-01-26 11:07:34 +01:00
Jan Seeger deb5f8df31 Always add sitemap file to project files if sitemap is requested
* lisp/org-publish.el (org-publish-get-base-files): Add sitemap file.

I noticed some wonkiness in getting my sitemap created on my webserver
when pushing my website, and the problem seems to lie in
org-publish-get-base-files only returning existing files, and not
picking up on the soon to be generated sitemap. My patch always adds
the sitemap file to the list of returned files if a sitemap is
requested, regardless of if it exists or not.
2011-01-26 11:03:20 +01:00
Matt Lundin 156e6b1466 Add new option for ignoring past or future items in the global todo list
* lisp/org-agenda.el: (org-agenda-todo-ignore-deadlines): New option.
(org-agenda-todo-ignore-scheduled): New option.
(org-agenda-todo-ignore-timestamp): New option.
(org-agenda-check-for-timestamp-as-reason-to-ignore-todo-item): Allow user
to specify custom distance to ignore (future or past).
(org-agenda-todo-custom-ignore-p): New function.

This patch gives users greater control over which past or future items
they would like to ignore in the global todo list. By setting
org-agenda-todo-ignore-scheduled to 7, for instance, a user can ignore
all items scheduled 7 or more days in the future. Similarly, by
setting org-agenda-todo-ignore-scheduled to -1, a user can ignore all
items that are truly in the past (unlike the 'past setting, which
ignores items scheduled today). Thanks to Paul Sexton for the idea for
this new functionality.
2011-01-26 10:59:58 +01:00
Matt Lundin c03c8f0e7c Optimize org-habit-parse-todo
* lisp/org-habit.el: (org-habit-parse-todo) Don't parse more days than
  needed.

When constructing a consistency graph, org-habit now stops searching
for timestamps when the number of matches exceeds the span of time
displayed in the graph. This can lead to a significant speedup in
agenda construction, especially for entries with many logbook entries.
Previously, org-habit would parse all logbook timestamps, even if they
numbered in the hundreds.
2011-01-25 22:58:57 +01:00
Carsten Dominik 8899e596f9 Merge branch 'master' of orgmode.org:org-mode 2011-01-25 22:58:37 +01:00
Eric Schulte 39c982eb49 ob: ob-exec-buf and ob-exec-tree now eval inline code blocks as well
* lisp/ob.el (org-babel-map-inline-src-blocks): Macro for executing
  code in each inline code block.
  (org-babel-execute-buffer): Executes inline code blocks as well as
  regular code blocks.
2011-01-25 10:15:47 -07:00
Eric Schulte db0e815a4c ob: fixed issue with ":results replace org"
* lisp/ob.el (org-babel-result-end): Now recognizes "#+begin_org"
  blocks for removal.
2011-01-25 09:15:06 -07:00
Benjamin Drieu 4cfea25f24 New hook for clock selection
* lisp/org-clock.el (org-clock-before-select-task-hook): New hook.
(org-clock-select-task): Run new hook.

Hi Org-moders,

I am often frustrated because I clock a lot of things and some of them
are repeated (i.e, coffee, read mails, etc.).  So when I want to clock
time I spend drinking coffee, the best I found was to search for a
headline matching "Coffee".  Or to tag frequent clocks and do some
agenda research on this tag.  Too long.  :-)

So here is a solution for this need : to add a shortcut property to
entries I would like to "bookmark" and insert matching entries in the
org-clock-select-task menu.  This can be done with :

* TODO Pause and drink coffee
  :PROPERTIES:
  :SHORTCUT: p
  :END:

then C-u C-c C-x C-i p.  And voilà, "Pause and drink coffee" is clocked!

Here is a patch that adds a hook into org-clock-select-task and a module
that adds the shortcut feature.  I tried to be the least intrusive
possible, if this proves to be useful, the hook trick might not be
needed.

Benj

TINYCHANGE
2011-01-25 06:53:35 +01:00
Julien Danjou c78bf704ed org-agenda: fix start/end time in timerange
* org-agenda.el (org-agenda-get-blocks): Fix time of start/end
of events with range. This display things like:
<2011-01-22 Sat 14:00>--<2011-01-23 Sun 20:00>
correctly, with the event starting at 14:00 and ending at 20:00.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-01-25 06:47:09 +01:00
Dan Davison 8d00354704 ob: more permissive regexp match for inline src blocks
* lisp/ob.el (org-babel-inline-src-block-regexp): Character preceding
"src_" can now be anything as long as it is neither alphanumeric nor
'-'.
2011-01-21 17:47:51 +00:00
Dan Davison dcfeec887a docstring edits
* lisp/ob.el (org-babel-merge-params): docstring typo
2011-01-20 17:20:19 +00:00
Dan Davison 05ef2ae7cc ob: Allow babel settings to be made in multiple #+babel: lines
* lisp/ob.el (org-babel-params-from-buffer): Process all #+babel:
lines in the buffer
2011-01-20 17:20:18 +00:00
Dan Davison 624141cc68 ob: Make #+header lines override higher-level settings
* lisp/ob.el (org-babel-get-src-block-info): Alter order of merge arguments
2011-01-20 17:20:18 +00:00
Dan Davison 43772d2d9a ob: avoid error when python session buffer has been killed
* lisp/ob-python.el: Test whether non-nil buffer is #<killed buffer>
2011-01-20 17:20:18 +00:00
Eric Schulte 3d4b884cb3 ob: Ensure all portions of results wrappers end in newlines
* lisp/ob.el (org-babel-insert-result): Ensure all parts of result
  wrappers end in newlines.
2011-01-20 09:30:28 -07:00
Eric Schulte c07b5aed1e ob-tangle: new :mkdirp header argument creates parent dirs of tangle targets
* lisp/ob-tangle.el (org-babel-tangle): New :mkdirp header argument
  optionally creates parent directories of tangle targets.
2011-01-19 20:29:09 -07:00
Carsten Dominik 4007c1cdce Fix bug in ASCII export
* lisp/org-ascii.el (org-ascii-level-start): Catch the case of levels
which do not have an equivalent in the list of underline characters.

For more information see

http://thread.gmane.org/gmane.emacs.orgmode/36097
2011-01-19 10:57:25 +01:00
Carsten Dominik 20a3c2a6b6 Merge branch 'master' of orgmode.org:org-mode 2011-01-19 10:39:30 +01:00
Eric Schulte 70d338ec46 ob-sh: customize shell quoting format with org-babel-sh-var-quote-fmt.
* lisp/ob-sh.el (org-babel-sh-var-quote-fmt): Now possible to
  customize the format string used to escape arguments to shell code
  blocks.
2011-01-18 09:23:53 -07:00
Julien Danjou dc55710b60 Add command to reset agenda time span
* org-agenda.el (org-agenda-reset-view): New function.
(org-agenda-view-mode-dispatch): Bind space to org-agenda-reset-view.

Signed-off-by: Julien Danjou <julien@danjou.info>

* doc/org.texi (Agenda commands): Document `v SPC'.

* doc/orgcard.tex: Document v SPC
2011-01-18 11:14:20 +01:00
Bastien Guerry c8ec337d68 org-exp.el: cosmetic change to `org-get-file-contents' 2011-01-18 01:24:12 +01:00
Puneeth Chaganti 7b399fe128 How do I include text between a range of line numbers with #INCLUDE
Hi Carsten,

On Sat, Jan 8, 2011 at 11:35 PM, Carsten Dominik
<carsten.dominik@gmail.com> wrote:
> Hi Puneeth,
>
> can cou please augment the patch with a propert ChangeLog-like entry, and
> with documentation for the manual, and then resubmit?

Here is a patch with a ChangeLog entry and documentation for the
manual. Please tell me if it looks OK. Also, I hope using
git-format-patch is the right way to send this page. If not, what is
the right way?

Thanks,
Puneeth

>From 4a9be5b1a7a19c5d092ed14a86d29ad83122e9a8 Mon Sep 17 00:00:00 2001
From: Puneeth Chaganti <punchagan@gmail.com>
Date: Sun, 9 Jan 2011 00:48:51 +0530
Subject: [PATCH] Include only specified range of line numbers of a file

* doc/org.texi (Include files): Document :lines.
* lisp/org-exp.el (org-export-handle-include-files): Support :lines
property.
(org-get-file-contents): New argument lines to include specify a range
of lines to include.

On Fri, Jan 7, 2011 at 1:29 PM, Puneeth <punchagan@gmail.com> wrote:
> On Fri, Jan 7, 2011 at 10:03 AM, Venkatesh Choppella
> <venkatesh.choppella@iiit.ac.in> wrote:
>> I would like to include a part of a file (between a given range of
>> line numbers) instead of the whole file.  Is there a way to do that
>> in org-mode?
>
> It isn't possible to include files using line numbers, as of now.
> Here's a quick patch that would add this feature.  I have tested it
> with small files and works fine. Can somebody tell me if it looks
> good?
>
> :lines "5-10"  will include the lines from 5 to 10, 10 excluded.
> :lines "-10"  will include the lines from 1 to 10, 10 excluded.
> :lines "5-"  will include the lines from 1 to the end of the file.
>
> HTH,
> Puneeth
2011-01-18 01:02:04 +01:00
Bastien Guerry c7d1e0f997 * org.el (org-fast-tag-selection): Fix bug when assigning keys
* org.el (org-fast-tag-selection): Fix bug when assigning keys
for fast tag selection.

Patch submitted by Jason Dunsmore.
2011-01-18 00:50:32 +01:00
Bastien Guerry f33ae10e36 org-blank-before-new-entry: Fix small typo in the docstring. 2011-01-18 00:03:49 +01:00
Bastien Guerry 888739a378 Merge branch 't/patch540' 2011-01-17 23:30:05 +01:00
Nick Dokos ddf3ab1048 How to write special LaTeX symbols
Xin Shi <shixin111@gmail.com> wrote:

>
> Shr\"odinger   will give the o with two dots on top. Notice that the " is a double quotation mark. 
>
> However, when org translate that into LaTeX, it will become two single quotation mark! \'' (it's very hard to see the difference, but the pdf version will
> see the wrong result).
>
> Could someone tell me how to do that?
>

It works correctly in headlines, but not in running text. I think [fn:1]
that it is a bug and that the following patch fixes it:

--8<---------------cut here---------------start------------->8---
--8<---------------cut here---------------end--------------->8---

but I have not tested it extensively and it may do more harm than good:
I'd wait for a more definitive opinion.

Alternatively, you can use UTF-8 in your org file and write Schrödinger
explicitly.  This will survive the LaTeX export intact and the
\usepackage[utf8]{inputenc} in the LaTeX file will do the right thing
with it.[fn:2]

Nick

Footnotes:

[fn:1] but I'm really not sure: I've lost track of how things work in
LaTeX export - sigh...

[fn:2] I'm not sure whether it will survive the email trip
though. Here's hoping that it will.
2011-01-17 23:28:16 +01:00
Bastien Guerry 4e15183e6d org-latex.el (org-export-latex-make-header): Fix inclusion of email. 2011-01-17 20:10:16 +01:00
Lawrence Mitchell f705ab0966 Allow inclusion of author's email in LaTeX export
* org-latex.el (org-export-latex-make-header): Export email in
author line if `org-export-email-info' is non-nil.

Previously exporting to LaTeX would not include the document author's
email address when org-export-email-info was set.  This patch corrects
this oversight using the \thanks command to add a footnote to the
author line.
2011-01-17 19:58:56 +01:00
Julien Danjou f4984b3205 Bug: Jumping to a date in the agenda changes view back to 'day' [7.4 (release_7.4.80.g0e5e5)]
On Mon, Jan 17 2011, Bernt Hansen wrote:
>
> Thanks for this patch.  I think this fixes the issue I was having with
> 'j' in the agenda switching from week-view back to single-day view when
> org-agenda-ndays is set to 1.
>
> There is still a (new?) problem with jumping to today.
>
> Set the following variable
>
> (setq org-agenda-start-on-weekday 6)
>
> | Key Sequence | Notes                                          |
> |--------------+------------------------------------------------|
> | C-c a a      | Display weekly agenda                          |
> | f            | Go forward a week                              |
> | d            | Display day agenda                             |
> | .            | Go to to day - but it goes to Saturday instead |
>
> This should go to today and not the first day of the week.

Attached is a fix for that.

>From f566a5612560f997f4760144ca850dda5c06bc5e Mon Sep 17 00:00:00 2001
From: Julien Danjou <julien@danjou.info>
Date: Mon, 17 Jan 2011 18:09:30 +0100
Subject: [PATCH] Fix org-agenda-goto-today not respecting the current span.

* org-agenda.el (org-agenda-goto-today): Respect current span.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-01-17 19:27:09 +01:00
Carsten Dominik 970dba19b1 Merge branch 'master' of git://orgmode.org/org-mode 2011-01-17 12:51:51 +01:00
Carsten Dominik a7ac1f5cc9 Fix bug with completion of TODO keywords
* lisp/org-complete.el (pcomplete/org-mode/link):
(pcomplete/org-mode/todo):
(pcomplete/org-mode/prop): Copy list before uniquifying.

For a description of the bug, see

http://thread.gmane.org/gmane.emacs.orgmode/35640
2011-01-17 12:51:43 +01:00
Eric Schulte eb3bf55d48 ob: new ":comments noweb" option for wrapping noweb references in comment links
* lisp/ob-tangle.el (org-babel-spec-to-string): Adding "noweb" as a
  linking comment type
  (org-babel-tangle-comment-links): Returns comment links for the
  source code block at point

* lisp/ob.el (org-babel-expand-noweb-references): When :comments is
  set to "noweb" then wrap noweb references in comment links.
2011-01-16 08:21:16 -07:00
Bastien Guerry 97b264a092 org-refile-check-position: explain how to clear the cache
* org.el (org-refile-check-position): send a more explicit
message on how to clear the cache before refiling again.
2011-01-15 18:29:07 +01:00
Carsten Dominik c747c7f7fb Merge branch 'global-skipping-condition' 2011-01-15 12:43:20 +01:00
Carsten Dominik a2ec41c79a Implement a global skipping condition
* lisp/org-agenda.el (org-agenda-skip-function-global): New option.
(org-agenda-skip-eval): New function.
(org-agenda-skip): Use `org-agenda-skip-eval' and also check for the
global skipping condition.

This was a request by John Wiegley
2011-01-14 11:28:41 +01:00
David Maus 163cd58ffd Handle timestamps after handling links
* org-html.el (org-export-as-html): Handle timestamps after handling
links.

otherwise a link description with an ISO date is handled as an
inactive timestamp and replaced by a timestamp span.

Bug reported by Vincent Belaïche.
2011-01-14 06:37:52 +01:00
Eric Schulte c8e5ba90cc ob: ob-jump-to-org is more robust to link comment impostors
* lisp/ob-tangle.el (org-babel-tangle-jump-to-org): Ever wider
  searches until either a matching block is found, or the limits of
  the file are reached.
2011-01-13 14:07:19 -07:00
Tassilo Horn 0dfde2da72 org-store-link on gnus message fails
Carsten Dominik <carsten.dominik@gmail.com> writes:

Hi Carsten,

> is that patch on the patchwork server?  If you find it, can you please
> send me the ID?

No, I cannot find it there.  I'll attach it to this mail.

From 4a0fe0bfd4aafed16f658e963fc10e966601d651 Mon Sep 17 00:00:00 2001
From: Tassilo Horn <tassilo@member.fsf.org>
Date: Thu, 13 Jan 2011 19:25:04 +0100
Subject: [PATCH 3/3] * org-gnus.el (org-gnus-store-link): Don't error out if mail
 has no or bogus Date: header.
2011-01-13 19:48:45 +01:00
Carsten Dominik bc841dcf23 Revert "Fix org-store-link in GNUS messages with date"
This reverts commit e599234d5c.
2011-01-13 18:31:34 +01:00
Eric Schulte 47537dcda8 ob: allow detangling of text containing '\'s -- Thanks to Seth Burleigh
* lisp/ob.el (org-babel-update-block-body): Literal argument to
  `replace-match' to allow insertion of text containing '\'.
2011-01-13 10:00:39 -07:00
Carsten Dominik 0ec831d2c8 Merge branch 'master' of orgmode.org:org-mode 2011-01-13 12:53:28 +01:00
Tassilo Horn e599234d5c Fix org-store-link in GNUS messages with date
* lisp/org-gnus.el (org-gnus-store-link):

org-store-link on gnus message fails
2011-01-13 12:52:42 +01:00
Eric Schulte f7a752f6d6 ob-ref: Allow passing empty strings into code blocks.
Thanks to Leo Alekseyev for pointing this out.

* lisp/ob-ref.el (org-babel-ref-parse): Allow passing empty strings
  into code blocks.
2011-01-11 20:40:13 -07:00
Carsten Dominik 378beac762 Fix sorting with a bold emphasis at beginning of line
* lisp/org.el (org-sort-entries): Fix sorting with a bold emphasis at bol
2011-01-11 20:34:08 +01:00
Carsten Dominik bff981d23f Merge branch 'master' of orgmode.org:org-mode 2011-01-11 19:54:51 +01:00
Eric Schulte 1c3ef40f24 ob: fixed bug in org-babel-read-result
Thanks to Leo Alekseyev for bringing this bug to my attention

* lisp/ob.el (org-babel-open-src-block-result): Must collect result
  *before* jumping to the result buffer.
2011-01-11 10:41:35 -07:00
Eric Schulte ea847dcb5f ob: fix small bug in `org-babel-src-block-names'
* lisp/ob.el (org-babel-src-block-names): Fix bug, wrong match-string
  used after update to regexp.
2011-01-11 10:14:13 -07:00
Eric Schulte e72f207c3e ob: ensure that org-babel-temporary-directory is bound before using
* lisp/ob.el (org-babel-temp-file):  Ensure that
  org-babel-temporary-directory is bound before using.
  (org-babel-remove-temporary-directory):  Safer error throwing.
2011-01-09 17:47:45 -07:00
Jason Dunsmore e703ea9823 `org-export-htmlize-output-type' docstring patch
I noticed the choices for org-export-htmlize-output-type aren't listed
in its docstring.  I had to load up the customize interface to see what
the choices were.
2011-01-08 19:00:44 +01:00
niels giesen 9f8b10413c Fix table export to docbook when field contains a backslash
* lisp/org-docbook.el (org-export-docbook-finalize-table): Do literal
replacements.
2011-01-08 18:53:30 +01:00
Eric Schulte 8674006516 ob: Uses org-src-lang-modes to resolve language names for evaluation.
* lisp/ob.el (org-babel-execute-src-block): Uses org-src-lang-modes to
  resolve language names for evaluation.
2011-01-07 11:41:15 -07:00
Carsten Dominik bd11460542 Make file and path accessible in capture templates
* lisp/org-capture.el (org-capture-templates): Add %f and %F escapes
(org-capture): Add more information to capture property list
(org-capture-fill-template): Handle %f and %F escapes
2011-01-07 15:28:57 +01:00
David Maus b4979a86ca Use mtime of symlink target
* lisp/org-publish.el (org-publish-cache-ctime-of-src): Use mtime of
symlink target.
2011-01-06 20:25:00 +01:00
Carsten Dominik dd23461349 Implement next-error and previous-error functionality for sparse trees
* lisp/org.el (org-occur-next-match): New function.
(org-mode): Set the variable `next-error-function'.
(org-highlight-new-match): Add an `org-type' property to the overlays.
* doc/org.texi (Sparse trees): Document the next-error / previous-error
functionality.

After a sparse tree construction, `M-g n' and `M-g p' will now jump to
the location of matches.
2011-01-06 12:36:22 +01:00
Carsten Dominik 08755d7aa9 Fix regexp in export engine 2011-01-05 17:53:41 +01:00
Eric Schulte ec97a121e5 don't require calc-trail when on xemacs, Thanks to Michael Sperber
* lisp/ob-calc.el: No longer require `calc-trail' on XEmacs
2011-01-05 09:37:12 -07:00
Bastien Guerry 8d879c3870 org-html.el: add a space before attributes in org-html-make-link. 2011-01-04 17:24:47 +01:00
Bastien Guerry a39c35fcd9 org-exp.el: Inhibit read-only when grabbing the title from a subtree.
Eric S. Fraga found this problem while trying to export a subtree from
a read-only file.
2011-01-04 17:03:14 +01:00
Bastien Guerry e246133d75 org-taskjuggler.el: fix a small typo. 2011-01-04 16:25:48 +01:00
Bastien Guerry ed824d4e46 org.el: don't try to remove space in comma-separated tags.
No space is allowed in the prompt, trying to remove them is
confusing when reading the code.
2011-01-04 16:15:33 +01:00
Bastien Guerry 881b73bd77 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2011-01-04 16:10:51 +01:00
Carsten Dominik 8dfd845c7f Add contrib package org-eshell.el
* contrib/lisp/org-eshell.el: New file
* lisp/org.el (org-modules): Add `org-eshell'.
2011-01-04 16:06:09 +01:00
Bastien Guerry 591db35943 org.el: document optional argument for org-global-tags-completion-table 2011-01-04 15:19:23 +01:00
Carsten Dominik 00b59ec005 Add some additional stuff needed after moving org-special-blocks.el
* Makefile (LISPF): Add org-special-blocks to the list of Lisp files
* lisp/org-special-blocks.el (htmlp):
(latexp):
(line): Add defvars for dynamically scoped variables.
* lisp/org.el (org-modules): Move org-special-blocks into
the core modules section.
2011-01-03 22:08:10 +01:00
Bastien Guerry 57144fea1e Move org-special-blocks.el from contrib/lisp/ to lisp/
Carsten received the completed assignment of Chris Grays,
org-special-blocks.el author's.
2011-01-03 20:17:14 +01:00
Carsten Dominik a6255a6ab7 Remove duplicate definition of `org-plist-delete'
* org.el (org-plist-delete): Remove duplicate definition.

Patch by Julien Danjou.
2011-01-03 13:21:15 +01:00
Bernt Hansen 8dc6733a2a Display invisible entry text at point when visiting a task from the agenda
* lisp/org-agenda.el (org-agenda-goto): Display invisible entry text
* lisp/org-agenda.el (org-agenda-switch-to): Display invisible entry text

Visiting clock lines with RET or TAB in the agenda can put point on a
folded clock drawer.  This means you are editing invisible/hidden text
inside the task entry.  Now when moving to invisible regions show the
entry so point is always visible.
2011-01-03 13:16:43 +01:00
Carsten Dominik ca733df0d4 Move the category property refresh to org-get-category where possible
* lisp/org.el (org-get-category): New optional argument FORCE-REFRESH.
Automatically refresh if the property is not there.
(org-entry-properties): Remove refresh - this is now done in
org-get-category.
* lisp/org-clock.el (org-clock-insert-selection-line): Let `org-get-category'
do the property refresh.
* lisp/org-archive.el (org-archive-subtree): Force a refresh of
category properties.

Based on a patch by Julien Danjou.
2011-01-03 13:12:42 +01:00
John Wiegley 3922c2cbc1 Fixed the interval for day scattering
It was [0,LIM), now it's [1,LIM]
2010-12-27 03:34:40 -05:00
Carsten Dominik 55d664e6d3 Revert "Always return refreshed category"
This reverts commit f5bb1b7dbf.
2010-12-24 17:32:22 +01:00
Julien Danjou f5bb1b7dbf Always return refreshed category
* org-icalendar.el (org-print-icalendar-entries): Do not manually
  refresh categories.

* org-clock.el (org-clock-insert-selection-line): Do not manually
  refresh categories.

* org.el (org-get-category): Refresh categories if no category found.
(org-entry-properties): Do not manually refresh categories.
(org-prepare-agenda-buffers): Do not manually refresh categories.

It seems a very bad thing to call manually for a category refresh. It
seems better to try to refresh if we do not have a category.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-23 08:42:32 +01:00
Dan Davison 6eaad22a37 Check for clear-image-cache before using it
* lisp/org.el (org-display-inline-images): Check for clear-image-cache
before using it.
2010-12-23 08:36:42 +01:00
Bernt Hansen ca1b251f19 Add missing value to docstring for org-link-frame-setup
* lisp/org.el: Document missing value for org-link-frame-setup
2010-12-23 08:27:38 +01:00
Dan Davison f7bca4ed1a ob-R: Don't handle errors in R; expose to Org-babel error handling.
* lisp/ob-R.el (org-babel-R-write-object-command): Force evaluation of
user code prior to the R exception-handling, so that errors in user
code are unhandled.
2010-12-22 15:19:57 +00:00
Dan Davison 7fa375d632 Avoid errors during fontification of src blocks.
* lisp/org-src.el (org-src-font-lock-fontify-block): Test, early on,
that a major-mode function corresponding to the language string
exists.

Thanks to Bernt Hansen for the report and investigation.
2010-12-22 11:50:42 +00:00
Nicolas Goaziou 478eabccbd org-exp: ensure list ending marker is inserted on a line on its own
* lisp/org-exp.el (org-export-mark-list-ending): insert additional
  newline characters if end-list-marker is at a wrong position.

This solves a problem arising when exporting a region to HTML with a
list ending at the end of region. The marker would then be inserted on
the last line, following text from the list.
2010-12-22 09:54:14 +01:00
Eric Schulte 1d3db31ca7 ob: better parsing of list output from scripting languages
* lisp/ob.el (org-babel-script-escape): Replace commas with spaces for
  better list reading when list items are packed with commas,
  e.g. Haskell list output.
2010-12-21 20:18:07 -07:00
Eric Schulte 9bf88fddfc ob-sass: uses ob-eval for better error reporting
* lisp/ob-sass.el (org-babel-execute:sass): Uses ob-eval for better
  error reporting.
2010-12-21 20:17:18 -07:00
Charles Sebold 9c4b936c0e ob-sql: header line in results table 2010-12-21 10:33:37 -07:00
Eric Schulte ece347e32c org-babel-confirm-evaluate: better doc and code when using function as
Thanks to Vladimir Alexiev for submitting this patch

* lisp/ob.el (org-babel-confirm-evaluate): Fix for the case when
  org-confirm-babel-evaluate is a function (used to always ask no matter
  what the function returns).
* doc/org.texi (Code evaluation security): Add example for using a
  function.
2010-12-21 09:37:19 -07:00
Dan Davison d234a9973b ob-R: Delete duplicated function
* lisp/ob-R.el: Delete duplicated function
2010-12-21 14:20:14 +00:00
Eric Schulte 4e146a5ac2 ob: a little more refactoring
* lisp/ob.el (org-babel-execute-src-block): Removed unused flet function.
2010-12-21 14:19:25 +00:00
Dan Davison e030d95ddb ob: language-specific changes in response to :file arg changes
These languages are capable of writing results to file; for several of
them this is their only mode of operation. These changes cause the
languages to return to ob.el either the computed result, or nil, when
they have written results to file themselves. This is in place of the
previous method of returning the output file name as a string to
ob.el.

* lisp/ob-asymptote.el (org-babel-execute:asymptote): Return nil to
signal that the intended content has been written to file.
* lisp/ob-ditaa.el (org-babel-execute:ditaa): Return nil to signal
that the intended content has been written to file.
* lisp/ob-dot.el (org-babel-execute:dot): Return nil to signal that
the intended content has been written to file.
* lisp/ob-gnuplot.el (org-babel-execute:gnuplot): Return nil to signal
that the intended content has been written to file.
* lisp/ob-latex.el (org-babel-execute:latex): Return nil to signal
that the intended content has been written to file.
* lisp/ob-mscgen.el (org-babel-execute:mscgen): Return nil to
signal that the intended content has been written to file.
* lisp/ob-octave.el (org-babel-execute:octave): Return result; not
name of output file.
* lisp/ob-plantuml.el (org-babel-execute:plantuml): Return nil to
signal that the intended content has been written to file.
* lisp/ob-python.el (org-babel-execute:python): Return result; not
name of output file.
* lisp/ob-ruby.el (org-babel-execute:ruby): Return result; not
name of output file.
* lisp/ob-sass.el (org-babel-execute:sass): Return nil if result has
been written to file
2010-12-21 14:19:24 +00:00
Dan Davison 6bcbdce949 ob-R: Respond to changes in handling of :file header argument
":results graphics" is now required in addition to ":file filename" in
order for graphical output to be sent automatically to file. If :file
is supplied, but not ":results graphics", then the default behavior
obtains: i.e., either "value" or "output" results are written to file,
depending on which of those options is in effect.

* lisp/ob-R.el (org-babel-R-graphical-output-file): New function
returns the name of the output file iff R has been instructed to send
graphical output to file by means of the ":results graphics"
directive.
(org-babel-expand-body:R): Use `org-babel-R-graphical-output-file'
when constructing the R code to evaluate, which may be augmented with
code implementing the writing of graohical output to file.
(org-babel-execute:R): Use `org-babel-R-graphical-output-file' to
determine whether R is taking responsibility for writing output to
file; if so, this is signalled to ob.el by returning a nil result.
2010-12-21 14:19:24 +00:00
Dan Davison 366abc6175 ob: Refactoring
* lisp/ob.el (org-babel-format-result): New function to format results
of src block execution.
(org-babel-execute-src-block): Use `org-babel-format-result' when
writing to file.
(org-babel-open-src-block-result): Use `org-babel-format-result' when
displaying results in a buffer; name results buffer differently.
2010-12-21 14:19:24 +00:00
Dan Davison 70349cd0c2 ob: Bug fix in writing results to file
* lisp/ob.el (org-babel-execute-src-block): Avoid calling
`orgtbl-to-generic' on number results
2010-12-21 14:19:24 +00:00
Eric Schulte e0b7927678 ob: :sep specifies table separator when opening or writing tabular results
* lisp/ob.el (org-babel-execute-src-block): Allow specification of
  table separator with :sep header argument.
  (org-babel-open-src-block-result): Allow specification of table
  separator with :sep header argument.
2010-12-21 14:19:24 +00:00
Dan Davison 74d752b4b5 ob: Wipe error buffer before executing buffer/subtree
* lisp/ob.el (org-babel-execute-buffer): Wipe error buffer at outset
of executing buffer (note that this handles execute subtree also).
2010-12-21 11:06:35 +00:00
Dan Davison fc70272de9 Merge branch 'master' of ssh://repo.or.cz/srv/git/org-mode 2010-12-21 11:06:24 +00:00
Nicolas Goaziou d30d00023a org-inlinetask: remove case-sensitivity at end line, improve code comments
* lisp/org-inlinetask.el (org-inlinetask-in-task-p): small
  refactoring, do not modify match data either.
(org-inlinetask-goto-end): small refactoring, remove case-sensitivity.
(org-inlinetask-goto-beginning): small refactoring, remove case-sensitivity.
2010-12-21 11:06:58 +01:00
Carsten Dominik ce157879de Fix typo 2010-12-21 08:26:34 +01:00
Dan Davison 607efd4e30 Starting on new R graphics scheme 2010-12-20 17:35:23 +00:00
Dan Davison a871c6a77c new :results behavior 2010-12-20 16:44:24 +00:00
Carsten Dominik 5f77fd6a81 Merge branch 't/patch491' 2010-12-20 15:50:23 +01:00
Carsten Dominik f9e174b74e Merge branch 't/patch490' 2010-12-20 15:50:04 +01:00
Carsten Dominik f11b134b46 Merge branch 't/patch489' 2010-12-20 15:49:44 +01:00
Carsten Dominik af33cb709a Fix bug with capture to datetree
* lisp/org-capture.el (org-capture-set-target-location): Use `current-time'.
2010-12-20 15:14:00 +01:00
Bernt Hansen de62618009 Fix before first heading check
* lisp/org.el (org-before-first-heading-p): If point is on an org-mode heading line then we are not before the first heading

If point is anywhere on the first line of the first heading then we
are not before the first heading.  This makes
org-before-first-heading-p returns t instead of nil when on the '*' or
blank of the first level 1 heading in an org file.

This was noticed when the first heading has an encryption
tag :crypt:. C-c C-r would not decrypt this entry if point is at the
beginning of the line since it was considered before the first
heading.
2010-12-20 13:22:05 +01:00
Carsten Dominik 3ceee2fefe Timer: Run a hook when relative timer is continued
* lisp/org-timer.el (org-timer-continue-hook): Define the variable
(org-timer-pause-or-continue): Run hook after relative timer is
continued

There was a hook run when the relative timer is paused (and for most
other actions), but none for continuing afterwards.

One use for this would be to pause/continue playback in a media-player
app with the same keystroke used to pause/continue the timer.

TINYCHANGE

Patch by Christian Moe
2010-12-20 13:18:27 +01:00
Julien Danjou 2be22d9aa4 org-agenda: allow %() in prefix format
* org-agenda.el (org-compile-prefix-format): Allow %() expression.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-20 13:13:13 +01:00
Julien Danjou f73b121549 org-capture: use org-eval
* org-capture.el (org-capture-fill-template): Use org-eval.
2010-12-20 13:12:48 +01:00
Julien Danjou 2c1925f2a5 Add org-eval
* org-agenda.el (org-eval): New function.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-20 13:12:25 +01:00
Carsten Dominik a43055a26f Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-12-20 13:09:58 +01:00
Dan Davison d6fefb406e babel: Interpret string results as file links with :results file
* lisp/ob.el (org-babel-execute-src-block): With :results file, when
:file is not supplied, interpret result as a file link as long as it
is a string.
2010-12-19 14:25:18 +00:00
David Maus 2a3663b314 Don't convert link description parts that look like numeric footnote
* lisp/org-latex.el (org-export-latex-preprocess): Don't convert link
description parts that look like numeric footnote.

Fixes a problem reported by Thomas S. Dye.
2010-12-19 14:54:16 +01:00
Eric Schulte d37705391e allow specification of table*, tabularx and tabulary table environments
e.g.

  #+CAPTION: A wide table with tabulary
  #+LABEL: tbl:wide
  #+ATTR_LaTeX: table* tabulary width=\textwidth align=l|lp{3cm}r|l
  | 1 | 2 | 3 |
  | 4 | 5 | 6 |

  #+CAPTION: A normal table with tabularx
  #+LABEL: tbl:wide
  #+ATTR_LaTeX: table tabularx width=\textwidth align=l|lp{3cm}r|l
  | 1 | 2 | 3 |
  | 4 | 5 | 6 |

  Thanks to Tom Dye for suggestions and LaTeX background knowledge.

* lisp/org-latex.el (org-export-latex-tables): Allowing specification
  of tabular[xy] inner environments through the ATTR_LaTeX line.
2010-12-17 13:36:09 -07:00
Julien Danjou ce837d0e8f org: rework `org-set-property'
* org-capture.el (org-capture-fill-template): Use `org-set-property'
directly.

* org.el (org-set-property): Split property and values reading.
(org-read-property-name, org-read-property-value)
(org-set-property-function): New functions.
(org-property-set-functions-alist): New variable.

The goal of this patch is to introduce a special variable
`org-property-set-functions-alist'. This variable allows to read
properties values in a more intelligent way from `org-set-property' or
from `org-capture'.

For that, it simplifies the `org-set-property' code and remove
duplication between `org-capture' and `org-set-property'.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-17 18:37:30 +01:00
Julien Danjou 3b9822f1a9 Fix org-agenda-prefix-format docstring
* org-agenda.el (org-agenda-prefix-format): Add missing `search' item
  in docstring.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-17 18:23:56 +01:00
Eric Schulte f8000a9bc1 org-export-string now accepts symbolic or string fmt argument
* lisp/org-exp.el (org-export-string): Use `format' to construct
  function call to allow symbolic or string arguments.
2010-12-16 18:09:51 -07:00
Carsten Dominik 8aacc708dd Capture: Better error message for invalid entry-type templates
* lisp/org-capture.el (org-capture-place-entry):
(org-capture-insert-template-here): Check tree for validity before
pasting it.
2010-12-16 16:51:04 +01:00
Julien Danjou dece850eca org-gnus: trim date
* org-gnus.el (org-gnus-store-link): Trim date.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-16 14:21:26 +01:00
Julien Danjou 073391f5a7 Allow to retrieve email link date
* org.el (org-email-link-description): Allow to retrieve email link date.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-16 14:17:54 +01:00
Lawrence Mitchell 32be74e098 Quote any special characters in org-make-target-link-regexp
* lisp/org.el (org-make-target-link-regexp): regexp-quote target
before replacing whitespace.

Previously a radio link <<<...>>> would match all three-letter words
in the buffer.  The manual indicates the radio links are meant to
match literally (modulo whitespace differences), so we should
regexp-quote all the targets to avoid over-eager matching.
2010-12-16 14:12:28 +01:00
John Wiegley c61cdced2f Undid one of the scatter-related changes 2010-12-15 23:31:19 -05:00
Eric Schulte f5f2851401 Noweb references can now be resolved from the library of babel.
* lisp/ob.el (org-babel-expand-noweb-references): Noweb references can
  now be resolved from the library of babel.
2010-12-15 10:16:58 -07:00
Eric Schulte e919c97d7e fixed insertion of trailing newline after code block evaluation
* lisp/ob.el (org-babel-result-end): No longer leaving trailing new
  line after block removal.
2010-12-15 09:58:57 -07:00
Carsten Dominik 8eee473f37 Anchor outline regexp during LaTeX tree export
* lisp/org-latex.el (org-export-latex-first-lines): Anchor outline
regexp during LaTeX tree export

Jörg Hagmann writes:

> - If you export the (new) minimal example below to latex (C-cC-e l), it works.
> - If you only export a tree (Subtree in the example; C-cC-e 1 l), the first table ends at the horizontal line and everything between it and the next node (Subsubtree) is eliminated. The second (identical) table is exported correctly.
> - If you remove the asterisk(s) in the first table, it works.
>
> This problem crept in in the last days or weeks before 7.4.
>
> It may not be a problem for most of you, but I happen to have a number of files where columns are automatically displayed as tables preceding the first subnode (#+BEGIN: columnview ...). An alternative would be to display %ITEM in column-view without the asterisks.
>
> Emacs 23.2.1 on OS X 10.6.5
> Org-mode version 7.4 (release_7.4.24.g48b11.dirty)
>
> Thanks, Jörg
>
> -------New minimal example------------
> * Subtree
>
>
> | One    | Two  | Three |
> |--------+------+-------|
> | * Test | text | text  |
> | ** One | text | text  |
>
>
> Some text
>
> ** Subsubtree
>
> | One    | Two  | Three |
> |--------+------+-------|
> | * Test | text | text  |
> | ** One | text | text  |
2010-12-15 12:37:45 +01:00
Bastien Guerry eb0d35dd18 Fix typo (which broke lisp/org.el).
Thanks to Matt Lundin for a warning about this.
2010-12-14 21:48:43 +01:00
John Wiegley 48b11c4420 Fixed an improper use of org-today 2010-12-14 02:02:41 -05:00
John Wiegley 14350cac34 Added FILE meta-property 2010-12-14 02:02:40 -05:00
Konrad Hinsen 8916e948d2 ob-python: ensure py-which-bufname is initialized
* lisp/ob-python.el (org-babel-python-initiate-session-by-key): Make
  sure that py-which-bufname is initialized, as otherwise it will be
  overwritten the first time a Python buffer is created.
2010-12-13 18:47:46 -07:00
Eric Schulte 19a0ca3182 ob-sh: Better escaping of variables with spaces.
* lisp/ob-sh.el (org-babel-sh-var-to-sh): Better escaping of variables
  with spaces.
2010-12-13 13:56:03 -07:00
Eric Schulte e3aeb07a17 ob-org: Padding code block with an empty title on LaTeX export.
* lisp/ob-org.el (org-babel-execute:org): Padding code block with an
  empty title on LaTeX export.
2010-12-13 13:23:10 -07:00
Matt Lundin 4760c3b948 Make timestamp search in org-entry-properties more efficient.
* lisp/org.el: (org-entry-properties) Stop scanning for timestamps if
a specific timestamp property (e.g., DEADLINE, SCHEDULED, etc.) is
requested and a match is found. Also, if a specific timestamp property
is requested, do not push non-relevant timestamps onto property list.

This change only effects org-entry-properties when a specific
timestamp is requested with the special flag, as in:

(org-entry-properties nil 'special "SCHEDULED")

Previously, even if only the SCHEDULED timestamp was requested,
org-entry-properties would parse all the timestamps in an entry. This
extra parsing could slow down the construction of agenda views,
especially with entries that contained a large number of log
items (CLOCK, state changes, etc.). The function org-entry-get,
however, is only interested in the first occurrence of the item. When
looking for a specific type of timestamp, org-entry-properties now
stops searching for timestamps after the match is found, unless the
property is "CLOCK".

Here are the relevant ELP results:

Before:

org-entry-get	     296         0.4724579999  0.0015961418
org-entry-properties 31          0.3438769999  0.0110928064

After:

org-entry-get        296         0.1447729999  0.0004890979
org-entry-properties 31          0.015765      0.0005085483
2010-12-13 15:13:36 +01:00
Carsten Dominik 98015f3748 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-12-13 15:11:14 +01:00
Carsten Dominik fbe3eb4d2a Fix display of current time to show up only today
* lisp/org-agenda.el (org-agenda-add-time-grid-maybe): Show time only
when grid is being made for today.

Patch by Matt Lundin
2010-12-13 10:43:37 +01:00
John Wiegley 3542f0eed9 Scattering tasks first resets them to "today" 2010-12-13 01:20:04 -05:00
Matt Lundin bca4ac9998 Optimize calls to org-is-habit-p
* lisp/org-agenda.el: (org-agenda-get-scheduled) Don't call
  org-is-habit-p until after checking for for
  org-agenda-skip-scheduled-if-done.

Org-agenda-get-scheduled was calling org-is-habit-p on every scheduled
item (including DONE items when org-agenda-skip-scheduled-if-done was
set to t). Tweaking the timing of the test shaves some time off of
agenda construction when org-habit is loaded and
org-agenda-skip-scheduled-if-done is t.

Before:  org-is-habit-p  478         0.2434439999  0.0005092970
After:   org-is-habit-p	 81          0.057944      0.0007153580
2010-12-12 22:26:23 +01:00
Carsten Dominik b65ba05758 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-12-12 20:45:40 +01:00
Achim Gratz 8dfd6a6140 Fixup 95bb16661b
* org.el: remove spurious linebreak introduced by earlier patch
* ob.el, ob-ref.el: remove double fix of the same problem

Achim Gratz <Stromeko@Stromeko.DE> wrote:

> this patch had already been partially applied by Carsten and Eric (in
> slightly a different way than I suggested).  The changes to ob.el and
> ob-ref.el (the require statements) are therefore superfluous and should
> probably be backed out.  There was also a superfluous whitespace change
> in org.el (a closing paren that was broken onto the next line).  Patch
> to this effect is attached.  You've already cleaned up org-agenda.el and
> the conditions in org-macs...
2010-12-12 20:09:28 +01:00
Carsten Dominik 5f44294c83 Support #+CONSTANTS in non - Org-mode files
* lisp/org-table.el (orgtbl-ctrl-c-ctrl-c): Parse buffer for constants.

Patch by Seweryn
2010-12-12 13:22:11 +01:00
Åukasz Stelmach 93135fa814 Add displaymath to MathJax setup
* lisp/org-html.el (org-export-html-mathjax-template): displaymath
environment and MathJax

Greetings All.

The following patch makes MathJax consider \begin{displaymath} and
\end{displaymath} as math environmetn boundaries. For someone who, like
me, keeps "The not so short introduction to LaTeX2e" alway around, the
displaymath environment is the default way to introduce a block of math.

In fact '\[' and '\]' are also mentioned there but the environment is
used in every single example so the patch minimizes the surprise.
2010-12-12 13:13:45 +01:00
Carsten Dominik 1495bc6b08 Add current time to time grid in agenda
* lisp/org-faces.el (org-agenda-current-time): New face.
* lisp/org-agenda.el (org-agenda-show-current-time-in-grid):
(org-agenda-current-time-string): New options.
(org-agenda-add-time-grid-maybe): Add current time to time grid.
2010-12-12 09:26:01 +01:00
Åukasz Stelmach ad006dea13 sexp can set its face (was: Including current time in agenda)
suvayu ali <fatkasuvayu+linux@gmail.com> writes:

> I actually tried to set the text properties for the string instead,
> but looks like org-agenda is ignoring that.
>
> (defun jd:org-current-time ()
>   "Return current-time if date is today."
>   (when (equal date (calendar-current-date))
>     (propertize (format-time-string "%H:%M Current time") 'font-lock-face
> 		'(:weight bold :foreground "DodgerBlue4" :background "snow"))))

To accomplish this you'd have to apply the following patch and use 'face
property rather than font-lock-face.

Why can't a sexp choose its 'face after all?

--8<---------------cut here---------------start------------->8---
--8<---------------cut here---------------end--------------->8---
2010-12-12 08:38:38 +01:00
Carsten Dominik 651e137c50 Make sure windows are created correctly on full-screen sessions
Patch by Leo
2010-12-12 08:36:49 +01:00
Carsten Dominik 7666ba421f Version number back to 7.4 2010-12-10 18:49:40 +01:00
Carsten Dominik 76a25715c9 Bump version number to 7.5 2010-12-10 18:43:10 +01:00
Carsten Dominik 1330048ba0 Keep byte compiler happy 2010-12-10 14:13:05 +01:00
Carsten Dominik 9df61b6c3e Fix typos 2010-12-10 11:12:56 +01:00
Tassilo Horn 21d4acf035 Place Footnotes section before signature in all message-mode derived modes.
* org-footnote.el (org-footnote-create-definition): Place Footnotes
  section before message-signature-separator also in modes derived
  from message-mode.
2010-12-10 07:34:27 +01:00
Carsten Dominik 3c7dd8487d XEmacs compatibility: temp dir 2010-12-10 07:33:15 +01:00
Julien Danjou 330721f406 org: remove useless computed value in org-make-tags-matcher
* org.el (org-make-tags-matcher): Remove useless cat-p value.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-10 07:30:24 +01:00
Julien Danjou 8c2f37270d org-entry-properties: enhance docstring
* org.el (org-entry-properties): Enhance docstring.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-10 07:29:14 +01:00
Nicolas Goaziou 9966f922f3 Do not break lists with blocks within when exporting
* lisp/org-list.el (org-list-top-point-with-indent,
  org-list-bottom-point-with-indent): Pay also attention to
  'original-indentation property of text, as blocks are put to column
  0 upon exporting.
2010-12-09 09:54:42 +01:00
Dan Davison c6a945e82c babel: Handle errors when temporary directory is on a different partition
* lisp/ob.el (org-babel-remove-temporary-directory): Handle exception
  with message informing of failure to remove directory.

Thanks to Antti Kaihola for the bug report:

http://thread.gmane.org/gmane.emacs.orgmode/34394

From: Antti Kaihola <akaihola <at> gmail.com>
Subject: Can't close Emacs+org-mode if /tmp and /home on different	partitions
Newsgroups: gmane.emacs.orgmode
Date: 2010-12-02 08:33:28 GMT (6 days, 1 hour and 22 minutes ago)
I have /tmp on my root partition and a separate partition for /home.
When trying to close an Emacs session which is using org-mode, I get
this error:

    move-file-to-trash: Non-regular file: Is a directory, /tmp/babel-XXXXXXX

(where XXXXXXX are random characters).

I tracked down the problem to org-babel-remove-temporary-directory
which ob.el adds to kill-emacs-hook. It tries to remove the temporary
directory using delete-directory, which in turn tries to move the
directory (by renaming) into trash, which is in my home directory.

I added this to my ~/.emacs.d/init.el:

   (custom-set-variables '(temporary-file-directory "/home/akaihola/tmp/"))

and closing Emacs works correctly again. However, since my init.el is
part of emacs-starter-kit which I update frequently, I'd prefer not to
modify that file. Unfortunately the customization hook
emacs-starter-kit provides (~/.emacs.d/custom.el) is loaded too late
to affect the temporary directory.

I'm running emacs-snapshot 1:20090909-1 in Ubuntu 10.10. Looks like
this is really an Emacs bug and is already fixed:
http://groups.google.com/group/gnu.emacs.bug/browse_thread/thread/0446b8684a8ef504
2010-12-08 10:11:49 +00:00
Eric Schulte be882617ad ob-clojure: reading `package' header argument from heading properties
* lisp/ob-clojure.el (org-babel-header-arg-names:clojure): Adding
  `package' to the list of Clojure header arguments which will be read
  from heading properties.
2010-12-07 21:08:31 -07:00
Nicolas Goaziou b3e16cda95 inlinetask: illustrate LaTeX export template with a new example
* lisp/org-inlinetask.el (org-inlinetask-export-templates): added
  Sébastien Vauban's suggestion for LaTeX export in docstring. This is
  not default as it requires an additional LaTeX package: "todonotes".
2010-12-06 19:24:00 +01:00
Nicolas Goaziou 2c23f2f064 New configurable way to export inline tasks
* org-inlinetask.el (org-inlinetask-export-templates): new variable
* org-inlinetask.el (org-inlinetask-export-handler): make use of
  templates to export inline tasks
2010-12-06 19:13:09 +01:00
Nicolas Goaziou aa9fbbb323 Fix cycling indentation with inline tasks
* org.el (org-current-level): ignore inline tasks when getting current
  level of entry
2010-12-06 19:13:09 +01:00
Nicolas Goaziou 5bbce0473d Fix indentation after an inline task with drawers
* org.el (org-indent-line-function): ignore drawers inside inline
  tasks  if the line to indent isn't inside an inline task itself.
2010-12-06 19:13:09 +01:00
Nicolas Goaziou 85591ffcbf Fix indentation of text after an inline task in indent-mode
* org-inlinetask.el (org-inlinetask-get-task-level): new function
* org-indent.el (org-indent-add-properties): find true level of indentation wrt inline tasks.
2010-12-06 19:13:09 +01:00
Nicolas Goaziou 9be9f727f8 Fix LaTeX export of subtrees and inline tasks 2010-12-06 19:13:09 +01:00
Nicolas Goaziou 5ecd79ea74 Handle inline tasks when marking a subtree
* org-inlinetask.el (org-inlinetask-outline-regexp): new function
* org-inlinetask.el (org-inlinetask-goto-beginning): new function
* org-inlinetask.el (org-inlinetask-goto-end): new function
* org.el (org-mark-subtree): new command
* org.el (org-speed-commands-default, org-mode-map): make use of new command
2010-12-06 19:13:09 +01:00
Nicolas Goaziou cd70dc1038 inlinetasks: fix latex export wrt conversion to lists
* org-inlinetask.el (org-inlinetask-export-handler): Remove protection
  from @<span class...> so it can be removed during LaTeX export.
2010-12-06 19:13:09 +01:00
Eric Schulte 1ce04c5057 updating Code block evaluation messages
Thanks to Sébastien Vauban for suggesting these changes.

* lisp/ob.el (org-babel-insert-result): More informative code block
  evaluation messages.
2010-12-06 08:04:17 -07:00
Carsten Dominik e9215698a2 Revert "Fix :VISIBILITY: handling of nested "folded" properties"
This reverts commit 383802d063.

The commit had org-mode process the headlines from bottom to top, which
meant that any changes to the visibility of lower headlines were
overridden/modified by changes higher up the tree. Reverting the commit
causes VISIBILITY to work correctly.
2010-12-06 10:06:21 +01:00
Matt Lundin c8ab88cb69 Allow user to limit amount of context stored in file link search strings
* lisp/org.el: (org-make-heading-search-string) Optionally limit
  number of lines stored in file link search strings.
  (org-context-in-file-links) Add option to set to integer specifying
  number of lines.
2010-12-06 10:05:29 +01:00
Carsten Dominik 385cdfdcf3 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-12-06 10:03:11 +01:00
Carsten Dominik 73d361d844 Empty properties when cloning an entry
Patch by Mike Mc Lean
2010-12-06 10:03:04 +01:00
Carsten Dominik 970b2f7b88 Allow to jump to capture template after finalizing
* lisp/org-capture.el (org-capture-finalize): New prefix argument
STAY-WITH-CAPTURE.
(org-capture-refile): Improve docstring.
* doc/org.texi (Using capture): Document using prefix arguments for
finalizing capture.
2010-12-06 09:32:24 +01:00
John Wiegley 4d575c8a03 C-u B S now scatters tasks across weekdays only 2010-12-06 00:22:55 -05:00
Eric Schulte 01a2e1a545 ob-sql: Add msosql as optional sql engine -- Thanks Sébastien Vauban
* lisp/ob-sql.el (org-babel-execute:sql): Add msosql as optional sql
  interaction engine.
2010-12-05 07:23:59 -07:00
Carsten Dominik a7cc04be03 Use org-today again in org-habit.el 2010-12-04 00:31:30 +01:00
Carsten Dominik 8cdd4ff98a Revert "org-habit: Use org-today."
This reverts commit 1dcb374f48.
2010-12-04 00:23:30 +01:00
Carsten Dominik 238c815502 Revert "org: use org-today in habits auto repeat"
This reverts commit d1eb6cb25b.
2010-12-04 00:19:22 +01:00
John Wiegley 384e4f08e4 Added a bulk "scattering" command
B S will cause tasks to be rescheduled a random number of days into the
future, with 7 as the default.  This is useful if you've got a ton of
tasks scheduled for today, you realize you'll never deal with them all,
and you just want them to be distributed across the next N days.
2010-12-03 17:52:46 -05:00
John Wiegley beedff9a49 `org-agenda-bulk-mark' now accepts a numerical prefix arg 2010-12-03 17:52:46 -05:00
Carsten Dominik e10e6197e7 Fix forgotten function renaming
* lisp/org-agenda.el (org-agenda-list):
(org-agenda-goto-today): Use `org-today'.
2010-12-03 23:37:55 +01:00
Carsten Dominik 316e7e5fbc Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode
Conflicts:
	lisp/org-agenda.el
2010-12-03 22:03:06 +01:00
Carsten Dominik d9cc075cb9 LaTeX export: Swap \begin{document} and the title/author definitions
* lisp/org-latex.el (org-export-latex-make-header): Swap \begin{document}
and the title/author definitions.

Patch by Sebastian Hofer.

TINYCHANGE
2010-12-03 21:02:33 +01:00
Carsten Dominik 5d74e1b754 Fix macro definition of with-silent-modification
* lisp/org-macs.el: Better backup definition for `with-silent-modifications'.
2010-12-03 20:53:34 +01:00
Eric Schulte 4081200ab0 ob-python: rename prefix to preamble
* lisp/ob-python.el (org-babel-execute:python): Rename "prefix" to
  "preamble".
  (org-babel-python-evaluate): Rename "prefix" to "preamble".
  (org-babel-python-evaluate-external-process): Rename "prefix" to
  "preamble".
2010-12-03 07:29:28 -07:00
Eric Schulte 201eb8ce23 ob: examplization of inserted results is smarter about markers
* lisp/ob.el (org-babel-examplize-region): Check if `end' is a marker
  or a point and handle appropriately.
2010-12-03 07:11:09 -07:00
Eric Schulte 6e450915a7 ob-sql: explicitly set \t as field separator on import -- Thanks to Joost Helberg
* lisp/ob-sql.el (org-babel-execute:sql): Explicitly set field
  separator to \t when importing tabular data.
2010-12-03 07:01:14 -07:00
Julien Danjou 0d0edd6d21 org-agenda: rework ndays and span handling
* org-agenda.el (org-agenda-custom-commands-local-options):
Allow org-agenda-span to be a symbol.
(org-agenda-ndays): Make obsolete.
(org-agenda-span): New variable superseding org-agenda-ndays.
(org-agenda-menu): Use org-agenda-current-span.
(org-agenda-current-span): New local variable storing current
span.
(org-agenda-list): Take a span instead of ndays as argument.
This function is now responsible for computing the ndays based
on span.
(org-agenda-ndays-to-span): Return span only if number of days
really matches.
(org-agenda-span-to-ndays): New function.
(org-agenda-manipulate-query): Use org-agenda-compute-starting-span.
(org-agenda-goto-today): Use org-agenda-compute-starting-span.
(org-agenda-later): Do not give compute a new span, use the
current one.
(org-agenda-day-view, org-agenda-week-view)
(org-agenda-month-view, org-agenda-year-view): Stop touching
org-agenda-ndays.
(org-agenda-change-time-span): Only compute starting-span.
(org-agenda-compute-starting-span): New function derived from
the old org-agenda-compute-time-span.
(org-agenda-set-mode-name): Compute mode based on
org-agenda-current-span.
(org-agenda-span-name): New function.

* org-mouse.el: Replace Replace org-agenda-ndays by
org-agenda-current-span.

* org.texi, orgguide.texi: Replace org-agenda-ndays by
org-agenda-span. Add a paragraph about org-agenda-span and say that
org-agenda-ndays is now deprecated.

This patch is pretty huge, so I'll give a bit of context about it.

I'm weird, but I used org-agenda-ndays set to 14. Unfortunately, this
settings was interpreted as a month view. Pressing 'f' key to see later,
would show me the next month, which was not at all what I wanted.

On the same idea, day view or week view would change my org-agenda-ndays
settings, which I think is not a good idea. Changing user setting is *bad*.
:-)

So I rewrote the things this way:
- Rename org-agenda-span to org-agenda-current-span
 Which has the same meaning has before, except it can be numeric.
- Rename org-agenda-ndays to org-agenda-span
 I think the name is better choosen. You can set it to a symbol instead of
 only a numeric value. That means you can set it to 'month and it will show
 you the number of days of the current month in your agenda. Better than
 30. But you can still set it to 30, or 31, or whatever you want.
- Do not change org-agenda-span. Never.
- Use org-agenda-current-span for navigation.
 That means if you press 'f', it will shows you really the next
 org-agenda-current-span ndays, and not something based on "I think you
 want a weekly view".
2010-12-03 13:07:31 +01:00
Robert Pluim c3b2977de6 Fix a docstring
* lisp/org-agenda.el (org-agenda-toggle-deadlines): Fix docstring.

TINYCHANGE
2010-12-03 11:45:03 +01:00
Carsten Dominik 94c19c82b7 Make compiler happy
* lisp/org-clock.el (org-quarter-to-date): Define variables.
(org-clock-special-range): Defin variables.  Use org-floor*.
(org-clocktable-write-default): Define tcol.
* lisp/org-compat.el (org-floor*): New function.
* lisp/org-complete.el: Declare external functions and variables.
2010-12-03 10:20:41 +01:00
Carsten Dominik 61b2247631 Fix % formula in clock tables
* lisp/org-clock.el (org-clocktable-write-default): Fix the % formula.

Bug reported by Joost Helberg.
2010-12-03 09:50:38 +01:00
Matt Lundin 2ac751a6cb org-agenda: Fix category string for agenda
* lisp/org-agenda.el: (org-format-agenda-item) The value of
org-category is not converted to a string unless it is defined.

This fixes commit 3061c7083d, which
resulted in org-format-agenda-item always returning the symbol-name for
org-category even if it was not defined. I.e., in some instances,
org-format-agenda-item returned the string "nil", thus bypassing the
buffer-file-name method of deriving the category.
2010-12-03 09:13:11 +01:00
Eric Schulte cfd7d07adc ob-python: content of :prefix argument appended to code file during external evaluation
* lisp/ob-python.el (org-babel-execute:python): Pass the new "prefix"
  header argument through to external evaluation.
  (org-babel-python-evaluate): Pass the new "prefix" header argument
  through to external evaluation.
  (org-babel-python-evaluate-external-process): When specified prepend
  "prefix" to the file used in external evaluation.
2010-12-02 07:25:50 -07:00
Dan Davison 7687748128 babel: fix python pretty print bug
* lisp/ob-python.el (org-babel-python-evaluate-session): Change python
module name from 'pp' to 'pprint'
2010-12-01 16:55:21 +00:00
Eric Schulte 8e746c9afa ob: removing empty lines from R output
* lisp/ob-R.el (org-babel-R-evaluate-session): Removing empty lines
  from R session output, these are often the result of variable
  assignments.
2010-12-01 08:01:00 -07:00
Eric Schulte 2c81a4c142 ob-sql: fix compiler warning
* lisp/ob-sql.el (orgtbl-to-csv): Declaring an external function to
  fix a compiler warning.
2010-12-01 07:21:18 -07:00
Eric Schulte a9a77780dc change requirement order to ob-eval is always loaded
* lisp/ob-eval.el (require): No longer require ob.el to allow
  requiring by ob.el.
* lisp/ob.el (ob-eval): Require ob-eval.
2010-12-01 07:19:45 -07:00
Eric Schulte 232651a57e ob: mention code block name when ":eval query"
* lisp/ob.el (org-babel-confirm-evaluate): Show code block's name when
  it is available during evaluation query.
2010-11-30 22:02:02 -07:00
Eric Schulte beab6b4bfe ob-sql: added variable handling
* lisp/ob-sql.el (org-babel-expand-body:sql): Expand the body of a sql
  code block.
  (org-babel-execute:sql): Use sql specific body expansion function.
  (org-babel-sql-expand-vars): Insert variables into a sql code block.

* lisp/ob-sqlite.el (org-babel-execute:sqlite): Remove unused variable
  declaration.
2010-11-30 19:32:01 -07:00
Eric Schulte c4418fc472 ob: fixed insertion of result error
* lisp/ob.el (org-babel-insert-result): Using markers instead of
  points for more robust buffer anchors.
2010-11-30 19:22:34 -07:00
Julien Danjou 13f066d66d org-capture: use org-today
* org-capture.el: Use org-today.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-01 00:50:08 +01:00
Julien Danjou 1dcb374f48 org-habit: Use org-today.
* org-habit.el: Use org-today.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-01 00:49:37 +01:00
Julien Danjou d1eb6cb25b org: use org-today in habits auto repeat
* org.el (org-auto-repeat-maybe): Use org-today.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-01 00:48:51 +01:00
Julien Danjou 2e08843369 Rename org-agenda-today to org-today.
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-01 00:48:28 +01:00
Carsten Dominik 12b153ed8b Implement clocktables for quarters
* lisp/org-clock.el (org-day-of-week): New function.
(org-quarter-to-date): New function.
(org-clock-special-range): Implement quarters.

Patch by Erwin Vrolijk
2010-11-29 11:27:47 +01:00
Sébastien Vauban 6d33af4a5c Fix documentation for global tag list during capture
* lisp/org.el (org-complete-tags-always-offer-all-agenda-tags): Fix
docstring.
2010-11-29 10:28:07 +01:00
Julien Danjou 9de7ad3593 Add org-agenda-todo-ignore-timestamp
* lisp/org-agenda.el: Add org-agenda-todo-ignore-timestamp.
(org-agenda-check-for-timestamp-as-reason-to-ignore-todo-item):
Honor org-agenda-todo-ignore-timestamp.
* doc/org.texi: Mention org-agenda-todo-ignore-timestamp.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-11-29 10:25:22 +01:00
Julien Danjou 3061c7083d org-agenda: convert category to string
* org-agenda.el (org-format-agenda-item): Convert category to a string
if it is a symbol. This fixes the following call to
org-agenda-get-category-icon which fails if category is not a string.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-11-29 10:23:31 +01:00
Eric Schulte 143292aab5 ob-clojure: fully qualified pprint -- thanks to Rick Moynihan
* lisp/ob-clojure.el: Updated requirements documentation to mention
  the minimum version of Clojure.
  (org-babel-expand-body:clojure): Fully qualified function name.
2010-11-28 20:58:34 -07:00
Nicolas Goaziou acd6126300 Exporting lists to LaTeX respects blank lines
* lisp/org-latex.el (org-export-latex-lists): do not add an
  unnecessary newline character after a list.
* lisp/org-list.el (org-list-bottom-point-with-indent): ensure bottom
  point is just after a non blank line.
2010-11-28 21:27:20 +01:00
Eric Schulte c3b7eca193 ob: fixed newly introduced empty result error
* lisp/ob.el (org-babel-examplize-region): Remove old assertion which
  no longer applies to the result insertion code.
2010-11-27 17:51:46 -07:00
Eric Schulte 994e1648e2 babel: python uses :return header argument
* lisp/ob-python.el (org-babel-execute:python): Use a :return header
  argument for external evaluation in which the code block body need
  be wrapped in a function

Thanks to Darlan Cavalcante for proposing this feature.
2010-11-27 23:59:51 +00:00
Eric Schulte 039f248092 ob-clojure: Fixed compiler warning, trapped free variable
* lisp/ob-clojure.el (org-babel-expand-body:clojure): Trapped free
  variable.
2010-11-27 08:19:53 -07:00
Carsten Dominik 1123a5d48e Edit formulas with "C-c '"when in TBLMF line
* lisp/org.el (org-edit-special): Edit formulas when in TBLMF line

Conflicts:

	lisp/org.el
2010-11-27 08:05:00 +01:00
Carsten Dominik 74f6072d0c Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-27 08:03:16 +01:00
Allen S. Rout f8e6119131 New hook to run after finalizing capture, suitable for deleting a frame
* lisp/org-capture.el (org-capture-after-finalize-hook): New hook.
(org-capture-finalize): Run the new hook.

TINYCHANGE
2010-11-27 07:55:21 +01:00
Eric Schulte 1aa92418da ob-clojure: support for pretty printing code and data
* lisp/ob-clojure.el (org-babel-expand-body:clojure): Support for
  pretty printing of Clojure code and data.
2010-11-26 15:49:24 -07:00
Eric Schulte 01b4f63fe9 ob: no longer escaping results which will be wrapped in a block.
* lisp/ob.el (org-babel-insert-result): No longer escape results which
  will be wrapped in a block.
2010-11-26 15:48:22 -07:00
Eric Schulte 172a3b6532 ob: Fixed compiler warning
* lisp/ob-eval.el (org-babel-eval-wipe-error-buffer): Fixed compiler
  warning and added documentation string.
2010-11-26 13:28:44 -07:00
Eric Schulte a657b6f2a3 drastically simplified ob-clojure using slime for all evaluation
* lisp/ob-clojure.el (org-babel-execute:clojure): Remade using slime
  for all code evaluation.

  (org-babel-expand-body:clojure): Remade in the image of
  `org-babel-expand-body:emacs-lisp'.
2010-11-26 13:26:21 -07:00
Carsten Dominik b6f43d7c20 Minor fix 2010-11-26 19:08:13 +01:00
Carsten Dominik 80a6674178 BEAMER export: Allow overlay options for column environments
* lisp/org-beamer.el (org-beamer-sectioning): Allow overlay arguments for
the column as well.
* doc/org.texi (Beamer class export): Document that also overlay arguments
can be passed to the column environment.

Eric Fraga writes:

> I am trying to create a beamer slide which has two columns.  The second
> column should only appear after a while (the 6th uncovering operation).
> In latex, I would do:
>
> : \begin{column}<6->{0.4\textwidth}
>
> say.  In org, I would expect to be able to get this latex code generated
> by the following:
>
> --8<---------------cut here---------------start------------->8---
> ***** column heading			      :BMCOL:B_block:
>      :PROPERTIES:
>      :BEAMER_col: 0.4
>      :BEAMER_envargs: c<6->
>      :BEAMER_extra:
>      :BEAMER_env: block
>      :END:
> --8<---------------cut here---------------end--------------->8---
>
> according to the info documentation (Beamer class export).
>
> However, this does not work: the "c<6->" is placed verbatim in
> the \begin{block} that comes after the \begin{column}.  Furthermore, if
> I ask for the heading to be ignored (instead of defining a block), the
> envargs are lost completely!
2010-11-26 08:02:58 +01:00
Carsten Dominik 88bd7bbe89 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-25 22:32:16 +01:00
Eric Schulte 30b2d604c5 ob: more descriptive "Evaluation Aborted" message
* lisp/ob.el (org-babel-confirm-evaluate): More descriptive message
  when evaluation is aborted or disabled.
2010-11-25 10:28:04 -07:00
Carsten Dominik 341e9ce1d7 Date tree capture with prompt for date
* doc/org.texi (Template elements): Document the new entry type.

* lisp/org-capture.el (org-capture-templates): Add new option to customize
type and docstring.
(org-capture-set-target-location): Interpret the file+datetree+prompt
entry.
2010-11-25 17:00:57 +01:00
Carsten Dominik 9cc19e3919 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode
Conflicts:
	lisp/org.el
2010-11-24 23:44:04 +01:00
Eric Schulte b5f7b02814 "wrap" :results header argument wraps code block results
* lisp/ob.el (org-babel-insert-result): Responds to new "wrap" header
  argument.
  (org-babel-merge-params): Includes new "wrap" header argument in
  one of the results header argument exclusive groups.

* lisp/org.el (org-additional-option-like-keywords): Fontify begin and
  and results lines as comments.
2010-11-24 10:19:44 -07:00
Carsten Dominik 125edaf6ae Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-24 02:14:29 +01:00
David Maus 6e3f1e1175 Fix condition for with-silent-modification
* org-macs.el (with-silent-modifications): Fix condition for
with-silent-modification.
2010-11-23 21:31:54 +01:00
Eric Schulte 950bea36f8 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-23 09:39:41 -07:00
Eric Schulte d24b04d82f ob: cleaner parsing of header arguments
Thanks to Charles C. Berry for insisting on this issues existence

  This change is now secured with a unit test

* lisp/ob.el (org-babel-parse-header-arguments): Stripping trailing
  spaces off of header arguments (even the first one).
2010-11-23 09:39:26 -07:00
Eric Schulte 90bd46a6d5 ob-sh: robustification
* lisp/ob-sh.el (org-babel-sh-var-to-sh): Wrap end token of heredoc in
  single quotes which is the best practice.
  (org-babel-sh-table-or-results): Use `org-babel-script-escape' for
  more robust parsing of shell output.
2010-11-23 09:38:15 -07:00
Dan Davison fb008fdd88 Add some more keywords for completion
* lisp/org.el (org-additional-option-like-keywords): Add more keywords,
and colons to some old ones.
2010-11-23 15:11:14 +01:00
Dan Davison 666e6ed5e7 babel: Wipe error buffer clean at start of execution
* lisp/ob-eval.el (org-babel-error-buffer-name): Define new variable.

  (org-babel-eval-error-notify): Use new variable `org-babel-error-buffer-name'
  (org-babel-eval): Make temp error buffer invisible to the user with
		    initial space in name.
  (org-babel-eval-wipe-error-buffer): New function to wipe the error message buffer.

* lisp/ob-exp.el (org-babel-eval-wipe-error-buffer): Declare external function
  `org-babel-eval-wipe-error-buffer'.
  (org-babel-exp-results): Wipe error buffer clean at outset of execution

* lisp/ob.el (org-babel-execute-src-block-maybe): Wipe error buffer clean at
  outset of execution
  (org-babel-eval-wipe-error-buffer): Declare external function
				    `org-babel-eval-wipe-error-buffer'.
2010-11-23 13:26:31 +00:00
Eric Schulte b174975eb7 ob: safer conversion of results of scripting languages into elisp objects
* lisp/ob-python.el (org-babel-python-table-or-string): Using
  `org-babel-script-escape' for reading string input from scripting
  languages.

* lisp/ob-ruby.el (org-babel-ruby-table-or-string): Using
  `org-babel-script-escape' for reading string input from scripting
  languages.

* lisp/ob.el (org-babel-script-escape): Using
  `org-babel-script-escape' for reading string input from scripting
  languages.

* lisp/ob-haskell.el (org-babel-haskell-table-or-string): Using
  `org-babel-script-escape' for reading string input from scripting
  languages.
2010-11-22 18:51:00 -07:00
David Maus 803f6b0ceb Remove duplicate defcustom, introduced by 95bb1666 2010-11-22 21:32:22 +01:00
Achim Gratz 95bb16661b Fix byte compiler warnings
* org-macs.el (org-called-interactively-p): Wrap function call in
	with-no-warnings.
	(with-silent-modifications) Declare macro for Emacs < 23.2.

TINYCHANGE
2010-11-22 21:22:27 +01:00
Eric Schulte 3785722e92 ob: fix compiler warnings introduced by code-block list reading/writing 2010-11-22 07:21:18 -07:00
Eric Schulte e127899719 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-22 06:44:31 -07:00
Eric Schulte 6baa78b2da ob: no longer adding extra ":" to singleton first header args
* lisp/ob.el (org-babel-parse-header-arguments): Removed addition of
  ":" to singleton first header arguments as it was leading to errors.
2010-11-22 06:44:06 -07:00
Carsten Dominik 3ce2488f74 Better processing of headlines and the title in LaTeX export
* lisp/org-latex.el (org-export-latex-make-header): Run the title through
`org-export-latex-fontify-headline'.
(org-export-latex-fontify-headline): Do the protection of math
snippets also here
2010-11-21 10:22:09 +01:00
Carsten Dominik e1e916d659 Revert "Preserve math environments in title when exporting to LaTeX"
This reverts commit c579f08eee.
2010-11-21 10:03:07 +01:00
Richard Lawrence c579f08eee Preserve math environments in title when exporting to LaTeX
* lisp/org-latex.el (org-export-as-latex): Sent the section title
through the preprocessor.

Hi all,

This patch fixes the issue I originally described here:
http://article.gmane.org/gmane.emacs.orgmode/32281

It preserves math-mode delimiters (e.g. "$" and "\(") in the document
title when exporting to LaTeX.  (That is, it prevents them from being
escaped, by running the title through org-export-preprocess-string,
which marks them with the org-protected property.)  It should work
regardless of whether the title is pulled from a headline, from the text
before the first headline, or from an explicit #+TITLE declaration.

(This is my first time contributing a patch to a Free Software project
-- so please, let me know what you think!)

Best,
Richard
2010-11-21 09:51:52 +01:00
Carsten Dominik d637546804 Mark listitifed headings wiht custom id
* lisp/org-html.el (org-html-level-start): Mark listified headings
with a custom id.

Patch by Jambunathan
2010-11-21 09:45:02 +01:00
Carsten Dominik f692ba3c26 Remove confusion of C-c C-o in footnote with cursor on link
* lisp/org.el (org-open-at-point): Don't do footnote action if cursor is
on a bracket link.

Sebastian Mengin writes:

> Hi,
>
> Consider the following minimal example:
>
> Text[fn:1]
>
> * Footnotes
> [fn:1] Note with a [[file:abecedaire.jpg][link]].
>
> Here with orgmode 7.02, doing C-c C-o on the link moves the cursor on
> [fn:1] and says in the minibuffer: "Position saved mark to ring, go back
> with C-c &", instead of opening the linked file.
>
> Is this a bug?
>
2010-11-20 18:24:18 +01:00
Carsten Dominik dce955fad0 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-20 12:33:45 +01:00
Carsten Dominik 3dc846ae38 Make org-edit-special call the formula editor if cursor is in TBLFM line
* lisp/org.el (org-edit-special): Check also for TBLFM line.

Patch by Thorsten Wagner.
2010-11-20 12:33:37 +01:00
Carsten Dominik 69ba4a181c Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-20 12:26:55 +01:00
Achim Gratz c906a75e48 org-clock.el: fix regex to recognize indented clock tables
* lisp/org-clock.el (org-get-clocktable)
  previous patch incorrectly required whitespace in front of #+BEGIN: and #+END:

TINYCHANGE - This patch is in the public domain.
2010-11-20 12:26:02 +01:00
Dan Davison 9db0d7e20b Tweak condition for src buffer to inherit active region.
* lisp/org-src.el (org-edit-src-code): Allow region to be inherited by
edit buffer when mark is one character beyond end of src block.

Thanks to Jambunathan K. for the bug report:

 C-c C-v C-M-h and C-c C-v C-x interaction

   In the block below do

   1. C-c C-v C-M-h, C-c C-v C-x C-M-\
   2. Mark (just) the code-block with C-SPC etc etc. C-c C-v C-x C-M-\

   See the difference in behaviour.

<text:p text:style-name="Standard">This is a xref to
<text:bookmark-ref text:reference-format="text"
text:ref-name="__RefHeading__1669_1684552201">Heading8
</text:bookmark-ref>.</text:p>

I have transient mark mode on.
2010-11-19 23:32:30 +00:00
Carsten Dominik 967c71f5ef Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-20 00:11:46 +01:00
Nicolas Goaziou 85501c0623 Fix cycling bullet with point not at column 0
* org-list.el (org-cycle-list-bullet): ensure point is at bol before
  checking item indentation.
2010-11-19 23:47:02 +01:00
Carsten Dominik 04f71ffc55 Keep byte compiler happy 2010-11-19 20:14:37 +01:00
Carsten Dominik ce329b330c Fix completion for tags and TeX-like entity macros, add block arguments 2010-11-19 20:14:25 +01:00
Eric Schulte 451acd11ce move ob-map-src-blocks up in ob.el and autoload it
* lisp/ob.el (org-babel-map-src-blocks): Moved to earlier in the file
  and now autoloading.
2010-11-19 01:16:29 -07:00
Eric Schulte e34033fec2 using higher level function for checking list membership
Thanks to Nicolas Goaziou for pointing this out

* lisp/ob-ref.el (org-babel-ref-at-ref-p): Use higher level function
  for testing list membership.
* lisp/ob.el (org-babel-read-result): Use higher level function for
  testing list membership.
  (org-babel-result-end): Use higher level function for testing list
  membership.
2010-11-18 09:34:21 -07:00
Eric Schulte 14b52a05fa ob-sqlite: pass the body to the sqlite command through a pipe
* lisp/ob-sqlite.el (ob-eval): require ob-eval for external command
  execution
  (org-babel-execute:sqlite): no longer uses the init option for
  passing commands to sqlite
2010-11-18 09:12:55 -07:00
Nicolas Goaziou c538b0eeab Fix indentation of drawers, blocks and literal examples
* lisp/org.el (org-indent-line-function): drawers and blocks have no
  influence on indentation of text below. Also fix indentation problem
  with a block at column 0 and add a special case for literal examples.
2010-11-18 16:35:46 +01:00
John Wiegley 0ff8d32131 Now using pcomplete for in-buffer completion 2010-11-18 07:34:16 +01:00
Eric Schulte 97f4c3f9a1 fixed (hopefully) error in compiled form of org-babel-map-src-blocks
* lisp/ob.el (org-babel-map-src-blocks): Ensure that the file argument
  is only evaluated once.
2010-11-17 17:03:44 -07:00
Eric Schulte 88947588bc lists are now a data type recognized by code blocks
* lisp/ob-ref.el (org-babel-ref-resolve): Recognize `list' as a unique
  type of data
  (org-babel-ref-at-ref-p): Recognize `list' as a unique type of data

* lisp/ob.el (org-babel-read-result): Recognize `list' as a unique
  type of data
  (org-babel-read-list): A function to read a textual Org-mode list
  into an emacs-lisp list.
  (org-babel-insert-result): Recognizes the "list" result param to
  insert data as an Org-mode list.
  (org-babel-result-end): Find the end of an Org-mode list.
  (org-babel-merge-params): Add "list" as a result param.

* doc/org.texi (results): Documentation of the new "list" results
  header argument.
2010-11-17 16:47:55 -07:00
Eric Schulte 4fca6b54b5 org-babel-load-file can now be called interactively
* lisp/ob-tangle.el (org-babel-load-file): Can be called interactively.
2010-11-17 13:04:48 -07:00
Carsten Dominik b3d6f04483 New hook to run after orgtbl-mode has sent a table
* lisp/org-table.el (orgtbl-after-send-table-hook): New hook.
(orgtbl-ctrl-c-ctrl-c): Run `orgtbl-after-send-table-hook' when a
table was sent.
(orgtbl-send-table): Return the number of sent tables, or nil if no
sending has happened.

Patch by Seweryn Kokot. TINYCHANGE
2010-11-17 13:58:52 +01:00
Carsten Dominik 815374e952 Allow a user-define function for getting the base priority of a node
* lisp/org.el (org-get-priority-function): New option.
(org-get-priority): Call `org-get-priority-function' if that
has been set.
2010-11-17 09:12:47 +01:00
Dan Davison b59074eca8 babel: Avoid addition of unnecessary ellipsis
* lisp/ob-table.el (org-babel-table-truncate-at-newline): Only add
"..." if there is something after the newline.
2010-11-16 11:16:18 +00:00
Achim Gratz fee2c2c8da org-clock.el: fix regex to recognize indented clock tables
* lisp/org-clock.el (org-get-clocktable):
(org-in-clocktable-p):
(org-clocktable-shift):
(org-clocktable-steps): Fix regexp to allow for indented clock tables

 #+BEGIN: and #+END: were expected only at the first column in some
   places.
 #BEGIN: and #END: were erroneously recognized inside normal lines in
   other instances.
 always allow whitespace after #BEGIN: and #END:, not just a single space

TINYCHANGE - This patch is in the public domain.
2010-11-16 10:22:57 +01:00
Puneeth Chaganti 249ae99b18 Include an .org file and lower the level of all its headers
* doc/org.texi (Include files): Document :minlevel.
* lisp/org-exp.el (org-export-handle-include-files): Support :minlevel
property.
(org-get-file-contents): New argument minlevel to demote included
content.

On Sat, Nov 13, 2010 at 1:12 AM, Carsten Dominik
<carsten.dominik@gmail.com> wrote:
>
> On Nov 10, 2010, at 3:46 AM, Jianshi Huang wrote:
>
>> Hi,
>>
>> I know I can include any file using #+INCLUDE.
>>
>> I need to include several org files, but they were edited
>> independently as a complete document.
>>
>> Now I want to lower the levels of headers in these org files
>> automatically during inclusion. Is there a way to do that?
>
> No.  But since #+include accepts arguments, it could be implemented,
> something like
>
> #+include "aaa.org" :minlevel 4
>
> or so.  I would accept a good patch to this effect.

Here's a patch. I tested it with a simple document and works fine.

Thanks,
Puneeth
2010-11-15 11:15:53 +01:00
Nicolas Goaziou 065675cdc7 list: use compatibility code whenever possible 2010-11-14 08:58:41 +01:00
Carsten Dominik c2a366ac5a Add command names for chapters 4-7 2010-11-13 10:09:15 -06:00
Carsten Dominik 0766085d9a Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-12 23:56:52 -06:00
Noorul Islam 5324802839 Internal links in LaTeX export
Carsten Dominik <carsten.dominik@gmail.com> writes:

> On Oct 29, 2010, at 5:22 AM, Jambunathan K wrote:
>
>> "Thomas S. Dye" <tsd@tsdye.com> writes:
>>
>>> Aloha Jambunathan K.,
>>>
>>> Yes, thanks for that suggestion.  It should work on your example, but
>>> it breaks external links, like this:
>>>
>>> \hyperref[http://www.ctan.org/tex-archive/macros/latex/contrib/koma-script/
>>> ]{KOMA-script}
>>>
>>> External links require the \href{}{} command.  It appears the LaTeX
>>> export process no longer distinguishes internal and external links,
>>> as
>>> I believe it used to do.
>>>
>>
>> This is the problematic commit:
>>
>> commit f5918bdcc0
>> parent	df5894cdcb
>> Date:   Sun Oct 17 08:29:51 2010 +0000
>>
>>    LaTeX export: use org-export-latex-hyperref-format
>
> I have just reverted this commit.
>
> - Carsten
>
Looks like time to change the variable name which is actually confusing.

Since href and hyperref are two different things, I renamed the existing
`org-export-latex-hyperref-format' variable as
`org-export-latex-href-format' and introduced a new one
`org-export-latex-hyperref-format'.

* org-latex.el (org-export-latex-hyperref-format): New option.
(org-export-latex-href-format): Renamed the existing variable
`org-export-latex-hyperref-format' as `org-export-latex-href-format'
(org-export-latex-links): Use `org-export-latex-hyperref-format' and
`org-export-latex-href-format'

Thanks and Regards
Noorul

>>
>>    * lisp/org-latex.el (org-export-latex-links) : Replaced hard coded
>>    hyperref format with custom
>>      variable `org-export-latex-hyperref-format'
>>
>> Note that href is not same as hyperref.
>>
>> Jambunthan K.
>>
>>
>>> All the best,
>>> Tom
>>>
>>> On Oct 28, 2010, at 3:30 PM, Jambunathan K wrote:
>>>
>>>>
>>>> Thomas
>>>>
>>>> There was a hint at possible solution (or atleast a partial
>>>> solution) in
>>>> my original post. Did you try it before jumping in to rough waters
>>>> or
>>>> digging deeper?
>>>>
>>>> Do
>>>>
>>>> ,----
>>>> | M-x customize-variable RET org-export-latex-hyperref-format'
>>>> `----
>>>>
>>>> so that your .emacs has an entry like this
>>>>
>>>> ,---- [.emacs]
>>>> |
>>>> | (custom-set-variables
>>>> |  '(org-export-latex-hyperref-format "\\hyperref[%s]{%s}"))
>>>> |
>>>> `----
>>>>
>>>> The above setting solves the problem for me with the following
>>>> simple
>>>> Org file.
>>>>
>>>> * Heading1
>>>> Make this section as large as possible so that it fills atleast a
>>>> page.
>>>>
>>>> * Heading2
>>>> Links to [[Heading1]]
>>>>
>>>> Jambunathan K.
>>>>
>>>> "Thomas S. Dye" <tsd@tsdye.com> writes:
>>>>
>>>>> On Oct 28, 2010, at 12:35 PM, Nick Dokos wrote:
>>>>>
>>>>>> Thomas S. Dye <tsd@tsdye.com> wrote:
>>>>>>
>>>>>>> On Oct 28, 2010, at 11:01 AM, Jambunathan K wrote:
>>>>>>>
>>>>>>>
>>>>>>>  This is a regression. release-7.01h is good. HEAD is bad. I get
>>>>>>> the
>>>>>>>  following line with release-7.01h.<
>>>>>>>
>>>>>>>   Links to \hyperref[sec-1]{Heading1}
>>>>>>>
>>>>>>>  Jambunathan K.
>>>>>>>
>>>>>>> Aloha Jambunathan K.,
>>>>>>>
>>>>>>> Very many thanks for this information.  I have Org-mode version
>>>>>>> 7.01trans
>>>>>>> (release_7.01h.880.g7531f).  I take it the problem I'm having is
>>>>>>> due to a relatively recent change
>>>>>>> to Org-mode.  If there is anything I can do to help isolate the
>>>>>>> problem, please let me know.
>>>>>>>
>>>>>>
>>>>>> Tom,
>>>>>>
>>>>>> If you have the time and the inclination, you might try bisecting
>>>>>> your
>>>>>> way through. Bisecting org-mode problems is actually a very good
>>>>>> way
>>>>>> to
>>>>>> practice because the turnaround time is very small.
>>>>>>
>>>>>> Prerequisites:
>>>>>>
>>>>>> * you have a clone of the org-mode git repository.
>>>>>>
>>>>>> * you have an org test file.
>>>>>>
>>>>>>
>>>>>> Steps:
>>>>>>
>>>>>> * [optional, but it makes me feel a little safer] create a test
>>>>>> branch
>>>>>> and switch to it:
>>>>>>
>>>>>> git checkout -b test-branch master
>>>>>>
>>>>>> * I clean out all the compiled files while doing a bisection: it's
>>>>>> quicker
>>>>>> than regenerating them every time and I don't have to worry (much)
>>>>>> about
>>>>>> emacs loading a wayward .elc file:
>>>>>>
>>>>>> make clean
>>>>>>
>>>>>> * start the bisection and tell git which commit is known good and
>>>>>> which is known bad:
>>>>>>
>>>>>> git bisect start
>>>>>>
>>>>>> # current version is bad
>>>>>> git bisect bad
>>>>>>
>>>>>> # release_7.01h was good - I got the name with ``git tag''
>>>>>> git bisect good release_7.01h
>>>>>>
>>>>>> That checks out a revision half-way in between the bad and good
>>>>>> commits: since
>>>>>> there are about 900 commits in between, you'll be at approx the
>>>>>> 450-
>>>>>> mark and it
>>>>>> should take about 10 bisections to get it down to a single commit.
>>>>>>
>>>>>> * LOOP Now all you have to do is repeat the following steps:
>>>>>>
>>>>>> # since you did ``make clean'' you don't have to worry about .elc
>>>>>> files
>>>>>> # just reload all the .el files.
>>>>>> M-x org-reload
>>>>>>
>>>>>> visit your org test file, export to LaTeX, check for \href/
>>>>>> \hyperref (or
>>>>>> whatever other telltale sign shows badness/goodness).
>>>>>>
>>>>>> # tell git about it
>>>>>> git bisect good *OR* git bisect bad
>>>>>>
>>>>>> This last step will check out another revision and in about 10
>>>>>> repetitions
>>>>>> of the loop, you are done.
>>>>>>
>>>>>> * Tell git you are done, so it can clean up:
>>>>>>
>>>>>> git bisect reset
>>>>>>
>>>>>> Theoretically, you could do all of this in your master branch
>>>>>> without
>>>>>> creating a test-branch and this last step will reset everything to
>>>>>> the
>>>>>> way it was before ``git start''.
>>>>>>
>>>>>> * Post the offending commit to the list.
>>>>>>
>>>>>> * Get back to your master branch:
>>>>>>
>>>>>> git checkout master
>>>>>>
>>>>>> * If you created a test-branch, clean it out:
>>>>>>
>>>>>> git branch -d test-branch
>>>>>>
>>>>>> * [Optional] Recreate your .elc files and reload them:
>>>>>>
>>>>>> make
>>>>>> M-x org-reload
>>>>>>
>>>>>>
>>>>>> And that's it: a half-hour of fun and games. Unless of course, you
>>>>>> hit upon a revision that is neither good nor bad (in the above
>>>>>> restricted
>>>>>> sense): you might get some other problem that prevents you from
>>>>>> being
>>>>>> able to answer. That might or might not be easy to resolve, so
>>>>>> I'll
>>>>>> leave that as an advanced topic (truth be told, I came up against
>>>>>> this
>>>>>> situation a couple of days ago and I didn't know how to proceed:
>>>>>> so
>>>>>> it's ignorance more than anything else that prevents me from
>>>>>> saying
>>>>>> anything more).
>>>>>>
>>>>>> If you want to try, I'd be happy to answer questions - I might try
>>>>>> the
>>>>>> bisection later on tonight myself in any case. And btw, this is of
>>>>>> course archeology of a different (and much easier) kind, so I
>>>>>> imagine
>>>>>> you'll take to it like a fish in water :-)
>>>>>>
>>>>>> HTH,
>>>>>> Nick
>>>>>
>>>>> Hi Nick,
>>>>>
>>>>> Irresistible hook at the end there.  I wish this stuff were as easy
>>>>> as
>>>>> archaeology is for me.  Your instructions are terrific, though.
>>>>>
>>>>> I did hit on a revision that was neither good nor bad:
>>>>>
>>>>> commit 8562273b27
>>>>> Author: Eric Schulte <schulte.eric@gmail.com>
>>>>> Date:   Sat Oct 16 13:21:47 2010 -0600
>>>>>
>>>>>   ob-ref: don't forget arguments to referenced code blocks
>>>>>
>>>>>   * lisp/ob-ref.el (org-babel-ref-resolve): bringing the referent
>>>>>     arguments back to their params before evaluation
>>>>>
>>>>> This one puts these lines in *Messages* when I export to LaTeX
>>>>>
>>>>> executing Org code block...
>>>>> if: Symbol's value as variable is void: result-type
>>>>>
>>>>> I tried using different commits for the initial git bisect good,
>>>>> hoping that would skip by the problem, but this one appears to have
>>>>> stuck around a while.  My other two tries both ended with this same
>>>>> error, but with different commits.
>>>>>
>>>>> I'm not sure what to do next.  This problem isn't yielding to my
>>>>> archaeo-logic. :)
>>>>>
>>>>> All the best,
>>>>> Tom
>>
>> _______________________________________________
>> Emacs-orgmode mailing list
>> Please use `Reply All' to send replies to the list.
>> Emacs-orgmode@gnu.org
>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>
>
> _______________________________________________
> Emacs-orgmode mailing list
> Please use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
2010-11-12 23:54:06 -06:00
Eric Schulte c535678792 ob-calc: ensure the *Calculator* buffer exists before it is used
* lisp/ob-calc.el (org-babel-execute:calc): Ensure the *Calculator*
  buffer exists before it is used.
2010-11-12 17:04:53 -07:00
Eric Schulte 5da47e2c2e babel: fix a number of compiler warnings
* Makefile (LISPF): Add ob-calc.el to compiled files.

* lisp/ob-calc.el (org-babel-execute:calc): Fix compiler warnings.

* lisp/ob-lisp.el (slime-process): Declare an external function.
  (slime-eval): Declare an external function.
  (slime-connected-p): Declared an external function.
  (org-babel-lisp-cmd): Add a group to the defcustom specification.
  (org-babel-execute:lisp): Require slime inside function.
  (org-babel-lisp-initiate-session): Require slime inside function.
2010-11-12 17:02:24 -07:00
Nicolas Goaziou c303127cee babel: delay call to `org-export-blocks-preprocess' in export
* lisp/org-exp.el (org-export-preprocess-string): delaying code block
  processing a bit to allow correct list parsing in the export string
2010-11-12 16:39:35 -07:00
Carsten Dominik 5226c561b3 Use lower case for AM/PM 2010-11-12 16:59:39 -06:00
Christopher Allan Webber 21bf04dfa5 Allow ap/pm times in agenda time grid
* lisp/org-agenda.el (org-agenda-timegrid-use-ampm): New option.
(org-agenda-time-of-day-to-ampm): New function.
(org-agenda-time-of-day-to-ampm-maybe): New function.
(org-format-agenda-item): Call org-agenda-time-of-day-to-ampm-maybe.

Patch by Christoph Allen Webber
2010-11-12 16:57:26 -06:00
Carsten Dominik dbc8a8ede1 Remove the autoload for org-capture-templates
This seems to have been causing than solving problems.
2010-11-12 16:26:48 -06:00
Carsten Dominik c8832d6e27 Remove [home] and [end] bindings of unknown purpose 2010-11-12 15:35:49 -06:00
Carsten Dominik 1f40cbc596 New option to stop level nine headline to use level 1 face
* lisp/org-faces.el (org-cycle-level-faces): New option.
* lisp/org.el (org-get-level-face): Honor org-cycle-level-faces

Original patch by Jonathan BISSON, modified by Carsten Dominik
2010-11-12 13:37:38 -06:00
Carsten Dominik 42dd7afe45 Fix typo 2010-11-12 12:17:00 -06:00
Julien Danjou 550859ed5a Introduce special face for TODAY in agenda
* lisp/org-agenda.el (org-agenda-today): New function.
(org-agenda-get-day-face): New function.
(org-timeline): Use org-agenda-today and org-agenda-get-day-face.
(org-agenda-list): Use org-agenda-today and org-agenda-get-day-face.
(org-todo-list): Use org-agenda-today.
(org-get-all-dates): Use org-agenda-today.
(org-agenda-day-face-function): New variable.
(org-agenda-get-day-face): Use org-agenda-day-face-function.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-11-12 09:42:04 -06:00
Carsten Dominik af71c1b049 Send table in Org-mode as well, just like radio tables do it in other modes
* lisp/org.el (org-ctrl-c-ctrl-c): Consider sending a radio table also in Org
2010-11-12 09:28:22 -06:00
Carsten Dominik dd7b13bde8 Fix typo
Patch by Robert Goldman
2010-11-12 09:24:15 -06:00
Carsten Dominik 2c69c8b430 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-12 07:18:28 -06:00
Carsten Dominik 85e1f9760f Fix partial line protection issue
* lisp/org-html.el (org-export-as-html): Do not treat partially
protected lines as if they were fully protected.

Nicolas Goaziou writes:

> Here is a problem when a latex fragment is split across two lines and
> an emphasize follows. The text won't be italicized upon exporting to
> HTML.
>
> =====
> * latex-fragments bug
>
>  Imagine we have a formula starting here $e^{i\pi} +
>  1 = 0$. Now we have a problem with /emphasize/.
> =====
>
> This is because the line starts with a char with 'org-protected
> property and, thus, get caught by the "Protected HTML" (org-html.el
> l. 1216) part of `org-export-as-html'. In others words, the line is
> inserted as-is in the output buffer, before getting any
> transformation.
>
> I'm not sure how it should be done (I don't get yet the usefulness of
> this "Protected HTML" part), but that piece of code may be moved after
> the `org-html-expand' call, as long as every sub-function in
> `org-html-expand' has a check to prevent modifying protected stuff
> (this not yet the case for `org-export-with-emphasize' and
> `org-html-protect' while others seem ok).
>
> But even in this case, every function getting called after that would
> be ignored. So, for example, links would not be inserted.
>
> Couldn't the "Protected HTML" part be removed altogether?
2010-11-12 07:18:09 -06:00
Dan Davison e89e1facc2 Remove hard-wired configuration of latex minted export
* lisp/org-exp.el: (org-export-format-source-code-or-example):
  Remove hard-wired configuration of minted export
  (org-export-latex-minted-with-line-numbers): remove variable

* lisp/org-latex.el: (org-export-latex-minted-with-line-numbers):
  remove variable
2010-11-12 11:00:44 +00:00
Bastien Guerry 0fd5ec58c6 org-clock.el: fix small typos and a small bug.
* org-clock.el (org-dblock-write:clocktable): fix double
reference to `link' in let construct.
(org-clock-clocktable-formatter): Fix typo in docstring.
(org-clocktable-write-default): Fix typo in docstring.
2010-11-11 17:43:52 +01:00
David Maus 57a4bd31b7 Normalize percent escape sequence to upper case letters
* org-protocol.el (org-protocol-unhex-string): Normalize percent
escape sequence to upper case letters.

Otherwise the underlying function produces wrong results for percent
escape sequences that happen to use lower case characters.
2010-11-10 21:11:17 +01:00
Eric Schulte 839a60f310 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-08 14:19:39 -07:00
Eric Schulte c676f62361 passing header arguments through to called code blocks
* lisp/ob-lob.el (org-babel-lob-get-info): including pass-through
  header arguments in results variable header argument string

* lisp/ob.el (org-babel-execute-src-block): working with new header
  argument setup
  (org-babel-parse-header-arguments): only split header argument
  strings when []'s are balanced
2010-11-08 14:18:33 -07:00
David Maus 6c95170ca0 Limit search for in-buffer options beginning of first headline
* org-exp.el (org-export-visible): Limit search for in-buffer options
beginning of first headline.
2010-11-07 20:06:54 +01:00
David Maus 49a00abf3d Remove stale link handler for news: links
* org.el (org-open-at-point): Remove stale link handler for news:
links.

This condition case is never evaluated because the news: link is
already passed to `browse-url'.
2010-11-07 16:21:32 +01:00
Bastien Guerry 6630edbd0f Set version number to 7.3 2010-11-07 14:52:14 +01:00
Bastien Guerry dfb52eb7a7 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-07 14:42:39 +01:00
Carsten Dominik d96c998019 Fix issue with narrowing and links in clocktables
* lisp/org-clock.el (org-clocktable-write-default): Better handling of
narrowing.

Liang Wang writes:

> After I upgrade orgmode to latest version, clock report shows link
> text literally.
>
> For example,
>
>   [[file:/home/liang/gtd/todo.org::Task...
>
> Unfortunately, in this way, I can not see what this task actually is.
> I have to temporarily disable link in clock report.
2010-11-06 16:16:49 -04:00
Julien Danjou 498bcc0031 org-agenda: fix org-agenda-category-icon-alist defcustom type
* list/org-agenda.el (org-agenda-category-icon-alist): Fix defcustom
  type.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-11-05 16:50:06 +01:00
Nicolas Goaziou e652a1ed85 Simplify and fix indentation code in lists
* org.el (org-indent-line-function): simplify code and remove bug that
  would insert a tab at the beginning of the line when trying to
  indent the item.
2010-11-04 19:05:10 +01:00
Carsten Dominik da0f4997fb Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-04 16:46:25 +01:00
Julien Danjou 3e4b139f1d org-agenda: return multiple results when sexp return a string with "; "
* lisp/org.el (org-diary-sexp-entry): Split sexp result strings at semicolon.

When evaluating my %%(org-calendar-holidays) on October 31st, I got a
line like:

"Halloween; Daylight Saving Time Ends 3:00am (CEST)"

And it displays in calendar:
3:00 .... Halloween; Daylight Saving Time Ends (CEST)

This is wrong since Halloween is all day, not only at 3:00.

Splitting results on "; " allows to have an independant entry on each
event and displays things correctly.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-11-04 13:05:50 +01:00
Julien Danjou aaffdb4732 org-agenda: add support for category icons
Signed-off-by: Julien Danjou <julien@danjou.info>

* doc/org.texi (Categories): Document category icons.
* lisp/org-agenda.el (org-agenda-prefix-format): Insert place holder for icon.
(org-agenda-category-icon-alist): New option.
(org-agenda-get-category-icon): New function.
(org-format-agenda-item): Support for icons.
(org-compile-prefix-format): Support for icons.
2010-11-04 13:01:37 +01:00
Julien Danjou 4ef83fbdc9 org-compat: defalias string-match-p and looking-at-p rather than defun
Signed-off-by: Julien Danjou <julien@danjou.info>

* lisp/org-compat.el: Create defalias for `string-match-p' and
looking-at-p.
2010-11-04 12:30:38 +01:00
Eric Schulte 3a62685df9 ob-calc: support for variables -- converts :var variables in calc variables
* lisp/ob-calc.el (org-babel-execute:calc): support for variables --
  converts :var variables in calc variables
2010-11-03 23:45:25 -06:00
Carsten Dominik 106ad6e9e5 Fix sparse tree dispatch menu
* lisp/org.el (org-sparse-tree): Mention [r] in dispatch menu
2010-11-03 23:26:23 +01:00
Carsten Dominik d5e2031bc7 XEmacs compatibility patch
* lisp/org-list.el (org-list-parse-list): Use `org-looking-at-p'.
2010-11-03 23:16:37 +01:00
Carsten Dominik 7f79007e52 Better fix for link problem, use Liam's idea 2010-11-02 23:07:47 +01:00
Carsten Dominik aeaf05238c Limit creation of ID links only in Org mode buffers
* lisp/org-id.el (org-id-store-link): Test for org-mode before checking for
IDs.

Reporte and fix suggestion by Liam Healy
2010-11-02 23:04:10 +01:00
Carsten Dominik 1197b73769 Minor fixes 2010-11-02 09:24:06 +01:00
Carsten Dominik 350b75be63 Rewrite of the clock table code
* lisp/org.el (org-shorten-string): New function.
* lisp/org-exp.el (org-export-convert-protected-spaces): New function.
(org-export-preprocess-string): Call
`org-export-convert-protected-spaces' to handle new hard spaces.

* lisp/org-clock.el (org-clocktable): New customization group.
(org-clocktable-defaults): New option.
(org-clock-clocktable-formatter): New option.
(org-clock-clocktable-default-properties): New option.
(org-dblock-write:clocktable): Rewrite to split out functionality
into separate functions.
(org-clocktable-write-default):
(org-clocktable-indent-string):
(org-clock-get-table-data): New functions.
* lisp/org-agenda.el (org-agenda-list):
(org-agenda-redo):
(org-agenda-clockreport-mode):
(org-agenda-set-mode-name): Rewrite to implement filtered clock tables.
* doc/org.texi (Clocking commands):
(The clock table): New sections.
(Agenda commands): Document filtered clock reports.
2010-11-02 08:47:23 +01:00
David Maus 7bef01a90f Check for heading that ends at end of buffer
* org.el (org-narrow-to-subtree): Check for heading that ends at end
of buffer.
2010-11-01 19:28:11 +01:00
Carsten Dominik adede9fbaf Fix export bug of a region with an ARCHIVE property set 2010-11-01 13:57:02 +01:00
Dan Davison ed5665e1e2 babel: Use copy-sequence' instead of copy-tree'
* lisp/ob.el: `copy-sequence' suffices to copy alist; no need for
`copy-tree'
2010-10-31 13:22:13 +00:00
Dan Davison d6599c5699 babel: Ensure that result is a file link when that is intended
* lisp/ob.el (org-babel-execute-src-block): If ":results file" is in
effect, then ensure that the value of :file is returned as the result;
don't rely on language files for this.

Examples of languages that were not honouring :file are sh and
emacs-lisp.
2010-10-31 12:55:35 +00:00
Dan Davison cf0cdd7785 babel: Fix data structure corruption when sorting parameters
* lisp/ob.el (org-babel-sha1-hash): Avoid corrupting `info' data
structure by side-effects of `sort'.
2010-10-31 12:51:18 +00:00
Nicolas Goaziou 0778fb8748 Fix list end with non-empty blank lines. Fix sorting.
* org-list.el (org-list-bottom-point-with-indent): do not check
  indentation of a non-empty blank line.
* org-list.el (org-sort-list): sort a list with point anywhere inside
  it.
2010-10-30 18:20:52 +02:00
Eric Schulte 598be4a4a4 ob-calc: added to org-src-lang-modes, safer evaluation, better error messages
* lisp/ob-calc.el (org-babel-execute:calc): safer evaluation and
  hopefully better error messages

* lisp/org-src.el (org-src-lang-modes): mapping calc blocks to
  fundamental mode
2010-10-29 19:18:28 -06:00
Eric Schulte 421405df19 adding ob-calc to org-babel-load-languages
* lisp/org.el (org-babel-load-languages): adding calc
2010-10-29 19:02:44 -06:00
Dan Davison 1ee54e0db7 babel: Don't resolve variable references unless requested
* lisp/ob.el (org-babel-initiate-session): Don't resolve variable
  references unless prefix arg is supplied.
2010-10-29 20:44:58 +01:00
Eric Schulte 9c833c456e ob-calc: ensure that calc stack refers to the correct stack
* lisp/ob-calc.el (org-babel-execute:calc): ensure that calc stack
  refers to the correct stack
2010-10-29 10:20:07 -06:00
Eric Schulte f7166a0a05 ob-calc: adding the beginnings of support for calc code blocks
* lisp/ob-calc.el: adding the beginnings of support for calc code blocks
2010-10-29 08:54:12 -06:00
Eric Schulte 2152f1ec28 ob-tangle: detangle changes in code files back to the original org files
* lisp/ob-tangle.el (org-babel-update-block-body): declaring function
  for updating code block bodies
  (org-babel-spec-to-string):
  (org-babel-detangle): detangle all tangled and commented code blocks
  in the current file back to org
  (org-babel-tangle-jump-to-org): jump from a tangled and commented
  file back to the originating org-mode code block
ob-tangle: detangle changes in code files back to the original org files

* lisp/ob-tangle.el (org-babel-update-block-body): declaring function
  for updating code block bodies
  (org-babel-spec-to-string):
  (org-babel-detangle): detangle all tangled and commented code blocks
  in the current file back to org
  (org-babel-tangle-jump-to-org): jump from a tangled and commented
  file back to the originating org-mode code block
2010-10-29 02:13:38 -06:00
Eric Schulte 93600e41a6 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-10-29 02:10:18 -06:00
Eric Schulte c6565eaa43 fixed typos in tangle comment link format strings
* lisp/ob-tangle.el (org-babel-tangle-comment-format-beg): fix typo
  (org-babel-tangle-comment-format-end): fix typo
2010-10-29 01:37:28 -06:00
Carsten Dominik 82af72eef7 Push version number to 7.02trans 2010-10-29 09:11:46 +02:00
Carsten Dominik 110b4c4610 Revert "LaTeX export: use org-export-latex-hyperref-format"
This reverts commit f5918bdcc0.
2010-10-29 05:57:24 +02:00
Dan Davison 9c55868550 Alter way in which user chooses minted for latex source code export
* lisp/org-exp.el (org-export-format-source-code-or-example): Use
  minted for latex source code export if `org-export-latex-listings' has
  the value 'minted
* lisp/org-latex.el (org-export-latex-listings): Document special
  value 'minted
* lisp/org-latex.el (org-export-latex-minted): Delete variable
2010-10-28 21:55:40 +01:00
Carsten Dominik ae91c0cb0c Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-10-28 09:38:53 +02:00
Carsten Dominik fd7b3e9717 Revert "Fix bug with :maxlevel 0 in clock tables"
This reverts commit 5801fa6c63.
2010-10-28 08:09:46 +02:00
Bastien Guerry 840570c2a3 Update Changes.org and org.texi to reflect changes in org-timer.el
Update org.texi with a new section: Countdown timer.
Update ORGWEBPAGE/Changes.org with a section about timer/clock.
Also fix a small typo in a org-timer.el.
2010-10-27 18:20:27 +02:00
Dan Davison 9c1acbc667 babel: Fix regexp parsing of functional-style arguments
* lisp/ob.el (org-babel-get-src-block-info): Retrieve contents of
  parentheses, excluding parentheses themselves
2010-10-27 16:31:34 +01:00
Eric Schulte fd9e9331ee ob-gnuplot: fixed bug in data file assignment using user variables
Thanks to Nick Dokos and Nigel Beck for raising the issue.

* lisp/ob-gnuplot.el (org-babel-variable-assignments:gnuplot): fixed
  bug in gnuplot data file assignment using user variables
2010-10-26 22:49:12 -06:00
Eric Schulte c52ccaefa7 adding new :headers header argument for latex code blocks
* lisp/ob-latex.el (org-babel-execute:latex): adding new :headers
  header argument for latex code blocks
2010-10-26 17:00:28 -06:00
Carsten Dominik 7635429d44 New capture property :kill-buffer
* lisp/org-capture.el (org-capture-templates): New capture
property `:kill-buffer'. (org-capture-finalize): Kill target buffer
if that is desired.
(org-capture-target-buffer): Remember if we have to make the buffer.

Proposal by Samuel Wales.
2010-10-26 17:46:48 +02:00
Carsten Dominik 8e12716f68 Fix bug when computing clock tables.
* lisp/org-clock.el (org-dblock-write:clocktable): Fix bug
when computing clock tables.

Ouch, bad bug.  Resetting the clock file time was always
happening in the same file, not in the different files
visited by the summer.
2010-10-26 17:17:15 +02:00
Carsten Dominik 5801fa6c63 Fix bug with :maxlevel 0 in clock tables
* lisp/org-clock.el (org-dblock-write:clocktable): Pass file minutes
up to caller even if no table is generated.

Rainer Stengele writes:

> 1. Without maxlevbel I get I get
>
> #+BEGIN: clocktable :scope ("file1.org" "file2") :timestamp t :tstart "<2010-05-01 Sa 00:00>" :tend  "<2010-07-31 Sa 23:55>"
> Clock summary at [2010-07-22 Do 09:07]
>
> | File              | L | Timestamp           | Headline       |     Time |        |        |
> |-------------------+---+---------------------+----------------+----------+--------+--------|
> |                   |   | Timestamp           | *Total time*   | *327:51* |        |        |
> ...
>
>
>
> with :maxlevel 0 I get
>
>
> #+BEGIN: clocktable :maxlevel 0 :scope ("file1.org" "file2") :timestamp t :tstart "<2010-05-01 Sa 00:00>" :tend  "<2010-07-31 Sa 23:55>"
> Clock summary at [2010-07-22 Do 09:11]
>
> | File | L | Timestamp | Headline     | Time     |
> |------+---+-----------+--------------+----------|
> |      |   | Timestamp | *Total time* | *232:17* |
> |------+---+-----------+--------------+----------|
> #+END:
>
>
> I would like to get the same results!
> Is ":maxlevel 0" intended to not include the sublevel clocks?
2010-10-26 13:27:20 +02:00
Åukasz Stelmach 47107b6612 Sexp diary entries may retrurn a list
* lisp/org-agenda.el (org-agenda-get-sexps): Handle lists as return values
from diary entries
* lisp/org-bbdb.el (org-bbdb-anniversaries): Handle lists of anniversaries
* lisp/org.el (org-diary-sexp-entry): Handle lists as return values
from diary entries.

 ukasz Stelmach <lukasz.stelmach@iem.pw.edu.pl> writes:

> I've disovered, that %%(org-bbdb-anniversaries) returns (as every other
> sexp) a string. Which is OK if there is only one.
>
>   Anniversaries:  John Doe's 10th wedding anniversary
>
> Unfortunately the agenda view becomes awful if we have noted Jane's
> weeding date too
>
>   Anniversaries:  John Doe's 10th wedding anniversary; Jane Doe's 10th wedding anniversary
>
> And what if we know 3 Eves and 5 Adams and it's Christmas Eve? (Hint:
> their name day)
[...]

As Thomas Bauman pointed out, there are functions that can be used in
sexps which return cons cells like this

    (nil . "Full Moon 3:35am (CEST)")

(this one is diary-lunar-phases), these aren't properly supported by the
previous version of my patch. This one can distinguish between such a
cons cell and a "real" list.

    ("John Doe's 10th wedding anniversary"
     "Jane Doe's 10th wedding anniversary")

This is because

    (consp (cdr '(a . b))) ; => nil

so org-diary-sexp-entry can be made return (cdr result) only in case of
the former cons cell. The third condition in the `cond' block is IMHO
enough as it is now, but if you think adding

    (listp (cdr result))

may help then be it.
2010-10-26 07:27:19 +02:00
Carsten Dominik eab8ea9687 Minor fixes 2010-10-26 07:10:48 +02:00
Carsten Dominik 325daa8228 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-10-26 06:34:27 +02:00
Carsten Dominik 2a58795e19 Fix empty line bug in capture
* lisp/org-capture.el (org-capture-empty-lines-before):
(org-capture-empty-lines-after): Make sure the n=0 does not insert any
newlines.

Marcel van der Boom writes:

> I'm in the process of migrating from org-remember to org-capture.
> Pretty easy going so far, but it seems org-capture adds newlines, which
> I think it should not do.
>
> My (test) capture-template is:
>
> (("t" "Todo" entry
>  (file "~/.outlet/GTD.org")
>  "* TODO %?" :prepend t :empty-lines 0)
>
> with the intention of inserting the captured task on the
> first line of the file ~/.outlet/GTD.org. What happens when I capture
> an task is this:
>
> <beginning of file>
>
> * TODO Captured task
>
> <original first line of file here>
> ....
>
> Both before and after the task is a newline. Also, when capturing and
> cancelling the capture with C-c C-k the newlines remain whereas the
> task is removed.
2010-10-26 06:34:16 +02:00
Eric Schulte 62dbf404f5 ob-clojure: fixed error message when clojure binary is not found
* lisp/ob-clojure.el (org-babel-clojure-babel-clojure-cmd): fixed
  error message when clojure binary is not found
2010-10-25 11:12:49 -06:00
Carsten Dominik 25d365a373 Fix table alignment for the docbook exporter
* lisp/org-html.el (org-format-table-html): New argument DOCBOOK.
(org-format-org-table-html): New argument DOCBOOK.  When set, use
align instead of class to align table fields.
* lisp/org-docbook.el (org-export-as-docbook): Specify the docbook argument
for the table converter.
2010-10-25 15:40:30 +02:00
Carsten Dominik 23812f9cf1 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-10-25 13:27:41 +02:00
Carsten Dominik cee354c5b4 Update freemind converter
* lisp/org-macs.el (org-called-interactively-p): New macro.
* lisp/org-freemind.el: No longer require 'rx.
(org-freemind): New customization group, use it for all the variables.
(org-export-as-freemind): Add docstring.
(org-freemind-show): Improve filen naming.
(org-freemind-convert-links-helper): New function.
(org-freemind-bol-helper-base-indent): New variable.
(org-freemind-bol-helper): New function.
(org-freemind-node-css-style): New option.
(org-freemind-node-pattern): New variable.
(org-freemind-from-org-mode): Better docstring.
2010-10-25 13:27:32 +02:00
Carsten Dominik 6d44fef50a Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-10-25 10:06:01 +02:00
Carsten Dominik 8bbc3ab3ad HTML Export: Add some default classes for text alignment
Proposal by Sebastian Rose.
2010-10-25 08:41:18 +02:00
David Maus f70943cafc Don't pass more than two arguments to mapc
* ob-haskell.el (org-babel-variable-assignments:haskell): Don't pass
more than two arguments to mapc.
2010-10-24 20:51:24 +02:00
David Maus 095f9e298f Declare to silence byte compiler
* ob.el (org-babel-ref-resolve): Declare to silence byte compiler.
2010-10-24 20:45:26 +02:00
David Maus 671115426a Defvar to silence byte compiler
* org-footnote.el (message-signature-separator): Defvar to silence
byte compiler.
2010-10-24 20:43:44 +02:00
David Maus 9e8b867c77 Fix reference to wrong symbol
* org-exp.el (org-export-string): Fix reference to wrong symbol.
2010-10-24 20:41:26 +02:00
Jambunathan K c1b8f41c37 Return 'dedicated on match when search must match exact headline
* org.el (org-link-search): Return 'dedicated on successful match when
org-link-search-must-match-exact-headline is set to t.
2010-10-24 20:35:44 +02:00
Daniel Clemente c486572df0 Append fragment to file: links if present
* org-html.el (org-html-make-link): Append fragment to file: links if
present.

Patch by Daniel Clemente
2010-10-24 20:23:27 +02:00
Tassilo Horn 145109dc4a Make footnotes work correctly in message-mode
* lisp/org-footnote.el (org-footnote-create-definition)
(org-footnote-goto-local-insertion-point): Add footnotes before
signature when in message-mode.
2010-10-24 18:19:57 +02:00
Noorul Islam 6e73bcbf44 Minor docstring bug: org-footnote-goto-previous-reference 2010-10-24 18:15:08 +02:00
Carsten Dominik d0f737e9c2 Post-fix for globablvisibility patch
Patch by Michael Brandt
2010-10-24 18:09:24 +02:00
Carsten Dominik d600831eb7 Use better regexp for finding image links
* lisp/org.el (org-display-inline-images): Improve regexp
2010-10-23 14:43:00 +02:00
Carsten Dominik 987beb6277 Use classes to align table data fields 2010-10-23 08:17:29 +02:00
Carsten Dominik 94f2f59a93 Fix startup visibility bug
* lisp/org.el (org-cycle): Make sure resetting to startup visibility
works after another cycle command.

Gez writes:

> I have a query about the C-u C-u TAB command.  When I've just edited
> or used S-TAB (no matter which part of the global cycle it's on) C-u
> C-u TAB works as I would expect.  But if I've just used TAB, C-u C-u
> TAB cycles hrough -> CONTENTS -> SHOW ALL etc, even while the mini
> buffer displays "startup visibility plus VISIBILITY properties" at
> each stage of the cycle. C-u C-u TAB also cycles when it's repeated.
> I find it hard to keep track of whether it will cycle or not while I'm
> using it to view areas of the outline, so in effect, the only way I
> feel sure I can quickly return to my desired startup visibility is
> with S-TAB C-u C-u TAB, which is a lot of keystrokes! So my questions
> are - is this expected behaviour?  Can it be changed?
2010-10-22 18:14:18 +02:00
Eric Schulte e6c9936373 suggesting a new function org-export-string
The attached patch adds a new functions org-export-string.

,----
| org-export-string is a Lisp function in `org-exp.el'.
|
| (org-export-string STRING FMT &optional DIR)
|
| Export STRING to FMT using existing export facilities.
| During export STRING is saved to a temporary file whose location
| could vary.  Optional argument DIR can be used to force the
| directory in which the temporary file is created during export
| which can be useful for resolving relative paths.  Dir defaults
| to the value of `temporary-file-directory'.
`----

This function should be useful in user code, and can already reduce the
amount of code in ob-org.el and org-mime.el.

>From e51017e4d7051aad31384a470f0a695dca0d6716 Mon Sep 17 00:00:00 2001
From: Eric Schulte <schulte.eric@gmail.com>
Date: Sun, 17 Oct 2010 15:17:13 -0600
Subject: [PATCH] org-export-string -- exports a string of org-mode markup text

* lisp/org-exp.el (org-export-string): new function org-export-string
  can be used to convert a string of test in org-mode markup to a
  specified format

* contrib/lisp/org-mime.el (org-mime-htmlize): now using new
  org-export-string function for exportation

* lisp/ob-org.el (org-babel-execute:org): now using new
  org-export-string function for exportation
2010-10-22 06:48:32 -06:00
Carsten Dominik e85eee0624 Fix some issues in inline image display
* lisp/org.el (org-display-inline-images): Allow
non-ASCII characters in image file names.  Save match data.

Patch by Taichi Kawabata
2010-10-22 10:52:46 +02:00
Carsten Dominik a841867856 Update all ++ repeaters in an entry
* lisp/org.el (org-auto-repeat-maybe): Fix shifting multiple time stamps.

See http://www.mail-archive.com/emacs-orgmode@gnu.org/msg30284.html.

Patch by Andrew Korty
2010-10-22 09:57:28 +02:00
Carsten Dominik 9dc28ea0ed Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-10-22 09:20:05 +02:00
Carsten Dominik ca991d2ad4 HTML export: Improved support for field alignment, including centering
* doc/org.texi: Document the <c> cookie.
* lisp/org-exp.el (org-store-forced-table-alignment):
(org-export-remove-special-table-lines): Allow the "c" cookie for
table alignment.
* lisp/org-html.el (org-export-table-header-tags):
(org-export-table-data-tags): Add another %s format for the alignment.
(org-export-html-table-align-individual-fields): New option.
(org-format-org-table-html): Implement field-by-field alignment and
support centering.
(org-format-table-table-html): Make sure the new table tag formats
don't break this function.
* lisp/org-table.el (org-table-cookie-line-p):
(org-table-align): Allow for the <c> cookie.
* lisp/org.el (org-set-font-lock-defaults): Allow for the <c> cookie.
2010-10-22 09:19:39 +02:00
David Maus 8d85a67deb Skip normalization of plain links that are part of another link
* org-exp.el (org-export-normalize-links): Skip normalization of plain
links that are part of another link.
2010-10-22 06:22:41 +02:00
Dan Davison d8634bab85 babel: R: Fix bug in treatment of :file argument
* ob-R.el (org-babel-expand-body:R): Fix bug in let binding.

This was preventing graphical output from being captured.
2010-10-21 23:29:43 +01:00
Carsten Dominik b0fae37687 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-10-21 19:35:09 +02:00
Carsten Dominik e40903a6b6 lisp/org-indent.el: Fix bug in org-indent that changes the selection
* lisp/org-indent.el: (org-indent-add-properties): Use
`with-silent-modificaitons'.
(org-indent-remove-properties): Use `with-silent-modificaitons'.

Julien Danjou writes:

> I'm using org 7.01h with Emacs 24 trunk. When I set org-startup-indented
> to t, I observe the following:
>
> ** TODO Some stuff
>
> I select "stuff" and press M-w. Then I go the the line under and press
> C-y (org-yank).
>
> Now I got:
>
> ** TODO Some stuff
> ** TODO Some
>
> instead of:
>
> ** TODO Some stuff
> stuff
>
> Note that after M-w, `kill-ring' has a correct first entry of "stuff":
>
>   (#("stuff" 0 5
>      (fontified t face org-level-2))
>    ...)
>
> But on C-y (org-yank) something happens, and it paste the wrong text. I
> think it's trying to be smart but it's not.
>
> I've found that setting org-startup-indented to nil fix that behaviour.
2010-10-21 18:26:31 +02:00
Carsten Dominik 5591fb2cde Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-10-21 16:28:52 +02:00
Carsten Dominik 7712d78ab4 HTML export: Use forced alignment like <l> or <r> in tables
* lisp/org-table.el (org-table-cookie-line-p): Fix indentation.
* lisp/org-exp.el (org-store-forced-table-alignment): New function.
(org-export-preprocess-string): Call `org-store-forced-table-alignment'.
* lisp/org-html.el (org-format-org-table-html): Use stored
alignment information.
2010-10-21 16:28:06 +02:00
Eric Schulte d87e33ea19 babel: ob-execute-src-block respects prefix argument (which forces re-calculation)
* lisp/ob.el (org-babel-execute-src-block): respects prefix argument
  (which forces re-calculation)
2010-10-21 07:50:32 -06:00
Eric Schulte 3fd8d906e4 babel: removed needless param sorting from ob-execute-src-block
* lisp/ob.el (org-babel-execute-src-block): removed needless param
  sorting from ob-execute-src-block, the params are sorted already by
  ob-sha1-hash
2010-10-21 07:44:34 -06:00
Eric Schulte b664510ec4 babel: ensure that info is sorted at the header argument level
* lisp/ob.el (org-babel-sha1-hash): ensure that info is sorted at the
  header argument level
2010-10-21 07:11:13 -06:00
Dan Davison 7c44c8ca7d babel: Make test for identical input more stringent when hashing
* ob.el (org-babel-sha1-hash): Consider words in different
	order as different input.
2010-10-21 07:02:50 -06:00
Dan Davison f2e547c657 babel: Fix check for zero length sequences when constructing hash key
* ob.el (org-babel-sha1-hash): Fix check for zero length
	sequences
2010-10-21 07:02:22 -06:00
Eric Schulte 65217b7fb4 tangle: ensure that full info (with expanded variables) for tangling blocks 2010-10-21 07:00:39 -06:00
Dan Davison db68b1fbf5 babel: Handle non-nested list values in shell
* ob-sh.el (org-babel-sh-var-to-sh): Ensure value has the
	structure of an Org-mode table (list of lists)

Non-nested lists can arise either by explicit assignment,
e.g. :var '(1 2), or by assigning a one-dimensional slice of a table.
2010-10-21 13:06:56 +01:00
Dan Davison 35b0d6b1d4 babel: Fix bug in `org-babel-tangle-collect-blocks'
* ob-tangle.el (org-babel-tangle-collect-blocks): Fix
    bug (reference to unassigned variable `src-lang' and avoid
    calling org-babel-get-src-block-info twice
2010-10-21 13:06:56 +01:00
Eric Schulte 91f8cfaebb ob: ob-demarcate updated to reflect the new info list contents
* lisp/ob.el (org-babel-demarcate-block): updated to reflect the new
  info list contents
2010-10-21 13:06:56 +01:00
Dan Davison 60423d2805 Avoid resolving babel references with C-c '
* org-src.el (org-edit-src-code): Supply non-nil argument to
	`org-babel-get-src-block-info' to avoid resolving variable
	references
2010-10-21 13:06:56 +01:00
Eric Schulte b50125a1ac fixed minor bug in and improved efficiency of org-babel-map-src-blocks
* lisp/ob.el (org-babel-map-src-blocks): fixed minor bug in and
  improved efficiency of org-babel-map-src-blocks
2010-10-21 13:06:56 +01:00
Eric Schulte 5bdc043919 careful not to needlessly execute blocks during tangling
* lisp/ob-tangle.el (org-babel-tangle-collect-blocks): now explicitly
  checks that a code block will actually be tangled before collecting
  it's full information (a process which could involve the execution
  of other code blocks)
2010-10-21 13:06:55 +01:00
Dan Davison 4247150094 babel: Don't resolve variable references during `org-babel-demarcate-block'
* ob.el (org-babel-demarcate-block): Use light version of
	`org-babel-get-src-block-info'
2010-10-21 13:06:55 +01:00
Eric Schulte 24cde316a1 beefing up the docs of the org-babel-tangle-comment-format-* variables 2010-10-21 13:06:55 +01:00
Eric Schulte e905dbe0f6 babel hashing now handles more complex types in params
* lisp/ob.el (org-babel-sha1-hash): now handles more complex types in
  params
* testing/examples/babel.org: whitespace
* testing/lisp/test-ob.el (test-org-babel/sha1-hash): new test for
  babel hashing
2010-10-21 13:06:55 +01:00
Eric Schulte cea9fd7421 sanding off some rough corners left by the reworking of process-params
* lisp/ob.el (org-babel-execute-src-block): generally using the new
  more informative params
  (org-babel-process-params): don't forget the :var portion of
  variable assignments
2010-10-21 13:06:55 +01:00
Eric Schulte c60e09eaa4 ob-table: simplified to reflect to var resolution
* lisp/ob-table.el (sbe): simplified to reflect to var resolution
2010-10-21 13:06:55 +01:00
Eric Schulte 8562273b27 ob-ref: don't forget arguments to referenced code blocks
* lisp/ob-ref.el (org-babel-ref-resolve): bringing the referent
  arguments back to their params before evaluation
2010-10-21 13:06:55 +01:00
Eric Schulte dc9401f95b ob-ref: cleanup of variable usage and indentation
* lisp/ob-ref.el (org-babel-ref-resolve): cleanup of variable usage
and indentation
2010-10-21 13:06:55 +01:00
Dan Davison a5ac523ec9 babel: Update sbe macro to new parameter processing
* ob-table.el (sbe): Use `org-babel-process-params params'
	instead of `org-babel-expand-variables'.
2010-10-21 13:06:54 +01:00
Dan Davison 369cf54146 babel:removing calls to ob-process-params, and updating use of results
* lisp/ob-C.el (org-babel-C-execute): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-R.el (org-babel-execute:R): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
      (org-babel-R-variable-assignments): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-asymptote.el (org-babel-execute:asymptote): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-clojure.el (org-babel-execute:clojure): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-dot.el (org-babel-execute:dot): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-emacs-lisp.el (org-babel-expand-body:emacs-lisp): removing
      call to org-babel-process-params which should no longer be called
      from within a language file
      (org-babel-execute:emacs-lisp): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-haskell.el (org-babel-execute:haskell): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-js.el (org-babel-execute:js): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-lisp.el (org-babel-execute:lisp): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-ocaml.el (org-babel-execute:ocaml): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-octave.el (org-babel-execute:octave): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-perl.el (org-babel-execute:perl): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-python.el (org-babel-execute:python): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-ruby.el (org-babel-execute:ruby): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-scheme.el (org-babel-execute:scheme): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-screen.el (org-babel-execute:screen): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
      (org-babel-prep-session:screen): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-sh.el (org-babel-execute:sh): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-sql.el (org-babel-execute:sql): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * ob-haskell.el (org-babel-execute:haskell): Remove reference
      to processed params
    * ob-clojure.el (org-babel-execute:clojure): Remove reference
      to processed params
    * ob-R.el (org-babel-execute:R): Remove reference to processed
      params
2010-10-21 13:06:54 +01:00
Dan Davison 542f77d3f5 babel: sql: Use generic expansion function
* ob-sql.el (org-babel-execute:sql): Use generic expansion
	function
	(org-babel-expand-body:sql): Delete function
2010-10-21 13:06:03 +01:00
Dan Davison 07c84b293c babel: shell: New variable assignment and expansion scheme
* ob-sh.el (org-babel-execute:sh): Use generic expansion
	function
	(org-babel-expand-body:sh): Delete function
	(org-babel-prep-session:sh): Change name of called function
	(org-babel-variable-assignments:sh): Change function name
2010-10-21 13:06:03 +01:00
Dan Davison 19081f12f7 babel: screen: New variable assignment and expansion scheme
* ob-screen.el (org-babel-execute:screen): Use generic
	expansion function
	(org-babel-expand-body:screen): Delete function
	(org-babel-prep-session:screen): Remove references to
	processed params
2010-10-21 13:06:03 +01:00
Dan Davison c1ad98ae0e babel: sass: Use generic expansion function
* ob-sass.el (org-babel-execute:sass): Use generic expansion
	function
	(org-babel-expand-body:sass): Delete function
2010-10-21 13:06:03 +01:00
Dan Davison 2fc9b08a23 babel: ruby: New variable assignment and expansion scheme
* ob-ruby.el (org-babel-execute:ruby): Use generic expansion
	function
	(org-babel-prep-session:ruby): Use new variable assignment
	function
	(org-babel-variable-assignments:ruby): New function
	(org-babel-expand-body:ruby): Delete function
2010-10-21 13:06:03 +01:00
Dan Davison 2699f4e9bc babel: python: New variable assignment and expansion scheme
* ob-python.el (org-babel-execute:python): Use generic
	expansion function
	(org-babel-prep-session:python): Change name of called function
	(org-babel-variable-assignments:python): Change function name
	(org-babel-expand-body:python): Delete function
2010-10-21 13:06:03 +01:00
Dan Davison 33f836e701 babel: plantuml: Delete unnecessary language-specific expansion function
* ob-plantuml.el (org-babel-expand-body:plantuml): Delete
    function (automatically handled by generic version)
2010-10-21 13:06:02 +01:00
Dan Davison 84dd553936 babel: perl: New variable assignment and expansion scheme
* ob-perl.el (org-babel-execute:perl): Use generic expansion
	function
	(org-babel-expand-body:perl): Delete function
	(org-babel-variable-assignments:perl): New function
2010-10-21 13:06:02 +01:00
Dan Davison ee5d7af7b9 babel: org: Delete unnecessary language-specific expansion function
* ob-org.el (org-babel-expand-body:org): Delete
    function (automatically handled by generic version)
2010-10-21 13:06:02 +01:00
Dan Davison 58a24fa325 babel: octave and matlab: New variable assignment and expansion scheme
* ob-octave.el (org-babel-execute:octave): Use generic
	expansion function
	(org-babel-variable-assignments:octave): Change name of
	function
	(org-babel-variable-assignments:matlab): New defalias
	(org-babel-prep-session:octave): Change name of function
	(org-babel-expand-body:matlab): Delete function
	(org-babel-expand-body:octave): Delete function
2010-10-21 13:06:02 +01:00
Dan Davison 590fae34e1 babel: ocaml: New variable assignment and expansion scheme
* ob-ocaml.el (org-babel-execute:ocaml): Use generic expansion
	function
	(org-babel-variable-assignments:ocaml): New function
	(org-babel-expand-body:ocaml): Delete function
2010-10-21 13:06:02 +01:00
Dan Davison 42ddb16dbf babel: mscgen: Delete unnecessary language-specific expansion function
* ob-mscgen.el (org-babel-expand-body:mscgen): Delete
    function (automatically handled by generic version)
2010-10-21 13:06:02 +01:00
Dan Davison 67fd5e730e babel: javascript: New variable assignment and expansion scheme
* ob-js.el (org-babel-execute:js): Use new variable assignment
	function
	(org-babel-expand-body:js): Delete function
	(org-babel-prep-session:js): Use new variable assignment
	function
	(org-babel-variable-assignments:js): New function
2010-10-21 13:06:02 +01:00
Dan Davison 1ab30746dc babel: haskell: New variable assignment scheme
* ob-haskell.el (org-babel-execute:haskell): Use generic
	expansion function
	(org-babel-expand-body:haskell): Delete function
	(org-babel-prep-session:haskell): Use variable assignment function
	(org-babel-variable-assignments:haskell): New function
2010-10-21 13:06:02 +01:00
Dan Davison 02a10a2bdb babel: gnuplot: New variable assignment scheme
* ob-gnuplot.el (org-babel-expand-body:gnuplot): Use variable
	assignment function
	(org-babel-prep-session:gnuplot): Use variable assignment
	function
	(org-babel-variable-assignments:gnuplot): New function
2010-10-21 13:06:02 +01:00
Dan Davison b24139309d babel: ditaa: Delete unnecessary language-specific expansion function
* ob-ditaa.el (org-babel-expand-body:ditaa): Delete
    function (automatically handled by generic version)
2010-10-21 13:06:01 +01:00
Dan Davison b4cded9221 babel: css: Delete unnecessary language-specific expansion function
* ob-css.el (org-babel-expand-body:css): Delete
	function (automatically handled by generic version)
2010-10-21 13:06:01 +01:00
Dan Davison 4eee123e17 babel: asymptote: New variable assignment scheme
* ob-asymptote.el (org-babel-execute:asymptote): Use generic
	expansion function
	(org-babel-expand-body:asymptote): Delete function
	(org-babel-variable-assignments:asymptote): New function
2010-10-21 13:06:01 +01:00
Dan Davison e3d9d21802 babel: R: New variable assignment scheme
* ob-R.el (org-babel-expand-body:R): Use new function
	`org-babel-variable-assignments:R'; don't trim body.
	(org-babel-execute:R): Respond to changes in
	`org-babel-expand-body:R'
	(org-babel-prep-session:R): Called function is now named
	`org-babel-variable-assignments:R'
	(org-babel-variable-assignments:R): Receives processed-params
	as new optional argument
2010-10-21 13:06:01 +01:00
Dan Davison 86418567cd babel: C: Don't trim body when expanding
* ob-C.el (org-babel-C-expand): Don't trim body
2010-10-21 13:06:01 +01:00