[Orgmode] Re: FLOSS Weekly show about Org-mode

2010-09-27 Thread Christian Egli
Bastien  writes:

> Jeff Horn  writes:
>
>> I wanted to mention how great it would be to have an org-mode
>> conference. 

> If many people support this idea, this is how we could do it:
>
> 1. list ideas of things we would do there

Meet and talk about org-mode :-)

> 2. find out what would be the best location/date

We could probably get a developer room at next years FOSDEM[1]. They
provide rooms where projects can organize their own schedule, made of
presentations, brainstorming and hacking sessions. You have to apply[2]
for such a developer room as they always receive more requests than
they can host.

Also of course Carsten would make for a good main track speaker[3].

> 3. figure out how much money does it requires

I don't know the details but I could imagine that this would not require
any money.

> 4. decide (or not) to go for it

Write the application and see if they'll give you a room :-). If there
is a room I'll come and do a presentation :-).

Thanks
Christian

Footnotes: 
[1]  http://www.fosdem.org/2011/
[2]  http://www.fosdem.org/2011/call_for_devrooms
[3]  http://www.fosdem.org/2011/call_for_main_speakers

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Orgmode meetup at FOSDEM, February 2011. Who would come?

2010-09-29 Thread Christian Egli
Carsten Dominik  writes:

> Please reply to this email if you'd consider to come to FOSDEM[1,2],
> February 5 and 6 next year in Brussels, in order to join an Org-mode
> meet-up there.

Thanks for getting this started.

> - [X] I would come and listen

I always like to go to FOSDEM and eat some Belgian waffles :-)

> - [X] I would come and give a talk in the devroom

Sure, I could talk about taskjuggler integration.

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: How do I convert org to OpenOffice?

2010-09-30 Thread Christian Egli
Matt Lundin  writes:

> Lennart Borgman  writes:
>
>> There is a way, isn't there? ;-)
>
> I've had great success with LaTeX2rtf (i..e, org->LaTeX->rtf). As long
> as you are not using too many exotic packages, it works like a charm.

It works fairly well with LaTeX2rtf. Cross references didn't work
though.

A colleague just showed me PyODConverter[1] which seems to be some kind
of command line remote control for OO.o. So what you do is to export org
to html and then use PyODConverter to convert html to doc. According to
him it works well.

HTH
Christian

Footnotes: 
[1]  http://www.artofsolving.com/opensource/pyodconverter
-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Orgmode meetup at FOSDEM, February 2011. Who would come?

2010-10-08 Thread Christian Egli
Richard Moreland  writes:

> On Mon, Oct 4, 2010 at 4:38 AM, Carsten Dominik
>  wrote:
>> Still we need someone who says "I will organize this".
>> Who will do that?
>
> If no one else volunteers, I will.

We are getting close to the deadline for the application for a dev room.
I will be on holiday and off-line for a week tomorrow, so I do not have
time to work on this next week. I would love for this to happen, so the
question is if I have to do this tonight (when the kids are in bed and I
should do the packing, my wife is going to love this :-)), next Saturday
or if I can rely on you to do this application.

Also when doing the application I would open up the dev room to Emacs
hackers in general, i.e. when mentioning the participating projects
simply add Gnu Emacs. I'm sure if we offer a venue there are some Emacs
hackers that are willing to come and participate. This will hopefully
increase our chances of getting a room.

So in essence I would change the application as follows:

* Devroom name

Org-mode and Emacs hackers

* Devroom description

** Topics

Org-mode is for keeping notes, maintaining ToDo lists, doing project
planning, and authoring with a fast and effective plain-text system.
Org-mode is based on GNU Emacs, an extensible, customizable text editor.

*** Org-mode

The Org-mode devroom will include a collection of talks from its author
as well as speakers representing various other components of Org-mode.
Developers will discuss the direction of Org-mode, identify additional
tools that would be useful to surround Org-mode, as well as make a plan
for widening its audience and making it more accessible to new users.

*** Emacs development

Emacs development has seen a renewed interest in the last years. There
is a lot of activity in the developer community. Therefore this devroom
will not only host many fine Org-mode Emacs Lisp hackers but is also
open for other Emacs Lisp related subjects around developing with or for
Emacs.

*** Proposed Talks

Some of our proposed talks include:
- Org-babel a system for Literate Programming
- GTD with Org-mode
- Scientific applications
- Sharing Org-mode data with other applications (TaskJuggler, ..?)
- Org-mode on the iPhone, Android and Nokia devices
- Managing websites with Org-mode (jekyll integration, built-in publishing, etc)
- Power user demonstrations/tip sharing
- The future of Org-mode

** Goals
- Expose new and existing Org-mode users to demonstrations/application
  of features they might not have otherwise discovered
- Identify new applications of Org-mode, help users get started
  using/customizing Org-mode for their domain  
- Collect members from the Org-mode mailing list in a single place for
  the first time
- Share and refine the direction of Org-mode
- Identify how contributors can help with Org-mode 
development/documentation/etc. 
- Plan for making Org-mode easier to get started with

** Target Projects
- Org-mode
- Emacs development

* Devroom related URLs
- http://orgmode.org
- http://orgmode.org/worg/
- http://orgmode.org/worg/org-contrib/babel/index.php
- http://orgmode.org/worg/org-tutorials/org-screencasts/index.php
- http://mobileorg.ncogni.to/
- http://www.gnu.org/software/emacs/
- http://blog.gmane.org/gmane.emacs.devel

* Name of the responsible

- Richard Moreland
- Christian Egli

* Email

- r...@ncogni.to
- christian.e...@sbs.ch

* Relation to the topic

What ever you fancy, e.g

- community manager
- developer

* Remarks

Org-mode is a good match for FOSDEM since it brings together a diverse
community across many platforms (Unix, Windows, Mac, Mobile) and fosters
a renaissance of text-only power tools.

Thanks
Christian

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

___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: TaskJuggler 3, revisited

2010-10-18 Thread Christian Egli
Anthony Lander  writes:

> Is anyone interested in the changes I've made for tj2? I unfortunately
> don't have time to document them, except in point form as above, but I
> am happy to put together a patch and send it to the list for others to
> bang away on.

I'm very interested in these patches and would definitely like to see
them, documented or not. It sounds like they should be integrated in the
exporter.

> 2. Carsten, would you be interested in these changes, and/or a
> taskjuggler3 exporter?

I was hoping to have only one taskjuggler exporter which can handle both
tj2 and tj3, possibly depending on a defcustom.

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: TaskJuggler 3, revisited

2010-10-18 Thread Christian Egli
Eric S Fraga  writes:

> For the recent project I had to prepare, I did have to generate a
> GANTT chart.  I tried using TJ2 via org but found the current
> implementation not suitable for my way of working.  

What are the problems you encountered?

> Instead of using TJ, either 2 or 3, I simply created my own chart
> using tikz in latex. 

Sweet hack! And looks quite nice too.

Thanks

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] Re: TaskJuggler 3, revisited

2010-10-19 Thread Christian Egli
Hi Anthony

Anthony Lander  writes:

> Please find attached a somewhat improved version of your TJ2 exporter,
> a drop-in replacement that exports to TJ3, and also a sample .org
> file. 

This is all exciting stuff. It's a little hard to digest (many changes
rolled into one, white space formatting changes that make it hard to find
the real change, common lisp idioms which I'm not familiar with). Let me
get back to you with some questions and then we can discuss how to most
easily merge the stuff.

- Why did you compute the leafiness? I seem to have experienced that tj3
  has a problem with zero effort tasks that aren't marked as milestones.
  Is that the reason?

- Why do you add a duration of 1d if the task has neither a duration, an
  end, a period nor an effort? Shouldn't that be a milestone instead?

- I see that there is a need to annotate a project with stuff such as
  scenarios, etc and I was missing a way to have file specific reports
  or other globals. Your additional tags solve that problem. However I'm
  a bit reluctant to add more magic tags that mark the trees in some
  way. I was hoping to find a more general way for this problem. So far
  I haven't found a good solution though.

- I like the idea of the TJ drawer, but in the end you just seem to use
  it for the project node and the globals node. So in essence they are
  taskjuggler source code blocks (in disguise) which are tied to a
  particular node. In fact they are not even really tied to a particular
  node, especially in the case of the globals. This goes back to the
  previous question about a good way to add file specific globals. Maybe
  some kind taskjuggler specific export option is really what we are
  looking for.

As an aside, I think it's better to post the source code to the list.
There might be other people interested in it and pitching in with
opinions and improvements.

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

___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] [PATCH] Fix an error in org-taskjuggler-get-unique-id

2010-10-20 Thread Christian Egli

