emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* agenda: personal priority for today
@ 2013-04-10 12:35 Michael Heinrich
  2013-04-10 19:21 ` John Wiegley
                   ` (2 more replies)
  0 siblings, 3 replies; 19+ messages in thread
From: Michael Heinrich @ 2013-04-10 12:35 UTC (permalink / raw)
  To: emacs-orgmode

Hi everyone,

I came from planner-mode and use kind of GTD also in org-mode.  One
thing I still miss in org-mode is the flexibility of moving tasks up and
down on the today page.

Typically I schedule the next actions for today which I want to do today
so that they appear in my agenda buffer.   The agenda buffer for today
is my working buffer (like the today page in planner-mode).  There I
want something like in planner mode where I can move tasks up and down
for creating an order of these tasks for today regardless of the real
priority of a task.  I need something like a second priority (perhaps as
a PROPERTY) with a sorting function only valid in the agenda buffer.

Does anybody have that already in his drawer or othe ideas?

Thanks and regards,
Michael.

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-10 12:35 agenda: personal priority for today Michael Heinrich
@ 2013-04-10 19:21 ` John Wiegley
  2013-04-10 22:58   ` Bastien
  2013-04-10 19:50 ` Samuel Wales
  2013-04-11 12:16 ` Michael Brand
  2 siblings, 1 reply; 19+ messages in thread
From: John Wiegley @ 2013-04-10 19:21 UTC (permalink / raw)
  To: emacs-orgmode

>>>>> Michael Heinrich <michael@haas-heinrich.de> writes:

> I came from planner-mode and use kind of GTD also in org-mode.  One
> thing I still miss in org-mode is the flexibility of moving tasks up and
> down on the today page.

Hi Michael, planner author here and now org-mode user too. :)

You'll have to change the positions of the items within the Org file itself.
It would be great if there was a single key to do this and then very quickly
update the agenda view.

John

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-10 12:35 agenda: personal priority for today Michael Heinrich
  2013-04-10 19:21 ` John Wiegley
@ 2013-04-10 19:50 ` Samuel Wales
  2013-04-11 12:16 ` Michael Brand
  2 siblings, 0 replies; 19+ messages in thread
From: Samuel Wales @ 2013-04-10 19:50 UTC (permalink / raw)
  To: Michael Heinrich; +Cc: emacs-orgmode

Yes, it is possible.

I use priorities locally.  That is, they sort in the outline and do
not have global semantics.  Therefore, they have no meaning in the
agenda.  Perhaps someday I will figure out how to remove the cookies
from the agenda.

You can do the opposite from me, using priorities only in the agenda,
but it sounds like you want both.  Not a bad idea.

There are two concepts:

  1] global priorities
  2] per-agenda-view priorities

I am not sure which you are referring to.  1] can be done using a
property and user-defined sorting in the agenda.  It can also be done
using a tag [aa bb cc].

2] would require storing the view type.

Samuel

-- 
The Kafka Pandemic: http://thekafkapandemic.blogspot.com

The disease DOES progress.  MANY people have died from it.  ANYBODY
can get it.  There is NO hope without action.  This means YOU.

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-10 19:21 ` John Wiegley
@ 2013-04-10 22:58   ` Bastien
  2013-04-10 23:17     ` Christopher Allan Webber
  0 siblings, 1 reply; 19+ messages in thread
From: Bastien @ 2013-04-10 22:58 UTC (permalink / raw)
  To: John Wiegley; +Cc: emacs-orgmode

"John Wiegley" <johnw@newartisans.com> writes:

> You'll have to change the positions of the items within the Org file itself.
> It would be great if there was a single key to do this and then very quickly
> update the agenda view.

This is tempting in imagination but I think the real implementation
would be limited and a bit fragile.

Limited because you would have to restrict moving around agenda
entries to Org entries of the same level, and a bit fragile because
you'll have to 100% that (folded) entries are not corrupted when moved
around, e.g. from one org agenda file to another.

