David Maus writes:
> By accident I noticed that if you clone a subtree using C-c C-x c who
> or whose content is the last line of the file orgmode inserts the
> clone without the desired newline.
>
> example.org
> ,----
> | * Just a test
> `----
>
> If you move the point behind test and press C-c C-x c 1 <RET> <RET>
> the clone is inserted right behind "test".
>
> example.org
> ,----
> | * Just a test*Just a test
> `----
>
> Instead orgmode should insert a newline before inserting the clone
> when the file misses an empty line at the end.
Samuel Wales writes:
> I find that changing a task from a todoish state to blank
> causes blocking to occur. I normally want all todo state
> changes except those to doneish states to be non-blocked.
>
> I think the issue might be that blank is special-cased, as
> if it were a doneish state. I would prefer blank to be a
> todoish state just like any other.
Sebastian Rose writes
> 1. Open an *.org file you can export to PDF. Ensure the file is not
> located where your Org-mode sources are (org-*.el files). Choose a
> file, that includes some images or a SETUPFILE using relative
> paths.
> 2. M-x default-directory RET
> to see the value of that variable in the current buffer.
> 3. C-c C-e p
> to export to PDF and verify it works.
> 4. C-c C-x !
> to `org-reload'
> 5. Now repeat steps 2 and 3. Note, that the export fails.
Sebastian also submitted the basic patch to fix this
Rick Moynihan writes:
> I'm wondering if anyone logs rescheduled tasks with org-mode... As I
> find myself sometimes scheduling tasks for a future date, but then on
> the day not having the capacity to do them. In these situations I
> just reschedule them, but it'd be nice to record the dates for which
> an item was originally scheduled in the LOGBOOK.
>
> Has anyone configured org-mode to do this? lognotedone only appears to
> log state changes (rather than schedule/deadline changes).
This lets you see how long has passed since the specified timestamp property
each entry. The three operators (@min, @max, @mean) show either the age of the
youngest or oldest entry or the average age of the children.
Alessandro Paccacio writes:
> I've an outline like this:
>
> * Project A
> ** TODO Task A-1 [0/3]
> *** TODO Subtask A-1-a
> *** TODO Subtask A-1-b
> *** TODO Subtask A-1-c
>
> where level 1 heading is the name of a project, level 2 heading is a
> generic task broken into three level 3 headings. As suggested in
> section 5.5 of the manual, I've hooked the org-summary-todo function
> to org-after-todo-statistics-hook, in order to automatically change
> the level 2 TODO to DONE when all the subtasks are DONE.
> Unfortunately, when I change to DONE the first subtask, an unexpected
> TODO is added to level 1 heading:
>
> * TODO Project A
> ** TODO Task A-1 [1/3]
> *** DONE Subtask A-1-a
> *** TODO Subtask A-1-b
> *** TODO Subtask A-1-c
>
> From now on, the switch TODO->DONE or DONE/TODO applies to level 1
> heading, even if the [/] cookie in level 2 is correctly updated:
>
> * DONE Project A
> ** TODO Task A-1 [3/3]
> *** DONE Subtask A-1-a
> *** DONE Subtask A-1-b
> *** DONE Subtask A-1-c
>
> Is there a way to apply the automatic change of TODO to the parent
> heading only, as below?
>
> * Project A
> ** DONE Task A-1 [3/3]
> *** DONE Subtask A-1-a
> *** DONE Subtask A-1-b
> *** DONE Subtask A-1-c
This bug resulted from a recent patch which made a prefix arg of 2 to
mean refile to the clock. However, I forgot to actually test the
value of the prefix arg...
Chris Randle writes:
> I've just noticed that creating a sparse tree with `C-c / r' is
> not displaying matches in my org file. It hasn't always been this
> way, I *think* things were working OK around 6.29, but it's hard
> to be sure.
>
> I've managed to pare my org file down to a few lines that
> demonstrate the problem
>
> ===============================
>
> * Customers
> ** Customer A
> *** Billing
> **** Support during September :ARCHIVE:
> ** Customer B
> 07964-xxxxxx
>
> *** Problem with Laptop
> ** Customer C
> *** Current Details
>
> *** Test of 07968 showing up
> ** Customer D
> 01673-xxxxxx
> 07968-xxxxxx
>
> *** Laptop slowdown fix
> spoolsv.exe at 99%
>
> ===================================
>
> Setting a sparse tree by regexp 0796[48] returns "3 match(es) for
> regexp 0796[48]", but the tree doesn't expand at the hit
> locations. If I manually expand the tree at the locations of the
> hits, the results are highlighted. It makes no difference if the
> hits are in a headline or in notes beneath a headline.
>
> Remove the ARCHIVE tag from the "Support during September"
> headline with `C-c C-x a' and redo the sparse tree. Everything
> now appears expanded as I'd expect.
Hmm, maybe the outline behavior of hide-subtree has changed???
Anyway, we now just use our own function for this.
The following keys now do archiving
C-c C-x C-a archive using the command specified in
`org-archive-default-command'
This variable is by default set to `org-archive-subtree', which means
arching to the archive file.
The three specific archiving commands are available through
C-c C-x C-s archive to archive file
C-c C-x a toggle the archive tag
C-c C-x A move to archive sibling
These bindings work the same in an Org file, and in the agenda.
In addition:
- In the agenda you can also use `a' to call the default archiving
command, but you need to confirm the command with `y' so that this
cannot easily happen by accident.
- For backward compatibility, `C-c $' in an org-mode file, and `$' in
the agenda buffer continue to archive to archive file.
org-habit.el: New file, which implements code to build a "habit
consistency graph".
org-agenda.el (org-agenda-get-deadlines)
(org-agenda-get-scheduled): Display consistency graphs when outputting
habits into the agenda. The graphs are always relative to the current
time.
(org-format-agenda-item): Added new parameter `habitp', which indicates
whether we are formatting a habit or not. Do not display "extra"
leading information if habitp is true.
(org-repeat-re): Improved regexp to include .+ and ++ leaders for repeat
strings.
(org-get-repeat): Now takes a string parameter `tagline', so the caller
can obtain the SCHEDULED repeat, or the DEADLINE repeat.
(org-clock-resolve-clock): New function that resolves a clock to a
specific time, closing or resuming as need be, and possibly even
starting a new clock.
(org-clock-resolve): New function used by `org-resolve-clocks' that sets
up for the call to `org-clock-resolve-clock'. It determines the time to
resolve to based on a single-character selection from the user to either
keep time, subtract away time or cancel the clock.
(org-resolve-clocks): New user command which resolves dangling clocks --
that is, open but not active -- anywhere in the file list returned by
`org-files-list'.
(org-clock-in): Automatically resolve dangling clocks whenever a user
clocks in.
(org-clock-cancel): If the user cancels the solely clock in a LOGBOOK,
remove the empty drawer.
(org-files-list): New utility function for returning a list of all open
org-mode buffers, plus all files used to build the agenda buffer. Note
that not all the files will necessarily be visited by a buffer at time
of call.
(org-entry-beginning-position): Like the function
`line-beginning-position', this inline function returns the beginning
position of the current heading/entry.
(org-entry-end-position): Like the function `line-end-position', this
inline function returns the end position of the current heading/entry.
PT writes:
> Currently, I'm using Google Calendar and it's quick add syntax is very
> convenient:
>
> http://www.google.com/support/calendar/bin/answer.py?hl=en&answer=36604#text
>
>
> Of course, Org has similar capabilites, but I found one thing which
> google calendar does better: if it's 4pm and I add an event for 8am
> then GCal schedules it for 8am tomorrow.
>
> Org, on the the other hand, schedules it for 8am today even if that
> time is already passed.
>
> I never add past events and I think it's quite atypical. Shouldn't be
> an option similar to org-read-date-prefer-future for times too, so
> that timestamps also prefer the future when no date given?
This is now possible, but it is not the default. You need to set
(setq org-read-date-prefer-future 'time)
priority
So far the headline had to match the one specified in the template
exactly, except for tags. Now a TODO keyword and a priority can be
added, and the headline will still be found.
Reported by Samuel Wales and Bernt Hansen.
Peter Westlake writes:
> Could I request this as a small feature enhancement, please?
> Commands like org-refile have an agenda equivalent so that
> the same keys work in the agenda, and it would be very nice
> to be able to store a link to an item that way as well.
When odd levels are being used, change the interpretation of a
numerical arg to S-TAB.
Michael Brand writes:
> I like the org-indent-mode with the soft-indentation but even more I
> like the hard-indentation with `#+STARTUP: odd hidestars' instead for
> which I have a question.
>
> This is the content of the example file oddeven:
> -*- mode: org -*-
> #+STARTUP: oddeven hidestars content
> * 1 Org Mode
> ** 1.1 Introduction
> *** 1.1.1 Installation
>
> This is the content of the example file odd:
> -*- mode: org -*-
> #+STARTUP: odd hidestars content
> * 1 Org Mode
> *** 1.1 Introduction
> ***** 1.1.1 Installation
>
> The different _Emacs-faces_ (colors) for the heading levels are the same
> when comparing the two files. This Emacs-internal adaptation I
> appreciate a lot.
>
> C-u 2 S-Tab shows _two_ levels with the file oddeven but only _one_ with
> the file odd. Is this how it is intended to work for the file odd?
org.el (org-offer-links-in-entry): Don't use "Select link" as a prompt
in the temporary window.
org-agenda.el (org-agenda-bulk-mark): Use a slightly soberer prefix for
marked entries in the agenda view.
Matt Lundin writes:
> When I call org-remember or org-store-link above the first headline in
> an org buffer, I receive the following error message:
>
> Before first headline at position 1 in buffer index.org
>
> It seems that either org-remember or org-store-link (or both) calls
> org-back-to-heading in order to grab the relevant heading for
> annotation. As a result, if I try to store a link above the first
> heading, emacs spits out the error message above because there is no
> heading to return to.
>
> Is this the intended behavior? Sometimes I prefer to create a link to
> the file as a whole rather than to a particular headline. E.g., I might
> want to create a todo to organize notes.org, which is not an agenda
> file. In this instance, it does not matter whether org-remember creates
> a link to a particular headline. In fact, I would prefer a link to the
> file as a whole and thus expect to be able to store a link while on the
> first empty line of the file or on #+TITLE.
Tassilo Horn writes:
> When I want to set a tag using `C-c C-q TAB' I get a iswitchb completion
> prompt, cause org-completion-use-iswitchb is t. I also use iswitchb's
> virtual files feature (iswitchb-use-virtual-buffers set to t), which
> includes files that aren't opened in a buffer, but are in the recentf
> list. This is a cool thing when switching buffers (I barely use C-x C-f
> anymore and switch to the virtual buffer instead), but totally useless
> and annoying for tab completion in org.
>
> So when completing anything (files/tags/...) in org with iswitchb,
> switchb-use-virtual-buffers should be let-bound to nil before.
PT writes:
> I tried this new setting with 6.30 and it works well, thanks for
> this.
>
> The only strange case is when a header line doesn't have any
> content, only empty lines.
>
> So if there are 2 empty lines between headers
>
> * header1
>
>
> * header2
>
>
> Then the first empty line after header1 is folded regardless of
> the -1 setting. If I understand the feature correctly no folding
> should occur in this case either.
The category can contain a bracket link. This commit makes sure that
the prefix in the agenda looks OK if there is a link, and that the
link is accessible with `C-c C-o 0'.
Karl Stump writes:
> Table Editing Cycle With Multiple Windows On One Buffer Does Not
> Return to Start State
>
> When I have two windows open on two buffers, one to a table in a
> file that I'm editing, the other to some other file of interest,
> the editing cycle of C-` ... C-c C-c works great, meaning that
> when the cycle is finished, the windows are restored to the start
> state.
>
> But when I have two windows open on the same buffer, one window
> on the table, and the other window somewhere else, the editing
> cycle does not restore to the beginning state.
Bernt Hansen writes:
> I ran into this a few weeks ago and it's been bugging me.
>
> I reorganized a project which had a deadline on the main task and moved
> it down to multiple subtasks in the project.
>
> ,----
> | * TODO Project task
> | DEADLINE: <2009-08-28 Fri>
> | ** TODO Step 1
> | ** TODO Step 2
> | ...
> | ** TODO Step n
> `----
>
> I decided the DEADLINE really doesn't belong at the top -- since the
> deadline was for step 2 (and a few other tasks)... so I moved it the
> hard way. Instead of cutting it out and pasting it back in the right
> tree I just used C-c C-d and entered the same date on step 2 (because I
> was moving the date a bit from the original date).
>
> ,----
> | * TODO Project task
> | DEADLINE: <2009-08-28 Fri>
> | ** TODO Step 1
> | ** TODO Step 2
> | DEADLINE: <2009-08-28 Fri>
> | ...
> | ** TODO Step n
> `----
>
> Now to remove the deadline from the Project task I just did C-u C-c C-d
> on the Project task but this removed all the deadlines in the subtree
> and my deadline in Step 2 (and others) is now gone.
>
> AFAICT SCHEDULED: works the same way. This doesn't feel natural to me
> but I know it is documented this way.
>
> Does the way it works now really make sense or would just removing the
> deadline from the task you are working on be better.
>
> C-c C-d sets a deadline just for this task, so it felt natural to me
> that C-u C-c C-d would remove the deadline just for this task -- but
> that's what I get for not reading the manual (or forgetting since I read
> it ;)
Bernt Hansen writes:
> I think I have something that is reproducible.
>
> ,----[ /tmp/x.org ]
> |
> | * Refile Targets
> | ** TODO One
> | ** TODO Two
> | ** TODO Three
> | ** TODO Four
> | ** TODO Five
> | ** TODO Six
> | *** TODO Six.one
> | *** TODO Six.two
> | **** TODO Clock me
> | ** TODO Seven
> | ** TODO Eight
> | ** TODO Nine
> | ** TODO Ten
> | * Refile Tasks
> | ** TODO Refile Me
> `----
>
> ,----[ /tmp/minimal.emacs ]
> | (add-to-list 'load-path (expand-file-name "~/git/org-mode/lisp"))
> | (add-to-list 'auto-mode-alist '("\\.\\(org\\|org_archive\\|txt\\)$" . org-mode))
> | (require 'org-install)
> |
> | (global-set-key "\C-cl" 'org-store-link)
> | (global-set-key "\C-ca" 'org-agenda)
> | (global-set-key "\C-cb" 'org-iswitchb)
> |
> | (setq org-log-done (quote time))
> | (setq org-log-into-drawer t)
> | (setq org-agenda-files '("/tmp/x.org"))
> | (setq user-init-file "/tmp/custom.el")
> |
> | (setq org-refile-allow-creating-parent-nodes nil)
> | (setq org-refile-targets (quote ((nil :maxlevel . 2) (org-agenda-files :maxlevel . 2))))
> | (setq org-refile-use-outline-path nil)
> | (setq org-todo-keywords (quote ((sequence "TODO(t!)" "STARTED(s!)" "|" "DONE(d!/!)") (sequence "WAITING(w@/!)" "SOMEDAY(S!)" "OPEN(O@)" "|" "CANCELLED(c@/!)") (sequence "QUOTE(q!)" "QUOTED(Q!)" "|" "APPROVED(A@)" "EXPIRED(E@)" "REJECTED(R@)"))))
> `----
>
> Steps to reproduce:
>
> 1. Save the files /tmp/x.org and /tmp/minimal.emacs
> 2. emacs -q -l /tmp/minimal.emacs /tmp/x.org
> 3. Go to CONTENTS view with S-TAB twice
> 4. Put point on **** TODO Clock Me
> 5. Clock in the task with C-c C-x C-i
>
> This adds a logbook drawer with the clock
>
> 6. Fold to OVERVIEW view with S-TAB
>
> So it looks like this
>
> ,----[ x.org folder ]
> |
> | * Refile Targets...
> | * Refile Tasks...
> `----
>
> 7. M-x org-clock-goto
>
> This reveals the buffer like so:
>
> ,----
> |
> | * Refile Targets...
> | **** TODO Clock me
> | :LOGBOOK:...
> | ...
> | * Refile Tasks...
> `----
>
> I think this is the critical step.
>
> 8. Put point on Refile Tasks
> 9. Show task to refile with TAB
> 10. Put point on ** TODO Refile Me
> 11. Refile to Ten with C-c C-w Ten RET
> 12. Put point on Refile Me
> 13. Reveal with C-c C-r
>
> Shows that we are under TODO Ten. So far so good
>
> ,----
> |
> | * Refile Targets...
> | **** TODO Clock me
> | :LOGBOOK:...
> | ...
> | ** TODO Ten
> | *** TODO Refile Me
> | * Refile Tasks
> `----
>
> 14. Now repeat steps 10-13 but refile to 'Two' instead of 'Ten'
>
> This goes to the wrong place. This files under Nine for me
>
> ,----
> |
> | * Refile Targets...
> | **** TODO Clock me
> | :LOGBOOK:...
> | ...
> | ** TODO Nine
> | *** TODO Refile Me
> | ** TODO Ten
> | * Refile Tasks
> `----
>
> 15. Repeat steps 10-13 with refiling to 'Two' each time
>
> This moves Refile Me up one task at a time until it gets to Two
> ie. it refiles to Eight, then Seven, then Six, then Five, then
> Four then Three, then Two.
>
> If you show contents view with S-TAB and then refile it goes to the
> right place immediately. So this definitely has something to do with
> the folded view of the org file.
>