Don't try to pop from an empty list and downcase the result
---
 lisp/org-taskjuggler.el |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index 23f4b62..6367b7a 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -503,7 +503,7 @@ finally add more underscore characters (\"_\")."
 (parts (split-string headline))
 (id (org-taskjuggler-clean-id (downcase (pop parts)
 ; try to add more parts of the headline to make it unique
-(while (member id unique-ids)
+(while (and (member id unique-ids) (car parts))
   (setq id (concat id "_" (org-taskjuggler-clean-id (downcase (pop 
parts))
 ; if its still not unique add "_"
 (while (member id unique-ids)
-- 
1.7.0.4


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] Re: TaskJuggler 3, revisited

2010-10-28 Thread Christian Egli
Hi Anthony

Anthony Lander  writes:

> Is the unfamiliar idiom the backtick list with the ,variables in it,
> by chance?

No it was more stuff like `return' and `return-from'.

> Ah, sorry. This I should have documented. The problem is that TJ3
> fails to compile the file if there is a leaf node with no computable
> end date. TJ2 happily ignored the situation, but TJ3 throws an error.

OK, I understand. I managed to slowly integrate (some of) your changes.
It should now generate milestones for nodes that cannot be scheduled and
are leaf nodes. So basically it should export valid code for tj3 if you
set org-export-taskjuggler-target-version to 3.0. Of course the report
definitions in the defcustom org-export-taskjuggler-default-reports are
not compatible with tj3 so you will need to change these.

I have (or I guess rather had) some fondness for recursive functions, so
I re-implemented your leafiness function recursively. However I ran into
problems with max-lisp-eval-depth and it appears that recursion is not
encouraged in Emacs lisp
(http://www.gnu.org/s/emacs/manual/html_node/elisp/Compilation-Tips.html#Compilation-Tips).
So I guess it's back to iterative style.

> In any event, the TJ drawer is my attempt at a catch-all solution. It
> at least allows a user to use missing features without waiting for a
> development change. So for example, I personally will never use the
> accounting stuff, and would not be very motivated to add it to the
> exporter, but if someone needed it, they could put the required code
> in the TJ drawer, and they could still use the TJ exporter for their
> project instead of having to abandon org-mode entirely for one missing
> feature.

I like the drawer stuff and will integrate it.

> Interesting thought. I very much like the idea that you can do other
> things with your org-file than export it to taskjuggler. For example,
> keep actual notes in the file, and export it to other formats like
> html or LaTeX, for purposes other than project planning. 

Absolutely, I agree.

> Being able to say "no, this is not a task" in the task tree would be
> very useful. I don't know how to do it nicely either (yet).

Hm, no this is not possible right now. Why would you want to do this?
Maybe we could just mark it as a comment and make the exporter honor
comments.

> How about if we set up a git repository on github
> with the files, and then post the link on the mailing list? 

I set up a repo and pushed my changes to the code there
(http://github.com/egli/org-mode).
 
> I think we should put your email, and this reply to the
> list as well.

Yes, I almost forgot. Would you mind doing that?

Thanks
Christian

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

___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: TaskJuggler 3, revisited

2010-10-29 Thread Christian Egli
John Hendy  writes:

> - is there any progress on an exporter for tj3?

Yes there is. See
http://github.com/egli/org-mode/blob/master/lisp/org-taskjuggler.el

> - does anyone have a vague sketch of what needs to happen?

The export to tj3 should basically work now. Just customize
`org-export-taskjuggler-target-version' to 3.0 and you should be set.
You still need to adapt the default reports[1], as they no longer work
with tj3.

`org-export-as-taskjuggler-and-open' needs to be adapted and also there
are some other incoming patches from Anthony Lander that I need to
integrate.

> - can I do grunt work for someone to make this happen?

Testing would help.

Thanks.


Footnotes: 
[1]  `org-export-taskjuggler-default-reports'

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: TaskJuggler3, revisited

2010-11-08 Thread Christian Egli
John Hendy  writes:

> Nice! I was able to do the following:

Heh, I assume you used Anthony's fork of the exporter. There's lots of
good stuff in there that I'd like to integrate. I have asked Anthony if
he has a copyright assignment with the FSF.

> - swap out the default export with the code below and run "tj3 tj3-test.tjp" 
> and get a nice html report!
> --- If you're looking for a default tj3 export... perhaps start with what's 
> below?

My exporter currently has one customize variable to define global
reports, so if you want to use tj3 you'll have to change this. We could
add another customize variable where you can define global reports for
tj3 and put your defaults in there.

> The export code that creates quite a nice html report (from tj3
> documentation)

This seems like a good default. Did you take this from the tj3
documentation? I believe it is released under the GFDL. Can you just
include GFDL "code" in the taskjuggler exporter which is GPL3+?

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: TaskJuggler3, revisited

2010-11-08 Thread Christian Egli
John Hendy  writes:

> On Fri, Nov 5, 2010 at 7:29 AM, Anthony Lander  
> wrote:
>
> If you grabbed the code I wrote, you can export the file, and
> compile it directly with tj3 using C-c e J, saving a step.
>
> That would be awesome.

On C-c e j the current exporter just exports to tj2. On C-c e J it opens
the TaskJuggler GUI (which compiles and visualizes). Now for tj3 I would
assume that a corresponding action would be to let tj3 compile the
exported tjp file and open the resulting reports(s), be it in a browser
or a text editor. In theory we would probably need another key binding
to just compile the tjp file. This is similar to the LaTeX exporter
where you can (1) just export, (2) process the exported LaTeX and (3)
open the resulting PDF.

Opening report files (text or html) should be fairly simple using
org-open-file. The hard part is knowing what files to open without
having to parse the report definition to figure out the file names.
Maybe the output of tj3 gives a hint what report files were produced.

> - swap out the default export with the code below and run "tj3
> tj3-test.tjp" and get a nice html report!
> --- If you're looking for a default tj3 export... perhaps
> start with what's below?
>
> But note that I have to do some manual steps on the .tjp before
> compiling with tj3. My main issue is defining the report. How do you
> define the report manually in the .org file or elsewhere so that tj3
> doesn't try it on the default tj2 report instead. When I do C-c e J
> currently, I get no output files; essentially it's just a silent fail.

Currently the way to define reports is through the customize variable.
But this is then used for all taskjuggler exports. To support file
specific reports I was thinking that we should use the #+BEGIN_foo
mechanism, i.e. introduce a TaskJuggler blocks with #+BEGIN_TaskJuggler
and #+END_TaskJuggler. These could then be used for example to define
reports. This would require some changes to org-exp.el.

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Project management > Dynamic block per tag + [Babel]

2010-11-26 Thread Christian Egli
Francesco Pizzolante
 writes:

> I'm using Org to manage a project.
>
> I need to output a tasks list for every of my colleagues, person per person.
>
> I'm currently using tags to assing people to tasks (even if I'm not completely
> convinced that this is the right way to go).

Babel is of course one way to do this. Another way would be to export
your org file to taskjuggler[1] and define a resourcereport[2] which
shows you all the resources and their tasks. The tutorial has an
example screen shot where you see a resource report[3].

Hope that helps
Christian

Footnotes: 
[1]  http://orgmode.org/worg/org-tutorials/org-taskjuggler.php
[2]  
http://www.taskjuggler.org/manual-2.4.3/generating_reports_of_the_scheduled_projects.html
[3]  http://orgmode.org/worg/images/taskjuggler/resource-graph.png
-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Anyway to publish org file to XML file?

2009-11-12 Thread Christian Egli
Water Lin  writes:
> Is it possible to publish org file to XML file in a specific format?

Export to XHTML and then use XSLT to transform it to your specific XML.
Works like a charm.

HTH

Christian 



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Beamer support in Org-mode

2009-12-02 Thread Christian Egli
Hi Carsten

I've been using org-mode to create a few presentations and found it to
be extremely productive. I use different levels for parts (in the past),
sections and subsections. Beyond that I just use lists. I haven't used
blocks and columns (probably because it wasn't easily possible so far).

Also I use separate org files for all presentations.

See
http://www.daisy2009.de/files/presentations/itc/egli__daisy_producer.pdf,
http://liblouis.googlecode.com/files/liblouisSlides.pdf and
http://liblouis.googlecode.com/files/liblouisSlides.org for examples

Here's the relevant expert from my .emacs

 '(org-export-latex-classes (quote (("beamer" "\\documentclass[]{beamer}
\\usetheme{Frankfurt}
\\usepackage{multimedia}
\\usepackage[english]{babel}
\\usepackage[utf8]{inputenc}
\\usepackage{hyperref}" ("\\section{%s}" . "\\section{%s}") ("\\subsection{%s}" 
. "\\subsection{%s}") ("\\begin{frame}{%s}" "\\end{frame}" "\\begin{frame}{%s}" 
"\\end{frame}")

Carsten Dominik  writes:

> 1. Don't automatically use a specific headline level to create the
> columns
>environment - at least make that configurable.

Generally I like the idea of using the levels as an indication for
beamer. However this needs to be configurable, as I have also used parts
in the past for example.

> 2. Make beamer export force org-export-headline-levels equal org-
> beamer-frame-level,
>so that headlines below the frame level automatically become itemize
>levels, unless modified by tags or properties.

I don't really care about that too much (in fact I think it just
introduces confusion). I just always used lists for bullet points.

> 3. Use meta data to make headlines special, instead of mixing this
>stuff into the.  I first thought this is too hard - but maybe it is
>OK when edited with column view?  Hmm, I am only half-sold on this
> - properties
>are so hard to see when you need them frequently during editing.

This sounds reasonable, as I usually create an outline of the ideas
first and from that create a presentation. Later I might reuse it for a
paper, so I don't really want it to be interspersed with layout
information.

> Thomas asked for the possibility to export a subtree as a
> presentation, with *relative* levels determining functionality.  This
> should be easy - when selection a subtree with `C-c @' and then
> exporting,
> relative levels are already being used now, for any kind of export.

I don't have a need for that as I use separate files for each
presentation.

Another thing that I tried to use was alerts (and colors) in bullet
points. I seem to remember that it didn't work. I should try again. It
appears that Eric managed to get them to work.

Thanks
Christian
___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Properties and Property Drawers in HTML export

2009-12-03 Thread Christian Egli
Hi

Rick Moynihan  writes:
> Would something like the following not be a better format for
> parsing/processing?
>
> 
>   
> FOO class="property_value_foo">blah
> BAR class="property_value_bar">blah blah
>   
> 

org-export-format-drawer-function might be what you are looking for:

C-h v org-export-format-drawer-function

Function to be called to format the contents of a drawer.
The function must accept three parameters:
  BACKEND  one of the symbols html, docbook, latex, ascii, xoxo
  NAME the drawer name, like "PROPERTIES"
  CONTENT  the content of the drawer.
The function should return the text to be inserted into the buffer.
If this is nil, `org-export-format-drawer' is used as a default.

HTH
Christian



___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: How to combine the analogue (Moleskine) world with digital (org-mode) world ?

2010-01-25 Thread Christian Egli
Manish  writes:

> I am also beginning with something similar.  My plan is to print the
> day's agenda every morning (or previous night) and may be fold it
> like pocketmod [1] using Christian Egli's org2pocketMod [2].  Then

org2pocketMod has been renamed to org2hpda and has been included in
org-mode for ages (see
http://repo.or.cz/w/org-mode.git/blob/HEAD:/contrib/scripts/org2hpda).

I'm not using it anymore, so I can't comment on its usefulness.

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



___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Bug: LaTeX export of plain lists inside description lists [6.34trans]

2010-03-29 Thread Christian Egli
Günter Kolousek  writes:

> + one plain list item
> + just another one
>
> here follows a plain paragraph
>
> + and another new plain list
> + second item

AFAIK this is a know bug in the LaTeX exporter which is hard to fix.
Search the archives for a more detailed explanation.

HTH
Christian

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



___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] [ANN] Exporter for taskjuggler

2010-03-30 Thread Christian Egli

Hi all

In theory we're developing according to agile methods here, but in
practice people still want to see the classic waterfall project plan.

So in order to create a professional looking gant and resource usage
charts I implemented an exporter from org-mode to TaskJuggler
(http://www.taskjuggler.org/). The code is attached and I'm looking for
feedback and would love to get this integrated in the org-mode
distribution.

TaskJuggler uses a text format to define projects, tasks and resources,
so it is a natural fit for org-mode. It can produce all sorts of reports
for tasks or resources in either HTML, CSV or PDF. The current version
of TaskJuggler requires KDE but the next version is implemented in Ruby
and should therefore run on any platform.

The exporter is a bit different from other exporters, such as the HTML
and LaTeX exporters for example, in that it does not export all the
nodes of a document or strictly follow the order of the nodes in the
document.

Instead the TaskJuggler exporter looks for a tree that defines the
tasks and a optionally tree that defines the resources for this
project. It then creates a TaskJuggler file based on these trees
and the attributes defined in all the nodes.

* Installation

Put the attached file into your load-path and the following line into
your ~/.emacs:

  (require 'org-taskjuggler)

The interactive functions are similar to those of the HTML and LaTeX
exporters:

M-x `org-export-as-taskjuggler'
M-x `org-export-as-taskjuggler-and-open'

* Tasks

Let's illustrate the usage with a small example. Create your tasks as
you usually do with org-mode. Assign efforts to each task using
properties (it's easiest to do this in the column view). You should end
up with something similar to the example by Peter Jones in
http://www.contextualdevelopment.com/static/artifacts/articles/2008/project-planning/project-planning.org.
Now mark the top node of your tasks with a tag named
"taskjuggler_project" (or whatever you customized
`org-export-taskjuggler-project-tag' to). You are now ready to export
the project plan with `org-export-as-taskjuggler-and-open' which will
export the project plan and open a gant chart in TaskJugglerUI.

* Resources

Next you can define resources and assign those to work on specific
tasks. You can group your resources hierarchically. Tag the top node of
the resources with "taskjuggler_resource" (or whatever you customized
`org-export-taskjuggler-resource-tag' to). You can optionally assign an
ID to the resources (using the standard org properties commands) or you
can let the exporter generate IDs automatically (the exporter picks the
first word of the headline as the ID as long as it is unique). Using
that ID you can then allocate resources to tasks. This is again done
with the "allocate" property on the tasks. Do this in column view or
when on the task type

 C-c C-x p allocate RET  RET

Once the allocations are done you can again export to TaskJuggler and
check in the Resource Allocation Graph which person is working on what
task at what time.

* Export of properties

The exporter also takes TODO state information into consideration, i.e.
if a task is marked as done it will have the corresponding attribute in
TaskJuggler ("complete 100"). Also it will export any property on a task
resource or resource node which is known to TaskJuggler, such as limits,
vacation, shift, booking, efficiency, journalentry, rate for resources
or account, start, note, duration, end, journalentry, milestone,
reference, responsible, scheduling, etc for tasks.

* Dependencies

The exporter will handle dependencies that are defined in the tasks
either with the ORDERED attribute (see TODO dependencies in the Org mode
manual) or with the BLOCKER attribute (see org-depend.el) or
alternatively with a depends attribute. Both the BLOCKER and the depends
attribute can be either "previous-sibling" or a reference to an ID which
is defined for another task in the project.

Thanks
Christian



org-taskjuggler.el
Description: TaskJuggler exporter

-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland
___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] [ANN] Exporter for taskjuggler

2010-04-06 Thread Christian Egli
Hi Carsten

Thanks for your reply. I've been a bit stumped by the zero feedback on
the mailing list. Maybe I should have added a few screenshots of fancy
gant and resource usage charts :-).

Carsten Dominik  writes:

> Hi Christian, this look interesting.  Should we put this
> into the contrib directory for now, or are you aiming
> for the Org-mode core?

I'm getting all the paper work for the assignments done, so I guess we
could put it into the core. I suppose this would give it more
credibility.

What more do you need for integration in the core? 

  - Patches for the Makefile and modules customization?
  - A section in the manual?

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: [ANN] Exporter for taskjuggler

2010-04-06 Thread Christian Egli
Hi

T Helms  writes:

> If you had a few more example sub-trees, it would help.

If you have some org-mode files which describe a project including
effort estimates (as properties) and maybe some textual dependency
description I would gladly turn them into an example.

Otherwise I can see if I can anonymize the project I'm working on.

> How difficult would it be to add gap duration to the export?

Ah, didn't think of that. Good question. Right now dependencies are
generated on export based on either ORDERED, BLOCKER or depends
properties. I guess if you had a property section as follows

:PROPERTIES:
:Effort:   03:00
:BLOCKER:  posting_controller { gapduration 5d }
:END:

the part enclosed inside {} should not be interpreted as an additional
dependency but instead as a gap duration specification. Should be
doable. I'll add it to the list.

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



___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: orgcard.txt in Makefile

2010-04-13 Thread Christian Egli
Hi 

Nathan Neff  writes:

> I'd like to use the orgcard.txt file that's included in the org-mode source.
> I like being able to search through a text file for relevant keyboard
> shortcuts.
>
> It doesn't seem like it's been updated since org version 6.10.
>
> I tried running make doc, but I don't think that orgcard.txt is generated in
> the "make doc" task.

AFAIK It is not.

> Is orgcard.txt generated from orgcard.tex?  If so, can anyone tell me how
> to do it?

I presume that it is converted by hand. I tried a few automated tools
(pdftotext, latex2html + w3m) but they all give very bad results.

I would recommend to either

  a) compare the existing orgcard.pdf and orgcard.txt and update the
 existing orgcard.txt accordingly or
  b) cut'n'paste the text from a pdf viewer into emacs and do some magic
 with rectangles (as the text is in three columns) to achieve the
 desired result.

Then submit the newest orgcard.txt as a patch so you will not have to
keep it locally.

Thanks
Christian

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



___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Implementing Kanban in Org-mode

2010-04-14 Thread Christian Egli
Rick Moynihan  writes:

> I've recently taken an interest in Kanban, as a means of organising
> tasks in a team.  I was wondering if anyone here has tried doing this
> with org-mode, and if they have any tips.
>
> I can imagine org's TODO_SEQ's map nicely onto the columns in a Kanban
> task board.

They do, yes. Very interesting idea.

> It might even be possible to integrate org-mode with something like
> this html simple kanban board:
>
> http://www.simple-kanban.com/

I could envision a simple solution where you export your tasks via an
dynamic block and insert that into the text area of the simple kanban
board. But that is a one way solution and fails if people start dragging
the tasks around. How does this information get back into the org file?

Maybe something simpler that is not editable as a view of the tasks and
their state, i.e. a simple static html kanban board. This could be done
again with some hacking based on a dynamic block and exporting this as
csv or you could hack up some elisp creating the html based on the
mapping API[1].

> Also how might Emacs org-mode be able to render a kanban board view?
> Would it be possible to use something like the agenda to do this and
> shuffle the tasks about?

Could you not just use the the global TODO list[2] and sort the tasks by
TODO state?

HTH
Christian

Footnotes: 
[1]  http://orgmode.org/manual/Using-the-mapping-API.html#Using-the-mapping-API
[2]  http://orgmode.org/manual/Global-TODO-list.html#Global-TODO-list

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



___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] [ANN] Exporter for taskjuggler

2010-04-19 Thread Christian Egli
Hi Dan

Thanks for your feedback.

Dan Davison  writes:

> A simple org file demonstrating some of the features is the most
> important thing lacking at the moment.

I'm working on an introduction on worg. Hopefully I'll have something by
the end of this week including an example org file.
 
> I encountered problems with the fact that
>
> - I was using `org-odd-levels-only'

Oh, OK, I'm not using this, so there might be issues there.

> - the "allocate" property name is required to be lower case (unlike
>   Effort)

That's a general problem. The exporter needs to map between org and tj
terminology. In most cases this is not a problem as the terminology
comes from tj, e.g. 'limits', 'vacation' or also 'allocate'. Here I
assume that the property in org mode is named the same and capitalized
the same as in tj. I guess this should be stated in the documentation.

In other cases where the exporter needs to map between org and tj, e.g.
for effort, but also for completeness or dependency information, the
exporter is more forgiving. Specifically in the case of Effort it does
the downcase as "Effort" is an established property on org. For
completeness information it maps the TODO state (whether it is done or
not). And dependencies are taken from the BLOCKER attribute (which is
also semi-established).

I don't know if this is a good solution. I just tried to stick to the tj
property names as close as possible and only allow different names if
those concepts and names are established in org mode under a different
terminology. Hope that clears things up a bit.

> - A Resource named with Uppercase letters will be expected to be all
>   lowercase by TJ (e.g. my Alf resource below).

Well resource names in tj have to conform to [A–Za–z0–9_], so what I did
in the exporter is look for an ID attribute in the resource or silently
generate an id from the resource headline. So if do not specify an ID
your resource Alf will be converted (and made unique) in
`org-taskjuggler-get-unique-id'. I guess this is a bit behind the users
back and also needs better documentation. In your case the resource will
be downcased to 'alf'. I have resources like "Domain Expert", which will
be converted to "domain_expert". That's why I usually add an ID property
to resources so I can easily allocate them.

> I've put patches corresponding to the hacks I made to solve these below.

Thanks for the patches. More comments below. I have an updated version
locally which also supports optional depends attributes like gapduration
and gaplength (which were requested by T Helms on the list). I hope to
publish this on a branch in the repo.

> It would also be nice if repeated invocation of
> org-export-as-taskjuggler-and-open on the same project didn't spawn
> multiple TJ instances (TJ v2.4.3 ubuntu).

Hm, yes. Good idea. Do you have an idea how this could be done easily in
elisp?

> I had a quick look at the TJ page -- it sounded as if the cross-platform
> ruby version is advancing rapidly?

Yes, I didn't even realize that a new version has come out as I'm still
using the old C++ Unix-only version.

> Make it work if `org-odd-levels-only' is in use:
>
> diff --git a/org-taskjuggler.el b/org-taskjuggler.el
> index e887d33..e843dcd 100644
> --- a/org-taskjuggler.el
> +++ b/org-taskjuggler.el
> @@ -309,7 +309,7 @@ the current node such as the headline, the level, todo 
> state
>  information, all the properties, etc."
>(let* ((props (org-entry-properties))
>(components (org-heading-components))
> -  (level (car components))
> +  (level (nth 1 components))
>(headline (nth 4 components))
>(parent-ordered (org-taskjuggler-parent-is-ordered-p)))
>  (push (cons "level" level) props)

Oh, OK, good catch. Does this also work if `org-odd-levels-only' is not
in use?

> Allow variations in capitalisation of allocate property name (or maybe
> the documentation should just point out that it must be lowercase)

I'd rather have the capitalisation as closely to the tj terminology as
explained above. I'd prefer to update the documentation here.

> Always output resource names lower case

I guess this is also a documentation issue. If you know how resources
will be named (either with an ID or with
`org-taskjuggler-get-unique-id') then it should be more clear how to do
the allocations.

> More comprehensible error message if you forget to define a project...

Yes, of course. I had fixed that one already locally.

So, thanks again for the feedback. I hope to have the worg page and the
code in the branch soon so things should become clearer.

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] [ANN] Exporter for taskjuggler

2010-04-20 Thread Christian Egli
John Hendy  writes:

> I'd stick with looking into TJ3 org-mode integration over 2.4. Or
> perhaps take a look at the first of the references on how to use both:
>
> - http://www.taskjuggler.org/tj3/manual/TaskJuggler_2x_Migration.html

The exporter is pretty agnostic towards either tj3 or tj2.4. It pretty
much just exports the properties you define in your nodes. It also does
some magic with regards to dependecy and resource export, but these have
not changed in tj3. While I haven't tested it with tj3 the export from
an org file should also work for tj3. You might have to tweak the
reports some, but this can be done with the customize interface.

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: unique id=-values in aggregated html-exported docs

2010-05-11 Thread Christian Egli
Dirk-Jan C. Binnema  writes:

> I found a small issue when aggregating multiple org-exported-to-html
> entries into one page. The problem is that some of the html-elements have
> id=... attributes, which are supposed to be unique in a html document;
> however, this fails when aggregating different elements into one.

Can you list which html elements are the problem? 

Does it help if you use the BODY-ONLY option (C-h f org-export-as-html)?

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: A request: Moving away from ChangeLog

2010-05-21 Thread Christian Egli
Hi all

John Wiegley  writes:

> The Emacs ChangeLog is a file which predates the existence of freely
> available, project-wide version control. It was a way to see, in one
> place, the stream of changes occurring in a project -- something which
> RCS could not do for you.

The only problem is that we need to have a Changelog for upstream, i.e.
Emacs.

> However, in this modern era of project-wide, atomic commits, the
> ChangeLog is not only an archaism, but is a continuous source of merge
> conflicts. For example, when I reverted Russell's latest change -- a
> one-liner that was minor in the extreme -- I had to do with a merge
> conflict in lisp/ChangeLog.

If the real problem you're trying to solve is the merge conflicts you
get with the Changelog files then the solution might be Bruno Haible’s
git merge driver for GNU-style ChangeLog files[1] (available in gnulib[2]).

Automatic generation of the Changelog file sounds like a fine solution
and I'm all for it, but when it comes down to the actual requirements of
the Changelog (such as file and especially function names) things don't
look that rosy anymore (doesn't work outside of Emacs, can no longer use
M-x add-change-log-entry, etc).

So before pouring out the baby with the bathwater maybe we should at
least try if the git merge driver solves the main problem we have with
the Changelog files.  

Thanks
Christian

Footnotes: 
[1]  http://www.mail-archive.com/bug-gnu...@gnu.org/msg09183.html
[2]  
http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob;f=lib/git-merge-changelog.c

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] Re: A request: Moving away from ChangeLog

2010-06-02 Thread Christian Egli
Hi Carsten

Carsten Dominik  writes:

> are we ready to install org-taskjuggler.el into Org-mode?

I modified it so that it no longer uses the ID property, so from that
perspective it should be ready. What is missing is a little section for
the manual and the integration in the the exporter and the build system.

> Where do you want it, core or contrib?

I would want to add it to the core.

> I did not yet hear from you that the FSF assignment process
> is done, could you please update me on that?

I just today got an email from FSF saying that my assignment/disclaimer
process (for all of GNU Emacs) with the FSF is complete. If you like I
can send you copies of the signed PDFs.

Should I push to a branch (e.g. taskjuggler-export) on repo.or.cz and
take it from there?

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

___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: [ANN] Exporter for taskjuggler

2010-06-08 Thread Christian Egli
Manish  writes:

> From where can I get the latest version of org-taskjuggler?

I finally managed to push the taskjuggler exporter to the public repo.
It's located in the branch taskjuggler-export and should be ready to be
merged into the mainline.

- All the FSF paper work has been completed
- AFAIK all the feedback has been incorporated
  - e.g. frivolous handling of ID property
  - better error handling
- added documentation to export section of org.texi
- included taskjuggler export in the export dispatcher
- added it to the Makefile

I'm using this exporter almost on a daily bases, but I'm sure there are
quite a few issues left. For example there is a warning when byte
compiling about a reference to free variable `old-level'. I don't know
if it is kosher to just quiet the compiler with a defvar. There are some
other known issues mentioned in the TODO section in the code. However I
think it is ready for wider consumption.

Also there is an up-to-date tutorial on the usage of the taskjuggler
exporter at http://orgmode.org/worg/org-tutorials/org-taskjuggler.php

Thanks
Christian

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: [ANN] Exporter for taskjuggler

2010-06-08 Thread Christian Egli
Carsten Dominik  writes:

> I have already merged and pushed your branch into the master, but please
> make a patch that fixes these minor issues.

Hey, that was fast. Thanks.

> In org-taskjuggler-close-maybe:
> org-taskjuggler.el:633:13:Warning: reference to free variable `old-
> level'
> org-taskjuggler.el:635:25:Warning: assignment to free variable `old-
> level'

I just pushed a patch to the taskjuggler-export branch that should fix
this.

> In org-export-as-taskjuggler-and-open:
> org-taskjuggler.el:330:6:Warning: start-process-shell-command called
> with 4
> arguments, but accepts only 3

This I cannot reproduce using the command command you gave. Is this
maybe only a problem in newer Emacs versions? I'm using Emacs 23.1.1

Thanks
Christian

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: [ANN] Exporter for taskjuggler

2010-06-08 Thread Christian Egli
Christian Egli  writes:

>> In org-export-as-taskjuggler-and-open:
>> org-taskjuggler.el:330:6:Warning: start-process-shell-command called
>> with 4
>> arguments, but accepts only 3
>
> This I cannot reproduce using the command command you gave. Is this
> maybe only a problem in newer Emacs versions? I'm using Emacs 23.1.1

Digging some more I found the following in
http://www.gnu.org/software/emacs/NEWS.23.2:

> *** start-process-shell-command and start-file-process-shell-command
> now only take a single `command' argument.

i.e. Emacs 23.2 has a different api for start-process-shell-command.

I'm not quite sure how to deal with this. Should I add a wrapper
function in org-compat (say "org-start-process-shell-command") that
checks for emacs version > 23.2 and calls start-process-shell-command
accordingly?

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: [ANN] Exporter for taskjuggler

2010-06-08 Thread Christian Egli
T Helms  writes:

> How difficult would it be to add gap duration to the export?

There is now support for gap duration in the newest version from git.

Thanks

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

___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: any idea how to convert org file to MS WORD an retain text structure?

2010-06-15 Thread Christian Egli
Rainer Stengele  writes:

> I love to edit documents in Org.

I know what you mean.

> Unfortunately I have to finally deliver text in MS Word.

Sometimes I find myself in that situation.

> Any idea how to best export/convert my org file to Word?

I've used latex export followed by latex2rtf in the past. Most things
work reasonably well, other like toc don't seem to work. So some manual
fidgeting is required in the end.

HTH
Christian

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: [PATCH] Call `start-process-shell-command' with just 3 arguments.

2010-06-17 Thread Christian Egli
Hi David


David Maus  writes:

> * org-taskjuggler.el (org-export-as-taskjuggler-and-open):
>   Call `start-process-shell-command' with 3 arguments.
>   Passing more than 3 arguments is strongly discouraged.  See
>   docstring of `start-process-shell-command'.

Excellent, thanks for this patch. That is an elegant solution, it
should also work in older Emacsen. I was going to do it in a more
complicated way, querying for Emacs versions, etc.

There is one little nit though:

> -(start-process-shell-command command nil command file-name)))
> +  (let* ((file-name (buffer-file-name (org-export-as-taskjuggler)))
> +  (command (concat "TaskJugglerUI " file-name)))
> +(start-process-shell-command command nil command)))

The first argument to start-process-shell-command is the name for the
process. I guess it would be nicer if this name didn't contain the
filename. So maybe something along the following would be nicer:

  (let* ((file-name (buffer-file-name (org-export-as-taskjuggler)))
 (process-name "TaskJugglerUI")
 (command (concat process-name " " file-name)))
(start-process-shell-command process-name nil command)))

I just checked in a patch to that effect in the taskjuggler-export
branch. Also a patch is attached.

Thanks
Christian

>From 2a52eea0d0d20bfcf68375b3aa2fe5bdf402e2d3 Mon Sep 17 00:00:00 2001
From: Christian Egli 
Date: Thu, 17 Jun 2010 10:37:59 +0200
Subject: [PATCH] Change invocation of start-process-shell-command to avoid warnings

Newer Emacsen changed the API of start-process-shell-command and issue
a warning if called with more than 3 args.
---
 lisp/ChangeLog  |6 ++
 lisp/org-taskjuggler.el |7 ---
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index d351a8a..f3ca66c 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
+2010-06-17  Christian Egli  
+
+	* org-taskjuggler.el (org-export-as-taskjuggler-and-open): Fix
+	the invocation of start-process-shell-command to avoid
+	warnings in newer Emacsen
+
 2010-06-08  Christian Egli  
 
 	* org-taskjuggler.el (org-export-taskjuggler-old-level):
diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index f64138e..01bfc47 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -326,9 +326,10 @@ defined in `org-export-taskjuggler-default-reports'."
   "Export the current buffer as a TaskJuggler file and open it
 with the TaskJuggler GUI."
   (interactive)
-  (let ((file-name (buffer-file-name (org-export-as-taskjuggler)))
-	(command "TaskJugglerUI"))
-(start-process-shell-command command nil command file-name)))
+  (let* ((file-name (buffer-file-name (org-export-as-taskjuggler)))
+	 (process-name "TaskJugglerUI")
+	 (command (concat process-name " " file-name)))
+(start-process-shell-command process-name nil command)))
 
 (defun org-taskjuggler-parent-is-ordered-p ()
   "Return true if the parent of the current node has a property
-- 
1.7.0.4


-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland
___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: New CSS for orgmode and Worg ?

2010-07-07 Thread Christian Egli
Bastien  writes:

> the current CSS for orgmode.org and orgmode.org/Worg is nice: readable
> and simple.  But I'm bugged by the feeling we can do better.

What I'd like to see is something more aligned with the css for asciidoc
which makes for a very pleasant and readable experience.

Look for the css that is delivered with
http://www.methods.co.nz/asciidoc/ or in the repository at
http://code.google.com/p/asciidoc/source/browse/#hg/stylesheets

> Anyone with CSS expertise ready to take this challenge ?

Unfortunatelly my expertise is limited to trial and error when it comes
to css.

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] Re: New CSS for orgmode and Worg ?

2010-07-12 Thread Christian Egli
Bastien  writes:

> Christian Egli  writes:
>
>> What I'd like to see is something more aligned with the css for asciidoc
>> which makes for a very pleasant and readable experience.
>
> Yes, the CSS behind asciidoc is neat.
>
>> Unfortunatelly my expertise is limited to trial and error when it
>> comes to css.
>
> Trial and error will be very useful for suggested CSS.

Actually, come to think of it: I had totally forgotten that I once took
the css from org
(http://repo.or.cz/w/org-mode.git/blob/HEAD:/ORGWEBPAGE/org.css) and
added some asciidoc styling to it. An example output can be seen at
http://www.daisyproducer.org/. It is in a "works for me" state, I think
I probably hard coded some assumptions I had on my side.

The css is attached. 

If there is demand I could merge it with the original org.css or create
a patch.

Thanks
Christian

@media all
{
body {
  margin: 1em 5% 1em 5%;
}

a {
  color: blue;
  text-decoration: underline;
}
a:visited {
  color: fuchsia;
}

em {
  font-style: italic;
  color: navy;
}

strong {
  font-weight: bold;
  color: #083194;
}

tt {
  color: navy;
}

h1, h2, h3, h4, h5, h6 {
  color: #527bbd;
  font-family: sans-serif;
  margin-top: 1.2em;
  margin-bottom: 0.5em;
  line-height: 1.3;
}

h1, h2, h3 {
  border-bottom: 2px solid silver;
}
h2 {
  padding-top: 0.5em;
}
h3 {
  float: left;
}
h3 + * {
  clear: left;
}

div.sectionbody {
  font-family: serif;
  margin-left: 0;
}

hr {
  border: 1px solid silver;
}

p {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}

ul, ol, li > p {
  margin-top: 0;
}

pre {
  padding: 0;
  margin: 0;
}

#table-of-contents {
font-size: 85%;
line-height: 1.4em;
}

#table-of-contents ul {
list-style: none;
margin: 7px 0px 7px 15px ;
padding: 0px;
}

div.content { /* Block element content. */
  padding: 0;
}

dl {
  margin-top: 0.8em;
  margin-bottom: 0.8em;
}
dt {
  margin-top: 0.5em;
  margin-bottom: 0;
  font-style: normal;
  color: navy;
}
dd > *:first-child {
  margin-top: 0.1em;
}

ul, ol {
list-style-position: outside;
}

table {
border:3px solid #527bbd;
border-left-style:none;
border-right-style:none;
margin-bottom:1.5em;
margin-top:0.25em;
}
thead {
  font-family: sans-serif;
  font-weight: bold;
  border-bottom: 3px solid #527bbd;
}
tfoot {
  font-weight: bold;
}
th, td {
border-bottom: 1px solid #527bbd;
}
tbody tr:hover {
color: #527bbd;
}

code {font-size: 10pt;}

img {
border: none;
}

.share img {
opacity: .4;
-moz-opacity: .4;
filter: alpha(opacity=40);
}

.share img:hover {
opacity: 1;
-moz-opacity: 1;
filter: alpha(opacity=100);
}


}  /* END OF @media all */


@media screen
{
  body {
	margin: 10px 6% 10px 180px;
	font-family: serif;
  }

  .logo-link {
position: fixed;
top: 10px;
left: 30px;
  }

  #table-of-contents {
	position: fixed;
	display: block;
	left: 10px;
	width: 150px;
	min-height:60px;
	max-height:90%;
	overflow:auto;
  }

  #table-of-contents h2 {
	display:none;
  }



  /* These style are only for IE: */

  * html {
overflow-y: hidden;
padding-bottom:0px;
margin:0px;
  }

  * html body {
height: 100%;
overflow-y: auto;
font-size: 100%;
margin: 0px 0px 0px 180px;
padding: 0px 10% 0px 0px;
  }

  * html #table-of-contents {
position: absolute;
width:150px;
  }

  * html h1 {
margin-top:10px;
  }

  * html .logo-link {
position: absolute;
top: 10px;
left: 30px;
  }

}  /* END OF @media screen */




/* Printing */



@page
{
	margin-top:3cm;
margin-bottom:2.5cm;
}

@page :left
{
  margin-left:1.5cm;
  margin-right:2cm;
}

@page :right
{
  margin-left:2cm;
  margin-right:1.5cm;
}


@media print
{
  body {
	margin:0px;
	font-family: Verdana, Helvetica, sans-serif;
  }

  div {
orphans:2;
  }

  p {
orphans:2;
  }

  li {
orphans:2;
  }

  .logo-link {
top: 10px;
left: 30px;
  }

  #table-of-contents h2 {
margin-top:1.5cm;
page-break-before:auto;
border-style:none;
  }

  #text-table-of-contents {
width:50%;
margin-top:1cm;
margin-left:0cm;
margin-right:auto;
text-align:left;
  }

  #table-of-contents ul {
text-align:left;
  }

  h2 {
/* page-break-before:always; */
  }

  pre {
page-break-inside:avoid;
  }

  /* Hide all org-info.js stuff for printing: */

  div#org-info-js_console-container {
display:none;
  }

  div.org-info-js_local-toc {
display:none;
  }

  table.org-info-js_info-navigation {
display:none;
  }
  div.org-info-js_header-navigation {
display:none;
visibility:hidden; /* needed to overwrite the hardcoded style setting... */
  }

}  /* END OF @media print */

-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland
___
Emacs-orgmode mailing list
Please use `Reply All' to send replies t

[Orgmode] Re: LaTeX calendar from org-mode agenda?

2010-07-15 Thread Christian Egli
"Alan E. Davis"  writes:

> It seems possible that at least one of the LaTeX / org gurus on this
> list has used LaTeX monthly calendars.  I have had some problems with
> LaTeX calendars, but they look really nice, and it would seem not
> unlikely to use that format as an output from Org-agenda.

Well, I haven't used it in a while, but there is code[1] in the contrib
section that generates hipster pda style calendars[2] for you.
Admittedly it just uses the cal-tex-* infrastructure, so if you have
problems with that, I guess this is of little help.

> I found LaTeX monthly calendars pretty ridiculous when they are
> bloated with dozens of repeated tasks from the diary file.  A well
> sorted list of events would seem to me to suite this nice-looking hard
> copy calendar nicely.  

Maybe you should define what your requirements are, i.e. how exactly you
want your calendar to look. Then as a next step you might want to try to
get a mock-up using tikz (and its calendar library)[3]. Once you have
that I'd be happy to hack up some lisp that generates the tikz latex
from say an Org Mode Agenda view or from a diary file.

> The ability to print out a nice, concise hardcopy checklist from
> org-agenda would make a world of difference.

OK, this seems like another requirement unrelated to the calendar above.
You know that you can export an agenda view to PDF, html or text[4].
If that is not enough, again, create a mock-up using tikz to make it
really nice looking. I will then help you to write the lisp to generate
the needed latex. I've long wanted some nice looking export of the
agenda. Your input might just give me enough impetus to hack something
up.

Thanks
Christian

Footnotes: 
[1]  http://repo.or.cz/w/org-mode.git/blob/HEAD:/contrib/scripts/org2hpda
[2]  http://en.wikipedia.org/wiki/Hipster_PDA
[3]  http://www.texample.net/tikz/examples/feature/calendar-library/
[4]  http://orgmode.org/manual/Exporting-Agenda-Views.html
-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] [PATCH] Make the number of printed weeks configureable

2010-08-30 Thread Christian Egli

This is useful for the hipster PDA where you might want to print more
weeks than just four.
---
 contrib/scripts/org2hpda |7 ++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/contrib/scripts/org2hpda b/contrib/scripts/org2hpda
index 1957aa9..6b308f3 100755
--- a/contrib/scripts/org2hpda
+++ b/contrib/scripts/org2hpda
@@ -44,6 +44,11 @@ EMACS = emacs -batch -l ~/.emacs
 LATEX = latex
 DIARY = $($(EMACS) -eval "diary-file")
 
+# Number of weeks to be printed. Should be a multiple of 4, because 4
+# of them are merged on one page. Can be set when invoking the script
+# as follows: make NUMBER_OF_WEEKS=8 -f org2hpda
+NUMBER_OF_WEEKS = 4 
+
 hipsterFiles =  weekCalendar.pdf yearCalendar.pdf monthCalendar3.pdf 
monthCalendar2.pdf monthCalendar1.pdf
 pocketModFiles =  weekCalendar.pdf yearCalendar-rotated.pdf \
monthCalendar3-rotated.pdf monthCalendar2-rotated.pdf 
monthCalendar1-rotated.pdf
@@ -73,7 +78,7 @@ all: pocketMod.pdf hipsterPDA.pdf
done
 
 weekCalendar.tex: $(DIARY)
-   $(EMACS) -eval "(progn (calendar) (cal-tex-cursor-week-iso 4) 
(with-current-buffer cal-tex-buffer (write-file \"$...@\")))"
+   $(EMACS) -eval "(progn (calendar) (cal-tex-cursor-week-iso 
$(NUMBER_OF_WEEKS)) (with-current-buffer cal-tex-buffer (write-file 
\"$...@\")))"
 
 monthCalendar1.tex: $(DIARY)
 $(EMACS) -eval "(progn (calendar) (cal-tex-cursor-month-landscape 1) 
(with-current-buffer cal-tex-buffer (write-file \"$...@\")))"
-- 
1.7.0.4

___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Orgmode: exporter for taskjuggler

2010-09-02 Thread Christian Egli
Markus Heller  writes:

> Hello Christian,
>
> I'm very interested in using your taskjuggler export from orgmode.
> Unfortunately, I'm on a Windoze box, and getting TJ2 to work is a big
> pain ...  However, TJ3 is fairly straightforward, since it's Ruby, so
> I'm wondering, do you have any plans of including support for TJ3 as
> well?  I know it's still in alpha, but just asking :)

I myself use tj2, so the exporter is tested for that. Initially I had
thought that the exporter was also working for tj3 since the differences
in the syntax are supposedly very minor. But I've had reports by users
that the exporter generates code that doesn't work with tj3.

I just installed tj3 and tested it with a generated tjp file. There are
a number of problems: you need to replace all occurrences of "purge
allocations" with "purge allocate". Also you seem to be required to mark
all milestones explicitly (with "milestone"). Thirdly you need to
change the report definitions.

- The issue with purge allocate needs to be changed in the exporter
  code. For now you will have to search and replace as mentioned above.

- The milestone issue can be dealt with by assigning the milestone
  property to an item. It would be nicer if this just worked if an item
  doesn't have an effort property.

- The problems with reports can be solved by changing the report
  definition (via customize) 

I'll have to work with the taskjuggler list to see if and what we can do
about these issues, if we can somehow ease the migration.

Hope that helps
Christian

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

___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: task juggler export

2010-09-06 Thread Christian Egli
Eric S Fraga  writes:

> However, org-taskjuggler seems to use the global value regardless.  

Hm, org-taskjuggler doesn't do anything magic here. It just takes the
value of org-export-taskjuggler-default-project-duration.

> Is there something I need to do to get it to pay attention to my file
> local variable value? A pointer to a relevant section in the emacs
> lisp manual would suffice

I just looked at the help string for defcustom (C-h f defcustom) where
it says: 

> If symbol has a local binding, then this form affects the local
> binding. This is normally not what you want. Thus, if you need to load
> a file defining variables with this form, or with `defvar' or
> `defconst', you should always load that file _outside_ any bindings
> for these variables. (`defvar' and `defconst' behave similarly in this
> respect.)

So if I understand this correctly it appears that defcustom is
overwriting your file variable. I don't understand however how you could
make your file variable work.

Maybe the variable org-export-taskjuggler-default-project-duration needs
to be buffer-local. How does this interact with defcustom?

Thanks
Christian

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


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[O] Publishing problem on Worg due to babel intro

2011-08-11 Thread Christian Egli
Hi all

I enhanced the taskjuggler tutorial on worg. However the fix is not
published as there is a problem with the intro page for Babel[1] (see
also the publishing report[2]). The page also fails if I try to publish
it locally with the following error message:

mapc: Wrong type argument: consp, nil

I don't understand where the problem is with this page but I'd
appreciate if any of the authors (Eric, Dan, Tom) or anyone else could
look into it.

Thanks
Christian

Footnotes: 
[1]  http://orgmode.org/worg/org-contrib/babel/intro.html
[2]  http://orgmode.org/worg/publishing.txt
-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland




Re: [O] Publishing problem on Worg due to babel intro

2011-08-19 Thread Christian Egli
Eric Schulte  writes:

> When writing a code block *all* variables require a default value.  I've
> added default values to all of the variables in this file and it now
> exports as expected.

In the mean time I moved the intro to the FIXME directory so that my
stuff would be published on worg. Now that the intro exports do you want
me to move it back to where it belongs?

Thanks
Christian

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

-
Viel Neues fuer Hoerspiel-Fans: Eine aktuelle Uebersicht des Angebots bei der 
SBS finden Sie unter http://www.sbs.ch/hoerspiele .



Re: [O] Publishing problem on Worg due to babel intro

2011-08-22 Thread Christian Egli
Eric Schulte  writes:

> Christian Egli  writes:
>> In the mean time I moved the intro to the FIXME directory so that my
>> stuff would be published on worg. Now that the intro exports do you want
>> me to move it back to where it belongs?
>
> Yes, that would be great.  Thanks -- Eric

Done.
Thanks

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

-
Viel Neues fuer Hoerspiel-Fans: Eine aktuelle Uebersicht des Angebots bei der 
SBS finden Sie unter http://www.sbs.ch/hoerspiele .



Re: [O] Time estimates time format?

2011-09-19 Thread Christian Egli
Johan Ekh  writes:

> But I'd like to make estimates in days, weeks or even months. 

You can certainly do that. Have a look at org-effort-durations. You
could for example define the effort as '2d', '4w' or '7m'.

> And have spent time displayed in percentage of the estimate. Is this
> possible?

You might be able to do something along this line. Have a look at the
doc string of org-properties-postprocess-alist where it gives you an
example on how to calculate the remaining time (clocked vs estimated).

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




Re: [O] Time estimates time format?

2011-09-20 Thread Christian Egli
Johan Ekh  writes:

> Thank you,
>
> I've changed to
>
> #+PROPERTY: Effort_ALL 2d 1w 2w 3w 4w 2m
> #+COLUMNS: %40ITEM(Task) %17Effort(Estimated Effort){:} %CLOCKSUM
>
> but there is no mapping between days, weeks, months and hours. For example,
> '2d' + '1w' is summed as '3:00'. How can I change this?

Ah, according to http://orgmode.org/org.html#Column-attributes the {:}
sums the times and treats the times as "HH:MM, plain numbers are hours".
I guess this is a bug? You can define efforts in terms of weeks, etc.
Some parts of org-mode respect it but column view apparently not. Sorry.
Patches or even just proper bug reports are welcome.

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

-
Viel Neues fuer Hoerspiel-Fans: Eine aktuelle Uebersicht des Angebots bei der 
SBS finden Sie unter http://www.sbs.ch/hoerspiele .



Re: [O] The org paper manual - tools used

2011-10-05 Thread Christian Egli
Nick Dokos  writes:

> Marcelo de Moraes Serpa  wrote:
>
>> How was the process, from org file to tex to paper? I think it'd be
>> nice if whoever did it (Carsten?) documented that on Worg. Org is
>> amazing as a publishing platform (for books and ebooks), but I feel
>> the information is still scattered around. 
>
> Unfortunately, the org documentation is not an org file: org.texi is the
> primary file and it has always been a texinfo file. makeinfo is used to
> turn it into an info file, and texi2pdf is used to turn it into a PDF
> file (and thence to paper): see the org Makefile.

Well, back in the olden days the documentation was simple plain text
inside of org.el which I eventually converted into a texinfo file.
Texinfo has some very nice features which at the time org-mode did not
even dream of having (it did not have an agenda and probably no
exporters).

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




Re: [O] Asciidoc

2011-10-21 Thread Christian Egli
Hi

Stephen Nelson-Smith  writes:

> I have a large piece of writing to do, which my publisher wants in
> asciidoc.  I'd prefer to write in orgmode and export as asciidoc. 

I used to use asciidoc but much prefer orgmode now.

> Is this feasible?  Anyone doing this or done this before?

Not directly as far as I know. You have different options:

- Export to odt and from there to mediawiki followed by some text munging
- Use the generic exporter to generate mediawiki again followed by
  some text munging 
- Tweak the generic exporter (don't know how feasible and easy that is)
- Write an exporter. For simple ascii exporter that should be doable.
  There are however different competing starting points. There is an
  experimental generic exporter by Bastien and there is apparently one
  by Jambunathan. Can't tell you which one is better.

Hope that helps

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




Re: [O] Patch for bug in adjusting time ranges in Agenda

2011-10-21 Thread Christian Egli
Hi Carsten

Carsten Dominik  writes:

> I have just checked in a slightly modified patch.

I think there is a problem with this checkin. The variable
org-agenda-move-date-from-past-immediately-to-today is not defined.
Should this be a defcustom somewhere?

Debugger entered--Lisp error: (void-variable 
org-agenda-move-date-from-past-immediately-to-today)
  org-agenda-date-later(1)
  org-agenda-do-date-later(nil)
  call-interactively(org-agenda-do-date-later nil nil)

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




Re: [O] org-taskjuggler export problems

2011-11-07 Thread Christian Egli
Hi 

Johnny  writes:

> I am trying to export a simple project plan from org to taskjuggler
> through org-taskjuggler.el. I cannot get the behavour I expect and
> need do some manual tweaks to get the taskjuggler file working. What
> am I doing wrong?

You're not doing anything wrong. You've hit some bugs in the taskjuggler
exporter.

> 1) The 'end' date specified in the ':taskjuggler_project' base is ignored and
> the default 280d is used. Because the project duration is long this
> throws an error. The 'start' date however seems properly picked up.

Indeed the end date is not picked up. I remember to have tried to fix
this once, but the problem is that the root task serves as both a
container for the project attributes and is a task at the same time. So
if you define the end, you'll both define the end of the project and the
task, which might not be what you want. Can you try to increase the
org-export-taskjuggler-default-project-duration instead?

> 2) The 'task_id' fields are not exported properly.

The taskjuggler exporter uses the task_ids you define just for
dependency resolution. Other than that it creates automatic ids based on
the title of the task. The assumption is that you are not that
interested in defining ids. What do you need them for?

> 3) The 'precedes' property is not exported at all

Yes, this is not implemented. Could you use 'depends' instead? And
possibly use alap scheduling?

Hope that helps
Christian

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




Re: [O] How to estimate effort by week?

2011-11-18 Thread Christian Egli
Christoph LANGE  writes:

> is there any way of estimating effort by week?

Have a look at the doc string of org-effort-durations. 

Documentation:
Conversion factor to minutes for an effort modifier.

Each entry has the form (MODIFIER . MINUTES).

In an effort string, a number followed by MODIFIER is multiplied
by the specified number of MINUTES to obtain an effort in
minutes.

For example, if the value of this variable is (("hours" . 60)), then an
effort string "2hours" is equivalent to 120 minutes.


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




[O] [PATCH 1/5] Add some minimal infrastructure to handle export to both tj2 and tj3

2011-03-16 Thread Christian Egli
* org-taskjuggler.el (org-export-taskjuggler-target-version):
(org-taskjuggler-targeting-tj3-p): Add some minimal infrastructure to
handle export to both tj2 and tj3.
(org-taskjuggler-open-task): Use a different way to purge allocations
for tj2 and tj3.
---
 lisp/org-taskjuggler.el |   14 +-
 1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index 8d6318e..ec6bb30 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -181,6 +181,11 @@ resources for the project."
   :group 'org-export-taskjuggler
   :type 'string)
 
+(defcustom org-export-taskjuggler-target-version 2.4
+  "Which version of TaskJuggler the exporter is targeting."
+  :group 'org-export-taskjuggler
+  :type 'number)
+
 (defcustom org-export-taskjuggler-default-project-version "1.0"
   "Default version string for the project."
   :group 'org-export-taskjuggler
@@ -331,6 +336,10 @@ with the TaskJuggler GUI."
 (command (concat process-name " " file-name)))
 (start-process-shell-command process-name nil command)))
 
+(defun org-taskjuggler-targeting-tj3-p ()
+  "Return true if we are targeting TaskJuggler III."
+  (< org-export-taskjuggler-target-version 3.0))
+
 (defun org-taskjuggler-parent-is-ordered-p ()
   "Return true if the parent of the current node has a property
 \"ORDERED\". Return nil otherwise."
@@ -623,7 +632,10 @@ org-mode priority string."
   (if (and parent-ordered previous-sibling)
  (format " depends %s\n" previous-sibling)
(and depends (format " depends %s\n" depends)))
-  (and allocate (format " purge allocations\n allocate %s\n" allocate))
+  (and allocate (format " purge %s\n allocate %s\n"
+   (or (and (org-taskjuggler-targeting-tj3-p) 
"allocations")
+   "allocate")
+   allocate))
   (and complete (format " complete %s\n" complete))
   (and effort (format " effort %s\n" effort))
   (and priority (format " priority %s\n" priority))
-- 
1.7.1




[O] [PATCH 5/5] Escape double quotes in headlines

2011-03-16 Thread Christian Egli
* org-taskjuggler.el (org-taskjuggler-components): Escape quotes in
headlines.

Taskjuggler will barf if the task names (which are double quoted
strings) contain double quotes.
---
 lisp/org-taskjuggler.el |4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index b39353c..ed3af48 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -354,7 +354,9 @@ information, all the properties, etc."
   (let* ((props (org-entry-properties))
 (components (org-heading-components))
 (level (nth 1 components))
-(headline (nth 4 components))
+(headline 
+ (replace-regexp-in-string 
+  "\"" "\\\"" (nth 4 components) t t)) ; quote double quotes in 
headlines
 (parent-ordered (org-taskjuggler-parent-is-ordered-p)))
 (push (cons "level" level) props)
 (push (cons "headline" headline) props)
-- 
1.7.1




[O] [PATCH 4/5] Remove a spurious debug statement

2011-03-16 Thread Christian Egli
* org-taskjuggler.el (org-taskjuggler-compute-task-leafiness): Remove
a debug statement.
---
 lisp/org-taskjuggler.el |1 -
 1 files changed, 0 insertions(+), 1 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index 5b3f16f..b39353c 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -411,7 +411,6 @@ deeper), then it's not a leaf."
 ;; otherwise examine the rest of the tasks
 (t (push task new-list
   (setq tasks (cdr tasks)))
-(print new-list)
 (nreverse new-list)))
 
 (defun org-taskjuggler-assign-resource-ids (resources)
-- 
1.7.1




[O] [PATCH 3/5] Replace recursive functions with iterative ones

2011-03-16 Thread Christian Egli
* org-taskjuggler.el (org-taskjuggler-compute-task-leafiness):
(org-taskjuggler-assign-resource-ids): Replace recursive
implementation with an iterative one.

That way we can avoid to have ask users to increase
`max-lisp-eval-depth'.
---
 lisp/org-taskjuggler.el |   48 --
 1 files changed, 25 insertions(+), 23 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index 2d16790..5b3f16f 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -397,31 +397,33 @@ a path to the current task."
   "Figure out if each task is a leaf by looking at it's level,
 and the level of its successor. If the successor is higher (ie
 deeper), then it's not a leaf."
-  (cond
-   ((null tasks) nil)
-   ;; if a task has no successors it is a leaf
-   ((null (car (cdr tasks)))
-(cons (cons (cons "leaf-node" t) (car tasks)) 
- (org-taskjuggler-compute-task-leafiness (cdr tasks
-   ;; if the successor has a lower level than task it is a leaf
-   ((<= (cdr (assoc "level" (car (cdr tasks (cdr (assoc "level" (car 
tasks 
-(cons (cons (cons "leaf-node" t) (car tasks)) 
- (org-taskjuggler-compute-task-leafiness (cdr tasks
-   ;; otherwise examine the rest of the tasks
-   (t (cons (car tasks) (org-taskjuggler-compute-task-leafiness (cdr 
tasks))
-
-(defun org-taskjuggler-assign-resource-ids (resources &optional unique-ids)
+  (let (new-list)
+(while (car tasks)
+  (let ((task (car tasks))
+   (successor (car (cdr tasks
+   (cond
+;; if a task has no successors it is a leaf
+((null successor) 
+ (push (cons (cons "leaf-node" t) task) new-list))
+;; if the successor has a lower level than task it is a leaf
+((<= (cdr (assoc "level" successor)) (cdr (assoc "level" task))) 
+ (push (cons (cons "leaf-node" t) task) new-list))
+;; otherwise examine the rest of the tasks
+(t (push task new-list
+  (setq tasks (cdr tasks)))
+(print new-list)
+(nreverse new-list)))
+
+(defun org-taskjuggler-assign-resource-ids (resources)
   "Given a list of resources return the same list, assigning a
 unique id to each resource."
-  (cond
-   ((null resources) nil)
-   (t 
-(let* ((resource (car resources))
-  (unique-id (org-taskjuggler-get-unique-id resource unique-ids)))
-  (push (cons "unique-id" unique-id) resource)
-  (cons resource 
-   (org-taskjuggler-assign-resource-ids (cdr resources) 
-(cons unique-id 
unique-ids)))
+  (let (unique-ids new-list)
+(dolist (resource resources new-list)
+  (let ((unique-id (org-taskjuggler-get-unique-id resource unique-ids)))
+   (push (cons "unique-id" unique-id) resource)
+   (push unique-id unique-ids)
+   (push resource new-list)))
+(nreverse new-list)))
 
 (defun org-taskjuggler-resolve-dependencies (tasks)
   (let ((previous-level 0)
-- 
1.7.1




[O] [PATCH 0/5] Improvements to Taskjuggler export

2011-03-16 Thread Christian Egli
Hi all

I have some long standing improvements to Taskjuggler export which I'd
finally like to push to the repo.

Thanks

Christian Egli (5):
  Add some minimal infrastructure to handle export to both tj2 and tj3
  Mark a task as a milestone if it is a leaf node and cannot be
scheduled
  Replace recursive functions with iterative ones
  Remove a spurious debug statement
  Escape double quotes in headlines

 lisp/org-taskjuggler.el |   76 +++---
 1 files changed, 58 insertions(+), 18 deletions(-)




[O] [PATCH 2/5] Mark a task as a milestone if it is a leaf node and cannot be scheduled

2011-03-16 Thread Christian Egli
* org-taskjuggler.el (org-taskjuggler-compute-task-leafiness): Compute
the leafiness of a node.
(org-taskjuggler-open-task, org-export-as-taskjuggler): Mark a node as
a milestone if it is a leaf and has no effort.

Mark a task as a milestone if it has neither an effort, a duration, an
end or a period. This is needed for tj3 export as tj3 fails to compile
the file if there is a leaf node with no computable end date. tj2
happily ignored the situation, but TJ3 throws an error.
---
 lisp/org-taskjuggler.el |   37 +++--
 1 files changed, 31 insertions(+), 6 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index ec6bb30..2d16790 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -263,9 +263,10 @@ defined in `org-export-taskjuggler-default-reports'."
   (let* ((tasks
  (org-taskjuggler-resolve-dependencies
   (org-taskjuggler-assign-task-ids 
-   (org-map-entries 
-'(org-taskjuggler-components) 
-org-export-taskjuggler-project-tag nil 'archive 'comment
+   (org-taskjuggler-compute-task-leafiness
+(org-map-entries 
+ '(org-taskjuggler-components) 
+ org-export-taskjuggler-project-tag nil 'archive 'comment)
 (resources
  (org-taskjuggler-assign-resource-ids
   (org-map-entries 
@@ -392,6 +393,23 @@ a path to the current task."
(setq previous-level level)
(setq resolved-tasks (append resolved-tasks (list task)))
 
+(defun org-taskjuggler-compute-task-leafiness (tasks)
+  "Figure out if each task is a leaf by looking at it's level,
+and the level of its successor. If the successor is higher (ie
+deeper), then it's not a leaf."
+  (cond
+   ((null tasks) nil)
+   ;; if a task has no successors it is a leaf
+   ((null (car (cdr tasks)))
+(cons (cons (cons "leaf-node" t) (car tasks)) 
+ (org-taskjuggler-compute-task-leafiness (cdr tasks
+   ;; if the successor has a lower level than task it is a leaf
+   ((<= (cdr (assoc "level" (car (cdr tasks (cdr (assoc "level" (car 
tasks 
+(cons (cons (cons "leaf-node" t) (car tasks)) 
+ (org-taskjuggler-compute-task-leafiness (cdr tasks
+   ;; otherwise examine the rest of the tasks
+   (t (cons (car tasks) (org-taskjuggler-compute-task-leafiness (cdr 
tasks))
+
 (defun org-taskjuggler-assign-resource-ids (resources &optional unique-ids)
   "Given a list of resources return the same list, assigning a
 unique id to each resource."
@@ -621,11 +639,17 @@ org-mode priority string."
  (cdr (assoc "complete" task
(parent-ordered (cdr (assoc "parent-ordered" task)))
(previous-sibling (cdr (assoc "previous-sibling" task)))
+   (milestone (or (cdr (assoc "milestone" task))
+  (and (assoc "leaf-node" task)
+   (not (or effort 
+(cdr (assoc "duration" task))
+(cdr (assoc "end" task))
+(cdr (assoc "period" task)))
(attributes 
 '(account start note duration endbuffer endcredit end
-  flags journalentry length maxend maxstart milestone
-  minend minstart period reference responsible
-  scheduling startbuffer startcredit statusnote)))
+  flags journalentry length maxend maxstart minend
+  minstart period reference responsible scheduling
+  startbuffer startcredit statusnote)))
 (insert
  (concat 
   "task " unique-id " \"" headline "\" {\n" 
@@ -639,6 +663,7 @@ org-mode priority string."
   (and complete (format " complete %s\n" complete))
   (and effort (format " effort %s\n" effort))
   (and priority (format " priority %s\n" priority))
+  (and milestone (format " milestone\n"))
   
   (org-taskjuggler-get-attributes task attributes)
   "\n"
-- 
1.7.1




[O] Re: [PATCH 1/5] Add some minimal infrastructure to handle export to both tj2 and tj3

2011-03-17 Thread Christian Egli
Bastien  writes:

> Christian Egli  writes:
>
>> +(defun org-taskjuggler-targeting-tj3-p ()
>> +  "Return true if we are targeting TaskJuggler III."
>> +  (< org-export-taskjuggler-target-version 3.0))
>
> I'm dubious on this one.
>
> Shouldn't it be 
>
> #+begin_src emacs-lisp
> (defun org-taskjuggler-targeting-tj3-p ()
>   "Return true if we are targeting TaskJuggler III."
>   (> org-export-taskjuggler-target-version 3.0))
> #+end
>
> ?

Basically org-export-taskjuggler-target-version can be 2.4 or 3.0. So
org-taskjuggler-targeting-tj3-p should return true if
org-export-taskjuggler-target-version is 3.0 or higher and false
otherwise.

So, let's see what the *scratch* buffer has to say about this

#+begin_src emacs-lisp
(setq org-export-taskjuggler-target-version 2.4)
2.4
(defun org-taskjuggler-targeting-tj3-p ()
  "Return true if we are targeting TaskJuggler III."
  (> org-export-taskjuggler-target-version 3.0))
org-taskjuggler-targeting-tj3-p
(org-taskjuggler-targeting-tj3-p)
nil
(setq org-export-taskjuggler-target-version 3.0)
3.0
(org-taskjuggler-targeting-tj3-p)
nil
(setq org-export-taskjuggler-target-version 3.1)
3.1
(org-taskjuggler-targeting-tj3-p)
t
#+end

Ah, you're right. There is a problem :-\.

The correct version should be 

#+begin_src emacs-lisp
(defun org-taskjuggler-targeting-tj3-p ()
  "Return true if we are targeting TaskJuggler III."
  (>= org-export-taskjuggler-target-version 3.0))
#+end

Let's test this in *scratch*
#+begin_src emacs-lisp
(setq org-export-taskjuggler-target-version 2.4)
2.4

(defun org-taskjuggler-targeting-tj3-p ()
  "Return true if we are targeting TaskJuggler III."
  (>= org-export-taskjuggler-target-version 3.0))
org-taskjuggler-targeting-tj3-p

(org-taskjuggler-targeting-tj3-p)
nil

(setq org-export-taskjuggler-target-version 3.0)
3.0

(org-taskjuggler-targeting-tj3-p)
t

(setq org-export-taskjuggler-target-version 3.1)
3.1

(org-taskjuggler-targeting-tj3-p)
t
#+end

How do we proceed? Do I resubmit the patch?

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




[O] Re: [PATCH 0/5] Improvements to Taskjuggler export

2011-03-17 Thread Christian Egli
Hi Bastien

Bastien  writes:

> Ps: I had trouble applying your patches: they came in one order on the
> list, and on a different one on patchwork.  Applying them from patchwork
> didn't always work, so I had to do a few things manually.  Not a problem.

Is there anything I can do about this? I just commited the changes
locally and used git format-patch and git send-email.

Thanks
Christian

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




[O] Re: [PATCH 0/5] Improvements to Taskjuggler export

2011-03-17 Thread Christian Egli
Hi Marc

Marc-Oliver Ihm  writes:

> Does your fork incorporate Anthonys enhancements (e.g. the
> :TJ:-Drawer) ?

It contains some of his enhancements but not all. He has two versions of
the code. One for tj2 and one for tj3. I would like to have one version
for both. The code as it stands right now can export a project for both
tj2 and tj3. However the way the defaults are set for the reports now
(in defcustom variables) it will not work for tj3. You'll have to
redefine the variables via M-x customize.

If you look at his code you'll see that he has some other enhancements.
There is support for project specific definitions, for global
definitions (such as shifts, etc) and for flags. One really nice idea is
that he added support for Drawers that can contain taskjuggler specific
code that is tied to a specific node. However I would like to implement
this as a src block, which would probably also cover global definitions
and file specific reports. My initial idea was to use something like
#+BEGIN_TASKJUGGLER and #+END_TASKJUGGLER. But nowadays it seems more
kosher to use something along the line of #+BEGIN_SRC taskjuggler. I
don't know what that would entail though. I might have to write a Babel
backend for Taskjuggler. I basically just want to use these code blocks
in my exporter.

> Is it available at your github (https://github.com/egli/org-mode) ?

No, this is stale (I should probably remove it). My most up to date code
should be in the orgmode repo.

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




[O] Re: [PATCH 0/5] Improvements to Taskjuggler export

2011-03-17 Thread Christian Egli
Bastien  writes:

> Did Anthony advertized his enhancements on this list?

AFAIK he did announce them here, but that was a long time ago, probably
more than six months.

Thanks

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




[O] Re: [PATCH 0/5] Improvements to Taskjuggler export

2011-03-18 Thread Christian Egli
Bastien  writes:

> I'm myself using TJ for some reports and I've had to hack things 
> around when we had this compatibility problem.

I almost forgot to ask: What where the problems you had to hack around?

Thanks
Christian

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




[O] Re: Bug: Column view fails to display ITEM row [7.5 (release_7.5.87.gb227)]

2011-03-18 Thread Christian Egli
Julien Danjou  writes:
> On Fri, Mar 18 2011, Christian Egli wrote:
>> I ran a git bisect to find the guilty commit and it turns out that there
>> is a problem with commit c84d77a7a035a142bf114c5e6758c32a20f3fd68.

> I just pushed a fix. Thanks for the report and the bisect!

Thanks for the fix. Works like a charm.

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




[O] [PATCH 3/3] Fix a typo in the commentary.

2011-03-21 Thread Christian Egli
From: Christian Egli 

* org-taskjuggler.el: Fix a typo in the commentary.
---
 lisp/org-taskjuggler.el |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index bcf2c45..f891634 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -144,7 +144,7 @@
 ;;   - Look at org-file-properties, org-global-properties and
 ;; org-global-properties-fixed
 ;;   - What about property inheritance and org-property-inherit-p?
-;;   - Use TYP_TODO as an way to assign resources
+;;   - Use TYPE_TODO as an way to assign resources
 ;;   - Make sure multiple dependency definitions (i.e. BLOCKER on
 ;; previous-sibling and on a specific task_id) in multiple
 ;; attributes are properly exported.
-- 
1.7.1




[O] [PATCH 1/3] Replace recursive implementation with an iterative one

2011-03-21 Thread Christian Egli
From: Christian Egli 

* org-taskjuggler.el (org-taskjuggler-assign-resource-ids): Replace
recursive implementation with an iterative one.

That way we can avoid to have ask users to increase
`max-lisp-eval-depth'.
---
 lisp/org-taskjuggler.el |   16 +++-
 1 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index 9c88f5d..279f46d 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -418,15 +418,13 @@ deeper), then it's not a leaf."
 (defun org-taskjuggler-assign-resource-ids (resources)
   "Given a list of resources return the same list, assigning a
 unique id to each resource."
-  (cond
-   ((null resources) nil)
-   (t
-(let* ((resource (car resources))
-  (unique-id (org-taskjuggler-get-unique-id resource unique-ids)))
-  (push (cons "unique-id" unique-id) resource)
-  (cons resource
-   (org-taskjuggler-assign-resource-ids (cdr resources)
-(cons unique-id 
unique-ids)))
+  (let (unique-ids new-list)
+(dolist (resource resources new-list)
+  (let ((unique-id (org-taskjuggler-get-unique-id resource unique-ids)))
+   (push (cons "unique-id" unique-id) resource)
+   (push unique-id unique-ids)
+   (push resource new-list)))
+(nreverse new-list)))
 
 (defun org-taskjuggler-resolve-dependencies (tasks)
   (let ((previous-level 0)
-- 
1.7.1




[O] [PATCH 2/3] Fix allocations handling for tj3

2011-03-21 Thread Christian Egli
From: Christian Egli 

* org-taskjuggler.el (org-taskjuggler-open-task): Only emit a "purge
allocations" statement if we are not targeting tj3.
---
 lisp/org-taskjuggler.el |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index 279f46d..bcf2c45 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -660,8 +660,8 @@ org-mode priority string."
  (format " depends %s\n" previous-sibling)
(and depends (format " depends %s\n" depends)))
   (and allocate (format " purge %s\n allocate %s\n"
-   (or (and (org-taskjuggler-targeting-tj3-p) 
"allocations")
-   "allocate")
+   (or (and (org-taskjuggler-targeting-tj3-p) 
"allocate")
+   "allocations")
allocate))
   (and complete (format " complete %s\n" complete))
   (and effort (format " effort %s\n" effort))
-- 
1.7.1




[O] [PATCH 0/3] Small fixes to taskjuggler export

2011-03-21 Thread Christian Egli
Hi all

Here are some more small fixes to taskjuggler export

Thanks

Christian Egli (3):
  Replace recursive implementation with an iterative one
  Fix allocations handling for tj3
  Fix a typo in the commentary.

 lisp/org-taskjuggler.el |   22 ++
 1 files changed, 10 insertions(+), 12 deletions(-)




[O] Re: [Patch] For the Manual: using org-crypt

2011-03-23 Thread Christian Egli
ing so will lead to unpredictable results.
+
+To use org-crypt you will need to have something like the following in your
+@file{.emacs}:
+
+@example
+(require 'org-crypt)
+(org-crypt-use-before-save-magic)
+(setq org-tags-exclude-from-inheritance (quote ("crypt")))
+;; GPG key to use for encryption
+;; Either the Key ID or set to nil to use symmetric encryption.
+(setq org-crypt-key nil)
+@end example
+
+If you want to use Public Key Encryption, you will need to generate a
+suitable pubic/private key pair using @command{gnupg}.
+
+Now any text below a headline that has a @samp{:crypt:} tag will be
+automatically be encrypted when the file is saved. If you want to use a
+different tag just customize the @code{org-crypt-tag-matcher} setting.
+
+Preventing tag inheritance stops you having encrypted text inside encrypted
+text.
+
+To decrypt the text just call @kbd{M-x org-decrypt-entry} and the encrypted
+text where the point is will be replaced with the plain text. If you use this
+feature a lot, you will probably want to bind @kbd{M-x org-decrypt-entry} to
+a key.
 
 @node Hacking, MobileOrg, Miscellaneous, Top
 @appendix Hacking


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




[O] [TaskJuggler][Poll] Support for the new effort durations?

2011-03-28 Thread Christian Egli

The Effort property previously had no unit attached. With release 7.5 of
orgmode you can now attach units to it such as 4h, 2d or 2m. The
taskjuggler exporter however doesn't support this feature yet. It
currently assumes that if is simply a number that we are talking about
days. If the format is something like 5:30 it assumes that the effort is
in hours:minutes. It has no support for other formats (weeks, months
which taskjuggler itself would support).

Now I suppose the exporter should honor the new effort durations that
were introduced in 7.5. This is not that hard to change. However this
would mean that existing orgmode files will be exported differently,
i.e. the change is not backwards compatible.

At the moment I do not know how to deal with this. Should I just move to
the new effort durations and ask the user to upgrade their orgmode files
or more specifically to upgrade their effort properties to the new
effort durations format?

Thoughts?

Thanks
Christian

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




[O] Re: Test framework needed

2011-03-30 Thread Christian Egli
Rainer M Krug  writes:

>> http://www.emacswiki.org/emacs/UnitTesting
>
> Am I right in assuming, that all of the possible test frameworks would
> require org files and the expected output (tengle, export to ...,
> agenda, ...)? In this case, would it make sense to start collecting
> those, as they can easily be user contributed, consequently representing
> a cross section of the use cases (even not intended use cases)?

Before you go too far with this; Orgmode already contains a unit test
suite. Look at the README in the testing directory
(http://orgmode.org/w/?p=org-mode.git;a=blob_plain;f=testing/README.org;hb=HEAD)

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




[O] Re: [taskjuggler] small edits to org-taskjuggler.el for tj3

2011-04-05 Thread Christian Egli
Hi Gregory

"Sullivan, Gregory (US SSA)"  writes:

> Appended is a patch with a couple of small changes to
> org-taskjuggler.el, addressing the following issues:

Thanks for your patch. 

> General:
>
> * in org-taskjuggler-open-project, the duration is never calculated
> (default is always used).

Good catch and thanks for your patch. Unfortunately the patch causes
problems with my export. The duration is now correctly calculated,
however the root task now also has an end attribute which causes
problems down the road and TJ2 tells me that "End of task foo does not
fit into the project time frame. Try using a later project end date".
But no matter how much I put the end date into the future the issue
remains. If I remove the end attribute from the root task it seems to
work. 

This might be an inherent problem with the fact that the exporter uses
the root task also as a container for project specific information.

> Specific to tj3:
> * the reports need a "formats" attribute
> * I wasn't sure about how best to maintain backwards compatibility
> with the default report strings, as I override the taskjuggler version
> in the .org file (not in my .emacs file). 

The reports are a problem. Right now they are defined in a custom
definition. To maintain backwards compatibility we could probably just
add a new custom definition for tj3 reports and use that one if we're
exporting to tj3.

> * for tj3, I found that I needed to put a "scheduling" property in the
> top level task, with value "asap". TaskJuggler III v0.0.11

Are you suggesting we should insert this automatically? Shouldn't this
be at the users discretion?

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




[O] Re: [taskjuggler] small edits to org-taskjuggler.el for tj3

2011-04-05 Thread Christian Egli
Christian Egli  writes:

>> * in org-taskjuggler-open-project, the duration is never calculated
>> (default is always used).
>
> Good catch and thanks for your patch. Unfortunately the patch causes
> problems with my export. The duration is now correctly calculated,
> however the root task now also has an end attribute which causes
> problems down the road and TJ2 tells me that "End of task foo does not
> fit into the project time frame. Try using a later project end date".
> But no matter how much I put the end date into the future the issue
> remains. If I remove the end attribute from the root task it seems to
> work. 

The following patch seems to work. If you're OK with it I will commit.

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index f891634..20bd91f 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -553,11 +553,11 @@ specified it is calculated
(headline (cdr (assoc "headline" project)))
(version (cdr (assoc "version" project)))
(start (cdr (assoc "start" project)))
-   (end (cdr (assoc "end" project
+   (period (or (cdr (assoc "period" project))
+   (format "%s +%sd" start 
org-export-taskjuggler-default-project-duration
 (insert
- (format "project %s \"%s\" \"%s\" %s +%sd {\n }\n"
-unique-id headline version start
-org-export-taskjuggler-default-project-duration
+ (format "project %s \"%s\" \"%s\" %s {\n }\n"
+unique-id headline version period
 
 (defun org-taskjuggler-filter-and-join (items)
   "Filter all nil elements from ITEMS and join the remaining ones

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





Re: [O] Formal description of Org files

2011-04-15 Thread Christian Egli
Carsten Dominik  writes:

> At FOSDEM, someone asked me if there was a formal description of the
> structure of Org files, in some language that would be the input for a
> parser (or parser generator?) so that Org file could be easily parsed.

Maybe the person was talking about antlr[1], "ANother Tool for Language
Recognition, a language tool that provides a framework for constructing
recognizers, interpreters, compilers, and translators from grammatical
descriptions containing actions in a variety of target languages".

It even seems to have preliminary support for generating an elisp
parser[2][3]

There is also an emacs mode for editing antlr files[4].

Sounds like an interesting project.

Thanks
Christian

Footnotes: 
[1]  http://www.antlr.org/
[2]  http://www.antlr.org/wiki/display/ANTLR3/Code+Generation+Targets
[3]  https://github.com/olabini/antlr-elisp
[4]  http://antlr-mode.sourceforge.net/
-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland




[O] Build error in git HEAD with org-bibtex.el

2011-04-28 Thread Christian Egli
Hi all

When doing a `make update` I get the following compile error:

~/src/org-mode $ make update
git pull
Already up-to-date.
/usr/bin/make clean
make[1]: Entering directory `/home/eglic/src/org-mode'
[snip]
emacs -batch -q -no-site-file -eval "(setq load-path (cons (expand-file-name 
\"./lisp/\") (cons \"/usr/local/share/emacs/site-lisp\" load-path)))" -f 
batch-byte-compile lisp/org-bibtex.el

In toplevel form:
lisp/org-bibtex.el:257:8:Error: Byte-compiling a redefinition of `get' will not 
work - use `labels' instead
make[1]: *** [lisp/org-bibtex.elc] Error 1
make[1]: Leaving directory `/home/eglic/src/org-mode'
make: *** [update] Error 2

This is using GNU Emacs 23.1.1 (x86_64-pc-linux-gnu, GTK+ Version 2.22.0) of 
2011-03-04 on yellow, modified by Debian

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




Re: [O] [semi-OT] issue trackers?

2011-05-06 Thread Christian Egli
Matt Price  writes:

> I'm collaborating on a project where I'm starting to feel the need for
> a shared issue tracker. Anyone have any suggestions? 

We use Redmine[1] here which is very nice and flexible. What I do is
that I read the tasks from Redmine into org-mode using org-feed.el[2]. I
have not had the time to implement a way to push my changes back to
redmine. This should be doable as Redmine has a RESTful interface. John
Wiegeley has shown a way to push back data to Bugzilla[3].

Hope that helps
Christian

Footnotes: 
[1]  http://www.redmine.org/
[2]  http://orgmode.org/worg/org-contrib/org-feed.html
[3]  http://www.mail-archive.com/emacs-orgmode@gnu.org/msg25391.html
-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland




Re: [O] print booklet from orgmode

2011-05-16 Thread Christian Egli
Matt Lundin  writes:

> Marc Spitzer  writes:

>> http://www.toodledo.com/booklet.php
>>
>> Does org mode have such a feature?
>
> Here's an old post with a script to generate something similar. I have
> no idea whether it still works:
>
> http://permalink.gmane.org/gmane.emacs.orgmode/3910

As far as I know it should still work and is included in the
contrib/scripts directory under the name of org2hpda (see
http://orgmode.org/w/?p=org-mode.git;a=blob;f=contrib/scripts/org2hpda;hb=HEAD).

I guess if you also wanted to have the top tasks you need to enhance the
script somewhat, i.e. invoke an agenda view in Emacs, export and include
it in the booklet. Let me know if you have any problems.

Thanks
Christian

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




Re: [O] [Patch] For the Manual: using org-crypt

2011-05-27 Thread Christian Egli
Carsten Dominik  writes:

> Is anyone working on making this a complete patch?

Sorry, no.

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




Re: [O] (French/german) Collecting holidays?

2011-05-30 Thread Christian Egli
Philipp Haselwarter  writes:

> Would it make sense to share setups for `holiday-local-holidays'? Maybe
> on worg or emacs-wiki?
>
> I'm looking for french and german holidays, if anyone happens to have
> those set up :)

Have you checked
http://www.emacswiki.org/emacs/CalendarLocalization#toc12?

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




Re: [O] Agenda Bulk Scatter bug

2011-06-08 Thread Christian Egli
Robert Cunningham  writes:

> for a few weeks now, and including the git commit 
> af677f6d0667bacba72defeaee7e76557e68f8c8 that I last tested, the Agenda Bulk 
> Scatter (BS) has had a bug whereby items it reschedules have the DATE lost.

Please, please, if you'd like to get your bug fixed, provide a detailed
bug report[1] and better yet do a git bisect[2] to track down which change
caused the regression. This will greatly increase the chances of the bug
actually getting fixed.

Thanks
Christian

Footnotes: 
[1]  http://orgmode.org/org.html#Feedback
[2]  http://www.kernel.org/pub/software/scm/git/docs/git-bisect.html

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




Re: [O] [PATCH] Support for more flexible effort specifications in TaskJuggler exporter

2011-06-08 Thread Christian Egli
Hi Stuart

Stuart Hickinbottom  writes:

> I've been experimenting with tracking medium-sized tasks in org as a
> work-breakdown and exporting to TaskJuggler to see just how many
> evenings and weekends I'll have to work to meet my promised deadlines! A
> recent patch (patch 638, 6th Match 2011) added support for more flexible
> effort estimate properties such as 4h, 3.5d etc.
>
> Unfortunately, at the moment the TaskJuggler exporter is more fussy over
> this property and only accepts HH:MM or an integer, both of which it
> translates to a number of days when exporting.
>
> The attached patch adds support for passing-through effort
> specifications when they're in the form "REAL UNIT" as they are for TJ,
> supporting the suffixes d, w, m and y in a consistent way to org.
> Support for HH:MM or bare number of days should still work as before. It
> also cleans up another couple of things about the export of effort:
>
> - HH:MM produces a floating point days duration now (was previously
> rounded to an integer)
> - The bare REAL effort regex failed to escape the decimal point (and
> would match any char)
> - Regexes now anchor to the string start to avoid matching the end of
> duff values
> - Docstring updated for more flexible effort specification

Thanks for your patch. I just pushed a patch along the lines of yours
which uses the built-in facilities of orgmode. It handles all effort
durations that are defined in `org-duration-string-to-minutes'. This
brings it in line with the rest of orgmode's effort handling. It also
fixes the documentation in org.texi.

Can you check and see if this fixes all your issues?

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




[O] [Taskjuggler] Backwards incompatible change [was: Support for the new effort durations?]

2011-06-08 Thread Christian Egli

Christian Egli  writes:

> The Effort property previously had no unit attached. With release 7.5 of
> orgmode you can now attach units to it such as 4h, 2d or 2m. The
> taskjuggler exporter however doesn't support this feature yet. It
> currently assumes that if is simply a number that we are talking about
> days. If the format is something like 5:30 it assumes that the effort is
> in hours:minutes. It has no support for other formats (weeks, months
> which taskjuggler itself would support).
>
> Now I suppose the exporter should honor the new effort durations that
> were introduced in 7.5. This is not that hard to change. However this
> would mean that existing orgmode files will be exported differently,
> i.e. the change is not backwards compatible.
>
> At the moment I do not know how to deal with this. Should I just move to
> the new effort durations and ask the user to upgrade their orgmode files
> or more specifically to upgrade their effort properties to the new
> effort durations format?

I pushed a change now which supports the new effort durations. However
this change is NOT BACKWARDS COMPATIBLE. Previously the exporter assumed
that effort estimates such as '2' meant 2 days. It now assumes that you
are talking about 2 minutes. In order to get the same result when
exporting change plain effort estimates such as '2' to '2d'. M-x
query-replace-regexp should get you there.

The info file is updated. I need to fix the tutorial on worg.

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






Re: [O] [PATCH 00/10] Takjuggler exporter improvements

2012-08-09 Thread Christian Egli
Hi Yann

Yann Hodique  writes:

> Here are a couple of patches for org-taskjuggler.el
>
> My main goals with these were to:
>
>  - be able to leverage SCHEDULE/DEADLINE information, so as to be able
>to leverage org timelines in complement to the reports
>
>  - be able to #+BIND some of the exporter variables (such as the
>preamble)
>
>  - be able to define reports in the org file itself, without having to
>mess with a custom variable
>
> Any feedback is highly welcome.

I have looked at your patches. I have not had time to try them but
reading the diffs it looks excellent. They implement some features which
make the exporter much more flexible.

I have one comment to patch "make project umbrella task optional" which
I'll adress separately.

Thanks
Christian

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




Re: [O] [PATCH 07/10] org-taskjuggler: make project umbrella task optional

2012-08-09 Thread Christian Egli
Yann Hodique  writes:

> +(defcustom org-export-taskjuggler-keep-project-as-task t
> +  "Whether to keep the project headline as an umbrella task for
> +  all declared tasks. Setting this to nil will allow maintaining
> +  completely separated task buckets, while still sharing the same
> +  resources pool."

I'm trying to understand the use case here. If I understand correctly
the container headline will no longer unconditionally generate a root
task. So you could have multiple root tasks? Does this work in both
versions of tj?

Thanks
Christian

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




Re: [O] [PATCH 07/10] org-taskjuggler: make project umbrella task optional

2012-08-13 Thread Christian Egli
Yann Hodique  writes:

>>>>>> "Christian" == Christian Egli  writes:

>> I'm trying to understand the use case here. If I understand correctly
>> the container headline will no longer unconditionally generate a root
>> task. So you could have multiple root tasks? Does this work in both
>> versions of tj?
>
> Yes, basically the use case is the following.
[snip]

> AFAICT it seems to work fine with either tj2 or tj3.

OK this clears it up. So basically all the patches are fine from my pov.
Thanks again.

Christian

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




Re: [O] Creating Gantt charts by Exporting to TaskJuggler 3.3.0

2012-09-25 Thread Christian Egli
Buddy Butterfly  writes:

> thanks for info. I will give this a try when I'll find the time.
> At the moment, because of the scrambled handling of task_ids it
> is not really usable.

What exactly is the problem with the handling of task_ids?

Thanks
Christian

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




Re: [O] Creating Gantt charts by Exporting to TaskJuggler 3.3.0

2012-09-25 Thread Christian Egli
Yann Hodique  writes:

> At the moment I'm kinda contemplating doing a major rewrite of the TJ
> exporter to use the org-export framework

That might be a good idea. The currect tj exporter doesn't use any of
the exporting framework. OTOH it is not really a classic exporter in the
sense that it exports the content. Instead it uses the headlines as
nodes and exports those using some conventions. If this can be handled
with the new exporter then sure go for it.

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




Re: [O] [PATCH v3 00/11] Taskjuggler exporter improvements

2012-09-25 Thread Christian Egli

Hi Yann

Bastien  writes:

> I have now applied those patches to master.

I guess we should update the tutorial on worg
(http://orgmode.org/worg/org-tutorials/org-taskjuggler.html). Would you
have time to have a stab at this?

Thanks
Christian

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




Re: [O] org-caldav feedback

2013-01-21 Thread Christian Egli
Torsten Wagner  writes:

> CC. Since Sogo does not allow a print view. Does someone know how to
> create a printable weekly calendar which contains org-agenda entries?
> I barley remember there was a possibility to create a PDF but can't
> find it anymore 

There are the cal-tex-* functions which produce tex from diary files.
See the info entry on Writing Calendar Files. Also there is a Makefile
which uses the cal-tex-* functions to generate hipster style printouts
in contrib/scripts/org2hpda. This might serve as an inspiration.

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




[O] Anyone going to FOSDEM?

2012-01-30 Thread Christian Egli
Hi all

I'm trying to figure out what talks and DevRooms I should go to at
FOSDEM and I was wondering if some fellow orgers are going to be there.
Maybe we could meet for a chat, for dinner or even some hacking.
Unfortunately there doesn't seem to be a GNU devroom this year. Is there
any interest for a meetup?

Thanks
Christian

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




Re: [O] taskjuggler (tj3) export issues and proposals

2012-02-01 Thread Christian Egli
less 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




Re: [O] TaskJuggler 3.1 export (tj3)

2012-02-01 Thread Christian Egli
Hi Rainer

Rainer M Krug  writes:

> I would like to use the export to taskjuggler, but somehow I don't get
> it working - might be me or the fact that I have taskjuggler 3.1.0.
>
> I am trying the example on
>
> http://orgmode.org/worg/org-tutorials/org-taskjuggler.html
>
> but I somehow don't get it to work.

Export to a file which can be consumed by tj3 should work. Opening the
exported file with tj2 silently fails if you do not have tj2 installed.
What exactly isn't working?

> My questions are:
>
> 1) does the taskjuggler export work with tj3 (version 3.1.0) (John
> Hendy says it doesn't ("taskjuggler (tj3) export issues and
> proposals"), but there are patches which should have made it work
> (e.g. Christian Egli, "small edits to org-taskjuggler.el for tj3").
> So: what is the actual status?

As I said, export to tj3 should work. See also my resonse to John Hendy.

> 2) does the example (url above) work for tj3?

The example file should work. Set org-export-taskjuggler-target-version
to 3 and set the org-export-taskjuggler-default-reports to something
that tj3 understands. Export to tj3 should be done using C-c C-e j 
(org-export-taskjuggler), as C-c C-e J silently fails if you don't have
TaskJugglerUI (aka tj2.4) installed. On the resulting tjp file run tj3
and open the result in a browser.

> 3) if no, could somebody provide a simple example org file which works
> with tj3?

The example file works if I follow the steps above. Let me know if you
have any problems. 

Thanks
Christian

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




Re: [O] taskjuggler (tj3) export issues and proposals

2012-02-01 Thread Christian Egli
Rainer M Krug  writes:

> But I am not clear about
>
> 1) how your .org file looks
> 2) your reports.tji looks
> 3) what I have to set in emacs / org variables to use tj3.
>
> Would it be possible to post a small basic example so that one has
> something to start working with? I still feel lost.

I attached a sample org file (basically the one from the worg page) that
also sets (as file variables) the two variables that you need to set.
Also I attached the reports.tji that I'm using. This should answer your
question 1 and 2. As for question 3: If you take the attached org files
all the relevant variables are set for you. If you do it manually you'll
have to set org-export-taskjuggler-target-version and
org-export-taskjuggler-default-reports.

Let me know if the attached files work for you out of the box. I have
some small local changes to the taskjuggler exporter but AFAIK they
should not influence this.

Thanks
Christian

#+PROPERTY: Effort_ALL 2d 5d 10d 20d 30d 35d 50d 
#+PROPERTY: allocate_ALL dev doc test
#+COLUMNS: %30ITEM(Task) %Effort %allocate %BLOCKER %ORDERED

* Accounting Software
:taskjuggler_project:

** Specification
   :PROPERTIES:
   :Effort:   20d
   :BLOCKER:  start
   :allocate: dev
   :END:

** Software Development
   :PROPERTIES:
   :ORDERED:  t
   :BLOCKER:  previous-sibling
   :priority: 1000
   :allocate: dev
   :END:

*** Database coupling
:PROPERTIES:
:Effort:   20d
:END:

*** Back-End Functions
:PROPERTIES:
:Effort:   30d
:task_id:  back_end
:END:

*** Graphical User Interface
:PROPERTIES:
:Effort:   35d
:allocate: paul, seb
:END:

** Software testing
   :PROPERTIES:
   :ORDERED:  t
   :BLOCKER:  previous-sibling
   :allocate: test
   :END:
*** Alpha Test
:PROPERTIES:
:Effort:   5d
:task_id:  alpha
:END:

*** Beta Test
:PROPERTIES:
:Effort:   20d
:task_id:  beta
:allocate: test, paul
:END:

** Manual
   :PROPERTIES:
   :Effort:   50d
   :task_id:  manual
   :BLOCKER:  start
   :allocate: doc
   :END:

** Milestones
*** Project start
:PROPERTIES:
:task_id:  start
:END:

*** Technology Preview
:PROPERTIES:
:BLOCKER:  back_end
:END:

*** Beta version
:PROPERTIES:
:BLOCKER:  alpha
:END:

*** Ship Product to Customer
:PROPERTIES:
:BLOCKER:  beta manual
:END:


* Resources :taskjuggler_resource:
** Developers
   :PROPERTIES:
   :resource_id: dev
   :END:
*** Paul Smith
:PROPERTIES:
:resource_id: paul
:END:
*** Sébastien Bono
:PROPERTIES:
:resource_id: seb
:END:
*** Klaus Müller

** Others
*** Peter Murphy
:PROPERTIES:
:resource_id: doc
:limits:   { dailymax 6.4h }
:END:
*** Dim Sung
:PROPERTIES:
:resource_id: test
:END:


* File Variables

# 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 foo.tjp"
# End:
textreport report "Plan" {
  formats html
  header '== <-query attribute="name"-> =='

  center -8<-
[#Plan Plan] | [#Status Status] | [#Resource_Allocation Resource Allocation]

=== Plan ===
<[report id="plan"]>

=== Status ===
<[report id="status.completed"]>

<[report id="status.ongoing"]>

<[report id="status.future"]>

=== Resource Allocation ===
<[report id="resourceGraph"]>
  ->8-
}

# A traditional Gantt chart with a project overview.
taskreport plan "" {
  headline "Project Plan"
  columns bsi, name, start, end, effort, chart
  loadunit shortauto
  hideresource 1
}

taskreport status "" {
  columns bsi, name { width 150 }, start { width 100 }, end { width 100 },
  effort { width 75 }, status { width 75 }, gauge {width 150 }
  loadunit shortauto

  taskreport completed "" {
headline "Completed tasks"
hidetask plan.complete < 100.0
sorttasks plan.start.up
  }
  taskreport ongoing "" {
headline "Ongoing tasks"
hidetask ~(isleaf() & (plan.start <= ${now}) & (plan.complete < 100.0))
  }
  taskreport future "" {
headline "Future tasks"
hidetask ~(plan.start > ${now} & (plan.complete < 100.0))
  }
}

# A graph showing resource allocation. It identifies whether each
# resource is under- or over-allocated for.
resourcereport resourceGraph "" {
  headline "Resource Allocation Graph"
  columns no, name, effort, weekly 
  loadunit shortauto
  hidetask ~(isleaf() & isleaf_())
  sorttasks plan.start.up
}

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


-
Neu bei der SBS: 9000 Buecher kaufen oder schenken. Mehr dazu finden Sie unter 
http://www.sbs.ch/verkauf


Re: [O] taskjuggler (tj3) export issues and proposals

2012-02-01 Thread Christian Egli
John Hendy  writes:

> Exports fine, but I get this error:

> ./reports.tji:33: Error: Unexpected token 'gauge' found. Expecting one
>
> Is gauge in your tweaks or is this a tj 2.x.x specific syntax?

Ah, sorry. 'gauge' seems to only work in tj3 3.1.0.
 
> By the way, nice report! 

I was trying to squezze it all into one html file so I can open it
easier from Emacs.

Thanks
Christian

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

-
Neu bei der SBS: 9000 Buecher kaufen oder schenken. Mehr dazu finden Sie unter 
http://www.sbs.ch/verkauf



Re: [O] taskjuggler (tj3) export issues and proposals

2012-02-02 Thread Christian Egli
John Hendy  writes:

>> First off let me say that I'm using the taskjuggler exporter with tj3,
>> so it should work.
>>
>
> This statement seems to indicate that org may work out of the box with tj3.

Well if you take it out of the box it doesn't work with tj3. You need to
adapt the target version and the default reports. I think it might be
time to change this since most distros do not have taskjuggler2.4
anymore (except Debian stable is still happily using it) and tj2.4
doesn't even run on Windows or Mac.

>> 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?
>>
>
> Maybe "parent_headline_task_headline"? But that gets tricking for:
>
> * Task Container
> ** Send product samples to X
> ** Send product samples to Y
> ** Send product samples to Z
>
> Append a number? My files are not [too] complex; perhaps the exporter
> should be done while thinking of how org might have worked for the
> Fedora tj example
> (http://www.taskjuggler.org/tj3/examples/Fedora-20/f-20.tjp).

I had a look at the Fedora tj example. This is using tj to the max. It
might not be a good use case for the tj exporter :-). But to understand
your use case, could you maybe send me some example org files of yours,
so I could look at them (off-list if you like)

Thanks
Christian

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




Re: [O] OT: taskjuggler question

2012-02-02 Thread Christian Egli
Nick Dokos  writes:

> But I have no TaskJugglerUI executable, which seems to be what the
> exporter tries to call for export-and-open (C-c C-e J): what am I
> missing?

The TaskJugglerUI exists only if you have taskjuggler2.4 installed. The
exporter predates tj3 and naively assumes that there is a TaskJugglerUI
executable. It should really invoke a browser on the resulting HTML
report[1] when you call export-and-open, at least when you are targeting
tj3. The worst part is that it doesn't even tell the user that something
failed, as it invokes the executable asynchronously using
start-process-shell-command (info: (elisp) Asynchronous Processes). That
way you can continue to work with emacs but emacs doesn't know what
happened to the subprocess. I'll have to do some more research on how to
start a process in the background and still check if it succeeded.

Thanks
Christian

Footnotes: 
[1]  the tricky bit here is of course to find the resulting HTML, as the
name of it is defined in a tj3 report definition. I'd rather refrain
from parsing these report definitions just to find the name of the HTML
file to open.

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




Re: [O] Question: split up files for subprojects using taskjuggler-export (tj3)

2012-02-22 Thread Christian Egli
Hi 

m...@dittmaridoo.de writes:

> I am looking for a solution to split one project into sub-projects, so
> I can distribute the project into sub-files as suggested here:
> http://groups.google.com/group/taskjuggler-users/browse_thread/thread/a98489a0e343ddac

The export of org-mode to taskjuggler can be taken pretty far and can
handle big projects. It is meant for people comfortable with org-mode
that like to work within org-mode. However not all concepts in org-mode
for example have a corresponding concept in taskjuggler and vice versa.
The exporter tries to bridge this mismatch in some cases and ignores
others.

So, what I'm saying is that if you want the full power of taskjuggler
then by all means go for it (i.e. hack your stuff in it directly). If
you want the convenience of org-mode then stay with it and try to
organize the project within org-mode. IMHO using org-mode lessens the
need to structure the projects into sub-files as org-mode is less
verbose and inherently more structured.

If you still would like to split you project some more I'd try to do
something using (tj) include statements, e.g. defining them as your
default reports.

Hope that helps.

Christian

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




Re: [O] Export to multiple HTML files?

2012-03-05 Thread Christian Egli
Nicolas Goaziou  writes:

>> But is there such a function ready to use? I don't think so. 
>
> Ready to use, no. But since you can specify your own publishing
> function, it should be doable.

Actually if you use the mapping API[1] such a function should be fairly
easy to write.


Footnotes: 
[1]  http://orgmode.org/manual/Using-the-mapping-API.html#Using-the-mapping-API
-- 
Christian Egli
Swiss Library for the Blind, Visually Impaired and Print Disabled
Grubenstrasse 12, CH-8045 Zürich, Switzerland




[Orgmode] Re: [FEATURE REQUEST] export to mediawiki

2009-06-08 Thread Christian Egli

Michael Ekstrand  writes:
> Spike Spiegel  writes:
>> it would be awesome if there was an org to mediawiki export
>> functionality as I have a lot of  documentation in a mediawiki

> I would second this suggestion.  In the mean time, exporting to HTML and
> postprocessing with HTML::WikiConverter works reasonably well.

I use the attached sed script to "sort of" convert between org-mode and
mediawiki syntax. This works more or less depending on your definition
of "works". However, long term I think the best solution would be a
transformation via the docbook exporter, similar in spirit to the twiki
exporter by Baoqiu Cui (http://docbook2twiki.googlecode.com) which also
uses the docbook exporter.

Thanks
Christian



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Release 6.28

2009-07-01 Thread Christian Egli

Hi all

Carsten Dominik  writes:

> On Jul 1, 2009, at 9:20 AM, Ulf Stegemann wrote:
>> Carsten Dominik  wrote:
>>> Bulk action
>>> 
>>>
>>> We can add more actions, if you convince me they make sense.
>>
>> IMHO setting scheduled (and maybe deadline) date would make sense.
>
> In what sense?  Shifting all dates by the same amount, or setting them
> all to a fixed date?

I usually display unscheduled TODO items in my agenda as well
(org-agenda-include-all-todo), so if I decide that I should work on some
of them next week then a bulk action to schedule them might come in
handy.

So one use case is to set a fixed scheduled date for a number of TODOs.
In my case these are tasks that have not been scheduled yet.

Another use case is when I decide that there will not be enough time
this week to complete all scheduled tasks. I want to move some of the
tasks to next week. This could be either a shift by 7 days or a
rescheduling to next monday (a fixed date).

Thanks
Christian





___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Ignore sub-items of Scheduled TODOs?

2009-07-03 Thread Christian Egli
Nathan Neff  writes:

> I'd like to know the best way for removing TODO items from the agenda if
> they have a parent item that's been scheduled.

It's not exactly what you want but I found that I like to hide sublevel
TODOs. Have a look at org-agenda-todo-list-sublevels:

org-agenda-todo-list-sublevels is a variable defined in `org-agenda.el'.
Its value is nil

Documentation:
Non-nil means, check also the sublevels of a TODO entry for TODO entries.
When nil, the sublevels of a TODO entry are not checked, resulting in
potentially much shorter TODO lists.

You can customize this variable.

HTH
Christian



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: suggestion: converting plain lists to subtrees

2009-07-24 Thread Christian Egli
Bastien  writes:

>> Bastien -- I think C-c * could do with a mention in the manual section
>> on Plain Lists. Here's a patch which just copies the section on C-c *
>> from the Structure Editing section.
>
> Applied, thanks!

I'm not such a big fan of code or documentation duplication. Here's a
patch that removes this duplication and simply refers to the original
section on C-c *.

Thanks
Christian

diff --git a/doc/org.texi b/doc/org.texi
index 8a65f1a..37cad40 100644
--- a/doc/org.texi
+++ b/doc/org.texi
@@ -1437,13 +1437,8 @@ list.  Finally, even without an active region, a normal 
line will be
 converted into a list item.
 @kindex C-c *
 @item C-c *
-Turn a normal line or plain list item into a headline (so that it
-becomes a subheading at its location). Also turn a headline into a
-normal line by removing the stars. If there is an active region, turn
-all lines in the region into headlines. If the first line in the
-region was an item, turn only the item lines into headlines. Finally,
-if the first line is a headline, remove the stars from all headlines
-in the region.
+Turn a plain list item into a headline (so that it becomes a subheading at
+its location). @xref{Structure editing}, for a detailed explanation.
 @kindex s...@key{left}
 @kindex s...@key{right}
 @item s...@key{left}/@key{right}



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


  1   2   3   >