So, better to play with something non-interactive and have a property
for sorting in the agenda only.

-- 
 Bastien

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-10 22:58   ` Bastien
@ 2013-04-10 23:17     ` Christopher Allan Webber
  2013-04-10 23:32       ` Bastien
  0 siblings, 1 reply; 19+ messages in thread
From: Christopher Allan Webber @ 2013-04-10 23:17 UTC (permalink / raw)
  To: Bastien; +Cc: emacs-orgmode

Bastien writes:

> "John Wiegley" <johnw@newartisans.com> writes:
>
>> You'll have to change the positions of the items within the Org file itself.
>> It would be great if there was a single key to do this and then very quickly
>> update the agenda view.
>
> This is tempting in imagination but I think the real implementation
> would be limited and a bit fragile.
>
> Limited because you would have to restrict moving around agenda
> entries to Org entries of the same level, and a bit fragile because
> you'll have to 100% that (folded) entries are not corrupted when moved
> around, e.g. from one org agenda file to another.
>
> So, better to play with something non-interactive and have a property
> for sorting in the agenda only.

I wonder if we had a property that was basically sorting on very large
numbers?  When you add something to the agenda and there aren't any
sorted items, it creates a property with some median-ish very large
number.  As you move things up and down on the agenda it sorts in random
ranges between the chunks of huge number space per item.  This would be
a goofy but workable solution?

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-10 23:17     ` Christopher Allan Webber
@ 2013-04-10 23:32       ` Bastien
  2013-04-11  6:27         ` Daniel Bausch
  2013-04-16 15:58         ` Christopher Allan Webber
  0 siblings, 2 replies; 19+ messages in thread
From: Bastien @ 2013-04-10 23:32 UTC (permalink / raw)
  To: Christopher Allan Webber; +Cc: emacs-orgmode

Hi Christopher,

Christopher Allan Webber <cwebber@dustycloud.org> writes:

> I wonder if we had a property that was basically sorting on very large
> numbers?  When you add something to the agenda and there aren't any
> sorted items, it creates a property with some median-ish very large
> number.  As you move things up and down on the agenda it sorts in random
> ranges between the chunks of huge number space per item.  This would be
> a goofy but workable solution?

I don't know -- it's hard to make sure we speak about the same things
when brainstorming like this.  Where would you store the property you
are talking to (for example)?  Sorry for the non-romantic question :)

-- 
 Bastien

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-10 23:32       ` Bastien
@ 2013-04-11  6:27         ` Daniel Bausch
  2013-04-11  7:04           ` Bastien
  2013-04-16 15:58         ` Christopher Allan Webber
  1 sibling, 1 reply; 19+ messages in thread
From: Daniel Bausch @ 2013-04-11  6:27 UTC (permalink / raw)
  To: Bastien; +Cc: emacs-orgmode

Hi,

Am 11.04.2013 01:32, schrieb Bastien:
> Hi Christopher,
> 
> Christopher Allan Webber <cwebber@dustycloud.org> writes:
> 
>> I wonder if we had a property that was basically sorting on very large
>> numbers?  When you add something to the agenda and there aren't any
>> sorted items, it creates a property with some median-ish very large
>> number.  As you move things up and down on the agenda it sorts in random
>> ranges between the chunks of huge number space per item.  This would be
>> a goofy but workable solution?
> 
> I don't know -- it's hard to make sure we speak about the same things
> when brainstorming like this.  Where would you store the property you
> are talking to (for example)?  Sorry for the non-romantic question :)
> 

I have got another idea: all we need for sorting (from a technical POV)
is a partial order.  Why not store exactly that as a property?  Assume
every TODO entry has an ID (if it has none and it is required to store
the order, just create one automatically).  Then if an entry on the
agenda is reordered, store in a property (e.g. AGENDA_BEFORE), the IDs
of the items that should be sorted after the moved item.  To keep things
minimal, maybe store only those IDs, which are absolutely required to
enforce the desired position.  But for an easy and effective
implementation, it is also feasible to store all IDs of the currently
visible items that should sort after the moved item.  Maybe the IDs need
to be prefixed with a filename or better a file ID so it works on
different machines with different directory layout.  Otherwise the IDs
would need to be globally unique (which is not bad by its own, when
items may move between files.)

Regards,
Daniel Bausch

-- 
Daniel Bausch
Wissenschaftlicher Mitarbeiter
Technische Universität Darmstadt
Fachbereich Informatik
Fachgebiet Datenbanken und Verteilte Systeme

Hochschulstraße 10
64289 Darmstadt
Germany

Tel.: +49 6151 16 6706
Fax:  +49 6151 16 6229

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-11  6:27         ` Daniel Bausch
@ 2013-04-11  7:04           ` Bastien
  2013-04-11  7:34             ` Daniel Bausch
  0 siblings, 1 reply; 19+ messages in thread
