Commit Graph

1090 Commits

Author SHA1 Message Date
Dan Davison 9c09a85ab6 New faces for title, date, author and email address lines.
By default, title, author, date and email lines appear in dark blue
with the initial keywords greyed out. The title is in a larger font
than the others. This is implemented by the following new faces:

org-document-title
org-document-info
org-document-info-keyword

In addition, the variable org-hidden-keywords can be used to make the
corresponding keywords disappear.
2010-03-28 10:39:47 -04:00
Carsten Dominik 8586c7f2ab Store unexpanded filenames in list of agenda files. 2010-03-25 12:13:24 +01:00
Carsten Dominik f237acfd85 Add logging support for refiling
Proposal by Charles Cave.
2010-03-25 07:48:29 +01:00
Carsten Dominik 93af0ec925 Use save-excursion to remember position when updating dblocks
Magnus Henoch writes:

> This patch has been sitting in my tree for a while...  It's a fix to
> org-map-dblocks, to make it use save-excursion instead of remembering
> position values.  I need this since I have a dblock function that
> asynchronously updates dblocks from HTTP responses, and some dblocks
> ended up getting updated twice or thrice.

[...]

> My dblock-write function calls url-retrieve, to asynchronously retrieve an
> HTML page.  The callback function I pass to url-retrieve will then fill
> in the information I need into the dynamic block.
>
> So in the following case:
>
> * Find start of dblock 1, store as pos
> * Make HTTP request for dblock 1
> * Go back to pos
> * Find end of dblock 1
> * Find start of dblock 2, store as pos
> * Make HTTP request for dblock 2
> * Asynchronous event: HTTP response for dblock 1 arrives, insert lots of
>  data in dblock 1
> * Go back to pos
> * Find end of dblock 2
>
> the last step will actually find the end of dblock 1, if the amount of
> data inserted in dblock 1 is great enough that pos suddenly points
> inside it.  (Then it will of course find dblock 2 again, request its HTML
> page again, and thus insert the data twice.)
>
> An equivalent fix would be to make pos a marker instead.
2010-03-24 22:25:35 +01:00
Carsten Dominik 42589b32c2 Expand file names in org-agenda-files (external file case)
Patch by Mikael Fornius.
2010-03-24 12:55:55 +01:00
Carsten Dominik fc2bdd8cf1 Fix problem when inserting a new headline
Ryan Thompson writes:

> I have found a bug. When the point is at the end of an empty headline
> and you press M-RET (or C-RET) to make a new headline, it deletes all
> the whitespace at the end of the empty headline first, which causes
> the headline to break. I'm not sure if the correct behavior is to
> leave an empty headline, or maybe just do nothing and leave the point
> at the end of the empty headline without creating a new one, but the
> correct thing is definitely *not* to break the headline.
2010-03-23 08:44:13 +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 e45c431ce9 Refile: Catch invalid target specification
Patch by Jason Dunsmore.
2010-03-19 14:09:30 +01:00
Carsten Dominik 582d28ab82 Make URLs not escape the questionmark 2010-03-17 12:02:02 +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 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 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 6518396b4e Allow rescheduling and changing deadlines on items with repeaters 2010-03-08 17:57:11 +01:00
Carsten Dominik ac7ee0427c Respect link abbreviations when offering a list of links
John Wiegley writes:

