Re: Strategic time planing: Breaking down EFFORT property
Ihor Radchenko writes: > Sven Bretfeld writes: > > I am not sure what you mean by `org-clock-alarm'. We have > `org-clock-sound', which you need to customize for alarm to be played > when clocked time exceeds EFFORT. That's what I mean. > For weekly/monthly/total, you can use clock tables to summarize the time > spend on different projects during the week/month/in total. See > https://orgmode.org/manual/The-clock-table.html > > You can display additional property values in the clock table using > :properties attribute. That will allow seeing clocked time and your > estimates stored in EFFORT_* properties. I think this is what I'm looking for. I considered clock tables to be only for reviews, not planning. But I'm just playing with the feature and seem to be able to do what I want. Thank you Sven
Strategic time planing: Breaking down EFFORT property
Hi everybody My aim is to create workload plans distributing large projects over several months. These are considered to distribute the total effort of several projects into monthly, weekly and daily planing. I cannot figure out how to do this. Guess I have two projects, both with a deadline at the end of the year, one project has a time estimate of 100 hours, the second 50 hours: * Project 1 :PROPERTIES: :EFFORT: 100:00 :END: DEADLINE: <2023-12-24> * Project 2 :PROPERTIES: :EFFORT: 50:00 :END: DEADLINE: <2023-12-24> In order to get them done in time, I would assign a certain workload to the three months Oct, Nov, Dec. Say, with an unequal distribution: Project 1: Oct: 54 hours Nov: 16 hours Dec: 30 hours Project 2: Oct: 10 hours Nov: 25 hours Dec: 15 hours Now, it is the beginning of the first week of October. I make my weekly planning and decide to spent 15 hours of this week with Project 1 and 5 with Project two. Today I would want to work on Project 1 for 4 hours, 3 on Project 2. I'm clocking in to Project 1, setting a org-clock-alarm to remind me when it is time to switch to Project 2: * Project 1 :PROPERTIES: :EFFORT_TOTAL: 100:00 :EFFORT_THIS_MONTH: 54 :EFFORT_THIS_WEEK: 15 :EFFORT_TODAY: 4 :CLOCK_MODELINE_TOTAL: today :END: DEADLINE: <2023-12-24> * Project 2 :PROPERTIES: :EFFORT_TOTAL: 50:00 :EFFORT_THIS_MONTH: 10 :EFFORT_THIS_WEEK: 5 :EFFORT_TODAY: 3 :CLOCK_MODELINE_TOTAL: today :END: DEADLINE: <2023-12-24> Does anybody have an idea how to realize this scenario? Is there a solution that I overlook? I'm not a elisp programmer and have just started to use org-clock, but to me the solution seems to involve breaking down the EFFORT property into several sub-properties as shown above. Of course, each project has several sub-tasks feeding the EFFORT_TODAY property. Thanks for help, Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: How to produce an org-ref citation from ivy-bibtex
Hi John Thank you very much again. Elegant solution, and it works. I just wonder why I seem to be the only one on the list who had that problem. Am I so out of fashion to use org-ref and ivy/helm-bibtex together? I have been doing that for surely 10 years but had to stick with an old version of org-ref until recently (because of a completely different problem that I will post in another thread). Have a nice day, Sven Am Tue, Feb 28, 2023 at 12:07:35PM -0500 schrieb John Kitchin: > You can try something like this > > #+BEGIN_SRC emacs-lisp > (setq bibtex-completion-format-citation-functions > '((org-mode . (lambda (keys) (org-ref-insert-cite-keys keys) "")) > (latex-mode. bibtex-completion-format-citation-cite) > (markdown-mode . bibtex-completion-format-citation-pandoc-citeproc) > (default . bibtex-completion-format-citation-default))) > #+END_SRC > > it seems like ivy-bibtex at least expects some kind of string to be returned, > but org-ref-insert-cite-keys does the insertion for you. > > On Sun, Feb 26, 2023 at 11:19 AM Sven Bretfeld <[1]sven.bretf...@ntnu.no> > wrote: > > Hi everybody > > Is it at all possible to produce a correct org-ref citation format > from ivy-bibtex (or helm-bibtex, I tried both)? What I mean by > "correct" is the format: [[cite:&citekey]]. > > The problem seems to come down to the question what has to be inserted > in the 2nd line here: > > (setq bibtex-completion-format-citation-functions > '((org-mode . ??) > (latex-mode. bibtex-completion-format-citation-cite) > (markdown-mode . > bibtex-completion-format-citation-pandoc-citeproc) > (default . bibtex-completion-format-citation-default))) > > (A) Not setting the variable at all, defaults to producing an ebib > link which is of no use to me at all. > > (B) Putting org-ref-helm-bibtex-insert-citation here (as found on > reddit) does not work, since the function does not seem to exist > anymore. > > (C) Putting org-ref-insert-cite-link here is obviously wrong. Choosing > that from the list of ivy-bibtex-actions, just calls the function > interactively, you have to search for the bib-entry again and the > resulting link looks like: [[cite:&citekey]]^&. The terminating '^&' > obviously makes subsequent LaTeX-exports fall. > > (D) Putting "bibtex-completion-format-citation-org-cite" here, > produces standard org-links: [cite:@citekey]. These are not correctly > exported to a tex file when the org-ref package is loaded. > > The only working solution I have found is to use org-ref's own cite > function org-ref-insert-cite-link. I know that ivy-bibtex can be set > as backend (require 'org-ref-ivy). But in this way ivy-bibtex's other > actions (like opening an associated PDF or note file) are lost. > > It would be nice to be able to use a SINGLE key-binding to select a > bib-entry and then decide what to do with it (insert org reference, > insert tex reference, open pdf, etc.). This was possible earlier (I > did that for years with older versions of org-ref-helm) but is > apparently no longer possible now. > > Many thanks for help and suggestions, > > Sven > > > > References: > > [1] mailto:sven.bretf...@ntnu.no
How to produce an org-ref citation from ivy-bibtex
Hi everybody Is it at all possible to produce a correct org-ref citation format from ivy-bibtex (or helm-bibtex, I tried both)? What I mean by "correct" is the format: [[cite:&citekey]]. The problem seems to come down to the question what has to be inserted in the 2nd line here: (setq bibtex-completion-format-citation-functions '((org-mode . ??) (latex-mode. bibtex-completion-format-citation-cite) (markdown-mode . bibtex-completion-format-citation-pandoc-citeproc) (default . bibtex-completion-format-citation-default))) (A) Not setting the variable at all, defaults to producing an ebib link which is of no use to me at all. (B) Putting org-ref-helm-bibtex-insert-citation here (as found on reddit) does not work, since the function does not seem to exist anymore. (C) Putting org-ref-insert-cite-link here is obviously wrong. Choosing that from the list of ivy-bibtex-actions, just calls the function interactively, you have to search for the bib-entry again and the resulting link looks like: [[cite:&citekey]]^&. The terminating '^&' obviously makes subsequent LaTeX-exports fall. (D) Putting "bibtex-completion-format-citation-org-cite" here, produces standard org-links: [cite:@citekey]. These are not correctly exported to a tex file when the org-ref package is loaded. The only working solution I have found is to use org-ref's own cite function org-ref-insert-cite-link. I know that ivy-bibtex can be set as backend (require 'org-ref-ivy). But in this way ivy-bibtex's other actions (like opening an associated PDF or note file) are lost. It would be nice to be able to use a SINGLE key-binding to select a bib-entry and then decide what to do with it (insert org reference, insert tex reference, open pdf, etc.). This was possible earlier (I did that for years with older versions of org-ref-helm) but is apparently no longer possible now. Many thanks for help and suggestions, Sven
Re: Links to external targets with (or despite) org-ref
Hi John That's working well. Thank you very much. And thousand thanks for org-ref in general. Sven Am Mon, Feb 20, 2023 at 01:07:49PM -0500 schrieb John Kitchin: > The quickest thing might be to remove the store properties on the ref links. > This should do it. > > #+BEGIN_SRC emacs-lisp > (cl-loop for reflink in '("ref" "pageref" "nameref" "eqref" "autoref" "cref" > "Cref" "crefrange" "Crefrange") > do > (setf (cdr (assoc reflink org-link-parameters)) > (org-plist-delete (cdr (assoc reflink org-link-parameters)) :store))) > #+END_SRC > > I guess I don't have that setup quite right in org-ref, it seems like it > should > not clobber other ways to store links. > > On Sun, Feb 19, 2023 at 10:39 AM Sven Bretfeld <[1]sven.bretf...@ntnu.no> > wrote: > > Hi everybody > > I'm looking to create labels/links to specific text positions in org > files (not line number, not header). > > I know that [[file:~/path_to_file::target]] can be used to jump to > <>. That would be fine and works for me -- IF I write the link > manually. > > However, org-ref which I use for citations seems to overwrite the > default behaviour of org-store-link and org-insert-link. So when the > point is on <> and org-store-link is called (C-c l), I get a > prompt "Store link with (default org-ref-store-ref)". No alternatives > are offered when TAB is hit. Hiting RET saves the link as > "Crefrange:target". A corresponding org-insert-link (C-c C-l) produces > a link of the form [[Crefrange:target]] which, when in another file, > of course leads nowhere ("search failed"). How to get the file name > into these links without manually rewriting the link? > > I couldn't find anything on this issue in the org-ref manual or on the > internet. > > Thanks for help, > > Sven > > > > References: > > [1] mailto:sven.bretf...@ntnu.no
Links to external targets with (or despite) org-ref
Hi everybody I'm looking to create labels/links to specific text positions in org files (not line number, not header). I know that [[file:~/path_to_file::target]] can be used to jump to <>. That would be fine and works for me -- IF I write the link manually. However, org-ref which I use for citations seems to overwrite the default behaviour of org-store-link and org-insert-link. So when the point is on <> and org-store-link is called (C-c l), I get a prompt "Store link with (default org-ref-store-ref)". No alternatives are offered when TAB is hit. Hiting RET saves the link as "Crefrange:target". A corresponding org-insert-link (C-c C-l) produces a link of the form [[Crefrange:target]] which, when in another file, of course leads nowhere ("search failed"). How to get the file name into these links without manually rewriting the link? I couldn't find anything on this issue in the org-ref manual or on the internet. Thanks for help, Sven
Re: Hiding a node title in export but not the content
Fraga, Eric writes: > On Thursday, 9 Jan 2020 at 11:38, Sven Bretfeld wrote: >> Works like a charm! Almost perfect. Thank you very much. One problem: >> For some reason the :ignoreheading: tag causes the PROPERTY drawer to be >> exported. > > Ah, probably because the property drawer is now not in the right place > (i.e. immediately after a headline) so prop:nil doesn't affect it. You > may need to disable export of all drawers (d:nil) which may or may not > cause you other problems... Oh yes, works. I never need any drawers in the output, so I disabled them globally: (setq org-export-with-drawers nil) So far no unwanted consequences. Thank you very much, Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: Hiding a node title in export but not the content
Fraga, Eric writes: > On Thursday, 9 Jan 2020 at 09:20, Sven Bretfeld wrote: >> Hi everybody >> >> Is this possible? >> >> ** headline <-- not exported >>:PROPERTIES: <-- not exported >>Some content. <-- exported > > yes. I do this all the time to add structure to a document, structure > that is not required in the exported version. > > I have the following code: > > #+begin_src emacs-lisp > (defun esf/remove-lines-with-ignore-heading-tag (backend) > (message "Deleting lines with ignore heading tag") > (while (search-forward-regexp "^\\*+.*[ > \t]+[a-ZA-Z0-9:]*:ignoreheading:[a-ZA-Z0-9:]*$" (point-max) t) > (cond >((eq backend 'latex) (replace-match "#+latex: % \\&" )) >((eq backend 'html) (replace-match "#+html: " )) >(t (replace-match "" > (message "... done deleting ignored headings.")) > (add-hook 'org-export-before-processing-hook > 'esf/remove-lines-with-ignore-heading-tag) > #+end_src > > which then causes any headline with the ignoreheading tag to be removed, > leaving the subtree under that headline present. Works like a charm! Almost perfect. Thank you very much. One problem: For some reason the :ignoreheading: tag causes the PROPERTY drawer to be exported. So every paragraph starts with the org-brain ID of the node. I have the option prop:nil set in the file but it is ignored for nodes containing the :ignoreheading: tag. Same for other properties like CATEGORY. I saw properties unexpectedly exported already yesterday, before I had your code. It went away after I inserted the prop:nil option. But now it's back. Some changes in a recent update that I'm unaware of? > One caveat: the subtree content inherits behaviour from the previous > headline. For instance, if the previous headline was one that would not > be exported at all, then this subtree will also not be exported. E.g.: This is fine for me. Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Hiding a node title in export but not the content
Hi everybody Is this possible? ** headline <-- not exported :PROPERTIES: <-- not exported Some content. <-- exported The reason is that I use to finely pre-structure articles, starting with org-brain and gradually developing each node into a paragraph of the article. So basically each argumentative or informative block is an individual org-node. In this way paragraphs of the article can be kept mobile during the writing process and they can easily be moved when I decide to restructure the text. In a LaTeX export of the draft, each node-name is, of course, interpreted as a section/subsection title, leaving me with dozens of headlines for a 10-paper draft. Very disturbing while proof-reading. This is why I'm looking for a way to exclude the headlines from the export. They should be interpreted as a blank line, so that LaTeX simply makes a new paragraph. It would be even better if the node names can be converted to margin text instead of completely hiding them. This would be a great orientation help without distracting the reading flow. Thanks for ideas, Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: [O] Feature request: Maintaining multiple init files with one org file
Hi Eric So all in all I feel that there is a demand for my suggestion. Orgmode has the power to yield a real good solution for centralized init file maintenance, but at the moment we have to help ourselves with workarounds. Tag-filtering for tangling functions would be the best way to go in the future. I'm not a programmer, otherwise I would try to implement this. For now I can only hope that somebody competent would do it. For the time being, here is my workaround which I developed inspired by Amin's approach. I describe everything for whoever else is looking for a similar solution: , ~/aktuell/emacs/emacs-config.org | | * Init File | ** Hostname Identification |This section defines variables for all use cases: Some code is needed |only for one machine, some for a sub-group (e.g. all computers |running Linux or all computers having large monitors etc.), some for all computers. | |#+begin_src emacs-lisp :tangle (if allhosts "~/.emacs") |;; variable for my PC at home |(defvar homepc nil) ;; variable for my PC at home |(if (string-match (system-name) "hostname-home") ;<--- set your hostname here |(setq homepc t)) | |;; variable for my PC at office |(defvar officepc nil) |(if (string-match (system-name) "hostname-office") ;<--- set your hostname here |(setq officepc t)) | |;; variable for my laptop |(defvar laptop nil) |(if (string-match (system-name) "hostname-laptop") ;<--- set your hostname here |(setq laptop t)) | |;; variable for Termux/Android |(defvar andr nil) |(if (string-match (system-name) "localhost") ;<--- Termux uses "localhost" |(setq andr t)) | |;; variable for all desktop machines together (i.e. home+office in my case) |(defvar pcs nil) |(if (string-match (system-name) "hostname-home\|hostname-office") <--- set your hostnames here |(setq pcs t)) | |;; variable for all GNU/Linux machines together (home+office+laptop) |(defvar allgnu nil) |(if (string-match (system-name) "hostname-home\|hostname-office\|hostname-laptop") <--- set your hostnames here |(setq allgnu t)) | |;; variable for all machines together (home+office+laptop+Android) |(defvar allhosts nil) |(if (string-match (system-name) "hostname-home\|hostname-office\|hostname-laptop\|localhost") |(setq allhosts t)) | #+end_src | ** Startup File | *** Linux | The code in this section is needed for the init files on all | computers running GNU/Linux (variable: allgnu) | #+begin_src emacs-lisp :tangle (if allgnu "~/.emacs") | (defun tangle-init () |"If the current buffer is 'emacs-config.org' the code-blocks are | tangled, and the tangled file is compiled." |(when (equal (buffer-file-name) | (expand-file-name "~/aktuell/emacs/emacs-config.org"));<---put name of this file here | ;; Avoid running hooks when tangling. | (let ((prog-mode-hook nil)) |(org-babel-tangle | | (add-hook 'after-save-hook 'tangle-init) | #+end_src | *** Android | The code in this section is needed only for emacs running on Android | (variable: andr). | #+begin_src emacs-lisp :tangle (if andr "~/.emacs") | (defun tangle-init () |"If the current buffer is 'emacs-config.org' the code-blocks are | tangled, and the tangled file is compiled." |(when (equal (buffer-file-name) | (expand-file-name | "/sdcard/Aktuell/emacs/emacs-config.org"));<---put name of this file with the Android path here | ;; Avoid running hooks when tangling. | (let ((prog-mode-hook nil)) |(org-babel-tangle | | (add-hook 'after-save-hook 'tangle-init) | #+end_src | | * Other configurations whatsoever | ... | ` Every section of source-code starts with: `#+begin_src emacs-lisp :tangle' and a lisp expression assigning the following source code section to one of the defined variables (homepc, officepc, laptop, andr, pcs, allgnu or allhosts). The code will then end up in the actual init file (~/.emacs) only if the present machine belongs to the respective group, i.e. if this variable is non-nil for it. If the variable is nil, the code section will be ignored on the respective machine. All you have to do is to sync this file to each machine, visit it on each and save it again (which triggers the generation of the .emacs file). Every piece of source code needs to have one of these expressions (actually "allhosts" could do without, since it is the default case if you have headline_args set as shown in my initial email). This is a bit more clumsy than it would be if we could use org tags but it's easier and clearer than includi
Re: [O] Feature request: Maintaining multiple init files with one org file
Hi Armin That's an interesting approach. I didn't think about giving arguments to the :tangle operator. This is basically what I was looking for. Just a bit more to write to each relevant source block. I will give it a try. Sven Amin Bandali writes: > Hello, > > Indeed, a tag-based solution (e.g. with :office:, :home:, etc) > would be great; but what I do right now looks something like > this: > > , > | #+property: header-args :tangle ~/.emacs > | > | * Default Frame > | > | ** All computers > | #+begin_src emacs-lisp > | (defvar myvar "testing") > | #+end_src > | > | ** Office Computer > | #+begin_src emacs-lisp :tangle (when (string= (system-name) "officepc") > "~/.emacs") > | (setq default-frame-alist '( > | (font . "-PfEd-DejaVu Sans > Mono-normal-normal-normal-*-26-*-*-*-m-0-iso10646-1") > | (width . 102) > | (height . 41)) > | #+end_src > | > | ** Laptop > | #+begin_src emacs-lisp :tangle (when (string= (system-name) "mylaptop") > "~/.emacs") > | (setq default-frame-alist '( > | (font . "-PfEd-DejaVu Sans > Mono-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1") > | (width . 80) > | (height . 30)) > | #+end_src > | > | ** More stuff for all computers > | > | #+begin_src emacs-lisp > | (message myvar) > | #+end_src > ` > > In other words, I use `when' and `string=' (from subr.el) and > `system-name' to check the hostname. If it matches what I want, > I return the "~/.emacs" filename, nil otherwise. Alternatively, > you could probably use `if' and return "no" when it doesn't > match, but :tangle nil seems to work just fine so I went with > `when'. > > Hope that helps. > > Best, > > -amin
Re: [O] Feature request: Maintaining multiple init files with one org file
Hi Thanks for the answer. Tim Cross writes: > As your emacs init file is really just a lisp program, it is relatively > easy to implement multiple environment support within the file itself, > which is what I do. At the start of my init file, I just have some elisp > which sets variables representing the platform (linux or mac), the > hostname (I have both a linux and mac box at home and work) and the > profile (home/work). Then it is just if/cond/when conditionals where > needed. I use org to store the file mainly for documentation purposes > and will have the same file on all platforms. The advantage is that it > is the same file on all platforms, the disadvantage is that it is larger > and probably more complex than it would be if you tangled different > files per system. This is pretty much how I do it at the moment. Complexity is indeed the problem here. I have Emacs also running on an Android tablet under Termux. This one needs quite a lot of adjustments to the init file. Already the paths to the org files and to some non-elpa/melpa packages are different. Other packages are not available on Termux (e.g. aspell) or not meaningful at all (X-related stuff, mu4e etc.). Having the same init file here as on the other computers, would easily end up in a mess of IFs and WHENs (and probably slow down the start process on Android). At the moment I have a separate .emacs for the tablet and have to remember changing this file, for ex. whenever I include a new file in the org-agenda-files list. This could be much more tidy with an org approach. > For me this is just 6 of one and half a dozen of the other. YMMV. I do > find there are some things best set/managed via Emacs' custom facility, > so the most useful bit in my init file is the bit which loads different > custom files based on the platform. I don't bother keeping the custom > files in git, so they stay local to each system. I find using custom to > manage face and font settings particularly convenient over managing them > by hand in my init file. I'm trying to use customize as little as possible, since AFAIK there is no way to let customize use an org file instead of a "real" init file. Sven
[O] Feature request: Maintaining multiple init files with one org file
Hi I don't know how you guys maintain init files for different hosts. I have one org-file with the header: #+PROPERTY: header-args :tangle ~/.emacs The file is synced to all my machines and produces the local init files on each. Most configurations are shared, but some are host-specific (e.g. font size). Sadly export filtering does not work with the tangle function. It would be nice to be able to do something like: , | * Default Frame | ** Office Computer:OFFICE: | #+begin_src emacs-lisp | (setq default-frame-alist '( | (font . "-PfEd-DejaVu Sans Mono-normal-normal-normal-*-26-*-*-*-m-0-iso10646-1") | (width . 102) | (height . 41)) | #+end_src | | ** Computer at home :HOME: | #+begin_src emacs-lisp | (setq default-frame-alist '( | (font . "-PfEd-DejaVu Sans Mono-normal-normal-normal-*-18-*-*-*-m-0-iso10646-1") | (width . 150) | (height . 50)) | #+end_src | | ** Laptop :LAPTOP: | #+begin_src emacs-lisp | (setq default-frame-alist '( | (font . "-PfEd-DejaVu Sans Mono-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1") | (width . 80) | (height . 30)) | #+end_src ` It should be clear what this is about. On the office computer you would prepare the file headers to exclude the tags HOME and LAPTOP from being tangled and, after saving/tangling the file, you would have a nice init file suiting this computer. At home the same by excluding the other tags etc. This would save a lot of work and you would have a tidy way to maintain all your init files without (if (string-equal (system-name) clauses. If the noexport tag worked, it would also save a lot of time and mess when debugging your init file in case of an error. I don't actually understand why the developers decided not to implement export filtering in the tangling operations. I know about the COMMENT keyword, but the above example should make clear that this solution is far from handy. Maybe there is another way that escaped me so far? All best, Sven
[O] Superagenda selector ":priority" matches only deadlines
Hi This can't be a feature. The org-super-agenda selector ":priority" matches no entries except those that have a deadline. Example: (setq org-agenda-custom-commands (quote ( (" " "Super Agenda View" ( (agenda "" ((org-agenda-span 'day) (org-super-agenda-groups '((:name "Today " :time-grid t :date today :scheduled today :order 1) (:name "Important " :priority "A" :order 2) < more to follow The 2nd block should match every item with "A" priority. Instead, of the group: * TODO [#A] Test 1 DEADLINE: <2018-07-23 Mo> * TODO [#A] Test 2 SCHEDULED: <2018-07-20 Fr> * TODO [#A] Test 3 * TODO [#B] Test 4 DEADLINE: <2018-07-21 Sa> ... only the first item (Test 1) is displayed. Bug or weird feature? Todos having top priority without having a deadline is a common use case, right? Sven
Re: [O] How to make this horizontal line in org-super-agenda
Eric S Fraga writes: > On Monday, 16 Jul 2018 at 11:33, Sven Bretfeld wrote: >> Does anybody know how alphapapa made these horizontal lines with >> separate the agenda blocks? It can be seen in the "after" screenshot of >> the github main page for org-super-agenda: >> https://github.com/alphapapa/org-super-agenda/blob/master/screenshot-after.png >> >> I cannot figure out how to get those lines. Are they >> color-theme-related? > > Yes, most likely: an overline for the face used for the agenda headings, > possibly the org-agenda-structure face but I haven't tested this. That was easy. Thank you very much. Sven
[O] How to make this horizontal line in org-super-agenda
Hi Does anybody know how alphapapa made these horizontal lines with separate the agenda blocks? It can be seen in the "after" screenshot of the github main page for org-super-agenda: https://github.com/alphapapa/org-super-agenda/blob/master/screenshot-after.png I cannot figure out how to get those lines. Are they color-theme-related? Is it a function which continuously escapes me? Apparently it's not connected to org-super-agenda-fontify-whole-header-line. Thanks for help, Sven
Re: [O] Org-Brain: Bug, was: Org-Brain: Second level headline?
It's a bug. Org-Brain collides with: (setq transient-mark-mode nil) Once commented out, everything works as expected. Sven Sven Bretfeld writes: > Hi > > I'm not sure if I misunderstood a feature or if this is a bug or setup > problem. In org-brain one has two possibilities to create new children > to a node: > > 1. org-brain-add-child (f) --> creates a new org-file > 2. org-brain-new-child (h) --> creates a new headline > > The problem is that only 1st-level headlines are shown in > org-brain-visualize. Shouldn't all headline levels be visualized? > > Example: > > From a file called Software.org, looking like this: > > , Software.org > | #+BRAIN_PARENTS: Manuals > | > | * Emacs > | ** org-mode > | ** AucTeX > | * Gimp > | * Vivaldi > ` > > org-brain-visualize shows (as expected): > > , > | Manuals > | | > | ▽ > | Software > | > | Emacs Gimp Vivaldi > ` > > The word Emacs should be a node showing the children "org-mode" and > "AucTeX". But it shows only its parent and siblings when clicked, no > children become visible: > > , > | +-Gimp > | Software-+-Vivaldi > | | > | ▽ > | Emacs > ` > > Org-Brain would be great for organizing the writing process of article > and book projects etc. The final text could gradually grow out from > mindmap'ish structures. But org-brain's multiple-files approach goes > against it. You can't export an article from hundreds of org files, can > you? So it should be possible to organize a complex "brain" (the > article-to-be) in a single file with several headline levels > (representing the network of information from which the text-body will > gradually grow). > > Thanks to the developer. Great piece of software and a fantastic idea. > > Sven > > (Emacs 26.1, Orgmode 9.1.13, org-brain 20180522.717 from melpa) -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
[O] Org-Brain: Second level headline?
Hi I'm not sure if I misunderstood a feature or if this is a bug or setup problem. In org-brain one has two possibilities to create new children to a node: 1. org-brain-add-child (f) --> creates a new org-file 2. org-brain-new-child (h) --> creates a new headline The problem is that only 1st-level headlines are shown in org-brain-visualize. Shouldn't all headline levels be visualized? Example: >From a file called Software.org, looking like this: , Software.org | #+BRAIN_PARENTS: Manuals | | * Emacs | ** org-mode | ** AucTeX | * Gimp | * Vivaldi ` org-brain-visualize shows (as expected): , | Manuals | | | ▽ | Software | | Emacs Gimp Vivaldi ` The word Emacs should be a node showing the children "org-mode" and "AucTeX". But it shows only its parent and siblings when clicked, no children become visible: , | +-Gimp | Software-+-Vivaldi | | | ▽ | Emacs ` Org-Brain would be great for organizing the writing process of article and book projects etc. The final text could gradually grow out from mindmap'ish structures. But org-brain's multiple-files approach goes against it. You can't export an article from hundreds of org files, can you? So it should be possible to organize a complex "brain" (the article-to-be) in a single file with several headline levels (representing the network of information from which the text-body will gradually grow). Thanks to the developer. Great piece of software and a fantastic idea. Sven (Emacs 26.1, Orgmode 9.1.13, org-brain 20180522.717 from melpa) -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: [O] Inline notes and alignment
George Kettleborough writes: > Have you considered using org-indent-mode? I used to encode the > indentation in my files too before I discovered that indent mode which > lets you easily switch the indentation on and off for the entire buffer > and is just generally easier to use (imo). That's a pretty good idea. I will try org-indent-mode. Wasn't aware of it. Thank you, everybody. Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: [O] Inline notes and alignment
Nicolas Goaziou writes: > Hello, > > Sven Bretfeld writes: > >> Since some months ago the body of inline notes is no longer >> automatically aligned correctly. This is what is expected: >> >> *** Header >> - cursor goes here >> *** END >> >> This is what happens instead: >> >> *** Header >> - cursor goes here >> *** END >> > I changed the indentation rule a while ago (could be years), so it is > aligned "correctly" albeit differently. IIRC the main motivations were : > too much wasted space on the left, and a slower "org-indent.el". Ah, ok I see. Thank you for the reply. Is there any easy way to return to the old rules? With a wide-screen monitor and Emacs permanently in fullscreen I don't care about waste of left space. Cheers, Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
[O] Inline notes and alignment
Hi everybody Since some months ago the body of inline notes is no longer automatically aligned correctly. This is what is expected: *** Header - cursor goes here *** END This is what happens instead: *** Header - cursor goes here *** END If I align the text body manually with whitespaces, is gets correctly aligned for further text or list items produced with M-RET. But this is annoying. I don't know if I changed any configuration or if it came with an update. Until half a year ago, the cursor was correctly placed below the header immediately after producing an inline note with C-c C-x t. Any ideas? Thanks Sven
[O] Problems with org-drill
Hi I don't know how many of you guys use org-drill as vocabulary learning software. I have started some weeks ago to learn Norwegian. The concept and flexibility of the extension (contrib) are great. But there is a problem (bug?). During drill-sessions empty cards continue to show up. About 30-40% of the questions show an empty screen. These empty screens are fully counted as cards in the mini-buffer counter. I use to skip those "cards" with "s" but I have the feeling that this skips real questions which just are not displayed properly. This would mean I'm creating knowledge-gaps in each session. Editing these cards with "e" doesn't seems to work. It only stops the drill-session with the point in the line where I started. There seems to be no rule involved in those "empty screens" showing up. (But I have the feeling they often occur after I give a card score (0-5) differing from the score of the last question.) Neither can I see that there are malformed entries which could explain the phenomenon. Does anyone else have this problem and know how to fix it? Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: [O] Asynchronous mobileorg push/pull
Allen Li writes: > Hello, > > I've started using MobileOrg to do capturing and simple Org tasks on my > phone. Although it seems to work well enough so far, running > org-mobile-push and org-mobile-pull synchronously locks up Emacs for an > unacceptably long period of time. > > Does anyone have any asynchronous solutions for MobileOrg syncing? You can just use a cronjob like: */10 * * * * emacs --batch --load ~/.emacs --eval "(org-mobile-pull)" --eval "(org-mobile-push)" This executes the whole process in the background with another instance of emacs running in batch-mode. Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: [O] Using the file as 1st level headline
Suvayu Ali writes: > On Thu, Sep 17, 2015 at 07:55:07PM +0200, Sven Bretfeld wrote: >> >> * TODO Write book on XY >> ** Introduction >>Text. >> * NEXT Something 1 >> * END >> >> ** Chapter 1 >>Text. >> TODO Something 2 >> END > > If you are using latex export, you should be able to get the above > structure to work with a custom latex-class. Here is an example: > > (add-to-list 'org-latex-classes >'("withtodos" "\\documentclass[11pt]{scrreprt}" > (" %s" . " %s") > ("\\chapter{%s}" . "\\chapter*{%s}") > ("\\section{%s}" . "\\section*{%s}") > ("\\subsection{%s}" . "\\subsection*{%s}") > ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))) > > This will insert the top level headline as a comment. This is great! I'd have never thought about this. Works perfectly. Thank you very much Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: [O] Using the file as 1st level headline
Eric S Fraga writes: > On Thursday, 17 Sep 2015 at 19:55, Sven Bretfeld wrote: > > [...] > > Have you looked at exporting the sub-tree? If you define the > appropriate EXPORT_xxx properties in the sub-tree, it should be > equivalent to having that sub-tree as a file alone. Check the export > options at the top of the help window when you type "C-c C-e ?" Hmm. Not sure how this is actually working. (By the way C-c C-e ? does not work for me [orgmode 8.3.1 on Emacs 24.5.1, ArchLinux]). What I have tried now: ,test.org | | * TODO Write Article on Test | ** Title of the Article | *** First Chapter | First Section of First Chapter | Some Text. Some Text. Some Text. Some Text. Some Text. Some Text. Some | Text. Some Text. Some Text. Some Text. Some Text. Some Text. Some | Text. | *** NEXT Find books on tests :@library: | *** END | ` This works if I export the subtree with the mark somewhere in the 2nd line. Otherwise the export would be reduced to the subtree I'm in. The 2nd line must necessarily contain the article title. This makes the #+TITLE header superfluous. I could live with such a structure. Even if it means that the first level of sectioning corresponds to the third org level. What annoys me more, is the necessity to jump to the 2nd line of the file before doing an export. Is there a way around this? Maybe by configuring which subtree to export, no matter where the mark currently is? Is that what you meant with the EXPORT property definition? Anyway, thanks for your help. You brought me a good step further. The rest is a matter of making the solution more convenient. Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: [O] Using the file as 1st level headline
Hi Eric Eric S Fraga writes: > On Wednesday, 16 Sep 2015 at 18:49, Sven Bretfeld wrote: >> Is it possible to have a file header which is counted as a first level >> headline? > > I am not sure how this relates to the rest of your email. Can you > please expand on this? I should have been more clear. The problem is the project definition. It will become clear below. >> Now, I'm using org to write scientific books and articles. Therefore, >> I want to use 1st level headlines as section titles for LaTeX export. >> Of course, not every section is an individual project---the article in >> total is the project and its doable steps are defined by inline tasks. >> So, what I want to do is something like this: > > Have you actually tried what you wrote? What happens? If I do it that way, each inline-task is treated as a standalone task, not as subtask of a larger project. One of the strengths of Bernt Hansen's setup is the possibility to narrow down the agenda to a specific project and have only its next steps and other subtasks displayed. A project is defined as a headline with TODO keyword which has at least one sublevel headline also containing a TODO keyword. An inline-task inside a standard article structure has no higher level task which would count as the project subsuming the inline-tasks as subtasks. At the moment I'm using this solution: * TODO Introduction Text. * NEXT Something 1 * END * TODO Chapter 1 Text. TODO Something 2 END But this makes "Introduction" and "Chapter 1" individual projects and assigns a single subtask to each named "Something 1" and "Something 2". For a book this can easily sum up to 20 different "projects" (i.e. chapters) which mess up the agenda-view and the work-flow. What would work is: * TODO Write book on XY ** Introduction Text. * NEXT Something 1 * END ** Chapter 1 Text. TODO Something 2 END But this collides with the export, as it turns the chapters into subchapters. So "Introduction" would be 1.1 instead of 1. Furthermore, this is confusing while working on the file. Therefore I was asking if it's possible to assign a TODO keyword to the file itself via a header which would, then, play the role of the project definition subsuming the inline-tasks as subtasks. The only other way would be a redefinition of what a project is. But my lisp knowledge is by far overstrained with this. Basically I'm happy with the TODO-subTODO approach. So it must be a complimentary definition saying basically: "All TODO lines in file xy.org are treated as subtasks to the project `Write book on XY'". > Is the issue, in your case, that the noexport tag on the inlinetasks is > ignored? If so, you could simply define the org-latex-format-inlinetask > function I have above to do nothing? No, that's not the problem. I, too, include them in the export when I need them printed. Sorry, I should have been more clear in the first mail. Thanks for help, Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
[O] Using the file as 1st level headline
Hi all Is it possible to have a file header which is counted as a first level headline? If that sounds weird, this is what I like to do: I'm using Bernt Hansen's setup of orgmode for GTD (http://doc.norang.ca/org-mode.html). In this setup a project is defined as each headline which has a TODO keyword AND has sublevel tasks also containing a TODO keyword: * TODO Project ** NEXT step 1 ** TODO step 2 ** TODO step 3 Now, I'm using org to write scientific books and articles. Therefore, I want to use 1st level headlines as section titles for LaTeX export. Of course, not every section is an individual project---the article in total is the project and its doable steps are defined by inline tasks. So, what I want to do is something like this: , xy.org | | #+TITLE: XY | #+AUTHOR: Sven Bretfeld | #+HEADLINE: TODO Write article on XY | #+CATEGORY: XY article | #+EXCLUDE_TAGS: noexport | | * Introduction and Methodology | Some text. Some text. Some text. Some text. Some text. Some text. Some | text. Some text. | * NEXT Write summary of Smith's thesis @office:noexport: | * END | Some text. Some text. Some text. Some text. Some text. Some text. Some | text. Some text. | * TODO Look up other theories @library:noexport: | * END | ` The purpose is making org-export print the pure article (no TODOs, all headlines are sections, subsections etc.) while making org-agenda say: ,Org Agenda | | Projects | TODO Write article on XY | Project Next Tasks | XY article: NEXT Write summary of Smith's thesis @office:noexport: | Project Subtasks | XY article: TODO Look up other theories@library:noexport: | ` Is that possible? Thank you very much for any help. Sven -- Sven Bretfeld Department of Philosophy and Religious Studies NTNU Trondheim
Re: [O] Problems with org-caldav (wrong-type-argument stringp 47)
Hi David and all I've got it. By try and error I found out that entries like these in an org-file cause the problem: %%(diary-anniversary 6 8 1969) Christian is %d years old Best, and thanks for your help, Sven "Sven Bretfeld" writes: > Hi David > > David Engster writes: > >> Sven Bretfeld writes: >>> - progn: Could not find UID emacs207403667799062360. >> >> I'm currently struck with a nasty cold, so I have trouble thinking. > > Sorry to hear that. I wish you get better soon. > >> But this means that it tries to find this ID in your Org files, and it >> does not seem to be there. You can try to go there by calling >> >> M-x org-id-goto >> >> and yank the above ID. Does this get you anywhere? > > No, doesn't work. > >> If not, could you grep through your Org files and see if there's maybe >> an ID which at least is similar? Maybe some special character was >> stripped while putting the event. > > I deleted all IDs in all org-files as well as > .emacs.d/.org-id-locations. No result. The error-message remains. New > entries in GoogleCalendar are not synced to the inbox. I guess this > depends on the ID error. I have updated to Emacs 24. So this cannot be > the problem. > >> Also, the *org-caldav-debug* buffer might contain more information. > > Here is a debug report. The first call of org-caldav-sync always > produces this error. When called a second time with "resume last sync" > syncing from org to google works, but not the other way round. > > Debugger entered--Lisp error: (error "Could not find UID > emacs207412372310441120.") > signal(error ("Could not find UID emacs207412372310441120.")) > error("Could not find UID %s." "emacs207412372310441120") > (progn (error "Could not find UID %s." uid)) > (if (null marker) (progn (error "Could not find UID %s." uid))) > (when (null marker) (error "Could not find UID %s." uid)) > (let ((marker (org-id-find uid t))) (when (null marker) (error > "Could not find UID %s." uid)) (with-current-buffer (marker-buffer > marker) (goto-char (marker-position marker)) (md5 > (buffer-substring-no-properties (org-entry-beginning-position) > (org-entry-end-position) > org-caldav-generate-md5-for-org-entry("emacs207412372310441120") > (let* ((uid (org-caldav-rewrite-uid-in-event)) (md5 > (org-caldav-generate-md5-for-org-entry uid)) (event > (org-caldav-search-event uid))) (cond ((null event) > (org-caldav-debug-print (format "Org UID %s: New" uid)) > (org-caldav-add-event uid md5 nil nil (quote new-in-org))) ((not > (string= md5 (org-caldav-event-md5 event))) (org-caldav-debug-print > (format "Org UID %s: Changed" uid)) (org-caldav-event-set-md5 event > md5) (org-caldav-event-set-status event (quote changed-in-org))) ((eq > (org-caldav-event-status event) (quote new-in-org)) > (org-caldav-debug-print (format "Org UID %s: Error. Double entry." > uid)) (push (list uid (quote new-in-org) (quote error:double-entry)) > org-caldav-sync-result)) (t (org-caldav-debug-print (format "Org UID > %s: Synced" uid)) (org-caldav-event-set-status event (quote > in-org) > (while (org-caldav-narrow-next-event) (let* ((uid > (org-caldav-rewrite-uid-in-event)) (md5 > (org-caldav-generate-md5-for-org-entry uid)) (event > (org-caldav-search-event uid))) (cond ((null event) > (org-caldav-debug-print (format "Org UID %s: New" uid)) > (org-caldav-add-event uid md5 nil nil (quote new-in-org))) ((not > (string= md5 (org-caldav-event-md5 event))) (org-caldav-debug-print > (format "Org UID %s: Changed" uid)) (org-caldav-event-set-md5 event > md5) (org-caldav-event-set-status event (quote changed-in-org))) ((eq > (org-caldav-event-status event) (quote new-in-org)) > (org-caldav-debug-print (format "Org UID %s: Error. Double entry." > uid)) (push (list uid (quote new-in-org) (quote error:double-entry)) > org-caldav-sync-result)) (t (org-caldav-debug-print (format "Org UID > %s: Synced" uid)) (org-caldav-event-set-status event (quote > in-org)) > (save-current-buffer (set-buffer buf) (goto-char (point-min)) (while > (org-caldav-narrow-next-event) (let* ((uid > (org-caldav-rewrite-uid-in-event)) (md5 > (org-caldav-generate-md5-for-org-entry uid)) (event > (org-caldav-search-event uid))) (cond ((null event) > (org-caldav-debug-print (format "Org UID %s: New" uid)) > (org-caldav-add-event uid md5 nil nil (quote new-in-org))) ((not > (string= md5 (org-caldav-event-md5 event))) (org-caldav-debug-print > (format "Org UID %s: Changed" uid)) (org-cald
Re: [O] Problems with org-caldav (wrong-type-argument stringp 47)
Hi David David Engster writes: > Sven Bretfeld writes: >> - progn: Could not find UID emacs207403667799062360. > > I'm currently struck with a nasty cold, so I have trouble thinking. Sorry to hear that. I wish you get better soon. > But this means that it tries to find this ID in your Org files, and it > does not seem to be there. You can try to go there by calling > > M-x org-id-goto > > and yank the above ID. Does this get you anywhere? No, doesn't work. > If not, could you grep through your Org files and see if there's maybe > an ID which at least is similar? Maybe some special character was > stripped while putting the event. I deleted all IDs in all org-files as well as .emacs.d/.org-id-locations. No result. The error-message remains. New entries in GoogleCalendar are not synced to the inbox. I guess this depends on the ID error. I have updated to Emacs 24. So this cannot be the problem. > Also, the *org-caldav-debug* buffer might contain more information. Here is a debug report. The first call of org-caldav-sync always produces this error. When called a second time with "resume last sync" syncing from org to google works, but not the other way round. Debugger entered--Lisp error: (error "Could not find UID emacs207412372310441120.") signal(error ("Could not find UID emacs207412372310441120.")) error("Could not find UID %s." "emacs207412372310441120") (progn (error "Could not find UID %s." uid)) (if (null marker) (progn (error "Could not find UID %s." uid))) (when (null marker) (error "Could not find UID %s." uid)) (let ((marker (org-id-find uid t))) (when (null marker) (error "Could not find UID %s." uid)) (with-current-buffer (marker-buffer marker) (goto-char (marker-position marker)) (md5 (buffer-substring-no-properties (org-entry-beginning-position) (org-entry-end-position) org-caldav-generate-md5-for-org-entry("emacs207412372310441120") (let* ((uid (org-caldav-rewrite-uid-in-event)) (md5 (org-caldav-generate-md5-for-org-entry uid)) (event (org-caldav-search-event uid))) (cond ((null event) (org-caldav-debug-print (format "Org UID %s: New" uid)) (org-caldav-add-event uid md5 nil nil (quote new-in-org))) ((not (string= md5 (org-caldav-event-md5 event))) (org-caldav-debug-print (format "Org UID %s: Changed" uid)) (org-caldav-event-set-md5 event md5) (org-caldav-event-set-status event (quote changed-in-org))) ((eq (org-caldav-event-status event) (quote new-in-org)) (org-caldav-debug-print (format "Org UID %s: Error. Double entry." uid)) (push (list uid (quote new-in-org) (quote error:double-entry)) org-caldav-sync-result)) (t (org-caldav-debug-print (format "Org UID %s: Synced" uid)) (org-caldav-event-set-status event (quote in-org) (while (org-caldav-narrow-next-event) (let* ((uid (org-caldav-rewrite-uid-in-event)) (md5 (org-caldav-generate-md5-for-org-entry uid)) (event (org-caldav-search-event uid))) (cond ((null event) (org-caldav-debug-print (format "Org UID %s: New" uid)) (org-caldav-add-event uid md5 nil nil (quote new-in-org))) ((not (string= md5 (org-caldav-event-md5 event))) (org-caldav-debug-print (format "Org UID %s: Changed" uid)) (org-caldav-event-set-md5 event md5) (org-caldav-event-set-status event (quote changed-in-org))) ((eq (org-caldav-event-status event) (quote new-in-org)) (org-caldav-debug-print (format "Org UID %s: Error. Double entry." uid)) (push (list uid (quote new-in-org) (quote error:double-entry)) org-caldav-sync-result)) (t (org-caldav-debug-print (format "Org UID %s: Synced" uid)) (org-caldav-event-set-status event (quote in-org)) (save-current-buffer (set-buffer buf) (goto-char (point-min)) (while (org-caldav-narrow-next-event) (let* ((uid (org-caldav-rewrite-uid-in-event)) (md5 (org-caldav-generate-md5-for-org-entry uid)) (event (org-caldav-search-event uid))) (cond ((null event) (org-caldav-debug-print (format "Org UID %s: New" uid)) (org-caldav-add-event uid md5 nil nil (quote new-in-org))) ((not (string= md5 (org-caldav-event-md5 event))) (org-caldav-debug-print (format "Org UID %s: Changed" uid)) (org-caldav-event-set-md5 event md5) (org-caldav-event-set-status event (quote changed-in-org))) ((eq (org-caldav-event-status event) (quote new-in-org)) (org-caldav-debug-print (format "Org UID %s: Error. Double entry." uid)) (push (list uid (quote new-in-org) (quote error:double-entry)) org-caldav-sync-result)) (t (org-caldav-debug-print (format "Org UID %s: Synced" uid)) (org-caldav-event-set-status event (quote in-org)) (dolist (cur (org-caldav-filter-events nil)) (org-caldav-debug-print (format "Cal UID %s: Deleted in Org" (car cur))) (org-caldav-event-set-status cur (quote deleted-in-org
Re: [O] Problems with org-caldav (wrong-type-argument stringp 47)
Hi David David Engster writes: > Sven Bretfeld writes: >> (setq org-caldav-files "/home/sven/Dropbox/myconf/testlocalcal.org") > > No, that's wrong. It has to be a list of files: > > (setq org-caldav-files '("/home/sven/Dropbox/myconf/testlocalcal.org")) Yes, that did it. Thank you. Now syncing works but with error messages that appear sometimes: - progn: Could not find UID emacs207403667799062360. And at other times: - void-function pop-to-buffer-same-window Could the last one be a function not implemented in my 23 version of Emacs? See a full debugg below. The first one is strange to me too. That's a nice package. I'm trying to automatize the sync process by a cronjob and tell you my experiences. Sven Debugger entered--Lisp error: (void-function pop-to-buffer-same-window) (pop-to-buffer-same-window (current-buffer)) (save-current-buffer (set-buffer (get-buffer-create "*org caldav sync result*")) (setq buffer-read-only nil) (erase-buffer) (insert "CalDAV Sync finished.\n\n") (if (null org-caldav-sync-result) (insert "Nothing was done.") (insert "== Sync errors: \n\n") (let ... ...) (insert "\n== Successful syncs: \n\n") (org-caldav-sync-result-print-entries ...)) (pop-to-buffer-same-window (current-buffer)) (setq buffer-read-only t) (goto-char (point-min)) (use-local-map org-caldav-sync-results-mode-map)) (with-current-buffer (get-buffer-create "*org caldav sync result*") (setq buffer-read-only nil) (erase-buffer) (insert "CalDAV Sync finished.\n\n") (if (null org-caldav-sync-result) (insert "Nothing was done.") (insert "== Sync errors: \n\n") (let ... ...) (insert "\n== Successful syncs: \n\n") (org-caldav-sync-result-print-entries ...)) (pop-to-buffer-same-window (current-buffer)) (setq buffer-read-only t) (goto-char (point-min)) (use-local-map org-caldav-sync-results-mode-map)) org-caldav-display-sync-results() (progn (org-caldav-display-sync-results)) (if org-caldav-show-sync-results (progn (org-caldav-display-sync-results))) (when org-caldav-show-sync-results (org-caldav-display-sync-results)) org-caldav-sync() call-interactively(org-caldav-sync t nil) execute-extended-command(nil) call-interactively(execute-extended-command nil nil) Debugger entered--Lisp error: (void-function pop-to-buffer-same-window) (pop-to-buffer-same-window (current-buffer)) (save-current-buffer (set-buffer (get-buffer-create "*org caldav sync result*")) (setq buffer-read-only nil) (erase-buffer) (insert "CalDAV Sync finished.\n\n") (if (null org-caldav-sync-result) (insert "Nothing was done.") (insert "== Sync errors: \n\n") (let ... ...) (insert "\n== Successful syncs: \n\n") (org-caldav-sync-result-print-entries ...)) (pop-to-buffer-same-window (current-buffer)) (setq buffer-read-only t) (goto-char (point-min)) (use-local-map org-caldav-sync-results-mode-map)) (with-current-buffer (get-buffer-create "*org caldav sync result*") (setq buffer-read-only nil) (erase-buffer) (insert "CalDAV Sync finished.\n\n") (if (null org-caldav-sync-result) (insert "Nothing was done.") (insert "== Sync errors: \n\n") (let ... ...) (insert "\n== Successful syncs: \n\n") (org-caldav-sync-result-print-entries ...)) (pop-to-buffer-same-window (current-buffer)) (setq buffer-read-only t) (goto-char (point-min)) (use-local-map org-caldav-sync-results-mode-map)) org-caldav-display-sync-results() (progn (org-caldav-display-sync-results)) (if org-caldav-show-sync-results (progn (org-caldav-display-sync-results))) (when org-caldav-show-sync-results (org-caldav-display-sync-results)) org-caldav-sync() call-interactively(org-caldav-sync t nil) execute-extended-command(nil) call-interactively(execute-extended-command nil nil)
[O] Problems with org-caldav (wrong-type-argument stringp 47)
Hi Thank you very much for org-caldav. I've waited for it since years. However, I have problems on my first sync. I think I have done everything correctly: (setq load-path (cons "~/elisp/org-caldav" load-path)) (require 'org-caldav) (setq org-caldav-url "https://www.google.com/calendar/dav";) (setq org-caldav-calendar-id "##@group.calendar.google.com") (setq org-caldav-inbox "/home/sven/Dropbox/myconf/testcal.org") (setq org-caldav-files "/home/sven/Dropbox/myconf/testlocalcal.org") ;(setq org-icalendar-timezone "Europe/Berlin") I also replaced url-dav.el by the patched version (I'm using Emacs 23.4.1 under Ubuntu). Find below an error report, that comes after some seconds (sometimes a minute) during the initial sync. The minibuffer displays "Reading 543 Bytes" for some time, then it breaks with the error-message. Neither the files, nor GoogleCalendar show any changes afterwards (e.g. no IDs are created in testlocalcal.org). I'm hoping that I can get this to work. Thanks for help, Sven Debugger entered--Lisp error: (wrong-type-argument stringp 47) file-exists-p(47) (not (file-exists-p file)) (if (not (file-exists-p file)) (progn (message "non-existent agenda file %s. [R]emove from list or [A]bort?" ...) (let ... ...))) (when (not (file-exists-p file)) (message "non-existent agenda file %s. [R]emove from list or [A]bort?" (abbreviate-file-name file)) (let (...) (cond ... ...))) org-check-agenda-file(47) (if (bufferp file) (set-buffer file) (org-check-agenda-file file) (set-buffer (org-get-agenda-file-buffer file))) (catch (quote nextfile) (if (bufferp file) (set-buffer file) (org-check-agenda-file file) (set-buffer ...)) (widen) (setq bmp (buffer-modified-p)) (org-refresh-category-properties) (setq org-todo-keywords-for-agenda (append org-todo-keywords-for-agenda org-todo-keywords-1)) (setq org-done-keywords-for-agenda (append org-done-keywords-for-agenda org-done-keywords)) (setq org-todo-keyword-alist-for-agenda (append org-todo-keyword-alist-for-agenda org-todo-key-alist)) (setq org-drawers-for-agenda (append org-drawers-for-agenda org-drawers)) (setq org-tag-alist-for-agenda (append org-tag-alist-for-agenda org-tag-alist)) (save-excursion (remove-text-properties ... ... pall) (when org-agenda-skip-archived-trees ... ...) (goto-char ...) (setq re ...) (while ... ...)) (set-buffer-modified-p bmp)) (while (setq file (pop files)) (catch (quote nextfile) (if ... ... ... ...) (widen) (setq bmp ...) (org-refresh-category-properties) (setq org-todo-keywords-for-agenda ...) (setq org-done-keywords-for-agenda ...) (setq org-todo-keyword-alist-for-agenda ...) (setq org-drawers-for-agenda ...) (setq org-tag-alist-for-agenda ...) (save-excursion ... ... ... ... ...) (set-buffer-modified-p bmp))) (save-restriction (while (setq file ...) (catch ... ... ... ... ... ... ... ... ... ... ... ...))) (save-excursion (save-restriction (while ... ...))) (let ((pa ...) (pc ...) (pall ...) (inhibit-read-only t) (rea ...) bmp file re) (save-excursion (save-restriction ...)) (setq org-todo-keywords-for-agenda (org-uniquify org-todo-keywords-for-agenda)) (setq org-todo-keyword-alist-for-agenda (org-uniquify org-todo-keyword-alist-for-agenda) org-tag-alist-for-agenda (org-uniquify org-tag-alist-for-agenda))) org-agenda-prepare-buffers((47 104 111 109 101 47 115 118 101 110 47 68 114 111 112 98 111 120 47 109 121 99 111 110 102 47 116 101 115 116 108 111 99 97 108 99 97 108 46 111 114 103 "/home/sven/Dropbox/myconf/testcal.org")) (save-excursion (org-agenda-prepare-buffers files) (let* (... file ical-file ical-buffer category started org-agenda-new-buffers) (and ... ...) (when combine ... ... ...) (while ... ...) (org-release-buffers org-agenda-new-buffers))) org-export-icalendar(t 47 104 111 109 101 47 115 118 101 110 47 68 114 111 112 98 111 120 47 109 121 99 111 110 102 47 116 101 115 116 108 111 99 97 108 99 97 108 46 111 114 103 "/home/sven/Dropbox/myconf/testcal.org") apply(org-export-icalendar t (47 104 111 109 101 47 115 118 101 110 47 68 114 111 112 98 111 120 47 109 121 99 111 110 102 47 116 101 115 116 108 111 99 97 108 99 97 108 46 111 114 103 "/home/sven/Dropbox/myconf/testcal.org")) (let ((org-combined-agenda-icalendar-file ...) (org-icalendar-store-UID t) (org-icalendar-date-time-format ...)) (org-caldav-debug-print (format "Generating ICS file %s." org-combined-agenda-icalendar-file)) (apply (quote org-export-icalendar) t (append org-caldav-files ...)) (find-file-noselect org-combined-agenda-icalendar-file)) org-caldav-generate-ics() (setq org-caldav-ics-buffer (org-caldav-generate-ics)) (if (and org-caldav-event-list (y-or-n-p "Last sync seems to have been aborted. Should I try to resume? ")) nil (setq org-caldav-ics-buffer (org-caldav-generate-ics)) (setq org-caldav-event-list nil) (setq org-caldav-sync-result nil) (org-caldav-load-sync-state) (dolist (cur org-caldav-event-list) (org-caldav-event-set-status cur nil)) (org
Re: [O] Using non-org files as agenda files?
Hello Samuel and Eric Thank you for your suggestions. I have tried In-Place Annotations in the meantime. However, that doesn't work because every line of annotation begins with a hard-coded ":", which breaks the orgmode markup. [Hm, now, I'm just thinking about the possibility to simply replace that by "* " in the el.] Switching to babel might be a solution. I will try it. At the moment I'm using org-annotate-file with similar results as Samuel's suggestion would yield. Org-annotate-file didn't work for me in the past, because it didn't recognize the exact line in the associated document (org-annotate-file-add-search) for any reason. But now it works. Anyway, this package is not able to display an annotation within the original file (what In-Place Annotations can do). Thanks, Sven Samuel Wales writes: > On 1/22/13, Sven Bretfeld wrote: >> Is it anyhow possible to use a .tex file as an org-agenda-file? > > It might be possible to put an ID marker in the document. A command > then would take you to a headline in a .org file. That headline can > then have all Org features. > > 1:1 mapping. > > Another command would take you back to that position in the document. > > Samuel -- Prof. Dr. Sven Bretfeld \ CEntrum für CERES \ REligionswissenschaftliche \_Studien__ Ruhr-Universität Bochum Universitätsstraße 150 D-44780 Bochum http://www.ceres.ruhr-uni-bochum.de/en/participants/details/sven-bretfeld/
[O] Using non-org files as agenda files?
Dear all Is it anyhow possible to use a .tex file as an org-agenda-file? This might seem a silly question. The reason is that I stick to auctex for writing my documents. But it would be nice to be able to insert a todo item directly at an appropriate place within a tex-file and have it integrated in org-agenda-view. Maybe this can be done by a workaround using ipa.el (in-place annotations) and setting an orgmode file as ipa-file? Any experiences? Thanks Sven
Re: [O] org-link and gnus-registry
Hi Alan Thanks for your answer. Alan Schmitt writes: > "Sven Bretfeld" writes: > >> As was discussed before in this list, gnus-register is the way to do >> this. Otherwise org-link will not find the message after it has gone to >> another group. >> >> This is not working for me. It might have to do with how org-store-links >> creates the link. For me the links look like this: >> >> [[gnus:Stuff#blu162-ds55e622a1ef424d0bd1f57c9...@phx.gbl][Email from >> Yongbin: Re: Visit]] >> >> "Stuff" is the name of my INBOX. This means the message-ID contains the >> name of the original group. If the message is moved to another group, it >> won't be found. It seems that either org-store-link or org-follow-link >> does not respect gnus-registry. >> >> I cannot find the mistake. Can somebody help me? > > I'm having very mixed results with gnus-registry, and I'm still looking > for a better solution. In the meantime: > - make sure the message is moved from inside gnus, it seems it's > required to be tracked by the registry; Yes, that's given. I don't use any other client. > - if you cannot get to the message, try to search for it (I use notmuch, > which works nicely), figure out the mailbox name, and you can then > manually fix the link by changing the mailbox name there. I use stable > mailboxes for this: archive is for the current month, otherwise the > message is in "old/year/month". Searches and links let me get to > messages really easily. Hmm. This would annihilate the effect, right? It is like not using gnus-registry at all and just change all links manually. I still have the feeling that gnus-registry doesn't work at all for me. The cache file is there (~/Mail/.gnus-registry.eld) and it updates regularly. Only the org-links don't seem to care about message-IDs. Sven -- Prof. Dr. Sven Bretfeld \ CEntrum für CERES \ REligionswissenschaftliche \_Studien__ Ruhr-Universität Bochum Universitätsstraße 150 D-44780 Bochum http://www.ceres.ruhr-uni-bochum.de/en/participants/details/sven-bretfeld/
[O] org-link and gnus-registry
Hi to all I'm trying to setup gnus-registry for use with org-link. What I want to do is reading emails (nnimap) in the INBOX, create a todo with org-remember containing a link to this email, then move the email to another group. As was discussed before in this list, gnus-register is the way to do this. Otherwise org-link will not find the message after it has gone to another group. This is not working for me. It might have to do with how org-store-links creates the link. For me the links look like this: [[gnus:Stuff#blu162-ds55e622a1ef424d0bd1f57c9...@phx.gbl][Email from Yongbin: Re: Visit]] "Stuff" is the name of my INBOX. This means the message-ID contains the name of the original group. If the message is moved to another group, it won't be found. It seems that either org-store-link or org-follow-link does not respect gnus-registry. I cannot find the mistake. Can somebody help me? This is my setup (Emacs 23.4.1, Ubuntu 12.10): , | .gnus.el: ` (setq gnus-registry-install t) (setq gnus-registry-split-strategy 'majority gnus-registry-ignored-groups '(("nnrs" t) ("expired-spool" t) ("out-spool" t) ("deleted-messages" t) ("nndraft" t) ("spamassassined" t) ("spam" t) ("UCE-TMP" t)) gnus-registry-max-entries 2500 ;; this is the default gnus-registry-use-long-group-names t) (gnus-registry-initialize) (setq gnus-refer-article-method '(current (nnregistry))) Thanks for help, Sven
Re: [O] [Bug] Bug in org-depend, was: Strange behavior of property-search and org-tags-view
"Sven Bretfeld" writes: > Whenever I do a property-search (C-a / p) or an org-tags-view, some > org-buffers are touched and need to be saved again, i.e. they display > the ** flag in the status line and in Ibuffer. > > It is always the same three files, that seemingly have changed (in fact, > they didn't change at all). They all belong to my org-agenda-files but > this contains many other files too, which remain unchanged. So, there > are two wired miracles involved: > > 1. What makes these three files so specially vulnerable? > 2. Why does any file (apparently) "change" at all by a search operation? > > I'm using Emacs 23.3.1 under Ubuntu 11.10 and org-mode 7.8.03 of the > sticky branch. Hi It took me a good hour to find the package that produced the problem. It's org-depend. I narrowed down my .emacs to a minimum: (add-to-list 'load-path "~/elisp/org") (add-to-list 'load-path "~/elisp/org/lisp") (require 'org-install) (add-to-list 'load-path "~/elisp/org/contrib/lisp") (require 'org-depend) (setq org-agenda-files (list "~/myconf/mygtd.org" "~/myconf/googlecalendar.org" "~/myconf/from-mobile.org" "~/myconf/diary.org" "~/aktuell/orthodoxy/hab-diary.org")) (global-set-key "\C-ca" 'org-agenda) When I comment out the fifth line (require 'org-depend), everything is fine. With org-depend loaded, a "org-tags-view keywords={Something}" affects the buffers of some of the open org-agenda-files. I still don't know why only some files are affected. It happens only if actually some matches are found by the query. But it's not only the corresponding files which are corrupted. So, I think org-depend needs some revision. It's a useful package, but this bug is annoying. Sven P.S. I had updated to the latest stable version of orgmode, so it's not an obsolete bug.
[O] [Bug] Strange behavior of property-search and org-tags-view
Hi all Whenever I do a property-search (C-a / p) or an org-tags-view, some org-buffers are touched and need to be saved again, i.e. they display the ** flag in the status line and in Ibuffer. It is always the same three files, that seemingly have changed (in fact, they didn't change at all). They all belong to my org-agenda-files but this contains many other files too, which remain unchanged. So, there are two wired miracles involved: 1. What makes these three files so specially vulnerable? 2. Why does any file (apparently) "change" at all by a search operation? I'm using Emacs 23.3.1 under Ubuntu 11.10 and org-mode 7.8.03 of the sticky branch. Thanks for help Sven
Re: [O] [Sticky Agenda] How to create Agenda Buffers in functions
Max Mikhanosha writes: > This is the same bug as Martyn Jago reported earlier, basically I > forgot that separate org agenda commands can be run individually > rather then through (org-agenda) function. > > A temporary workaround in your specific case would be to wrap > (org-batch-agenda) call like this: > > (catch 'exit > (org-batch-agenda "OFFICE/NEXT")) > > I tested it and it seems to work.. The actual fix for the bug will be > similar and will be wrapping bodies of (org-todo-list) (org-tags-list) > and friends with (catch 'exit), but it needs to be done conditionally > as to only do it its called individually and not from (org-agenda) I see. Thank you for hinting me to a workaround. Sven
[O] [Sticky Agenda] How to create Agenda Buffers in functions
Hi all The Sticky Agenda is something I have been waiting for since a long time. Thank you very much! I want to write a function that creates a new frame with several windows, each displaying a different Agenda Views. I fail to find a function that creates special agenda views. Formerly I used org-batch-agenda for similar purposes. But that doesn't work in the sticky branch. This is what I have: (defun my-gtd-frame () (interactive) (save-excursion) (make-frame '( (name . "gtd") (active-alpha . 0.75) (inactive-alpha. 0.8) (top . 110) (left . 2000) (width . 80) (height. 40) (font . "-Adobe-Courier-Medium-R-Normal--18-180-75-75-M-110-ISO8859-1"))) (select-frame-by-name "gtd") (toggle-fullscreen) (org-agenda-goto-today) (delete-other-windows) (split-window-horizontally) (other-window 1) (org-batch-agenda "OFFICE/NEXT") ) Calling this function should create a fullscreen Emacs frame on my second monitor vertically split into two windows. The upper window should display the week-agenda (org-agenda-goto-today), the lower window should contain a special-agenda-view showing all items with the todo-keyword NEXT and the tag OFFICE. Everything works as expected until it comes to the last line. org-batch-agenda seems not to be the correct function to be called here. The minibuffer says: "No catch for tag: exit, nil". Can anybody help? Thanks Sven
Re: [O] MobileOrg for Android 0.8.0
Nick Dokos writes: > Matthew Jones wrote: > >> What org mechanism do you use to put that date in there? We do key >> specifically from those tags that you mentioned. > > I use C-c . (org-time-stamp) to insert such time stamps into my > appts.org file. I assume Sven does the same. Yes, that's right. Sven
Re: [O] MobileOrg 0.8.1 for Android
Hi Tom Tom Regner writes: > I seldom capture notes, so a "Capture" shortcut is of no use to > me; I almost always capture via the android "share this" facility. For those who miss a Capture shortcut: It's also possible to create an icon that calls the capture function. Tasker would be a way to do this. It's explained on the "Scripting" site of the MobileOrg Github. Greetings, Sven
Re: [O] MobileOrg for Android 0.8.0
Hi Matthew Matthew Jones writes: > Can you tell me what you mean by this? What is working is: * TODO Wash clothes SCHEDULED: <2012-02-08 Mi 19:00> and * TODO Prepare Paper DEADLINE: <2012-02-08 Mi 20:00> What seems not to work is: * Lunch with Sheldon Cooper <2012-02-08 Mi 12:00-13:00> Is that supposed to work? I just tested it again. Calendar sync seems to ignore appointments, i.e. dates without SCHEDULED or DEADLINE. I guess that these strings are used as triggers for the Calendar sync mechanism. Greetings, Sven
Re: [O] MobileOrg for Android 0.8.0
Hi Tom Regner writes: > This issue is closed; and with version 0.8.1 my scheduled items /are/ > indeed put in my google-calendar - just awesome. Yes, it's working now with the new update. It seems to work only for scheduled items and deadlines. Wouldn't it be possible to have normal appointments synced? Sven -- Prof. Dr. Sven Bretfeld \ CEntrum für CERES \ REligionswissenschaftliche \_Studien__ Ruhr-Universität Bochum Universitätsstraße 150 D-44780 Bochum http://www.ceres.ruhr-uni-bochum.de/en/participants/details/sven-bretfeld/
[O] MobileOrg for Android 0.8.0
Hi Matthew, hi to all Thank you very much for MobileOrg 0.8. It has improved very much since the last update. Really good work. I have a few questions. 1. Calendar Sync doesn't seem to work on my device. I chose one of my GoogleCalendars to sync to. But the Test item I created didn't show up in the stock calendar app, even after a while. Do I have to create a new calendar to sync to? Or is it necessary to trigger syncing somehow? On the other hand, if a GoogleCalendar is fine, will it sync to the GoogleCalendar proper? 2. Is it now possible to edit org-files within MobileOrg, i.e. actually use MobileOrg as an editor for papers in orgmode? In the past I had occasions where edits were swallowed after syncing. Now, I added just one sentence to an existing org-file in 0.8. It worked! So, is it save to entrust long text-edits to MobileOrg? 3. Would it be possible (in the long run) to have TAGS as a pop-up to choose from in the Capture feature? Just like TODO keywords? Thanks again, Sven
Re: [O] New iCalendar import script
Dear Simon Thank you very much for publishing this script. I have no time to test it right now, but I will do so in a few days. Sven Simon Thum writes: > Hi all, > > I've written an iCalendar import script in ruby (I know, not emacs > lisp, but at the least I should let you be aware). > > I think it's an improvement over the awk script, so you may consider > mentioning it in the appropriate places. See > > https://github.com/simonthum/ical2org > > It has more complete iCalendar support, in particular repeating dates > and Todos. Likely it is easier to adapt to individual requirements. > Also, it works under windows and linux - my win32 awk was missing key > functionality for the script (mktimestamp, IIRC). > > I'm not particularly attached to CC-BY or github, so if you think a > more appropriate long-term place would be orgmode.org then we'll > probably find a way. > > It's in its early stages, for example I'm quite unsure about the > timezone support, so feedback is more than welcome! > > Cheers, > > Simon
Re: [O] how do scientists use org mode?
Hi Christoph For my scientific work (I'm an Indologist) I use orgmode in three ways: 1. _Project planning and calendar management_ That's just the normal thing. I use the GTD approach, extended by some specialties like the tags :BIGROCK: (most important project to work on this week) and :MIT: (most important thing of the day). 2. _Writing papers_ To me this is one of the most important powers of orgmode: work on papers and have Todos inserted into the text directly. So, if you have referenced a book but you don't have it at hand at the moment, you can do: This is a paraphrase you need a reference for (Smith 2009: ??). TODO Check the page in Smith's book :LIBRARY: I always add files with draft papers to org-agenda-files. Next time I'm at the library and have MobileOrg with me, the Todo shows up and I can check the book. I know of no other wordprocessor or editor which can do this. 3. _Collecting reference material_ Whenever I read a book (since some months I usually read ebooks or pdfs on my tablet), I find passages I need for present or future papers. With the ezReader app (Android) you can mark these passages and send them to MobileOrg. When I come home, the new material has already synced and waits to be tagged and refiled. I use org-files for each paper I'm working on as databases for references. The header is a short description of the content of each reference. Keywords and bibliographic data are put into drawers that can be queried. I have an Emacs macro that automatically transforms the raw entry into the right markup. Welcome to org Sven GMX Christoph 13 writes: > Hi > this is my first post here and although I am evaluating org mode with great > interest, I am also asking myself in which way other scientists are making > use of org mode. It will take a while to get my head around how to accomplish > certain things in org mode but for the moment I am intrigued by *why* one > would want to approach the problem of organizing one's research with org mode > and in which way. > Are you putting exclusively your todos in, well, your todo file and perhaps > keep project-related things, such as data and progress, notes, ideas etc. > somewhere else? Or do you embed your notes and todos within their original > context, i.e. is org mode your one-stop solution for data management? Do you > maintain a separate file for every major project you are responsible for or > involved in or throw everything into one or few humungous files and > differentiate using hierarchies and tags? > In the past I have hit some road blocks not so much with other softwares but > rather concepts such as GTD, which I think is tailored to the needs of people > outside science, so I would deeply appreciate your views and experience. > > If this list is geared towards the proximate aspects of development and less > towards philosophy of usage, I apologize > > Christoph
Re: [O] [feature request] Org as an Excerpt Database (or Multivalue Properties)
Hi Christian and Herbert Christian Moe writes: > I've successfully used the regular expression searches Herbert Sitz > describes to search and query a small (~ 500 kB) Org database of all > my source materials (text clippings) for a project, where some of the > properties I used had multiple values. > > You will find Matt Lundin's Advanced searching tutorial invaluable: > > http://orgmode.org/worg/org-tutorials/advanced-searching.html > > Org has some basic support for multivalue properties, mainly for > editing (getting, putting, adding, removing) and also a membership > test. See the manual: > > [[info:org#Using%20the%20property%20API]] > > Note that unlike your example setup, the values are not comma-separated. > > The multivalue support does not, as far as I remember, extend to match > expressions for searches etc. This would probably be non-trivial to > implement. Something could probably be cobbled up with > org-entry-member-in-multivalued-property. But regexp searches are > fairly simple to use, and work now. This is a fairly good solution. Thanks for hinting me to that solution and the worg-site. After having worked with regexp-searches for a day, I see that I can do what I want. Anyway it's quite an amount of typing. For some reasons I noticed a strange bug (?) connected to regexp-searches. Whenever I do a org-tags-view, some of my org-files get the double asterisk in the status-bar. They haven't changed but Emacs tells me that they had. This always happens to the same three files, other org-files are untouched. Does anybody else have that phenomenon? Greetings, Sven
Re: [O] Viewing all entries of a file in Agenda
Hi Herbert Herbert Sitz writes: > Sven Bretfeld gmx.ch> writes: >> It is the last line that puzzles me. If I have it like above, every call >> of this agenda is interrupted by the question which tag I want to query >> for. Hitting RET does what I want, namely displaying all headlines of >> the file. How is that possible without Emacs asking me? The file can >> contain different todo-keywords and tags or none at all. I want to >> display everything. >> >> Thanks for a hint >> >> Sven > > One of the special properties of every Org heading is 'Level', which is an > integer representing the outline level of the heading. Doing the following > search should return all the headings in an Org document: > > Level>=1 That's it. Thank you very much. This possibility is not very prominent in the manual. I had to figure out how exactly it works and that the line must read: (tags "LEVEL>=1" ((org-agenda-files '("~/Dropbox/myconf/from-mobile.org" Now it is doing what I want. Greetings, Sven
[O] Viewing all entries of a file in Agenda
Hi all I have written an org-agenda-custom-command for a daily review of my dates and todos. It contains several todos and tags as block-agendas. The last block should tell me if there are new items to be refiled in a certain file which I use as an Inbox (synced from MobileOrg). I cannot find the proper command for this. ("D" "Daily Review" ((agenda "" ((org-agenda-ndays 1))) (todo "WAITING") (todo "DELEGATED") (tags "PROJECT") (stuck "") (tags "BIGROCK") (tags "MIT") (tags "OFFICE/NEXT") (tags "HOME/NEXT") (tags "PHONE/NEXT") (tags "READING/NEXT") (tags "WRITING/NEXT") (tags "" ((org-agenda-files '("~/Dropbox/myconf/from-mobile.org")) It is the last line that puzzles me. If I have it like above, every call of this agenda is interrupted by the question which tag I want to query for. Hitting RET does what I want, namely displaying all headlines of the file. How is that possible without Emacs asking me? The file can contain different todo-keywords and tags or none at all. I want to display everything. Thanks for a hint Sven
[O] [feature request] Org as an Excerpt Database (or Multivalue Properties)
Hi all Is it possible to give a property more than one value? I have an org file with a collection of citations and I want to give them a number of keywords. For example: * Ethics of a Hacker's Life :PROPERTIES: :author: Richard Stallmann :source: http://www.brainyquote.com/quotes/authors/r/richard_stallman.html :keywords: money, code-writing, career, ethics :END: I could have made money this way, and perhaps amused myself writing code. But I knew that at the end of my career, I would look back on years of building walls to divide people, and feel I had spent my life making the world a worse place. A property search for "code-writing" should match this citation and all others with this property. An additional search for "career" should narrow the matches down. But orgmode understands "money, ... ethics" as ONE value, not FOUR. That's the problem. Of course, this could be done with Tags, but with more than four or five tags the line would become unreadable. It would also be possible to have several properties "keyword_1: money", "keyword_2: code-writing" etc. But then property searches would be useless (because sometimes you have "money" as keyword_1, sometimes as keyword_2 or keyword_15). *Why I consider this a worthwhile feature request:* It is meant for authors or researchers. When I read something, I use to make and collect excerpts of passages I find useful or interesting. When writing an article or book, this excerpt-collection can be queried like a database for certain keywords in order to find what you have read on the topic. I think that many of us could use such a possibility. This should be a fairly easy thing to do with orgmode. Is there already a module capable of doing what I want? Thanks Sven
Re: [O] What do you use to identify projects (in the GTD sense)
Hi Bernt Bernt Hansen writes: > http://doc.norang.ca/org-mode.html#Projects Wow, that is a WONDERFUL page you shared with us. Thank you very much! It will cost me hours go through it and see what I can implement for my setup. Can't you think about others' time before posting such great stuff? Here is my setup and workflow: I'm quite an orthodox GTD user with one exception: I blended two concepts of ZTD (Zen to Done http://zenhabits.net/zen-to-done-ztd-the-ultimate-simple-productivity-system/) which is a mix of GTD and other systems. What I took from it is the two tags :MIT: (Most important thing of the day) and :BIGROCK: (Most important project of the week). Usually MITs are Next Steps which I do as early as possible during the day, normally there are two or three of them each day. Bigrocks are privileged projects which I return to most often, I usually have one or two of them per week. I use one main org-file. Spheres of responsibility are top level headings containing neither tags nor todo-keywords: , | * Termine (contains only appointments) | * Teaching | * Institute | * Research Department | * Research Consortium | * Personal Research | * Readings | * Home Projects | * Friends | * Someday/Maybe | * Stuff to remember (here for example birthdays are defined) ` The second level contains projects which are tagged with :PROJECT:. The third level are associated next steps containing a resource tag. , | * Institute | ** Major Book Order :PROJECT: | *** DONE Advertise a position for a coordinator :OFFICE: | *** WAITING Wait for applications :OFFICE: | *** Choose an appropriate person:OFFICE: | *** Call a meeting :OFFICE: | *** Set up delegation project for supervision :OFFICE: ` As you see, only the first two steps contain a todo-keyword. This is because the second step is running at the moment and cannot choose a person before the position was actually advertised and the application deadline has come. I use triggers to set the next step to the appropriate state when the previous step is marked DONE: , | *** WAITING Wait for applications :OFFICE: | :PROPERTIES: | :TRIGGER: chain-siblings(NEXT) | :END: | *** Choose an appropriate person:OFFICE: ` So, after the application deadline has come, I mark the WAITING entry DONE and the next entry is automatically set to NEXT. After this is DONE, "Call a meeting" will be set to NEXT. , | *** DONE Wait for applications :OFFICE: | *** NEXT Choose an appropriate person :OFFICE: | :PROPERTIES: | :TRIGGER: chain-siblings(NEXT) | :END: | *** Call a meeting :OFFICE: ` In this way my agenda view for "NEXT actions at OFFICE" contains only actions which can actually be done immediately. I use to revise my project lists on a daily base. This is the first thing I do in the morning. It takes about 15 minutes. This is not orthodox GTD behavior but only this way a can make my mind free and be sure that I don't forget deadlines and don't neglect projects. I have a special entry for this revision that appears on top of my day-agenda-view: , | Dienstag 11 Oktober 2011 |8:00.. |9:23.. now - - - - - - - - - - - - |10:00.. |12:00.. | diary: 14:00-15:00 Meeting with Mrs. Smith |14:00.. |16:00.. | Termine:18:00-20:00 Central Asia group meeting :MEETING: |20:00.. | DailyTasks: Scheduled: REGULAR Daily Review [0/7] | HomeProjects:Scheduled: REGULAR Water flowers :HOME: ` I have a special keyword for regular tasks because I don't like them to appear in NEXT lists. These regular tasks always have a schedule and therefore appear only in the day-agenda: , | ** REGULAR Daily Review [0/7] |SCHEDULED: <2011-10-10 Mo .+1d> |:PROPERTIES: |:REPEAT_TO_STATE: REGULAR |:END: |- [ ] review daily agenda |- [ ] review Waiting |- [ ] review Delegated |- [ ] review Projects |- [ ] review Stuck Projects |- [ ] review Bigrocks |- [ ] make new MITs from | - [ ] OFFICE | - [ ] HOME | - [ ] SCHRIESHEIM | - [ ] PHONE | - [ ] READING ` For distant projects I have the Someday/Maybe category: , | ** Send documents to tax adviser | NOT_STARTED | *** Start Project | SCHEDULED: <2012-01-02 Mo> | *** Gather documents :HOME: | :PROPERTIES: | :TRIGGER: chain-siblings(NEXT) | :END: | *** Copy documents :OFFICE: | *** Prepare letter :HOME: | *** Send letter:SHOPPING: ` These future projects contain the keywor
[O] Additive tags or meta-tags
Hi together This is maybe a feature request. Otherwise ... is it already possible to subsume a number of tags in some kind of meta-tag? Explanation: I use physical/local contexts as tags: @OFFICE, @HOME, @TRAIN etc. There are some todos like for example :READING: that could be done in all these contexts (but not @CAR). It would be nice to have one tag :READING: defined in a way that it appears in agenda-views querying @HOME-todos as well as @OFFICE or @TRAIN (but not @CAR). Or one tag :PHONE: that subsumes all local contexts including @CAR. At the moment I use long tag lists for these issues. I think this could be done in a more elegant way. This cannot be solved by tag inheritance, I think. Because a READING-todo could belong to a larger project-tree with lots of todos of quite diverse context/resource demands. Thanks for hints Sven
Re: [O] Google Tasks integration
Hi Brad I don't know anything about your question proper, but ... Brad Collette writes: > I've also been using mobileorg to get my stuff on my iphone. However, I'm > less > satisfied with that. Having to both push and pull from both ends to keep > things > in sync is a pain and I often forget. This is absolutely automatized on my system. I don't have to do anything except keep the computer running. As an Android user I don't know if MobileOrg on iPhone can sync automatically, the Android app can. I have configured it to sync every 30 min. on my phone and pad. My computer runs a cronjob every 20 minutes that pulls and pushes. Here is the script that does the job: #!/bin/bash emacs --batch --load ~/.emacs --eval "(gtd)" --eval "(org-mobile-pull)" --eval "(org-save-all-org-buffers)" --eval "(org-mobile-push)" If you are on Linux or Mac the script should work as a cronjob. I don't know about Windows. Greetings, Sven
[O] Some remarks on org-contacts
Hi to all After some days of using org-contacts with Gnus, I would like to make some comments. I know that this is an early stage of the development, but I think some views and suggestions by users could help Julien or other developers to decide what could be done in the next steps of their work. There seems to be no roadmap on the homepage of the project. - The buffers displaying the contacts file(s) get the "changed mark" whenever something is done with org-contacts. Even if only a name was searched and no changes have happened at all. Is it a bug or some feature that I don't understand? - The last-read-mail property is a good idea, but it has the disadvantage of changing the file. People using Dropbox or other synchronization tools have a problem here, because they have to remember to manually save the file before they start to work on another computer. There should be an auto-save-hook or something similar. - What I deem most important: For quite a few contacts most people will use to have more than one email address. Org-contacts stores all addresses under the same property with no preference on one of them (unlike BBDB which uses the first entry as a default for completion). It is annoying to hit tab 3 to 4 times before the To-header is complete. It would perhaps be best to have only one address in the EMAIL property and to store alternate addresses in another property (SECONDARY_EMAIL). The SECONDARY_EMAIL could be called by a special function that could be set to a key different from TAB (maybe C-u TAB). Maybe it is even possible to expand to the default address by hitting TAB once, and to give a list of the other addresses by hitting TAB once again. - What can you do with ICONS? Arte they only for chatting? It would be nice to have a small window automatically opening below an Article buffer in Gnus that displays information about the author including his/her image. - Email, phone numbers and postal address should be displayed in the Agenda buffer when a name is searched by org-contacts. Maybe it would be possible to display different information by hitting certain keys: "m": mobile-phone, "e": email, "b": birthday, "a": all etc. At the moment one has to switch on follow-mode to display the information. I deem this not very beautiful. For my taste, the look-and-feel of an org-file with lots of property lines is not an aesthetic pleasure. A tabular output (including a picture of the person) would be much nicer. - There should be a function to sort the entries of the same level in contacts files alphabetically. Thank you very much for org-contacts. Best, Sven
Re: [O] org-contacts: error on message startup
Hi Julien Julien Danjou writes: > On Thu, May 26 2011, Sven Bretfeld wrote: > >> It is definitely not there in 23.1, the emacs-snapshot package which >> AFAIK is the orebokech version that seems not to have been updated since >> quite a while. I have checked the sources of minibuffer.el and it does >> not define completion-at-point-functions. > > orebokech version is dead. > >> This is a pity since Emacs Snapshot is the most actual you can get on >> Ubuntu without adding foreign repos or compiling. > > emacs-snapshot in Ubuntu is a joke. Yes, and I was a silly victim of that joke. Today I noticed for the first time that the normal Emacs 23 packages coming with Ubuntu are actually newer than Emacs Snapshot. With the "normal" Emacs 23 packages (23.2) org-contacts is working! Including the completion functions (one still has manually to define tab as completion-at-point in message-modemap). Julien, thank you very much for org-contacts. I'm looking forward to its further development (as I'm just a normal user I'm sorry to be unable to contribute very much). Greetings, Sven
Re: [O] org-contacts: error on message startup
Hi Michael Michael Markert writes: > Hi Sven, I run org-contacts on Emacs 23.3, there is a > `completion-at-point-functions' and org-contacts works just fine. > But I recall myself trying with Gnus and it didn't work because > `completion-at-point' was not bound to keys. It is definitely not there in 23.1, the emacs-snapshot package which AFAIK is the orebokech version that seems not to have been updated since quite a while. I have checked the sources of minibuffer.el and it does not define completion-at-point-functions. This is a pity since Emacs Snapshot is the most actual you can get on Ubuntu without adding foreign repos or compiling. I have tried to use Emacs 24 from the emacs.naquadah.org repository which, however, does not contain a Natty section. With the Maverick packages org-contacts works. But in Emacs 24 Gnus is generally buggy (nnimap does not split mails). So I uninstalled it again. The only way I can see at the moment is exchanging minibuffer.el in Emacs 23.1 with a newer version. If this will result in a stable Emacs, I don't know. I had already converted my whole bbdb database to the org-contacts structure without testing it before. So I'm quite frustrated. Greetings, Sven
Re: [O] org-contacts: error on message startup
Hi Nick, hi all Nick Dokos writes: > Sven Bretfeld wrote: >> Just trying to use org-contacts. There is an error for me whenever I >> start a new message: >> >> Debugger entered--Lisp error: (void-variable completion-at-point-functions) >> add-to-list(completion-at-point-functions >> org-contacts-message-complete-function) >> (lambda nil (add-to-list (quote completion-at-point-functions) (quote >> org-contacts-message-complete-function)))() >> run-hooks(text-mode-hook message-mode-hook) >> apply(run-hooks (text-mode-hook message-mode-hook)) >> run-mode-hooks(message-mode-hook) >> message-mode() >> message-pop-to-buffer("*mail*" nil) >> message-mail() >> gnus-group-mail(nil) >> call-interactively(gnus-group-mail nil nil) >> >> Have I missed a point in the setup? I just added (require 'org-contacts) >> and threw out all bbdb related code from .emacs and .gnus.el. Is there >> anything else to do? >> >> I'm using the latest git version of orgmode (release 7.5.299.gb638), >> Emacs 23.1.50.1 (Ubuntu) and Gnus v5.13. > thing - I run emacs24 and it's present there, but I just tried emacs23 > and it does not seem to be there even after I load-library > minibuffer.el. That's right. Emacs 23 does not contain completion-at-point-functions. Is it possible that all you guys are using Emacs 24? I have copied the definition of this variable from the trunk version of minibuffer.el into my .emacs file. Now the error message doesn't occur any longer. Anyway completion does not work. Also the other Gnus-related features of org-contacts don't work (for example ";" in the Summary Buffer). Can I conclude that org-contacts.el is for Emacs 24 only? That would be a pity (and is not mentioned anywhere). Greetings, Sven
[O] org-contacts: error on message startup
Hi all Just trying to use org-contacts. There is an error for me whenever I start a new message: Debugger entered--Lisp error: (void-variable completion-at-point-functions) add-to-list(completion-at-point-functions org-contacts-message-complete-function) (lambda nil (add-to-list (quote completion-at-point-functions) (quote org-contacts-message-complete-function)))() run-hooks(text-mode-hook message-mode-hook) apply(run-hooks (text-mode-hook message-mode-hook)) run-mode-hooks(message-mode-hook) message-mode() message-pop-to-buffer("*mail*" nil) message-mail() gnus-group-mail(nil) call-interactively(gnus-group-mail nil nil) Have I missed a point in the setup? I just added (require 'org-contacts) and threw out all bbdb related code from .emacs and .gnus.el. Is there anything else to do? I'm using the latest git version of orgmode (release 7.5.299.gb638), Emacs 23.1.50.1 (Ubuntu) and Gnus v5.13. Thanks for help, Sven
Re: [O] MobileOrg Android 0.5.4 Release - Now with Tablet support
Hi Matthew Thank you very much for the new version. I'm just testing the new functions. MobileOrg will be really really good after all the new features will be working. Nice work. There are some issues I have detected so far (HTC Desire HD, Android 2.2.1, Dropbox-sync, completely cleaned [deleted] files before installing): *Changed Todo States will Not Change on the Phone* * NEXT Some Task :HOME: changed on the PC to * DEFERRED Some Task :HOME: After syncing, the phone still shows * NEXT Some Task :HOME: On the other hand, changing Todo states on the phone works and changes the todo state on the PC accordingly after syncing. *TAGs don't seem to work* Adding a new task with the Advanced Capture feature doesn't recognize tags for me. A tag :HOME: is neither shown in the "New Notes" view on the phone, nor on the PC after syncing. *Changed body edits are lost on syncing* * NEXT Call Somebody :PHONE: changed on the phone to * NEXT Call Somebody :PHONE: Phone number is 0154 13233 After syncing, org-pull doesn't announce a new edit. The addition is lost on both, the phone and it never arrived on the PC. After I have written the above I made some more tests and it becomes clear now that there is a serious syncing bug. In general, syncing doesn't recognize changes made on the PC. Even adding a new task (or a new test in the body, or a todo change) on the PC is not recognized by the phone after pushing and syncing. I'm sure it will be a small problem due to the changes made necessary by the new features. I'm not sure if this is a problem caused by my setup. Can anybody confirm these problems? Greetings and thank you very much again, Sven Matthew Jones writes: > Hey folks, I'm happy to announce the availability of MobileOrg 0.5.4 for > Android. > > You can find links and instructions on how to install it on the wiki page: > https://github.com/matburt/mobileorg-android/wiki > > There is now also a donate version available in the Android Market. > > Here are some of the highlights: > > * Support for Gingerbread and Honeycomb tablets > * Vastly improved Dropbox and WebDAV download speed > * New Advanced Capture and Edit interface > * Now can set TODO and PRIORITY from the Advanced capture interface > * The ability to edit the body of existing notes > * Fixes for many crashes, hangs, and force-closes > * New notes are captured under the "New Notes" section, > edits are hidden from this view > * Improved error handling and reporting > * Fix crashes if the sdcard is unavailable to the application > > As always, please let me know if you have any issues... you can email me > directly or file a bug report on Github
Re: [O] How to manipulate line-breaks in html-export?
Hi all I have solved the problem with some sed operations now. Greetings Sven "Sven Bretfeld" writes: > Hi > > I'm using a emacs --batch cronjob to update several html-exports of > different agenda views. > > The output usually looks ugly. It took me some time to figure out why > the exported html-files look different whether the function is started > in a normal frame or via batch: The html-exporter sets line-breaks (and > colors) in relation to the actual frame-size and color-settings (which > are both zero in batch-mode). > > Is there any way to influence that behavior? > > Letting emacs --batch explicitly load an init-file is no solution: > framesize and color settings are ignored. > > Thanks for help > > Sven
[O] How to manipulate line-breaks in html-export?
Hi I'm using a emacs --batch cronjob to update several html-exports of different agenda views. The output usually looks ugly. It took me some time to figure out why the exported html-files look different whether the function is started in a normal frame or via batch: The html-exporter sets line-breaks (and colors) in relation to the actual frame-size and color-settings (which are both zero in batch-mode). Is there any way to influence that behavior? Letting emacs --batch explicitly load an init-file is no solution: framesize and color settings are ignored. Thanks for help Sven
Re: [Orgmode] Status google calendar sync
Torsten Wagner writes: >> So would it be possible to build a native emacs for android? > > I checked this a while ago and unfortunately emacs comes with a relatively > large > pack of dependencies. Android on the other side does not deliver many standard > libraries. Xorg libc and afaik dbus are a few dependencies which are not > (natively) available on Android. > I tried Emacs in a debian chroot on my keyboard less device. It wasn't really > usable and I doubt that keyboard based smartphones are much better since they > most likely miss alt ctrl and other important keys. There is yet another possibility. Use ConnectBot to connect to a PC running Emacs (daemon). I use MobileOrg for task planning, todo lists etc. But when I write a longer text, I use ConnectBot started with the option 'emacsclient -t --eval "(ibuffer)"'. It is like having a native Emacs on the phone. Press the icon, and Emacs is there after 3 seconds. If you use Swype as input-method, you can even write long texts very fast. Meta and Ctrl are available (press trackball once [CTRL] or twice [Meta], press trackball followed by i for TAB). Greetings, Sven ___ 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] MobileOrg Android 0.5.0 - Now with native Dropbox support!
Dear Matthew Thank you very much for this present. Thank you also for all the good work you have done for making MobileOrg on Android possible. For the first time ever I also have syncing problems which takes about four times longer than before (filesize hasn't changed). I will give you a report on the issues-site. Anyway, I will switch from webdav to the Dropbox solution in a few days. I remember that it was possible to edit an org file directly within MobileOrg in one of the earlier versions. This seems to have been dropped now. We can go down to the file level, but it is read-only. Do I remember right? Or does this depend on my switch from "sdcard" to "internal" some weeks ago? Best wishes and a happy new year to all Sven Matthew Jones writes: > Merry Christmas to all MobileOrg Android users... I am pleased to announce the > 0.5.0 release of MobileOrg for Android. > > This release includes support for Dropbox which is the single most requested > feature. I actually finished writing the code for this a few weeks ago, but > it has taken a little while for the Dropbox folks to approve it for release. > > This release also includes some bug fixes, although I have not yet managed to > get a handle on the SSL bug if the CA is not recognized by the Android OS. > I'm planning this for the 0.5.1 release > > Also included in this release is some basic scripting for calling the Capture > interface from outside of the application, see this URL: > > https://github.com/matburt/mobileorg-android/wiki/Scripting > > for an example of how to use this from the Android Scripting Interface (now > called SL4A) > > You can either download directly from the market or find a direct download > link to the APK on the wiki (for those who don't have access to the Market): > > https://github.com/matburt/mobileorg-android/wiki > > There are some really great features coming in the near future, including > better support for capturing notes with TODO, Priority, and Tags and support > for editing the body of an Org entry. I'm also working on a UI overhaul that > should make things more attractive and easier to use. > > Merry Christmas and, as always, please report any bugs or features on Github: > https://github.com/matburt/mobileorg-android/issues > > http://matburt.net > > ___ > 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 ___ 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] MobileOrg and Voice Capturing (Android)
Hi Matthew Matthew Jones writes: > Hi Sven... that's a nice one, you might could add that to the scripts section > of > the MobileOrg wiki. Did it. > Pretty soon the Capture interface will be extended to allow settings tags and > other things on captured notes... once these are in place I will extend the > CAPTURE action to also take these values as intent params. This is really nice. Greetings, Sven ___ 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] MobileOrg and Voice Capturing (Android)
Hi Matthew Matthew Jones writes: > Alright guys, I've gotten this to work I've posted an early build of > MobileOrg that supports this here: > > http://matburt.net/files/mobileorg-debug.apk > > basically, you need to emit the action: com.matburt.mobileorg.CAPTURE > > it takes an "extra" intent value called "txtValue" which will pre-populate the > text display. I was using the script for some days now and did all my capturing this way. It is completely stable and reliable on my HTC Magic with Android 1.6. I see no hindrance for a release. > import android > droid = android.Android() > message = droid.recognizeSpeech("Capture New Note").result > a = droid.startActivity("com.matburt.mobileorg.CAPTURE", None, None, > {'txtValue':message}, False) Is there a way to enlarge the 'extra' intent with some standard string? It would be nice to have a TODO keyword and a TAG inserted automatically. If you are like me, you tend to forget refiling the items of from-mobile.org regularly. An automatic TAG insertion could help to remind yourself that there is something new that needs to be cared about. I use to give a TAG :MIT: (Most Important Things [of the day]) and have a respective Agenda View that I review several times a day. If newly captured items could appear in this list, I would never forget about the newly captured tasks. To my regret, I don't know anything about Python and its syntax, but I'm sure that the 'message' variable can be extended easily (what I have tried did never work). As a workaround I have written a simple shellscript for a Cronjob that starts Conky whenever there is something new in from-mobile.org. So my desktop reminds me to refile the new items. Maybe it is of some interest for anybody, so I give it below. Thanks again for your nice work. Greetings, Sven Here is the Script. Some values and paths have to be replaced to fit your needs: --8<---cut here---start->8--- #!/bin/bash KILLNR="$(ps ax | grep "conky -c .*conkyrc-mobile" | grep -v grep | sed 's/ pts.*//g')" NEWTASK="$(cat /home/sven/Dropbox/myconf/from-mobile.org | grep -v auto-revert | grep -v ^$ | grep -v 20[0-9][0-9])" if [ -n "$NEWTASK" ]; then if [ -n "$KILLNR" ]; then exit # echo "file is full, conky is running" else conky -c ~/.conkyrc-mobile & # echo "file is full, conky is not running" fi else if [ -n "$KILLNR" ]; then kill $KILLNR # echo "file is empty, conky is running" else exit # echo "file is empty, conky is not running" fi fi --8<---cut here---end--->8--- This script needs a special configuration file .conkyrc-mobile to be placed in the home folder: --8<---cut here---start->8--- own_window yes own_window_type override own_window_transparent yes own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager use_spacer right use_xft yes xftfont DejaVu Sans:size=18 xftalpha 0.8 text_buffer_size 2048 update_interval 3.0 draw_shades no draw_outline no draw_borders no uppercase no stippled_borders 3 border_margin 9 border_width 10 default_color grey own_window_colour brown own_window_transparent yes alignment top_right gap_x 10 gap_y 10 TEXT $color ${Color green}NEW TASKS ${execi 10 cat /home/sven/Dropbox/myconf/from-mobile.org | grep -v auto-revert | grep -v ^$ | grep -v 20[0-9][0-9]}$color --8<---cut here---end--->8--- ___ 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] MobileOrg and Voice Capturing (Android)
Hi Matthew Matthew Jones writes: > Alright guys, I've gotten this to work I've posted an early build of > MobileOrg that supports this here: > > http://matburt.net/files/mobileorg-debug.apk Thank you very much for your wonderful work. It works like a charm. I have tested it over ten times now, and it seems to be completely stable. I will do some further testing during the weekend and also try to create some tasker profiles with it. My ten year old son sits next to me and suggests some ideas for you to become a millionaire :-) Thanks again and have a nice weekend Sven ___ 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] MobileOrg and Voice Capturing (Android)
Mark Elston writes: > I don't know about the current state of MobileOrg and its > implementation details but I would look at the two sl4a > methods: > > startActivity, and > startActivityForResult. Yea, I've tried that already. droid.startActivity(com.matburt.mobileorg.Capture); looks right to me, as far as I understand the syntax but the script starts and finishes without anything happening. :-( Sven ___ 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] MobileOrg and Voice Capturing (Android)
Hi Mark Mark Elston writes: > Have you looked at sl4a (formerly ase)? With it you can > start Intents and perform clipboard operations plus file > manipulations using a standard scripting language like > perl, python, or ruby (among others). This might be > very useful. That's really useful. I have created a simple python script to call voice input: ,SpeechToClip.py | | import android | droid = android.Android() | droid.setClipboard(droid.recognizeSpeech()[1]) | ` Now, I couldn't figure out how to extend the script to call MobileOrg's Capture activity. Is that possible? Maybe even with an automatic insertion of the clipboard content? Thanks for help Sven ___ 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] MobileOrg and Voice Capturing (Android)
Hi Matthew Matthew Jones writes: > MobileOrg Android already supports speech to text in that, you can go to > capture a new note and click the mic button on the soft keyboard and start > speaking. I don't see that it would be particularly difficult to integrate > this in a larger fashion. There could be a button on the capture interface > that would let you start it automatically. Thanks for your ideas. Using MobileOrg's ability to process spoken texts is fine. In the car, however, it would be necessary to reduce clicks to one or two. Switching on speech input on the soft-keyboard would be difficult, because the respective key is much too tiny. At the moment I'm using "Voice Command" which starts recording when pressing the "search" key (hardware). This is fine. But still one has to manually start MobileOrg, switch to the capture screen and paste the text. That could be easier with the help of Tasker. > Also... given that you had a button to activate the speech to text without > having to pull up the soft keyboard... you could write another application > that calls MobileOrg's Capture activity with that mode enabled. I have tried to teach Tasker how to call the Capture activity. Without success so far. Am I right that the activity is called by the command "com.matburt.mobileorg.Capture"? To my regret, Tasker's "Action Intent" task doesn't seem to understand that command. If I could get that working, it would be easy to create an icon to capture a spoken note and save it with only one click. Greetings, Sven ___ 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] MobileOrg and Voice Capturing (Android)
Hi together TextToSpeech has made our lives easier, especially for car-drivers like me. I have tried to capture tasks by voice on my Android device and implement them automatically to my org-files at home. The results are practicable but far from optimal by now. Maybe there are some Android users on this list who like to get involved in trying to find an optimal solution. *My method at the moment:* I use "tasker," the Android killer-app for automatizing almost every thinkable task. Created a new task called "org-voice" with tasker. Pressing the associated icon does the following: 1. Plays Darth Vader's voice saying "What is thy bidding, my master?" 2. Loads app Voice2Clipboard 3. Waits for 30 seconds (to get Voice2Clipboard ready for recording and for me to finish speaking the note) 4. Write File: Writes the clipboard content to a file /sdcard/dropbox/org/org-voice.org After uploading the file with Dropbox, a cronjob on my PC (which is always switched on) takes care of the file. Its lines (each is a capture item) are transformed by a series of sed operations and put into a different file from-org-voice.org together with some TAGS and a TODO keyword; after that the original file is emptied. That's it. The problem with this approach is that you still have to manually download the (empty) capture-file (org-voice.org)[¹] and to manually upload it again, because Dropbox for Android doesn't sync changed files on the sdcard automatically. And especially to upload process needs quite a view clicks. *What would be better:* Use MobileOrg and have the clipboard contents written into the file used by MobileOrg for written captures. This is /sdcard/mobileorg/mobileorg.org if you use sdcard-storage. This way, you could use MobileOrg's own syncing process and no cronjob would be necessary. This could be done in two ways: 1. Use the same procedure and let tasker write the contents into the file directly. This is not possible for me since I have to use internal-storage for reasons of performance[²] and the files in /data/data/com.matburt.mobileorg/files/ are not writable for other programs without root. 2. Use tasker to start MobileOrg, enter the capture dialog and have a voice recognition app started. I simply don't know how to do that. Maybe tasker can even be programmed to automatically start MobileOrg's syncing process from time to time. But I don't know if and how this is possible. Does anybody have a better solution? Or a better idea? Greetings, Sven [¹] If you don't, the next sync with dropbox would replace the file with your notes by the empty file hosted on the Dropbox server. [²] On HTC Magic (Android 1.6) sdcard-storage makes MobileOrg incredibly slow. It takes more than a minute after starting MobileOrg until the files are displayed. ___ 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] quotation marks in LaTeX (again)
Hi Don Don March writes: > Implementing the \enquote solution proposed by Sven Bretfeld would a > fix for this, but that would probably have to be optional. So I was > working on a regexp fix for this, but then I realized that there's a > host of cases where the beginning quote isn't recognized as beginning > because there isn't whitespace in front of it, such as when a quote > starts a parenthetical ("like this"). Maybe the solution is to use > the list of "allowed chars in pre" from > org-emphasis-regexp-components? The different styles of quotation marks needed for different languages might also be a problem for a regexp solution. I'm using the \enquote method since quite a while and write English and German text in that way without further user interference. \enquote just picks the correct version in dependency of the babel environment. Greetings, Sven ___ 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: Freemind conversion and Notes
Hi Lennart Lennart Borgman writes: > "Give thanks for unknown blessings already on their way." - Native > American Saying. > > Can you please just remove the argument given to > called-interactively-p? Please see here: > http://old.nabble.com/called-interactively-p-td25704073.html Just without knowing what I'm actually doing (since I don't understand much of discussions about coding), I removed the 'any of every occurrence of "called-interactively-p 'any" in org-freemind.el. I seem to have hit the bull's eye. Now its working perfectly. Great. Thank you very much, Sven ___ 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: Freemind conversion and Notes
Hi Lennart Lennart Borgman writes: > Thanks for the bug report. I have attached a new version of > org-freemind.el (and a patch for it). Aaaargh. One day too late. Yesterday I converted a big mindmap manually. But it's fine that the package will be healthy soon for the next time (which will come soon). Thanks again. > Please test it and let me know what problems you find. At the moment it doesn't work for me. This is the debug-on-error report for org-freemind-to-org-mode: Debugger entered--Lisp error: (wrong-number-of-arguments called-interactively-p 1) (called-interactively-p (quote any)) (org-freemind-check-overwrite org-file (called-interactively-p (quote any))) (if (org-freemind-check-overwrite org-file (called-interactively-p ...)) (progn (let ... ...))) (when (org-freemind-check-overwrite org-file (called-interactively-p ...)) (let (... ...) (with-current-buffer mm-buffer ...))) org-freemind-to-org-mode("/home/sven/tmp/Theravada.mm" "~/tmp/Theravada.mm.org") call-interactively(org-freemind-to-org-mode t nil) execute-extended-command(nil) call-interactively(execute-extended-command nil nil) I have the latest stable version of orgmode (7.01h) installed on Emacs 23.1.1 under Ubuntu Lynx. Greetings, Sven ___ 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] Problems with capture on Mobile Org for Android
Hi Robert Robert Goldman writes: > I have just had a problem twice with loss of data using Mobile org for > android (flagged as "version 40" in Application Info). > > Here's what you need to do to lose data: > > 1. enter "foobar" into the capture window > > 2. synchronize > > 3. enter "baz" into the capture window > > 4. synchronize > > 5. org-mobile pull > > Only baz will be there. Seems like instead of accumulating stuff > between synchronizations, org mobile is just overwriting. :-/ I can't reproduce that. I get both entries on version 0.4.2 on Android 1.6, synchronized via webdav. By the way, there is no version 40, also 4.0 was never published in the Market, as far as I can remember. What if you install/update your MobileOrg version directly from the Market? (You have to uninstall the version from GITHub previously.) Greetings, Sven ___ 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] Freemind conversion and Notes
Hi all org-freemind.el suggests that notes from a Freemind mindmap become converted to org by org-freemind-to-org-mode. However, all I get is the nodes and subnodes structure as orgmode's headings. My various notes (including many draft sentences of the article I'm about to write, so the most important thing) are ignored. Are my settings in Freemind wrong? Do I have to do anything special? I didn't change the default settings for notes in Freemind 0.9.0 RC 6 (Ubuntu Lucid). My org-version is the current stable version (7.01h). Greetings, Sven ___ 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: Adding entries to Google calendar
Hi Eric S Fraga writes: > I haven't found a way to "push" an ics file to google; however, you > can tell google calendar to add a calendar that is based on a specific > url pointing to an ics file and google will periodically load that > file and update the calendar. Yes, that works. I've tested this with my mydisk.se account last week for one or two days. > The problem with this is that, although it works just fine, the url > must be generally accessible (no authentication support). Of course, > you can obfuscate the path to the file so that it won't be found > easily but this is only security by hiding... It's also not clear how > often or when google checks that file although it appears, from my > limited testing, to be at least once a day but not much more often > than that. That's right. You can't update the imported files manually. You always have to wait for a day before the changes in your ics file become visible in Google. That's why I abandoned this method. Greetings, Sven ___ 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: Agenda and weather forecast
d.tchin writes: > In the agenda I have the forecasts for the two locations but > I have no idea on the output about the related locations. > I have following ouput : > > Agenda: icon Couverture nuageuse partielle, 13-24 °C > Agenda: icon Brouillard, 13-23 °C > > How can we had the locations. Something like : > > Agenda: *Paris*, icon Couverture nuageuse partielle, 13-24 °C > Agenda: *Caen*, icon Brouillard, 13-23 °C I have done that this way: ** Wetter *** Bochum :PROPERTIES: :CATEGORY: Wetter in BO :END: %%(org-google-weather "Bochum" "de") *** Heidelberg :PROPERTIES: :CATEGORY: Wetter in HD :END: %%(org-google-weather "Heidelberg" "de") Greetings, Sven ___ 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] Agenda and weather forecast | language and units
Hi Juan Juan Pechiar writes: > The google API determines the unit system (C or F) based on the > language parameter (smart guys?!). > > Ths parameter goes after the city in the call to org-google-weather: > > E.g. %%(org-google-weather "Montevideo,Uruguay" "es") Ah. I see. It's working after I've added "de". Thank you Sven ___ 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] Agenda and weather forecast
Hi Julien Julien Danjou writes: > If anybody is interested, I've wrote an small extension to put some > weather forecasts in the agenda. > > It can be found here[1]. I've blogged about it yesterday, so if you're > curious you can read the entry[2]. Wonderful. Works out of the box and looks nice. I had °F at first instead of °C what I would prefer. I'm in Germany; adding ("DE" . "°C") in the customization of "Google Weather Unit System Temperature Assoc" didn't help. In the screenshot I noticed that you have a string "en-gb" which is not documented. Sounds like "English-GB", although you are in Paris. I also added this string, and I have °C now. Is that the correct way? BTW, which color-theme are you using? Is it zenburn? Looks nice and clean. Thanks for org-google-weather, Sven ___ 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] Adding entries to Google calendar
Hi Matt Matt Price writes: > Sven says something about using org-remember to do the same work -- > it's not clear to me whether you have that working, Sven. In any case > would it be difficult to use org-capture instead of the diary? That > would certainly be better for my workflow, since i'm not in my > calendar view very often (htough i suppose if i'm making an > appointment maybe i ought to be. No, I don't. It is indeed possible to add an advice to org-remember-finalize and I think this could be the right point to start from. But we have to find a way to parse the data from the remember-buffer. Eric's approach is different, because he uses variables that do only occur when using the "agenda to diary" method. However, I fear that my abilities are to weak for that. I cannot really read and understand complex Lisp packages like org-remember.el or org-capture.el. Greetings, Sven ___ 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] Adding entries to Google calendar
Hi Eric Eric S Fraga writes: >> Alas, there seems no description of the possible syntactical variants >> available on the web. > > Yes, Google do not appear to be very forthcoming with their parsing > algorithms. I had to do a lot of trial and error, especially to > support block entries, and I think the result is fragile at best. So far it works with the language of GoogleCalendar set to US English. >> 2. We have to isolate the time of day from the diary-entry as a >> further variable (not as part of the variable "text"), so that >> Germans can format the command correctly. Can you help me with >> that? > > I this moment (swamped with a project application), all I can suggest > is you look at org's time parsing codes for handling new agenda > entries. The text must be parsed somewhere... If you use the same > code within the advice, you should be able to pick off the times. > > I'll add this to my todo list but I won't get a chance to play anytime > soon unfortunately. Yes, I see. Same for me. I think we can live with this workaround for the moment. Probably (hopefully), GoogleCL will be developped in a way more suited in the near future. Until that happens, we can suggest people to use an English setting of GoogleCalendar. Most org users will probably use Google as a secondary method anyway. >> That's also my work flow, except of using org-remember "k-r" instead of >> "i". I like to have everything in one org-file. But I can get used to >> keep my appointments in a separate diary file. I can refile them to the >> appropriate places during the "weekly review" which, then, ends with the >> upload of a new ics file. > > Can the diary file not be your all-in-one org file? As far as I see, the entries created by the "diary method" can't be configured according to level and exact location within the diary.org file. The entries are written in a tree structure beginning with the year at the beginning of the file. This would spoil the organization structure of my main org file. Thanks very much for your help, Sven ___ 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] Adding entries to Google calendar
Hi Eric Eric S Fraga writes: > I'm not sure what you mean about complete. It requires you to have > installed the Google command line tools (googlecl from Google Code). > However, this emacs lisp code is not what I would call full-featured > ;-) There were several problems, most of which I have solved by now. First, I didn't set org-agenda-diary-file. So, calling "i" from an agenda-view merely opened the default diary file. That's why I wondered when exactly the advice comes into play. (Therefore I suspected the code to be possibly incomplete -- sorry, my fault.) Now, the principle procedure works. Entries show up in Google after I added them with org-agenda-diary-entry. There is one thing left. You have structured the shell-command according to the American GoogleCL syntax. That's not working with the German locale. For a German GoogleCalendar the only syntax I found working is: google calendar add --cal org "Test am 5.9.2010 um 14:00-16:00" It's not problem, of course, to change the format of the shell-command. But, the German GoogleCalendar doesn't seem to understand commands with the time of day as the first argument. For example: google calendar add --cal org "14:00-16:00 Test am 5.9.2010" results in an entry called "Test am" (instead of "Test") with the correct time of the day but on the wrong calendar day, it is inserted to today's column (Sat 4.9.2010 instead of Sun 5.9.2010). Strangely enough, the correct date occurs nowhere in the entry, so it was not interpreted as part of the text. This shows that we are dealing with a bug in GoogleCL. Alas, there seems no description of the possible syntactical variants available on the web. So I did try-and-error: with and without the "am" and "um", with the English "on", with ISO formated dates etc etc. Except the above structure 'text am date um time' no combination works. I fear, there are only two solutions: 1. As a workaround I have set my GoogleCalendar to the American locale. With that everything works fine. 2. We have to isolate the time of day from the diary-entry as a further variable (not as part of the variable "text"), so that Germans can format the command correctly. Can you help me with that? > However, the mechanism is there to support hooking into capture > specifically and possibly into org-time-stamp or org-schedule, say. I have tried to work out an advice to org-time-stamp and/or org-remember-finish today. But my Lisp is too weak. I couldn't figure out how to grab the data. > I don't use Google calendar for scheduled tasks or deadlines so the > latter don't matter to me; I use it for appointments and my work flow > is that I always bring up the agenda view to see if my time is free > before making the appointment. That's also my work flow, except of using org-remember "k-r" instead of "i". I like to have everything in one org-file. But I can get used to keep my appointments in a separate diary file. I can refile them to the appropriate places during the "weekly review" which, then, ends with the upload of a new ics file. Thanks for sharing your code and your help Sven ___ 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] Adding entries to Google calendar
Hi to all I try to automatically add newly created dates to GoogleCalendar via GoogleCL. I have tried Eric Fraga's code from: http://osdir.com/ml/emacs-orgmode-gnu/2010-07/msg00265.html but I can't get it to work, nor do I understand it (is it complete?). Anyway, his approach depends on adding org-entries to diary. So, as far as I understand it, you have to create new schedules in a rather special way. Most people, I think, use remember, org-capture or insert new dates directly into an org file. What I (and probably others) need is a way to trigger a call of 'google calendar add' as soon as a new date is created by org-remember etc. What would be the best way to do this? Up to now, although a full syncing orgmode with GoogleCalendar is not possible, we are quite close to it thanks to Eric's '2x2 method' and his awk-script solution. But that solves only three quarters of the problem. Informing GoogleCalendar about dates one has created with org still needs the awkward manual import of ics-files via a web-browser. I think there could be a better solution. Greetings, Sven ___ 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] MobileOrg now in the Android market
Matthew Jones writes: > This should also allow those of you who use Dropbox to use the Dropbox > Android application to pull your org files to your phone and then > synchronize using the SDCard synchronizer. This will be a good > placeholder until I can implement the Dropbox API directly (which will > involve those guys evaluating my application to make sure I'm using it > correctly... and I'm not sure how long that will take). I'm using Dropbox since a while now. There is an issue with the Android client that could also affect MobileOrg. The Android client only supports certain filetypes. For example, I could never figure out how to open a Dropbox-controlled LaTeX file with VerbTeX (AFAIK the only TeX editor available in the Market). That neither works if the file is accessed via the Dropbox client, nor have I figured out how to drop the file to the SDcard. There is no way to configure Dropbox's filetype associations on the user side. So, I think support for org files has to be implemented by the Dropbox developers. Greetings, Sven ___ 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] MobileOrg now in the Android market
Hi to all I'm sorry, Matt, that I always anticipate you to announce the progress of your work. But I'm so happy to have noticed some minutes ago that MobileOrg is now in the market. Thank you very much! Top rating of course. Sven p.s. NEXT and other non-standard TODO keywords are not displayed as they should (not highlighted). ___ 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: iCal export and complex diary sexps
Hi Dan Dan Griswold writes: > On 15 Jul 2010, sven.bretf...@gmx.ch wrote: > >> There was a thread about this some weeks ago. The iCal export does not >> support org-diary-class entries or other complex diary sexps. > > I missed that thread, but it's an issue I looked into some time ago, > with regard to sexps. The basic issue is that org-export-icalendar-* > calls icalendar.el, which currently does not support the export of > complex sexps. > In other words, it doesn't do much good for us to say that Org ought to > export these things to ical, because the feature is missing not from org > but from a completely different package. But it's strange that diary-sexps can explicitly switched on and of for iCalendar export in customize. Why is that? Greetings, Sven ___ 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] .ics export w/Alarms. Possible?
Eric S Fraga writes: > unfortunately, I really have no idea what is going on here. I'm not > really that conversant with the full iCalendar specifications although > I have read the relevant parts of the specification [1] and I think > I've got things right. I have experimented a little longer. Explicitly setting the timezone in the org-export-icalender group to "Europe/Berlin" solves the issue. But it's strange that this is necessary in case of the git version, but not in the stable version of org. I, too, don't think that this is an Emacs issue. Something must confuse the import of ics files in Google when they become to complex. In an ics file with VALARM entries Google somehow doesn't recognize X-WR-TIMEZONE:CEST correctly. Thank you Sven ___ 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] Minor Bug in ical2org awk script
Hi Eric Eric S Fraga writes: > attached is an updated awk script which should do what you want. > Please test it out as it should be generic (with respect to locale). It's working perfectly. Thank you very much. Greetings, Sven ___ 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] .ics export w/Alarms. Possible?
Hi Eric S Fraga writes: > On Wed, 21 Jul 2010 16:27:40 +0200, Giovanni Ridolfi > wrote: >> pull the git version or download the latest org: > and then make sure you set the variable org-icalendar-alarm-time to > the number of minutes which should be used for any exported timed > event. There is something strange. Having installed the org version from git and having set org-icalendar-alarm-time to 10, GoogleCalendar displays appointments two hours too late. Strangely, the ics files produced with both versions are exactly the same (including the headers) with exception of the VALARM lines. Here is an example: , mygtd.ics by org-mode 7.01trans (Git Version) | | BEGIN:VCALENDAR | VERSION:2.0 | X-WR-CALNAME:mygtd | PRODID:-//Sven Bretfeld//Emacs with Org-mode//EN | X-WR-TIMEZONE:CEST | X-WR-CALDESC:nil | CALSCALE:GREGORIAN | BEGIN:VEVENT | UID: TS-0a63bfff-e765-4bd6-9cbb-f628431e8835 | DTSTART:20101013T11 | DTEND:20101013T13 | SUMMARY:APPT Vorbereitungssitzung IKGF-Tagung als MA-Veranstaltung | DESCRIPTION: <2010-10-13 Mi 11:00-13:00> | CATEGORIES:Termine | BEGIN:VALARM | ACTION:DISPLAY | DESCRIPTION:APPT Vorbereitungssitzung IKGF-Tagung als MA-Veranstaltung | TRIGGER:-P0D0H10M0S | END:VALARM | END:VEVENT ` The above appointment shows up wrongly as 13:00-15:00 in GoogleCalendar. , mygtd.ics by org-mode 7.01g (Current Version) | | BEGIN:VCALENDAR | VERSION:2.0 | X-WR-CALNAME:mygtd | PRODID:-//Sven Bretfeld//Emacs with Org-mode//EN | X-WR-TIMEZONE:CEST | X-WR-CALDESC:nil | CALSCALE:GREGORIAN | BEGIN:VEVENT | UID: TS-0a63bfff-e765-4bd6-9cbb-f628431e8835 | DTSTART:20101013T11 | DTEND:20101013T13 | SUMMARY:APPT Vorbereitungssitzung IKGF-Tagung als MA-Veranstaltung | DESCRIPTION: <2010-10-13 Mi 11:00-13:00> | CATEGORIES:Termine ` This one displays correctly as 11:00-13:00 in GoogleCalendar. A timezone issue? But how, if both files are identical in the essential parts? Greetings, Sven ___ 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] Minor Bug in ical2org awk script
Hi all, hi Eric Eric Fraga's wonderful awk script to export/convert googlecalendar to orgmode contains a minor bug in creating active timestamps. A date like 21.7.2010, 14-15 will be converted to <2010-07-21 14:00-15:00> What is missing here is the day of the week. It should be (in German): <2010-07-21 Mi 14:00-15:00> That is not a problem for Orgmode which doesn't need the day of the week to display the entry correctly. But it's a problem for iCal-export. If you import this date into googlecalendar without manually fixing the weekday information, GoogleCalendar doesn't display the date correctly but handles it as a "whole-day"-entry (i.e. without the time information). I know the shortcoming is actually an iCal.el matter, but it could be fixed on the awk script level, I think. Greetings, Sven ___ 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] iCal export and complex diary sexps
Hi all There was a thread about this some weeks ago. The iCal export does not support org-diary-class entries or other complex diary sexps. I want to ask if anybody has a workaround on this issue in the meantime. For example, it could possibly be solved by an after-export-hook that scans org-files for org-diary-class, converts the relevant entries to the iCal format and appends them to the ics file. Greetings, Sven ___ 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] org-mobile produces errors in normal org functions
Hi Carsten Carsten Dominik writes: > does it help to remove ~/.emacs.d/.org-id-locations ? Yes, that did it. Thank you very much, you made me happy. I have already tried to remove .emacs.d before, but with a running Emacs, what didn't work. I didn't know that .emacs.d contains any dot-files at all. Greetings Sven ___ 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: [google] updated awk script for google to org conversion
Michael Steiner writes: > On 2010-07-12 05:22, Rémi Vanicat wrote: >> "Sven Bretfeld" writes: >> you could use auto-revert-mode: > > That's what i do: i slightly changed ical2org.awk by replacing line 77 > > print "#+TITLE: Main Google calendar entries" > > with > > print "#+TITLE: Main Google calendar entries -*- mode: > auto-revert; mode: org; -*-" Thank you very much. I will try that. Greetings, Sven ___ 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] [google] updated awk script for google to org conversion
Hi Eric Thank you very much for the script and the idea. I'm a fan of MobileOrg for Android, but the diary functions are not convenient to deal with at the moment. So I adopted your method for date handling. Some observations: 1. wget doesn't overwrite an older basic.ics laying in the same folder. Instead it names the files of further downloads to basic.ics.1, basic.ics.2 and so on. Therefore I added an additional line (rm $ICS) to your shell-script (not the awk-script, but the one with the automatized procedure you sent in a previous posting): --8<---cut here---start->8--- #!/bin/bash ICS=/home/sven/bin/google2org/basic.ics ORG=/home/sven/aktuell/myconf/googlecalendar.org AWK=/home/sven/bin/google2org/ical2org.awk cd /home/sven/bin/google2org/ wget http://www.google.com/calendar/ical/[...]/basic.ics timezone=$(date +%z | sed 's/^\([+-]\)0/\1/') seconds=$(($timezone*36)) awk -f $AWK < $ICS > $ORG rm $ICS --8<---cut here---end--->8--- 2. Running the above script with cron, makes Emacs continually ask if googlecalendar.org should really be edited, because the file had changed on disk. So I put the whole thing into an Emacs function: --8<---cut here---start->8--- (defun my-org-to-google () (interactive) (save-excursion (find-file "~/aktuell/myconf/mygtd.org") (org-export-icalendar-this-file)) ) (defun my-google-to-org () (interactive) (save-excursion (kill-buffer "googlecalendar.org") (shell-command (format "sh /home/sven/bin/google2org/importgoogle.sh"))) ) (if (string-equal system-name "kamaloka") (run-at-time "3:00am" nil 'my-org-to-google) (run-at-time nil 3600 'my-google-to-org) ) --8<---cut here---end--->8--- Every night a new ical-export is created from my main org-file at 3:00am, waiting to be uploaded in the morning (do you know if it's possible to automatically import this to GoogleCL?). Every hour the new entries of GoogleCL are imported to googlecalendar.org (which I include my agenda-files, of course). To avoid problems, this happens only on one of my PCs (kamaloka). Greetings, Sven ___ 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] org-mobile produces errors in normal org functions
Hi all I have strange errors since I'm working with org-mobile. They seem to have to do with the hash-code. The first error: org-mobile-push results in a Wrong-type-argument. A debug-message is included at the end of this mail. After an unsuccessful run of this function, the buffers of the included org-files display the ** symbol in the status line, although the buffers haven't been changed at all. Strangely enough, after trying three of four times the command succeeds at last. But that's not all. Similar errors occur when I run org-archive-subtree. Since I work with org-mobile my entries contain an automatically produced property of the form: :PROPERTIES: :ID: 8307e0ed-6936-4c88-b25f-d9729873f047 :END: If I delete this property, org-archive-subtree works on the respective entry. I use the same configuration on two computers, both running Ubuntu Lucid, Emacs 23.1.1 and the most recent version of org. These errors occur only on one of the computers (the one I use to sync my org files with a webdav server using org-mobile, if that's relevant). Does anybody have an idea what could be wrong here? Thanks for help, Sven Debugger entered--Lisp error: (wrong-type-argument hash-table-p (("~/aktuell/myconf/from-mobile.org" "cd2fdb6d-1ca6-45e7-b0d6-02044edcbbb9") ("~/aktuell/myconf/from-mobile.org" "fdcc85e2-51c8-4d3d-827c-396687ca5a13") ("~/aktuell/myconf/from-mobile.org" "a6a22b75-e0fe-44fb-b5d0-a61500218760") ("~/aktuell/myconf/from-mobile.org" "2dce7212-3994-4ccc-a964-6569914fc17f") ("~/aktuell/myconf/from-mobile.org" "177580d9-f0f0-472b-90d0-278bf503e07d") ("~/aktuell/myconf/mygtd.org" "c4ceb0b6-b854-41ab-91b6-e3b1d40d8289") ("~/aktuell/myconf/mygtd.org" "8850e02f-9e33-456b-8654-e55cf1604036") ("~/aktuell/myconf/mygtd.org" "593cf7d5-5db7-4b39-bc7f-190c4acb4f51") ("~/aktuell/myconf/mygtd.org" "f20acbfb-c03c-4b08-bd22-d1b614dc7688") ("~/aktuell/myconf/mygtd.org" "c76519fa-c2ba-434c-b3e2-e3838b72e6e3") \.\.\.)) puthash("5a8cfb4f-3e43-4581-982b-44e0adcacac6" "~/aktuell/myconf/mygtd.org" (("~/aktuell/myconf/from-mobile.org" "cd2fdb6d-1ca6-45e7-b0d6-02044edcbbb9") ("~/aktuell/myconf/from-mobile.org" "fdcc85e2-51c8-4d3d-827c-396687ca5a13") ("~/aktuell/myconf/from-mobile.org" "a6a22b75-e0fe-44fb-b5d0-a61500218760") ("~/aktuell/myconf/from-mobile.org" "2dce7212-3994-4ccc-a964-6569914fc17f") ("~/aktuell/myconf/from-mobile.org" "177580d9-f0f0-472b-90d0-278bf503e07d") ("~/aktuell/myconf/mygtd.org" "c4ceb0b6-b854-41ab-91b6-e3b1d40d8289") ("~/aktuell/myconf/mygtd.org" "8850e02f-9e33-456b-8654-e55cf1604036") ("~/aktuell/myconf/mygtd.org" "593cf7d5-5db7-4b39-bc7f-190c4acb4f51") ("~/aktuell/myconf/mygtd.org" "f20acbfb-c03c-4b08-bd22-d1b614dc7688") ("~/aktuell/myconf/mygtd.org" "c76519fa-c2ba-434c-b3e2-e3838b72e6e3") \.\.\.)) (progn (unless org-id-locations (org-id-locations-load)) (puthash id (abbreviate-file-name file) org-id-locations) (add-to-list (quote org-id-files) (abbreviate-file-name file))) (if (and org-id-track-globally id file) (progn (unless org-id-locations ...) (puthash id ... org-id-locations) (add-to-list ... ...))) (when (and org-id-track-globally id file) (unless org-id-locations (org-id-locations-load)) (puthash id (abbreviate-file-name file) org-id-locations) (add-to-list (quote org-id-files) (abbreviate-file-name file))) org-id-add-location("5a8cfb4f-3e43-4581-982b-44e0adcacac6" "/home/sven/aktuell/myconf/mygtd.org") (cond ((and id ... ...) id) (create (setq id ...) (org-entry-put pom "ID" id) (org-id-add-location id ...) id) (t nil)) (let ((id ...)) (cond (... id) (create ... ... ... id) (t nil))) (save-excursion (goto-char (or pom ...)) (let (...) (cond ... ... ...))) (save-excursion (if (markerp pom) (set-buffer ...)) (save-excursion (goto-char ...) (let ... ...))) (org-with-point-at pom (let (...) (cond ... ... ...))) org-id-get(# create) (if (org-bound-and-true-p org-mobile-force-id-on-agenda-items) (org-id-get m (quote create)) (org-entry-get m "ID")) (setq id (if (org-bound-and-true-p org-mobile-force-id-on-agenda-items) (org-id-get m ...) (org-entry-get m "ID"))) (if (setq id (if ... ... ...)) (progn (insert " :PROPERTIES:\n :ORIGINAL_ID: " id "\n :END:\n"))) (when (setq id (if ... ... ...)) (insert " :PROPERTIES:\n :ORIGINAL_ID: " id "\n :END:\n")) (if sexp nil (insert (org-agenda-get-some-entry-text m 10 " " ...) "\n") (when (setq id ...) (insert " :PROPERTIES:\n :ORIGINAL_ID: " id "\n :END:\n"))) (unless sexp (insert (org-agenda-get-some-entry-text m 10 " " ...) "\n") (when (setq id ...) (insert " :PROPERTIES:\n :ORIGINAL_ID: " id "\n :END:\n"))) (cond ((looking-at "[ ]*$")) ((looking-at "=+$") (delete-region ... ...)) ((get-text-property ... ...) (setq in-date nil) (setq app ...) (setq short ...) (when ... ... ...) (when app ... ... ...) (insert "* ")) ((get-text-property ... ...) (setq in-date t) (insert "** ")) ((setq m ...) (setq sexp ...) (if ... ... ..
Re: [Orgmode] Fix: org-mobile-push results in byte-code: Wrong type argument: listp, "TODO"
Hi Torsten, hi all I experience multiple error messages of the form (wrong-type-argument: listp \.\.\.) since some weeks. That was around the time when I changed my old: (setq org-todo-keywords '((type "NEXT(n)" "WAITING(w)" "DELEGATED(l)" "DEFERRED(f)" "REGULAR(r)" "APPT(a)" "RESV(v)" "DONE(d)" "CANCELLED(c)"))) into (setq org-todo-keywords '((type "NEXT(n)" "WAITING(w)" "DELEGATED(l)" "DEFERRED(f)" "REGULAR(r)" "APPT(a)" "RESV(v)" "|" "DONE(d)" "CANCELLED(c)"))) I don't know if this is related but it's annoying. I have several not org-related error messages since some time and I don't know where they come from. For example, I get "wrong-number-of-arguments: called-interactively-p, 1" whenever I visit a tex-file. The buffer is, then, opened but not selected. Greetings, Sven Torsten Wagner writes: > Hi all, > this problem was described by Xin already some monthes ago. Following > the thread, the solution was to remove the customisation of the variable > "org-todo-keywords". > > Today, I faced the exact same problem. Removing seems not the correct > solution to me so I searched around in the org-manual. > To my surprise I found the following example: > > (setq org-todo-keywords >'((sequence "TODO" "FEEDBACK" "VERIFY" "|" "DONE" "DELEGATED"))) > > whereas in my init file I used simply > > (setq org-todo-keywords >'("TODO" "STARTED" "WAITING" "DONE")) > > I changed my lines according to the manual and now org-mobile-push works > without any problem. I wasn't able to track down whether the > org-todo-keyword variable changed recently and I used an old definition > or why I customised it in this "simple" resp. wrong way. Surprisingly, > this didn't effect the TODO states mechanism in org-mode itself. They > work as desired with the old customisation. > > Just thought I let you know, maybe some people fight or will fight with > the same problem. > > Bye > > Torsten > > > > ___ > 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 > ___ 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] AutOrg, and practice of GTD in a group
Hi Hellekin "Hellekin O. Wolf" writes: > On Wed, Jun 23, 2010 at 08:41:22AM +0200, Sven Bretfeld wrote: >> >> The third level is for the physical actions of the project. As you see, >> only the first has a todo keyword (NEXT). The others are dependent from >> the first (cannot be done before the first is done) and have only a >> context tag. My context tags include things like HOME, OFFICE, SHOPPING, >> TRAIN etc. When the first NEXT action is done, the next NEXT action in >> the list gains the NEXT todo keyword automatically; this is what the >> TRIGGER property cares for. In that way my Agenda Views (defined as >> NEXT/HOME, NEXT/OFFICE etc.) display only next actions that can be done >> immediately. >> > *** I like the concept of "chained actions" and the TRIGGER property. > Very smart, the auto-assignment to NEXT keeps you busy and focused, > and saves a number of key-strokes. > > But I guess that implies multiple NEXT items. Do you maintain several > of those, or one per project? Maybe I'm wrong--I didn't even read the > GTD book thoroughly yet--but I like having *one* NEXT action, so that > I don't get stuck with too many "next" things. I can understand one > NEXT action per project, but several within a single project raises > internal warnings. I think one of the main points in GTD is splitting up a task into multiple physical actions (potential NEXT steps) which can be done one after another depending on the available time, energy level and context. Usually they build up a procedural chain of actions that gradually bring the project to fulfillment. Sometimes there are actions that don't form part of the chain, because they can be done independently from previous steps. I usually put these things at the end of the project's action-list an give them the NEXT status right from the start. For example, this weekend I made my flat secure for my 8 months old son who just starts to crawl and touches every cable he can put his hands on: * Family ** Secure the apartment for the baby :PROJECT: *** NEXT Buy items [0/4] :SHOPPING: - [ ] devices to secure power outlets - [ ] sticky tape - [ ] wire protecting sleeves - [ ] new screws for the baby's bed :PROPERTIES: :TRIGGER: chain-siblings(NEXT) :END: *** secure all power outlets [0/6] :HOME: - [ ] living room - [ ] bathroom - [ ] sleeping room - [ ] child's room - [ ] corridor - [ ] kitchen *** tie all cables with tape :HOME: *** fix the baby bed :HOME: *** NEXT remove loose objects from small tables :HOME: The project has 5 physical actions. Four of them are dependent: First I have to buy what I need, then I can start working. So I buy the items and tick them of in the list one after another as I buy them (C-c C-c in such a list ticks the items and changes the number in the brackets). After I have them all, I set "Buy items" to DONE. Then "secure all power outlets" automatically gets the NEXT status, and so on. As you see, the fifth item "remove loose objects from small tables" can be done without buying anything. So I give it the NEXT status right from the start. It's important to place this item at the end of the list, so that it can't spoil the chain, if I give it the DONE status before the chained list is complete. In fact, for Emacs the last item is part of the chain, but that doesn't really matter in practice. All that could happen, is that I clear the tables before I have finished the other parts and set the fifth item to DONE. When I, then, set the "baby bed" item to DONE, the "loose objects" will get NEXT status again (I'm not quite sure if that really happens, I can't remember such a case). D. Allen recommends that you make a brainstorm when you are planning a project. What are the things I have to do in order to realize the plan? With orgmode you can make brainstorming very easy, just type M-RET and hack in what occurs to your mind. After that, sort the items into (sequential or independent) physical actions, references and so on. More often than not, your collection will still feature some items which are not physical actions, but sub-projects. If you notice that, you have to break them further down into physical actions. But, I think, you don't have to be too dogmatic with that. "Fix the baby bed" in fact consisted of more than one action (change screws, fix a certain plank, tie a cushion), but I had them all in mind and I planned to do them all simultaneously. So I didn't note them too accurately. Greetings, Sven ___ 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] AutOrg, and practice of GTD in a group
Hi Hellekin "Hellekin O. Wolf" writes: > How do you guys use CATEGORIES, PROPERTIES and TAGS in combination > with TODO states and Org-Agenda to optimize your GTD workflow? I'm also into GTD. This is a typical entry I use for a project. * Misc Office ** Rewrite study course documents :PROJECT: *** NEXT Rework Text:HOME: :PROPERTIES: :TRIGGER: chain-siblings(NEXT) :END: *** Mail Text to Volkhard :OFFICE: *** Discuss Text with Volkhard :OFFICE: :PROPERTIES: :dowith: volkhard :END: *** Mail Text to other Profs:OFFICE: Explanation: First level is for divisions of my life (here: Misc Office, others are Family, Teaching, Research etc.). The second level I use to denote projects (in the GTD meaning) or for some small tasks which include only one physical action. In the first case I use no todo keyword and only the PROJECT tag (to create a list of projects and to define what a stuck project is). In the second case, I would give the NEXT keyword already on the second level (not shown here). The third level is for the physical actions of the project. As you see, only the first has a todo keyword (NEXT). The others are dependent from the first (cannot be done before the first is done) and have only a context tag. My context tags include things like HOME, OFFICE, SHOPPING, TRAIN etc. When the first NEXT action is done, the next NEXT action in the list gains the NEXT todo keyword automatically; this is what the TRIGGER property cares for. In that way my Agenda Views (defined as NEXT/HOME, NEXT/OFFICE etc.) display only next actions that can be done immediately. As I'm working in a team, I have long searched for a way to tell Orgmode who is with me at a certain moment and display the things that have to be done together with the(se) person(s). I have recently discovered org-secretary for that purpose. For the above case, if Volkard enters my office, I tell Emacs that he is now with me, and a special agenda view displays all the things I want to do with him. This is what the "dowith" property is for. Apart from PROJECTS and contexts I have two more tags defined: BIGROCK and MIT. The first is given to projects that I want to concentrate on this week (never more than 3 projects contain that tag). MIT means "Most Important Thing (of the day)". I use this tag to mark three to four NEXT actions every night. These are the first things I care for on the next day. > What strategy do you take when you have a personal SEQ_TODO and need > to work with other people, using a different SEQ_TODO? Have a look on org-secretary. Greetings, Sven ___ 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] Meta-grouping properties?
Hi David David Maus writes: > Maybe the tutorial "Org-mode tricks for team management" by Juan > Reyero at http://juanreyero.com/article/emacs/org-teams.html can > provide a solution to the problem? At least it sounds like a similar > problem that is described there. I fear there is no solution for the mentioned idea on that site. In fact, I had the idea of constructing meta-groups exactly while I was implementing org-secretary for my needs after I found the mentioned homepage by chance. Thanks, Sven ___ 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] Meta-grouping properties?
Hi Juri Sorry for answering so late. I have been away from the PC for a while. Juri Krivov writes: > I dont' think this can be done yet. But > I am interested in this idea. How do you hope to define groups? In variable > or in buffer with special group syntax? Should every search matching > for a name alwasy automatically always include groups, or do you think > there should be explicit call like > +groups(John) > in tags query? > I want to lear more lisp, so maybe I will try my hand on > his idea. Learning always goes better with project at hand. For my purpose, groups would mainly consist of teams, i.e. real people's names. Such teams could come into existence, vanish and change quite frequently. So it would be best, not to always define them in a complex Lisp expression in .emacs. I could think of buffer specific definitions as one of the most effective possibilities: #+METAGROUPS: (PR-Team(John Mary Sven)) (Website-Taskforce(Tom Fred Mary)) I think John's group(s) should always be matched when John is searched for, similar to tag inheritance. Thanks for trying (I wish I could) Sven ___ 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