From: Bastien @ 2013-04-11  7:04 UTC (permalink / raw)
  To: Daniel Bausch; +Cc: emacs-orgmode

Hi Daniel,

Daniel Bausch <bausch@dvs.tu-darmstadt.de> writes:

> I have got another idea: all we need for sorting (from a technical POV)
> is a partial order.  Why not store exactly that as a property?  Assume
> every TODO entry has an ID (if it has none and it is required to store
> the order, just create one automatically).  Then if an entry on the
> agenda is reordered, store in a property (e.g. AGENDA_BEFORE), the IDs
> of the items that should be sorted after the moved item.  To keep things
> minimal, maybe store only those IDs, which are absolutely required to
> enforce the desired position.  But for an easy and effective
> implementation, it is also feasible to store all IDs of the currently
> visible items that should sort after the moved item.  Maybe the IDs need
> to be prefixed with a filename or better a file ID so it works on
> different machines with different directory layout.  Otherwise the IDs
> would need to be globally unique (which is not bad by its own, when
> items may move between files.)

Yes, I see the idea.  But one Org headline can be part of several
agendas, so an AGENDA_BEFORE property will not work globally.

I think we should start thinking from the existing functionalities
we have with `org-agenda-sorting-strategy', which is already quite
rich (30 strategies!) and flexible.

But I cannot think of something that would match the OP request
at the moment.

-- 
 Bastien

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-11  7:04           ` Bastien
@ 2013-04-11  7:34             ` Daniel Bausch
  2013-04-11  8:37               ` Bastien
  0 siblings, 1 reply; 19+ messages in thread
From: Daniel Bausch @ 2013-04-11  7:34 UTC (permalink / raw)
  To: Bastien; +Cc: emacs-orgmode

Hi Bastien,

Am 11.04.2013 09:04, schrieb Bastien:
> Hi Daniel,
> 
> Daniel Bausch <bausch@dvs.tu-darmstadt.de> writes:
> 
>> I have got another idea: all we need for sorting (from a technical POV)
>> is a partial order.  Why not store exactly that as a property?  Assume
>> every TODO entry has an ID (if it has none and it is required to store
>> the order, just create one automatically).  Then if an entry on the
>> agenda is reordered, store in a property (e.g. AGENDA_BEFORE), the IDs
>> of the items that should be sorted after the moved item.  To keep things
>> minimal, maybe store only those IDs, which are absolutely required to
>> enforce the desired position.  But for an easy and effective
>> implementation, it is also feasible to store all IDs of the currently
>> visible items that should sort after the moved item.  Maybe the IDs need
>> to be prefixed with a filename or better a file ID so it works on
>> different machines with different directory layout.  Otherwise the IDs
>> would need to be globally unique (which is not bad by its own, when
>> items may move between files.)
> 
> Yes, I see the idea.  But one Org headline can be part of several
> agendas, so an AGENDA_BEFORE property will not work globally.

Just do not touch the IDs of items not currently visible or add the name
of the agenda to which this applies and have an AGENDA_BEFORE per agenda.