> I have the following data in my Org-mode file:
>
>  #+LINK: cegbug https://portal/bugzilla/show_bug.cgi?id=
>
>  ** TODO [[cegbug:351][#351]] Bizcard: Fix Maven build setup
>     - State "TODO"       from "STARTED"    [2010-03-01 Mon 14:42]
>
> Now, in the Agenda and in the Org-mode buffer, everything looks fine.
> I can also use C-c C-o if my cursor is within the #<NUMBER> text.
>
> However, if I'm in the Agenda and I hit C-c C-o, it says 'No match'
> after about a second. Is there any reason I can't open these links
> from the Agenda view?
2010-03-08 08:31:31 +01:00
Carsten Dominik edffca45e9 Solve issue with lower-case hex escapes 2010-03-05 13:36:44 +01:00
Carsten Dominik 7a9a998c01 Fix spelling 2010-03-03 14:25:21 +01:00
Carsten Dominik 6d1e30828b Re-install the support for table.el tables again.
This support was totally broken.  It works now again.  Unfortunately
it is not possible to edit the table directly in the org-mode buffer
anymore - to edit such a table, you have to use C-c '
2010-02-26 22:33:49 +01:00
Carsten Dominik dd6043cb3a Reading dates: Fix a bug, and allow American-style dates
This patch implements reading American dates, like

2/5/3         --> 2003-02-05
2/5           --> ????-02-05

Is also fixes a bug that would force the current year when reading a
date like 2/5 (American) or 2-5 (ISO), and in this way would prevent
`org-read-date-prefer-future' to do its job.  This bug was reported by
Lukasz Stelmach.
2010-02-26 08:58:30 +01:00
Carsten Dominik 6fbdb8074e Implement a simpler way to specify faces for tags and todo keywords
This is a patch by Ryan Thompson, extended by Carsten Dominik.
2010-02-25 16:41:28 +01:00
Bastien Guerry 1b1433e079 `org-set-property': remove useless space in the prompt. 2010-02-25 15:17:48 +01:00
Bernt Hansen c4a459aa7a Fix goto last refile location
Move the marker for the last refile location to the heading instead of at the
end of the entry.  This was causing C-u C-u C-c C-w to end up on the heading
following the newly refiled entry.
2010-02-20 20:36:38 +01:00
Carsten Dominik 829ed41161 Org-reveal: Double prefix arg show the entire subtree of the parent
This can help to get out of an inconsistent state produce for example
by viewing from the agenda.  Reported by Matt Lundin:

> I'd like to report a minor issue with org-agenda-goto and inline tasks.
> Let's say one has the following file:
>
> --8<---------------cut here---------------start------------->8---
> * Here is an entry.
> Blah blah blah blah.
> *************** Here is an inline task.
> *************** END
> Blah blah blah blah blah.
> *************** TODO Here is a second inline task.
> *************** END
> Blah blah blah blah blah.
> *************** Here is a third inline task
> *************** END
> Blah blah blah blah blah.
> --8<---------------cut here---------------end--------------->8---
>
> Let's say one also has the following settings:
>
> --8<---------------cut here---------------start------------->8---
> (setq org-show-hierarchy-above t)
> (setq org-show-siblings '((default . nil) (isearch . t) (agenda . t)))
> (setq org-show-entry-below '((default . nil) (isearch . t) (agenda . t)))
> --8<---------------cut here---------------end--------------->8---
>
> If 1) one tries to jump to the TODO from the agenda and 2) the entry is
> currently folded, org-show-context reveals only the headlines. E.g.,
>
> --8<---------------cut here---------------start------------->8---
> * Here is an entry.
> *************** Here is an inline task.
> *************** END...
> *************** TODO Here is a second inline task.
> *************** END...
> *************** Here is a third inline task
> *************** END...
> --8<---------------cut here---------------end--------------->8---
>
> Invoking org-cycle on the END headline does nothing, since all headlines
> deeper than org-inlinetask-min-level are exempted from cycling. As a
> result, the only way to reveal the text in the entry is to cycle the
> parent twice (first to close, then to reveal).
2010-02-19 09:43:53 +01:00
Carsten Dominik ca19fab380 Fix minor bug. 2010-02-16 17:59:57 +01:00
Carsten Dominik 8bb407117b Better detection if point is inside a latex macro
Ruud Brekelmans writes about problems with spurious footnotes:

> I still find similar behavior when exporting to LaTeX with:
>
> #+BEGIN_LaTeX
> \newcommand{\norm}[1]{\lVert#1\rVert}
> #+END_LaTeX
2010-02-16 05:41:12 +01:00
Carsten Dominik 449e6b4560 Fix bug when hiding archived subtrees
Emilio Arias writes:

> egallego@babel.ls.fi.upm.es (Emilio Jess Gallego Arias) writes:
>
> To reproduce save this minimal org file:
>
> #+STARTUP: even
> * A
>  :PROPERTIES:
>  :ARCHIVE: a
>  :END:
> ** B 								:ARCHIVE:
>   Some text
>
> and hit TAB when in the * A headline; then the ** B headline contents
> will be incorrectly shown.
>
> I've found the culprit in org-hide-archived-subtrees:
>
> ,----
> | (defun org-hide-archived-subtrees (beg end)
> |   "Re-hide all archived subtrees after a visibility state change."
> |   (save-excursion
> |     (let* ((re (concat ":" org-archive-tag ":")))
> |       (goto-char beg)
> |       (while (re-search-forward re end t)
> | 	(and (org-on-heading-p) (org-flag-subtree t))
> | 	(org-end-of-subtree t)))))
> `----
>
> The problem is that the RE matches the first archive "property" and
> then does an org-end-of-subtree which skips all the subtrees of the
> parent tree where the ARCHIVE property is located.
>
> I've replaced this part
>
> | 	(and (org-on-heading-p) (org-flag-subtree t))
> | 	(org-end-of-subtree t)))))
>
> by
>
> |       (when (org-on-heading-p)
> |             (org-flag-subtree t)
> |             (org-end-of-subtree t)))))))
>
> so org-end-of-subtree is only called if we are really in a headline. I
> think that makes sense.
>
2010-02-16 05:30:49 +01:00
Carsten Dominik b3e92a8193 Make sure the org-goto buffer comes up in the current frame 2010-02-12 18:55:27 +01:00
Carsten Dominik eefb8ef4f7 Fix deadline/scheduled updating if there is a repeater in *another* stamp
Patch by Paul Holocomb.
2010-02-12 18:29:22 +01:00
Carsten Dominik f5459505a3 Have quote and verse blocks be fontified again 2010-02-09 00:13:15 +01:00
Carsten Dominik 2d87c80bce Fix bug with opening a radio link in headlines 2010-02-03 16:58:44 +01:00
Carsten Dominik a64058130f Throw an error when creating an image from a LaTeX snippet fails 2010-02-03 16:12:51 +01:00
Carsten Dominik 2cd16d4cd5 Make org-store-link point to directory in a dired buffer
When the cursor is not in a line listing a file, that is.
2010-02-02 07:22:27 +01:00
Carsten Dominik 16f73aff96 Let blocking be turned-off on a per-file basis using local variables
Wes Hardaker writes:

> Attached is a patch that lets local variables define whether or not todo
> dependency blocking should be used (both for TODOs and for checkboxes).
> I have one file in particular that I'm using checkboxes to quickly
> indicate multi-selections from a list but for most of my files I want
> TODOs blocked by uncompleted checkboxes.
>
> Normally org uses hook methods for checking for TODO blocks and this
> patch just inserts a check at the top to test and see if the variable
> turning on the blocking type is still set.
2010-02-01 17:34:50 +01:00
Carsten Dominik b8a4d004f2 Fix bug with insertion of date lines into a tree from the agenda
Reports by Stephen Eglen and Eric S Fraga.
2010-02-01 14:30:36 +01:00
Carsten Dominik e853e2d798 HTML export: Add class to outline containers using property
The HTML_CONTAINER_CLASS property can now be used to add a property to
the outline container of a node.
2010-02-01 09:37:35 +01:00
Carsten Dominik dbbf76a8e3 Mention level cycling in the docstring of org-cycle 2010-02-01 07:52:17 +01:00
Carsten Dominik 2038d61463 Improve automatic letter selection for TODO keywords
Path by Mikael Fornius
2010-01-28 19:26:41 +01:00
Carsten Dominik 4fc5ac29c6 Make sure narrowing to subtree does not swallow headings
Jan Bcker writes:

> Consider the following situation:
>
> * A
>  Some text.
> * B
>
> - Place the cursor on A, press C-x n w (org-narrow-to-subtree).
> - Go to the very end of the buffer and insert "xyz".
> - C-x n w (widen).
>
> You end up with:
>
> * A
>  Some Text
> xyz* B
2010-01-22 11:28:37 +01:00
Carsten Dominik 2e53d9b137 Remove comma after means in many docstrings
Stephen Eglen says these commas should not be there.
2010-01-21 16:15:40 +01:00
Carsten Dominik 3ddd5ac49c Add org-secretary.el by Juan Reyero 2010-01-20 10:15:50 +01:00
Carsten Dominik 06e74afce3 Version number to 6.34trans 2010-01-20 10:13:21 +01:00
Carsten Dominik a1709ba641 Release 6.34c 2010-01-18 00:10:11 +01:00
Carsten Dominik 5d5aab1a42 Fix important bugs in `org-entry-properties'
Patches by David Maus
2010-01-18 00:05:29 +01:00
Carsten Dominik dcf34971f6 Fix link encoding bug:
Geert Kloosterman writes:

> When an org link is created from an URL containing a hex escape
> `org-make-link-string' creates a link that ends up corrupted the moment
> it is followed (e.g. using `org-open-at-point').
>
> I've traced this back to `org-link-escape' and `org-link-unescape'.  The
> following shows how the hex code "%2B" is converted to a "+" after an
> escaping round trip:
>
>    (org-link-unescape (org-link-escape
>                        "http://some.host.com/form?&id=blah%2Bblah"))
>    ==>
>    "http://some.host.com/form?&id=blah+blah"
>
> In my case this small change ended up in a broken URL.
>
> Additionally, when the URL-escape happens to be in lower case (or
> otherwise not present in `org-link-escape-chars') we end up with an
> error:
>
>    (org-link-unescape (org-link-escape
>                        "http://some.host.com/form?&id=blah%2bblah"))
>    ==>
>    Debugger entered--Lisp error: (wrong-type-argument characterp nil)
>      char-to-string(nil)
>      ...
>
> When `org-url-encoding-use-url-hexify' is set to `t' we do get a proper
> round trip of the URL containing hex-escapes:
>
>    (setq org-url-encoding-use-url-hexify t)
>    (org-link-unescape (org-link-escape
>                        "http://some.host.com/form?&id=blah%2bblah"))
>    ==>
>    "http://some.host.com/form?&id=blah%2bblah"
>
>
> Setting `org-url-encoding-use-url-hexify' does not fix the complete
> problem however: `org-open-at-point' still did not end up with the
> proper URL.   Within `org-open-at-point' there is another call to
> `org-link-escape':
>
>    (org-link-escape path org-link-escape-chars-browser)
>
> This time a mapping table is passed in explicitly (the second argument).
> However, when `org-url-encoding-use-url-hexify' is set,a this mapping
> table isn't used, resulting (again) in a broken URL.
>
> I have attached a patch that fixes the problem: do not use url-hexify in
> `org-link-escape' and `org-link-unescape' when an explicit mapping table
> has been specified.
>
> In summary:
> - the default behaviour of `org-link-escape', with
>   `org-url-encoding-use-url-hexify' set to nil, has some issues with
>   handling URLS which contain url-encoded hex escapes
> - when a mapping table is passed to `org-link-escape' and
>   `org-link-unescape', they should probably not use url-hexify.
>   Patch attached.
2010-01-16 01:10:23 +01:00
Carsten Dominik 2f2f9441d4 Release 6.34b 2010-01-14 23:06:55 +01:00
Carsten Dominik a1e0409ab7 Keep byte compiler happy 2010-01-14 23:06:13 +01:00