emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: John Hendy <jw.hendy@gmail.com>
To: R.M.Krug@gmail.com
Cc: emacs-orgmode@gnu.org, Christian Egli <christian.egli@sbs.ch>
Subject: Re: taskjuggler (tj3) export issues and proposals
Date: Wed, 1 Feb 2012 09:20:59 -0600	[thread overview]
Message-ID: <CA+M2ft8kNFF_WczqwsgqXjmfCtt0G=dioQZuPbXo32a2jgNSRQ@mail.gmail.com> (raw)
In-Reply-To: <4F2949A9.50107@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 7132 bytes --]

On Wed, Feb 1, 2012 at 8:18 AM, Rainer M Krug <r.m.krug@gmail.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 01/02/12 15:09, Christian Egli wrote:
>> Hi John
>>
>> John Hendy <jw.hendy@gmail.com> writes:
>>

[...]

>>
>> First off let me say that I'm using the taskjuggler exporter with
>> tj3, so it should work.
>
> This is good news. As I am planning of using it only for basic stuff,
> it should work for me as well.
>
> But I am not clear about
>
> 1) how your .org file looks

I copied the second big code block example from the worg tutorial
(http://orgmode.org/worg/org-tutorials/org-taskjuggler.html) into a
new org file. I used the part immediately following the phrase:
"Your resulting Org mode project file will look somewhat like the following:"

> 2) your reports.tji looks

I attached one based on the taskjuggler tutorial but simplified and
with the header tweaked to match the four main sections of the
project.

> 3) what I have to set in emacs / org variables to use tj3.
--- in .emacs: =(setq org-export-taskjuggler-target-version 3.1)=
--- I attached a screenshot of my settings for
org-export-taskjuggler-default-reports at present (tested it in a
session just now and will change to a permanent setting in .emacs of
=(setq org-export-taskjuggler-default-reports "include
\"reports.tji\"")=.

>
> Would it be possible to post a small basic example so that one has
> something to start working with? I still feel lost.

Let me know if the above suffices!


John

>
> Thanks,
>
> Rainer
>
>>
>> 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
>>
>
>
> - --
> Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation
> Biology, UCT), Dipl. Phys. (Germany)
>
> Centre of Excellence for Invasion Biology
> Stellenbosch University
> South Africa
>
> Tel :       +33 - (0)9 53 10 27 44
> Cell:       +33 - (0)6 85 62 59 98
> Fax :       +33 - (0)9 58 10 27 44
>
> Fax (D):    +49 - (0)3 21 21 25 22 44
>
> email:      Rainer@krugs.de
>
> Skype:      RMkrug
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.11 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iEYEARECAAYFAk8pSakACgkQoYgNqgF2egpptQCePpJ0bP6Nqv0wgzpIm/9xNGyt
> T5EAnjchi9BfToXZG5FO9zQU3n4B/OfM
> =g9iW
> -----END PGP SIGNATURE-----
>

[-- Attachment #2: 2012-02-01_091731.png --]
[-- Type: image/png, Size: 49532 bytes --]

[-- Attachment #3: reports.tji --]
[-- Type: application/octet-stream, Size: 1156 bytes --]

### begin report definition
macro TaskTip [
  tooltip istask() -8<-
    '''Start: ''' <-query attribute='start'->
    '''End: ''' <-query attribute='end'->
    ----
    '''Resources:'''

    <-query attribute='resources'->
    ----
    '''Precursors: '''

    <-query attribute='precursors'->
    ----
    '''Followers: '''

    <-query attribute='followers'->
    ->8-
]

navigator navbar {
  hidereport 0
}

textreport frame "" {
  header -8<-
    == Project Title ==
    <[navigator id="navbar"]>
  ->8-
  footer "----"
 
 textreport index "Overview" {
    formats html
    center '<[report id="overview"]>'
  }

}



taskreport overview "" {
  header -8<-
    === Project Overview ===

    Project Areas

    * Specification
    * Software Specification
    * Software Testing
    * Manual

    === Timeline ===
  ->8-
  columns bsi { title 'WBS' },
          name, start, end, duration, status, chart { ${TaskTip} }
  # For this report we like to have the abbreviated weekday in front
  # of the date. %a is the tag for this.
  timeformat "%Y-%m-%d"
  loadunit days
  hideresource 1
  sorttasks tree
  #caption 'All effort values are in man days.'

}

  reply	other threads:[~2012-02-01 15:21 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
2012-02-01 14:18   ` Rainer M Krug
2012-02-01 15:20     ` John Hendy [this message]
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='CA+M2ft8kNFF_WczqwsgqXjmfCtt0G=dioQZuPbXo32a2jgNSRQ@mail.gmail.com' \
    --to=jw.hendy@gmail.com \
    --cc=R.M.Krug@gmail.com \
    --cc=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).