> I think we should start thinking from the existing functionalities
> we have with `org-agenda-sorting-strategy', which is already quite
> rich (30 strategies!) and flexible.
> 
> But I cannot think of something that would match the OP request
> at the moment.

Then maybe a 31st is required ;-)

I already use some of those 30 strategies, but am also not 100%
satisfied with the result.  Global priorities are somewhat hard to
define.  It is mentally easier to just say, hey this is more important
than that.  The sequence in the Org file can reflect the order of
insertion or the typical order of processing within a tree of projects.
 But when steps from different projects mix within one daily agenda, it
is not always possible to prioritize project A over project B.
Repeatedly exchanging project A and project B in the file is cumbersome
and if there are two projects from different files, one would need to
adjust the org-agenda-files variable.

I often have more TODOs on the daily agenda, than I will be able to
resolve on that day.  Deciding on the next most important one everytime
when switching the task makes me tired.  Doing things in a random order
feels dangerous.

How do you decide what to do next?

Regards,
Daniel Bausch

-- 
Daniel Bausch
Wissenschaftlicher Mitarbeiter
Technische Universität Darmstadt
Fachbereich Informatik
Fachgebiet Datenbanken und Verteilte Systeme

Hochschulstraße 10
64289 Darmstadt
Germany

Tel.: +49 6151 16 6706
Fax:  +49 6151 16 6229

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-11  7:34             ` Daniel Bausch
@ 2013-04-11  8:37               ` Bastien
  2013-04-11  8:40                 ` Bastien
  2013-04-11  9:27                 ` Daniel Bausch
  0 siblings, 2 replies; 19+ messages in thread
From: Bastien @ 2013-04-11  8:37 UTC (permalink / raw)
  To: Daniel Bausch; +Cc: emacs-orgmode

Hi Daniel,

Daniel Bausch <bausch@dvs.tu-darmstadt.de> writes:

> Just do not touch the IDs of items not currently visible or add the name
> of the agenda to which this applies and have an AGENDA_BEFORE per agenda.

Mhh... looks like overengineering to me.

>> I think we should start thinking from the existing functionalities
>> we have with `org-agenda-sorting-strategy', which is already quite
>> rich (30 strategies!) and flexible.
>> 
>> But I cannot think of something that would match the OP request
>> at the moment.
>
> Then maybe a 31st is required ;-)
>
> I already use some of those 30 strategies, but am also not 100%
> satisfied with the result.  Global priorities are somewhat hard to
> define.  It is mentally easier to just say, hey this is more important
> than that.  The sequence in the Org file can reflect the order of
> insertion or the typical order of processing within a tree of projects.
>  But when steps from different projects mix within one daily agenda, it
> is not always possible to prioritize project A over project B.
> Repeatedly exchanging project A and project B in the file is cumbersome
> and if there are two projects from different files, one would need to
> adjust the org-agenda-files variable.
>
> I often have more TODOs on the daily agenda, than I will be able to
> resolve on that day.  Deciding on the next most important one everytime
> when switching the task makes me tired.  Doing things in a random order
> feels dangerous.
>
> How do you decide what to do next?

I bind `=' to a custom agenda command that will find out what to do
next depending on the Emacs context.

For example, when reading emails, C-c a = will find next emails to
process; when in *.el C-c a = will find next Emacs/Org bugs to deal
with; when in my big garden.org file, C-c a = will find the next
useless stuff I want to watch/read. 

(See `org-agenda-custom-commands-contexts' if you don't use it yet.)

