Commit Graph

4691 Commits

Author SHA1 Message Date
Eric Schulte 727aa263cb babel: src block regexps are more robust to embedded "[begin|end]_src" in block body 2010-03-22 15:19:33 -06:00
Eric Schulte 32bbd3f3bb babel: variable references which look like lisp forms are now evaluated
for example, the following simple example
    #+begin_src emacs-lisp :var two=(+ 1 1)
      (sqrt two)
    #+end_src

    #+results:
    : 1.4142135623730951

  Or this more interesting usage, which pulls variable values from
  headline properties
    *** example headline w/property
        :PROPERTIES:
        :special:  89
        :last-name: schulte
        :END:

    #+begin_src emacs-lisp :var special=(string-to-number (org-entry-get nil "special" t))
      (+ special 1)
    #+end_src

    #+results:
    : 90

    #+begin_src emacs-lisp :var last-name=(org-entry-get nil "last-name" t))
      (message "hello %s" last-name)
    #+end_src

    #+results:
    : hello schulte
2010-03-22 15:19:32 -06:00
Carsten Dominik d70fb6fdba New helper functions in org-table.el 2010-03-21 20:08:01 +01:00
Carsten Dominik 75563bf71e Allow regexps in org-file-apps to capture link parameters using groups
Patch by Jan Bker.

Jan writes:

> What is this?
> =============
>
> This patch changes the way extension regexps in `org-file-apps' are
> handled. Instead of against the file name, the regexps are now matched
> against the whole link, and you can use grouping to extract link
> parameters which you can then use in a command string to be executed.
>
> For example, to allow linking to PDF files using the syntax
> file:/doc.pdf::<page number>, you can add the following entry to
> org-file-apps:
>
> Extension: \.pdf::\([0-9]+\)\'
> Command:   evince "%s" -p %1
>
> In a command string to be executed, the parameters can be referenced
> using %1, %2, etc.  Lisp forms can access them using (string-match n link).
>
>
> Where to get it?
> ================
> Either apply the patch by hand or
>
> git pull git://github.com/jboecker/org-mode.git org-file-apps-parameters
>
>
> What's next? / Feedback
> =======================
>
> - Find the bugs. Since this messes with links, a central concept of Org,
> I probably have missed some edge cases; so please test this and
> report if it works for you.
>
> I also appreciate any feedback on code quality or the design decisions
> made. I am learning elisp along the way, so you may be able to write
> some changes in a more idiomatic and/or elegant way.
>
> - Add a mechanism for org-mode modules to add default values to
> org-file-apps, similar to the variables org-file-apps-defaults-*.
> This could be used by modules to define their own extensions to the
> syntax of file: links.
>
> - Modify org-docview.el to use this and deprecate the docview: link syntax.
>
>
> What does it (intentionally) break?
> ===================================
>
> This patch introduces a backwards-incompatible change. If LINE or SEARCH
> is given, the file is no longer guaranteed to open in emacs: if IN-EMACS
> is nil and an entry in org-file-apps matches, that takes precedence.
>
> A grep of the lisp/ and contrib/ directories showed that no code in the
> org-mode distribution was relying on this behaviour; whereever LINE or
> SEARCH is given, IN-EMACS is also set to t.
>
> I decided against adding an additional parameter because that would be
> redundant; the original link as seen by org-open-at-point can be
> reconstructed from PATH, LINE and SEARCH.
>
> I am not that sure if this is the right way to do this, but it seems to
> break as little as possible while hopefully avoiding to add too much
> complexity.
2010-03-21 18:10:00 +01:00
Carsten Dominik 19113c46c9 Minor fix 2010-03-21 08:28:37 +01:00
Carsten Dominik 7ef096f397 Make `org-reveal' also decrypt encrypted entries
Thanks to Richard Riley for triggering this change.
2010-03-21 08:16:08 +01:00
Carsten Dominik a36b60a6e8 Improve level cycling function
Patch by Ryan Thompson.
2010-03-21 07:52:23 +01:00
Carsten Dominik d08d0365fb Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-03-19 19:52:02 +01:00
Carsten Dominik 749fc76c2d No extra newline after time planning line 2010-03-19 19:51:58 +01:00
Carsten Dominik 2b14934fe8 HTML export: Fix linking to targets in external files
Dan Davison writes:

