emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Christian Egli <christian.egli@sbs.ch>
To: emacs-orgmode@gnu.org
Subject: Re: taskjuggler (tj3) export issues and proposals
Date: Wed, 01 Feb 2012 15:09:21 +0100	[thread overview]
Message-ID: <871uqesl0u.fsf@sbs.ch> (raw)
In-Reply-To: <CA+M2ft-VrzSxSDdUxp1RunjPcdGD7Se6hrdxwwZ0eE7i-DneGQ@mail.gmail.com>

Hi John

John Hendy <jw.hendy@gmail.com> writes:

> Leading my first project and decided to dig into taskjuggler again. It
> just seems so natural to have everything in org if possible, so I took
> another look at the exporter, manual, and worg tutorial. [1][2]

Cool.

> As is, as far as I can tell, the exporter does not work out of the box
> with tj3. I /think/ I could get it to work if I added in a massive
> report definition (which now seems mandatory for tj3) under
> =org-export-taskjuggler-default-reports=, but that just feels clumsy.

First off let me say that I'm using the taskjuggler exporter with tj3,
so it should work.

As far as I know setting the org-export-taskjuggler-default-reports
should work. As I agree that this is a bit clumsy and sets the reports
for all projects. I'm setting the variable in a file variable like so
(the compile-command is optional but you need to adapt it to match the
location of your tj3 binary and your file name):

# Local Variables:
# org-export-taskjuggler-target-version: 3.0
# org-export-taskjuggler-default-reports: ("include \"reports.tji\"")
# compile-command: "~/.gem/ruby/1.9.1/bin/tj3 yourfilename.tjp"
# End:

Then I define the reports in a separate file which is included similar
to the solution you outline below.

I guess I should have some default report definitions for tj3 in the
exporter itself. The tj3 reports are quite massive and it is hard to
come by some which could be included in the Emacs source (you need
copyright assignments). Maybe the ones I have in my reports.tji could
qualify.

> For one, not every project will have the same report. Secondly, it
> seems odd to tweak report definitions through my .emacs file? 

Yes I agree, see above.

> Based on my fiddling tonight, here are some suggestions/inquiries:
>
> 1) Could there be something equivalent to #+latex/#+begin_latex that
> would let me export some literal taskjuggler syntax into a file?
> Perhaps throw everything between a #+begin/end_taskjuggler just before
> the closing "}" for the task?

I can see a use case for this with regards to reports. But what is the
use case if you'd place this inside tasks? The problem with literal
sections of taskjuggler is where to place them. Something might me
related to the project header, other stuff to the reports, etc.

> 2) Could a different naming convention be used? It seems the currently
> it's either what is defined by the property :task_id: or defaults to
> the first word of the headline. If the default were more likely to be
> unique, it would spare having to define a ton of =task_id= properties;
> instead one could define dependencies based on headline names because
> the syntax for naming was known and not likely to clash with another
> headline's ID.
> --- First word of the parent headline + "_" + first word of actual headline?
> --- Bump it to the first two words of each headline?

The exporter just makes the task_id locally unique. That's what tj
expects. From your usage I guess that you have a lot of tasks with the
same name (probably within different hierarchies). Both methods you
outline could be implemented. Which one is more general?

> 3) As a piggyback on #1, I am successful with the following process:
> -- create reports.tji with my report definitions
> -- org-export-taskjuggler-default-reports set to nothing
> -- export from orgmode
> -- edit exported-file.tjp and add: include "reports.tji" to the end
> -- run =tj3 filename.tjp=

Could you not set org-export-taskjuggler-default-reports to "include
\"reports.tji\""? Otherwise you can use file variables as I outlined
above.

> Simply allowing the addition of =include "reports.tji"= or even
> mandating that it exists would allow the use of tj3 with the current
> exporter.
>
> I don't know lisp and feel a bit guilty making potentially code-heavy
> suggestions about this... That said, I'm happy to pitch in with the
> manual/worg since they're a but outdated anyway. 

I'm happy to take you up on this offer. The worg page is a lot of work,
as it has all these screen shots. I'd be happy if you could update it
once you get all of this working.

> I don't see an obvious place where one can even download tj 2.x.x
> anymore. 

I have it installed on an old machine.

> The tj team seems to have left that version behind; perhaps
> the org exporter should to? 

I still prefer the old reports. But I guess yes, the exporter should
move on and support tj3 out of the box. The two main problems are

1. default reports with copyright assignments. As I include this in the
   Emacs source we need to have assignments. I can't just take the ones
   from the tj3 manual (I'd have to ask the author first).

2. A way to invoke the view (as seamless as before). For tj 2.4 I was
   able to just invoke the taskjuggler gui with the exported tjp file.
   For tj3 the exporter needs to somehow find out which reports are
   generated (HTML, text, csv) and then invoke the appropriate viewer.
   This might be simplified I take some assumptions, but I haven't come
   up with a clever way to do this.

Thanks
Christian

-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland

  reply	other threads:[~2012-02-01 14:09 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-01  4:59 John Hendy
2012-02-01 14:09 ` Christian Egli [this message]
2012-02-01 14:18   ` Rainer M Krug
2012-02-01 15:20     ` John Hendy
2012-02-01 15:54     ` Christian Egli
2012-02-01 17:47       ` John Hendy
2012-02-02  7:10         ` Christian Egli
2012-02-02 15:49           ` John Hendy
2012-02-02 16:08             ` OT: taskjuggler question [was: Re: taskjuggler (tj3) export issues and proposals] Nick Dokos
2012-02-02 16:22               ` John Hendy
2012-02-02 16:24               ` OT: taskjuggler question Christian Egli
2012-02-02 17:13                 ` Nick Dokos
2012-02-01 18:36       ` taskjuggler (tj3) export issues and proposals Rainer M Krug
2012-02-01 15:07   ` John Hendy
2012-02-02  8:23     ` Christian Egli
2012-05-07  4:26 ` Eric S Fraga
2012-05-08  8:16   ` Bastien
2012-05-08  9:14     ` Eric Fraga
2012-05-08 14:36   ` John Hendy

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=871uqesl0u.fsf@sbs.ch \
    --to=christian.egli@sbs.ch \
    --cc=emacs-orgmode@gnu.org \
    --subject='Re: taskjuggler (tj3) export issues and proposals' \
    /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

Code repositories for project(s) associated with this 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).