I don't use clocking that much, but I do set efforts nonetheless,
because I like using `org-agenda-max-effort' in agenda views: this
way I'm sure the agenda is not cluttered with tasks I didn't care
enough about to set an effort for them.

And above all, I try to discipline myself not setting to many
"NEXT" tasks.  First my notion of "NEXT" was "Yeah, I can do this
quickly!", now it is more like "This *needs* to be done next",
obviously a small set.

So as you see, I don't need too much fancy sorting in the agenda
because I try to keep my agenda very short.  The need for fancy
sorting tells that agendas are too big, and sorting will only
help, not solve this problem.

2 cents of course,

-- 
 Bastien

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-11  8:37               ` Bastien
@ 2013-04-11  8:40                 ` Bastien
  2013-04-11  9:27                 ` Daniel Bausch
  1 sibling, 0 replies; 19+ messages in thread
From: Bastien @ 2013-04-11  8:40 UTC (permalink / raw)
  To: Daniel Bausch; +Cc: emacs-orgmode

Bastien <bzg@gnu.org> writes:

> For example, when reading emails, C-c a = will find next emails to
> process

PS: I use Gnus and the lovely "dormant" mark '?' so that I can get
the impression I don't have many emails.  Of course, many dormant
emails (or blog-entries from gwene.org) are bound to a task.

-- 
 Bastien

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-11  8:37               ` Bastien
  2013-04-11  8:40                 ` Bastien
