[Orgmode] Re: FLOSS Weekly show about Org-mode
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?
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?
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?
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
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
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
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
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
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
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
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
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]
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?
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
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
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 ?
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]
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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?
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.
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 ?
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 ?
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?
"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
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
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
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
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
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
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?
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?
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
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
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
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
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?
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
* 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
* 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
* 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
* 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
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
* 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
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
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
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
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
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)]
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.
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
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
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
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
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?
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
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
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
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
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
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?
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
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
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?
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
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
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?]
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
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
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
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
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
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
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
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?
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
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)
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
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
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
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
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)
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?
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
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
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?
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
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