emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
To: Carsten Dominik <dominik@uva.nl>
Cc: org-mode list <emacs-orgmode@gnu.org>, Alain.Cochard@unistra.fr
Subject: Re: Alternatives to inlinetasks? [was: Problems created by inlinetasks in agenda views]
Date: Mon, 23 Apr 2018 23:08:50 +0200	[thread overview]
Message-ID: <871sf5pr4t.fsf@nicolasgoaziou.fr> (raw)
In-Reply-To: <CADn3Z2Lcp1qvKeT0zTCwT=08MpWQ0LZ2wx-dXGwePKnjL3zztg@mail.gmail.com> (Carsten Dominik's message of "Mon, 23 Apr 2018 18:03:15 +0200")

Hello,

Carsten Dominik <dominik@uva.nl> writes:

> I would be interested to discuss a better solution.  It would be nice is
> list items could be TODO's, but I though long and har about this back when,
> and over allo those years, I could not think of anything that could be
> implemented with reasonable effort.

I think we have to make inline tasks more limited, yet still useful.

One major technical drawback stems from the fact that they allow
contents.


  *************** Foo
  ...
  *************** END

It means that they allow, e.g., properties (it hurts inheritance), or
clocks that do not belong to the containing headline but to the inline
task itself... It would be a major pain if we had to handle this
seriously, as a core feature.

Now, if we allow them to have no contents, it becomes much more
manageable. It means we can still have TODO, tags, priority, but no
clock, no properties, no log...

It would also mean we would disallow SCHEDULED and DEADLINE keywords,
but we can make an exception for those, and allow a planning line right
after an inline task.

So, basically, there would be two forms of inline tasks:

  *************** Foo

and

  *************** Foo
  SCHEDULED: <...> DEADLINE: <...>

With this simplification, we could manage them, probably without too
much hassle.

If you want to associate the task some contents, you can attach, e.g.,
some drawer below. It is not part of the inline task syntax, yet it
could work well in practice:


  *************** TODO Foo
  :task:
  This is because the...
  :end:

However, there is another important drawback: they look like headlines.
That breaks a fundamental assumption in Org: any line that doesn't start
with an asterisk (I'm oversimplifying here) "belongs" to the first line
starting with one above. This is simply not true with inline task, so we
use the `org-with-limited-levels'. It kind of works, except in parts of
Org that forgot to use it (lots of fun ahead).

We could go further and get away from the starred syntax and the column
0. E.g.,

  !! TODO Foo     :bar:baz:

The advantage is that they would integrate better with the rest of the
document:

  - Grocery list
    - Apples
    - Bread
      !! REMINDER ...

However, it would be a /lot/ more work to implement the feature shared
with regular headlines (TODO switching, tags inheritance)... but, at
least, they would look better.

Regards,

-- 
Nicolas Goaziou

  reply	other threads:[~2018-04-23 21:09 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-13 14:24 Problems created by inlinetasks in agenda views Alain.Cochard
2018-04-16 12:08 ` Nicolas Goaziou
2018-04-16 14:01   ` Eric S Fraga
2018-04-16 16:39     ` Nicolas Goaziou
2018-04-16 17:01       ` Eric S Fraga
2018-04-16 17:25     ` Berry, Charles
2018-04-16 17:33       ` Nicolas Goaziou
2018-04-23 13:50   ` Alternatives to inlinetasks? [was: Problems created by inlinetasks in agenda views] Alain.Cochard
2018-04-23 14:21     ` Eric S Fraga
2018-04-23 16:03       ` Carsten Dominik
2018-04-23 21:08         ` Nicolas Goaziou [this message]
2018-04-23 21:31           ` Eric Abrahamsen
2018-04-24 11:47             ` Kaushal Modi
2018-04-24 16:01               ` Eric Abrahamsen
2018-04-24 20:22               ` Rasmus
2018-04-25  5:43           ` Carsten Dominik
2018-04-26 23:34             ` Bastien
2018-04-27  7:27               ` Eric S Fraga
2018-04-27  7:46                 ` Bastien
2018-04-27  7:57                   ` Eric S Fraga

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=871sf5pr4t.fsf@nicolasgoaziou.fr \
    --to=mail@nicolasgoaziou.fr \
    --cc=Alain.Cochard@unistra.fr \
    --cc=dominik@uva.nl \
    --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).