@ 2013-04-11  9:27                 ` Daniel Bausch
  1 sibling, 0 replies; 19+ messages in thread
From: Daniel Bausch @ 2013-04-11  9:27 UTC (permalink / raw)
  To: Bastien; +Cc: emacs-orgmode

Hi,

Bastien writes:

>> How do you decide what to do next?
> 
> I bind `=' to a custom agenda command that will find out what to do
> next depending on the Emacs context.
> 
> For example, when reading emails, C-c a = will find next emails to
> process; when in *.el C-c a = will find next Emacs/Org bugs to deal
> with; when in my big garden.org file, C-c a = will find the next
> useless stuff I want to watch/read. 
> 
> (See `org-agenda-custom-commands-contexts' if you don't use it yet.)
> 
> I don't use clocking that much, but I do set efforts nonetheless,
> because I like using `org-agenda-max-effort' in agenda views: this
> way I'm sure the agenda is not cluttered with tasks I didn't care
> enough about to set an effort for them.

That sounds interesting.

> And above all, I try to discipline myself not setting to many
> "NEXT" tasks.  First my notion of "NEXT" was "Yeah, I can do this
> quickly!", now it is more like "This *needs* to be done next",
> obviously a small set.

I currently use the following agenda, which I have always visible on a
second monitor together with my single org file in a split view.

(setq org-agenda-custom-commands '(("g" "My GTD Agenda"
((agenda ""
  ((org-agenda-ndays 1)
   (org-agenda-start-on-weekday nil)
   (org-agenda-entry-types '(:timestamp :sexp))
   (org-agenda-overriding-header "Appointments")))
 (agenda ""
  ((org-agenda-ndays 1)
   (org-agenda-start-on-weekday nil)
   (org-agenda-entry-types '(:deadline))
   (org-agenda-overriding-header "Upcoming Deadlines")
   (org-agenda-sorting-strategy '(priority-down time-down))
   (org-agenda-skip-function '(org-agenda-skip-entry-if 'todo 'done))))
 (agenda ""
  ((org-agenda-ndays 1)
   (org-agenda-start-on-weekday nil)
   (org-agenda-entry-types '(:scheduled))
   (org-agenda-overriding-header "Scheduled")
   (org-agenda-sorting-strategy '(priority-down time-down))
   (org-agenda-skip-function '(org-agenda-skip-entry-if 'todo 'done))))
 (todo "WAIT"
  ((org-agenda-sorting-strategy '(priority-down))
   (org-agenda-overriding-header "Waiting For")))
 (todo "NEXT"
  ((org-agenda-sorting-strategy '(priority-down effort-down))
   (org-agenda-skip-function '(org-agenda-skip-entry-if 'scheduled
                                                        'deadline))
   (org-agenda-overriding-header
    "Next actions not being scheduled nor having a deadline")))
 (todo "TODO"
  ((org-agenda-sorting-strategy '(priority-down effort-down))
   (org-agenda-skip-function '(org-agenda-skip-entry-if 'scheduled
                                                        'deadline))
   (org-agenda-overriding-header
    "Future actions not being scheduled nor having a deadline")))
 (todo "PROJ" ((org-agenda-overriding-header "Active Projects")))))))

Everything that consists of two or more sub-tasks is marked as a project
(PROJ) until it is DONE.  A NEXT action is an action that could be done
immediately, i.e. there are no other actions that need to be done for
being able to do that.  In GTD speech a loose end.  If a task is just
marked with TODO, then there is one or more task that needs to be done,
before I will be able to do it.  So I end up with a lot of open NEXT and
TODO tasks.  To select some to be done on a specific day (e.g. today) I
use scheduling and deadlines.  Sometimes I use efforts, but clocking I
use consequently.  Project review is supported by using
'(org-enforce-todo-dependencies t).  So projects with no defined next
action are colored differently.  Sometimes I go through my big list of
open tasks and close some which I am not going to do anymore by setting
them to a special done state CNCL.

Even if I have only six tasks on my scheduled list for today, knowing
that I will not be able to finish all of them really today, I see me
constantly judging one against the others trying to find the most
important.  This eats mental resources, that would be better used doing
one of them, but doing simply a random task, keeps me reconsidering,
what also eats up mental resources.  Has anyone an idea how to escape
from that mental state of constant reconsidering?

Daniel

-- 
Daniel Bausch
Wissenschaftlicher Mitarbeiter
Technische Universität Darmstadt
Fachbereich Informatik
Fachgebiet Datenbanken und Verteilte Systeme

Hochschulstraße 10
64289 Darmstadt
Germany

Tel.: +49 6151 16 6706
Fax:  +49 6151 16 6229

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-10 12:35 agenda: personal priority for today Michael Heinrich
  2013-04-10 19:21 ` John Wiegley
  2013-04-10 19:50 ` Samuel Wales
@ 2013-04-11 12:16 ` Michael Brand
  2 siblings, 0 replies; 19+ messages in thread
From: Michael Brand @ 2013-04-11 12:16 UTC (permalink / raw)
  To: Michael Heinrich; +Cc: Org Mode

Hi Michael

On Wed, Apr 10, 2013 at 2:35 PM, Michael Heinrich
<michael@haas-heinrich.de> wrote:
> I came from planner-mode and use kind of GTD also in org-mode.  One
> thing I still miss in org-mode is the flexibility of moving tasks up and
> down on the today page.

Two years ago I wrote down my thoughts about using Org priorities [#A]
etc. for reordering tasks, please read here:
"manually move tasks in list of agenda tags-todo"
http://lists.gnu.org/archive/html/emacs-orgmode//2011-07/msg00003.html

In the meantime I abandon tags and use Org priorities [#A] less often
and only for a detail view within a subtree or within a file, together
with the very convenient agenda restriction (keys "<" for buffer and
"< <" for subtree) and together with _one single_ and very simple
custom agenda for all prioritized todo groups:

#+BEGIN_SRC emacs-lisp
  ("r" "todo with Org prio restricted to file/subtree (“tags-todo”)"
   ((tags-todo
     "PRIORITY>=\"A\""
     ((org-agenda-files nil)))))
#+END_SRC

On top of this and more important is a "focus" file focus.org (not
part of the org-agenda-files) for the big picture with all items
ordered by priority (in a common sense, not Org priority [#A] etc.):

,-------- focus.org (most important first):
; * TODO global task 2 [[item:lfYD9-3HDmH]]
; * TODO global task 1 [[item:MR3hG-xdQMy]]
; * project x [[item:KjgaR-ulAfi]]
;   * TODO project x task 2 [[item:CKdf1-lCbEF]]
;   * TODO project x task 1 [[item:g7Sda-X7HP5]]
; * TODO project y [[tree:qpuPE-vZE0F]]
; * TODO global task 3 [[item::piKci-VaB1A]]
;
; #+LINK: item id:
; #+LINK: tree id:
'--------

It contains only one-liners with a short description and a link to
items or subtrees for the details. Note the "tree:" link for project
y: In comparison to the the "item:" links it means that following the
link and restrict to subtree for my above custom agenda "r" shows the
details, ordered by Org priorities [#A] etc. The purpose of this is to
keep focus.org small and clear. One could of course also have e. g.
project y link to another focus file focus_project_y.org to show and
order the tasks within project y there. David Allen's GTD suggests 6
levels of focus: 50k feet, 40k feet etc. to ground level...

Such a focus.org lets one change ordering and grouping very fast
thanks to the power of Org structure editing.

The only other agenda view that I use now is of type "agenda" and
contains only items that can not be done before and/or after a given
date. Todos that can be done any time and that I already scheduled (in
a sense without date, not Org "SCHEDULED:") and prioritized I access
through focus.org.

Michael

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-10 23:32       ` Bastien
  2013-04-11  6:27         ` Daniel Bausch
@ 2013-04-16 15:58         ` Christopher Allan Webber
  2013-04-16 16:30           ` Bastien
  2013-04-17  8:44           ` Daniel Clemente
  1 sibling, 2 replies; 19+ messages in thread
From: Christopher Allan Webber @ 2013-04-16 15:58 UTC (permalink / raw)
  To: Bastien; +Cc: emacs-orgmode

Bastien writes:

> Hi Christopher,
>
> Christopher Allan Webber <cwebber@dustycloud.org> writes:
>
>> I wonder if we had a property that was basically sorting on very large
>> numbers?  When you add something to the agenda and there aren't any
>> sorted items, it creates a property with some median-ish very large
>> number.  As you move things up and down on the agenda it sorts in random
>> ranges between the chunks of huge number space per item.  This would be
>> a goofy but workable solution?
>
> I don't know -- it's hard to make sure we speak about the same things
> when brainstorming like this.  Where would you store the property you
> are talking to (for example)?  Sorry for the non-romantic question :)

Just store the property on the item itself, like:

#+BEGIN_SRC org
* My Tasklist

** TODO This task second
   :PROPERTIES:
   :Sorting:  5029662198291
   :END:

** TODO This task last
   :PROPERTIES:
   :Sorting:  4362296268052
   :END:

* Another tasklist

** TODO This task first
   :PROPERTIES:
   :Sorting:  6495792999082
   :END:
#+END_SRC

in theory, if you have numbers large enough, you should be able to
usually find something that's above or in-between to generate sorting
between things.

So if we wanted to move the last task to the second task, and we're on
our agenda and we see the following tasks:

sometask   Sched.4x:  TODO This task first
sometask   Sched.4x:  TODO This task second
sometask   Sched.4x:  TODO This task last

and we ask to move third up between second and first, it'll just pick a
new random number between that range, like:

random.randrange(5029662198291, 6495792999082)

so if we got 6417343542884 back, we would set that as the sorting
property for the task named "This task last" (which would then no longer
be last, it would be second! ;))

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-16 15:58         ` Christopher Allan Webber
@ 2013-04-16 16:30           ` Bastien
  2013-04-21 13:31             ` Christopher Allan Webber
  2013-04-17  8:44           ` Daniel Clemente
  1 sibling, 1 reply; 19+ messages in thread
From: Bastien @ 2013-04-16 16:30 UTC (permalink / raw)
  To: Christopher Allan Webber; +Cc: emacs-orgmode

Hi Christopher,

Christopher Allan Webber <cwebber@dustycloud.org> writes:

> Just store the property on the item itself

But this solution is task-based, not agenda-based.

The "Sorting" property you describe would be useful in one
agenda and not in one other -- so this does not really fit
for the OP use-case I guess.

-- 
 Bastien

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-16 15:58         ` Christopher Allan Webber
  2013-04-16 16:30           ` Bastien
@ 2013-04-17  8:44           ` Daniel Clemente
  2013-04-18 10:23             ` Bastien
  1 sibling, 1 reply; 19+ messages in thread
From: Daniel Clemente @ 2013-04-17  8:44 UTC (permalink / raw)
  To: Christopher Allan Webber; +Cc: Bastien, emacs-orgmode


> 
> ** TODO This task second
>    :PROPERTIES:
>    :Sorting:  5029662198291
>    :END:
> 

  As others said, this should be view-based, because the order in one agenda can be different to the order in other agenda.
  Each agenda view has some identifier (e.g. the letter you use to open it: "a", "<a", "t", …). You could use this to store different orders (one for each possible agenda view):

> ** TODO This task second
>    :PROPERTIES:
>    :Sorting:  a10_t80_c1_mm10
>    :END:

  Or a simpler solution:
  To me it would still be useful to be able to move things around in the agenda view, with M-up, M-down, even if the order is lost when I kill the agenda! That can help me decide a good task order which I can memorise or write down somewhere.

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-17  8:44           ` Daniel Clemente
@ 2013-04-18 10:23             ` Bastien
  2013-04-18 12:54               ` Daniel Clemente
  0 siblings, 1 reply; 19+ messages in thread
From: Bastien @ 2013-04-18 10:23 UTC (permalink / raw)
  To: Daniel Clemente; +Cc: emacs-orgmode

Hi Daniel,

You can now use M-<up> and M-<down> to move agenda lines around.
This is for quick use only.  It is not persistent and the agenda
will be reordered on next refresh.

-- 
 Bastien

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-18 10:23             ` Bastien
@ 2013-04-18 12:54               ` Daniel Clemente
  0 siblings, 0 replies; 19+ messages in thread
From: Daniel Clemente @ 2013-04-18 12:54 UTC (permalink / raw)
  To: emacs-orgmode


> 
> You can now use M-<up> and M-<down> to move agenda lines around.
> This is for quick use only.  It is not persistent and the agenda
> will be reordered on next refresh.
> 
  That's nice, thanks.

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: agenda: personal priority for today
  2013-04-16 16:30           ` Bastien
@ 2013-04-21 13:31             ` Christopher Allan Webber
  0 siblings, 0 replies; 19+ messages in thread
From: Christopher Allan Webber @ 2013-04-21 13:31 UTC (permalink / raw)
  To: Bastien; +Cc: emacs-orgmode

Bastien writes:

> Hi Christopher,
>
> Christopher Allan Webber <cwebber@dustycloud.org> writes:
>
>> Just store the property on the item itself
>
> But this solution is task-based, not agenda-based.
>
> The "Sorting" property you describe would be useful in one
> agenda and not in one other -- so this does not really fit
> for the OP use-case I guess.

That's true...
I gues it would still be useful for me on my main agenda ;)

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2013-04-21 13:31 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-04-10 12:35 agenda: personal priority for today Michael Heinrich
2013-04-10 19:21 ` John Wiegley
2013-04-10 22:58   ` Bastien
2013-04-10 23:17     ` Christopher Allan Webber
2013-04-10 23:32       ` Bastien
2013-04-11  6:27         ` Daniel Bausch
2013-04-11  7:04           ` Bastien
2013-04-11  7:34             ` Daniel Bausch
2013-04-11  8:37               ` Bastien
2013-04-11  8:40                 ` Bastien
2013-04-11  9:27                 ` Daniel Bausch
2013-04-16 15:58         ` Christopher Allan Webber
2013-04-16 16:30           ` Bastien
2013-04-21 13:31             ` Christopher Allan Webber
2013-04-17  8:44           ` Daniel Clemente
2013-04-18 10:23             ` Bastien
2013-04-18 12:54               ` Daniel Clemente
2013-04-10 19:50 ` Samuel Wales
2013-04-11 12:16 ` Michael Brand

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).