emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Marco Wahl <marcowahlsoft@gmail.com>
To: emacs-orgmode@gnu.org
Subject: [RFC] org-agenda: Jump directly to line in case of a timestamp
Date: Sat, 07 Oct 2017 16:45:12 +0200	[thread overview]
Message-ID: <84y3onggp3.fsf@gmail.com> (raw)

Hello,

This is a little proposition about changing the behaviour of
`org-agenda-goto' which typically gets triggered when pressing TAB on an
line in the Org agenda.

The proposition affects only the case of an agenda line due to a
timestamp outside a planning line (i.e. SCHEDULED or DEADLINE.)

Up to now `org-agenda-goto' jumps always to the corresponding headline.
With the patch `org-agenda-goto' would jump directly to the line
containing the timestamp.

If you use plain lists with timestamps this can be helpful.

Let's say in an Org file you have the following plain list.

* test

- <2017-10-07 Sat 16:25> Start writing the RFC.
- <2017-10-07 Sat 16:29> Thought: "Will somebody notice?"
- <2017-10-07 Sat 16:30> Sent the RFC to the list.

For each list item a corresponding line appears in the day agenda.

  .tmp	.:16:25...... test
  .tmp	.:16:29...... test
  .tmp	.:16:30...... test

Pressing TAB in the agenda would jump to the respective plain list item.

Find the concrete patch below.

WDYT?


Best regards
            Marco


--8<---------------cut here---------------start------------->8---
From e2fd5f36b33e17063cf06f8df7b5d924c751b327 Mon Sep 17 00:00:00 2001
From: Marco Wahl <marcowahlsoft@gmail.com>
Date: Sat, 7 Oct 2017 15:57:36 +0200
Subject: [PATCH] org-agenda: Jump directly to line in case of a timestamp
 entry

* lisp/org-agenda.el (org-agenda-goto): Don't move back to heading
  when on a line with a free standing timestamp.
---
 lisp/org-agenda.el | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index fb5448ef8..6fd16b659 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -8424,10 +8424,12 @@ When called with a prefix argument, include all archive files as well."
     (when (derived-mode-p 'org-mode)
       (org-show-context 'agenda)
       (recenter (/ (window-height) 2))
-      (org-back-to-heading t)
-      (let ((case-fold-search nil))
-	(when (re-search-forward org-complex-heading-regexp nil t)
-	  (goto-char (match-beginning 4)))))
+      (unless (and (looking-at org-ts-regexp-both)
+		   (not (org-at-planning-p)))
+	(org-back-to-heading t)
+	(let ((case-fold-search nil))
+	  (when (re-search-forward org-complex-heading-regexp nil t)
+	    (goto-char (match-beginning 4))))))
     (run-hooks 'org-agenda-after-show-hook)
     (and highlight (org-highlight (point-at-bol) (point-at-eol)))))
 
-- 
2.14.2

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

             reply	other threads:[~2017-10-07 14:45 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-07 14:45 Marco Wahl [this message]
2017-10-07 15:14 ` [RFC] org-agenda: Jump directly to line in case of a timestamp Nicolas Goaziou
2017-10-07 16:05   ` Marco Wahl
2017-10-08  3:23     ` Matt Lundin
2017-10-08  6:25       ` Marco Wahl
2017-10-09  6:54       ` Alan Schmitt
2017-10-09  8:19         ` Eric S Fraga
2017-10-09  8:29           ` Alan Schmitt
2017-10-11 11:01             ` Detlef Steuer
2017-10-11 11:42               ` Marco Wahl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=84y3onggp3.fsf@gmail.com \
    --to=marcowahlsoft@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).