> Bug report
> ==========
> If I have this:
>
> A [[file:zz.org::#mytarget][link]] to a target with a custom ID
>
> and export it to HTML, I get
>
> A <a href="zz.html##mytarget">link</a> to a target with a custom ID
>
> which (in firefox on linux) links to the file but does not jump to the
> target. However, if I change the '##' to '#' then firefox jumps to the
> correct location. Is this an org bug?
>
> Very tentatively proposed patch
> ===============================
> I've investigated a bit (notes below), resulting in this proposed patch:
>
> --8<---------------cut here---------------start------------->8---
> diff --git a/lisp/org-html.el b/lisp/org-html.el
> index aa70408..5ee5b19 100644
> --- a/lisp/org-html.el
> +++ b/lisp/org-html.el
> @@ -1110,7 +1110,7 @@ lang=\"%s\" xml:lang=\"%s\">
>                     (abs-p (file-name-absolute-p filename))
>                     thefile file-is-image-p search)
>                (save-match-data
> -                 (if (string-match "::\\(.*\\)" filename)
> +                 (if (string-match "::#?\\(.*\\)" filename)
>                      (setq search (match-string 1 filename)
>                            filename (replace-match "" t nil filename)))
>                  (setq valid
> --8<---------------cut here---------------end--------------->8---
>
> Doc patch
> =========
> The link above (file:zz.org::#mytarget) was created by C-c l on a
> heading with a CUSTOM_ID property. However, I couldn't see where in the
> manual links of this form are documented. Do we need to add this link
> type to section 4.7 "Search options in file links", e.g.
>
> --8<---------------cut here---------------start------------->8---
> diff --git a/doc/org.texi b/doc/org.texi
> index f49f056..c8cc1a5 100644
> --- a/doc/org.texi
> +++ b/doc/org.texi
> @@ -3116,6 +3116,7 @@ link, together with an explanation:
> [[file:~/code/main.c::255]]
> [[file:~/xx.org::My Target]]
> [[file:~/xx.org::*My Target]]
> +[[file:~/xx.org::#my-custom-id]]
> [[file:~/xx.org::/regexp/]]
> @end example
>
> @@ -3130,6 +3131,8 @@ link will become an HTML reference to the corresponding named anchor in
> the linked file.
> @item *My Target
> In an Org file, restrict search to headlines.
> +@item #my-custom-id
> +Link to a heading with a @code{CUSTOM_ID} property
> @item /regexp/
> Do a regular expression search for @code{regexp}.  This uses the Emacs
> command @code{occur} to list all matches in a separate window.  If the
> --8<---------------cut here---------------end--------------->8---
>
> Notes
> =====
> At line 1134 of org-html.el there is
>
> 			(setq thefile (concat thefile "#"
> 					      (org-solidify-link-text
> 					       (org-link-unescape search)))))
>
> during evaluation of which 'search is bound to "#mytarget", which
> suggested that the problem might be in the regexp parsing creating
> 'search.
2010-03-19 18:04:23 +01:00
Dan Davison abf0a50d1b babel: Ensure that inline code blocks produce string output on export 2010-03-19 10:08:16 -04:00
Carsten Dominik 62eba82646 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-03-19 14:53:10 +01:00
Carsten Dominik e45c431ce9 Refile: Catch invalid target specification
Patch by Jason Dunsmore.
2010-03-19 14:09:30 +01:00
Dan Davison adb2f3f590 babel: Add octave and matlab support 2010-03-18 14:45:39 -04:00
Dan Davison aa0e4b86ce babel: Fix org-babel-load-file
This was broken by 29a2ab0047
2010-03-18 14:30:54 -04:00
Carsten Dominik b3ffb6a9b9 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-03-18 08:39:53 +01:00
Carsten Dominik b79e7790f9 Fix time extraction when inserting diary entries with `i d' 2010-03-18 06:36:49 +01:00
Dan Davison 73d8e57685 babel: Allow tramp syntax when supplying :tangle filename
Patch by Rémi Vanicat.
2010-03-17 21:03:21 -04:00
Dan Davison 29a2ab0047 babel: when tangling do not add extension if filename supplied 2010-03-17 20:09:06 -04:00
Carsten Dominik 72b33420b8 New variable for extracting time when adding diary entries
Patch by Stephen Eglen.
2010-03-17 16:54:58 +01:00
Carsten Dominik ae2ec9b75a Document the `C-c C-z' key 2010-03-17 16:49:07 +01:00
Carsten Dominik b2343cef32 Fix cursor position after changing bullet types 2010-03-17 16:11:13 +01:00
Carsten Dominik 32c2231e96 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-03-17 12:02:10 +01:00
Carsten Dominik 582d28ab82 Make URLs not escape the questionmark 2010-03-17 12:02:02 +01:00
Dan Davison 6976d9fc79 babel: org-babel-switch-to-session [C-c M-b z]
org-babel-pop-to-session is an alias of this
2010-03-16 12:57:28 -04:00
Carsten Dominik 53410c7afa Minor fix 2010-03-16 07:20:34 +01:00
Carsten Dominik 855895059b Improve adaptive filling
Patch by Dan Hackney.

Dan Hackney writes:

> For paragraph text, `org-adaptive-fill-function' did not handle the
> base case of regular text which needed to be filled. This commit saves
> a buffer-local value of `adaptive-fill-regexp' and uses it if none of
> the org-specific regexps match.  This allows email-style ">" comments
> to be filled correctly.
2010-03-15 16:47:42 +01:00
Carsten Dominik 0e5e72ec0b Document BLOCKED property 2010-03-15 16:30:23 +01:00
Carsten Dominik 71419bfbfd Abbreviate "Deadeline" for mode line 2010-03-15 10:59:44 +01:00
John Wiegley 3a3a102348 Added agenda binding: ! shows/hides deadline tasks
org-agenda.el (org-agenda-include-deadlines): Added new
customization variable to determine whether unscheduled tasks
should appear in the agenda solely because of their deadline.
Default to true, which was the previous behavior (it just wasn't
configurable).
(org-agenda-mode-map, org-agenda-view-mode-dispatch): Bind ! in
the agenda to show/hide deadline tasks.
(org-agenda-menu): Added menu option for show/hide deadlines.
(org-agenda-list): Make the agenda list sensitive to the value of
`org-agenda-include-deadlines'.
(org-agenda-toggle-deadlines): New function to toggle the value of
`org-agenda-include-deadlines' and repaint the modeline
indicators.
(org-agenda-set-mode-name): Show "Deadlines" in the agenda
modeline if deadline tasks are being displayed.
2010-03-14 21:03:56 -04:00
Carsten Dominik 11e2116e18 minor fix 2010-03-14 13:12:15 +01:00
Carsten Dominik 6cc4d5dcdf Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-03-14 13:11:29 +01:00
Carsten Dominik 7dd154cc2a Tables: Introduce field coordinates for formulas, improve docs
Patch by Michael Brand
2010-03-14 13:11:17 +01:00
Dan Davison ddc8e00574 Merge branch 'master' of git://repo.or.cz/org-mode 2010-03-13 14:21:00 -05:00
Dan Davison 485781ed40 babel: set default-directory in org-babel-pop-to-session 2010-03-13 14:02:47 -05:00
Dan Davison f4ae431706 babel: Make code block params available when initiating session 2010-03-13 14:02:31 -05:00
Dan Davison 215d11c092 babel: New hook org-babel-after-execute-hook
Runs at the end of org-babel-execute-src-block
2010-03-13 14:02:22 -05:00
Carsten Dominik 3039eff2d3 Remove org group from hypermedia group 2010-03-13 10:44:15 +01:00
Carsten Dominik a9a8cbe39b Revert part of Mikael Fornius' patch 2010-03-12 18:02:51 +01:00
Carsten Dominik f5deab4cea Fix typo 2010-03-12 17:34:16 +01:00
Carsten Dominik b68c61e829 Fix problem with a missing function in XEmacs
`latexenc-coding-system-to-inputenc' does not seem to be available in XEmacs.
2010-03-12 17:29:41 +01:00
Carsten Dominik 2b3cb66d54 LaTeX export: Fix another problem with #+AUTHOR export
Jambunathan K. writes:

> I would like to add the following observation as well -
>
> ---> org input <---
> #+AUTHOR: Jambunathan K\cr\href{mailto:{{{EMAIL}}}}{{{{EMAIL}}}}
>
> ---> actual tex output <---
> \author{Jambunathan K\cr\href{mailto:kjambunathan@gmail.com}\{kjambunathan@gmail.com\}}
>
> The above tex snippet has the effect of getting the "Url Box" wrong.
>
> I was hoping to produce the following line -
> \author{Jambunathan K\cr\href{mailto:kjambunathan@gmail.com}{kjambunathan@gmail.com}}
>
> Generally speaking, macro expansion in author string behaves strangely.
2010-03-12 15:21:41 +01:00
Carsten Dominik 57148dd8aa Agenda: Allow TODO conditions in the skip functions 2010-03-12 14:59:18 +01:00
Carsten Dominik b4f23faff4 Postfix for the previous patch 2010-03-11 15:04:49 +01:00
Carsten Dominik 30e3503b7b Better detection of cursor position when editing properties 2010-03-11 14:10:21 +01:00
Carsten Dominik c6cfd3cfd3 HTML export: Fix problem with table attributes when first table line is special
Eric Fraga writes:

> What am I missing?  I tried exporting the following to HTML and the
> caption and HTML attributes seem to be ignored completely.  Also, the
> alignment directives are ignored as well.
>
> --8<---------------cut here---------------start------------->8---
> #+TITLE: test file for org mode
> #+DESCRIPTION: used for bug reports
> #+AUTHOR:    Eric S Fraga
> #+EMAIL:     Eric S Fraga <e.fraga@ucl.ac.uk>
> #+DATE:      2010-03-11 Thu
> #+KEYWORDS:
> #+LANGUAGE:  en
> #+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
> #+OPTIONS:   TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
> #+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
> #+EXPORT_SELECT_TAGS: export
> #+EXPORT_EXCLUDE_TAGS: noexport
> #+LINK_UP:
> #+LINK_HOME:
>
> * tables
>
> #+caption: A very interesting table
> #+attr_html: border="1" rules="all" frame="all" align="center"
> | <r> | <l>                            |
> |  Id | Description                    |
> |-----+--------------------------------|
> |  1. | The first item                 |
> |  2. | the second                     |
> |  4. | we don't have a third one      |
> | 10. | a longer id to check alignment |
> |-----+--------------------------------|
> --8<---------------cut here---------------end--------------->8---
>
> I'm using org current as of yesterday Org-mode version 6.34trans
>  (release_6.34c.186.g1902) and with GNU Emacs 23.1.1
>  (i486-pc-linux-gnu, GTK+ Version 2.18.2) of 2009-11-02 on raven,
>  modified by Debian
2010-03-11 12:27:42 +01:00
Carsten Dominik 77eda20bb6 Archiving: Allow to reverse order in target node
Tom writes:

> When archiving trees I'd like to see the archived items in
> reverse chronological order at the archive location, so if I jump
> to the header under which stuff is archived I would see the most
> recent item at the top.
>
> When searching for something in the archives it is much more
> frequent that I'm looking for something recently archived than
> something archived months ago, so the reserved order would make
> more sense to me.
>
> Is there a setting which tells the archiving command to insert
> the archived tree as first child of the archive location,
> instead of the last?
2010-03-11 07:23:03 +01:00
Carsten Dominik fb528c18f0 Agenda: Specify entry types as an option
Patch by Matt Lundin

Matt writes:

> Below is a patch I've been using to speed up the construction of
> agenda views limited to certain types of entries (e.g., timestamps and
> sexps).  Previously, I had constructed "calendar" views consisting
> only of timestamps and sexps by using the variable
> org-agenda-skip-function to exclude scheduled items and deadlines from
> the agenda. This, however, proved somewhat slow (3-4 seconds for
> weekly calendars, 10-12 seconds for monthly calendars). The patch
> below cuts the times to 1 and 3 seconds respectively. I believe it
> provides an efficient alternative to the skip function by allowing the
> user to tweak the arguments passed to org-agenda-get-day-entries.
2010-03-10 17:12:26 +01:00
Carsten Dominik 1902dfacbe LaTeX export: Macro processing also in author field 2010-03-09 17:24:31 +01:00
Carsten Dominik a5ebc8d3ae Refactor some functions in clocking
Patch by Bernt Hansen
2010-03-09 17:10:15 +01:00