Re: Strategic time planing: Breaking down EFFORT property

2023-10-04 Thread Sven Bretfeld


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

2023-10-04 Thread Sven Bretfeld
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

2023-03-01 Thread Sven Bretfeld
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:]].
> 
> 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:]]^&. 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

2023-02-26 Thread Sven Bretfeld
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:]].

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:]]^&. 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

2023-02-22 Thread Sven Bretfeld
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

2023-02-19 Thread Sven Bretfeld
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

2020-01-09 Thread Sven Bretfeld
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

2020-01-09 Thread Sven Bretfeld
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

2020-01-09 Thread Sven Bretfeld
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

2018-07-30 Thread Sven Bretfeld
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 including hundreds of if-conditions to the code itself.

Thank y

Re: [O] Feature request: Maintaining multiple init files with one org file

2018-07-29 Thread Sven Bretfeld
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

2018-07-29 Thread Sven Bretfeld
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

2018-07-28 Thread Sven Bretfeld
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

2018-07-19 Thread Sven Bretfeld
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

2018-07-16 Thread Sven Bretfeld


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

2018-07-16 Thread Sven Bretfeld
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?

2018-07-02 Thread Sven Bretfeld
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?

2018-07-02 Thread Sven Bretfeld
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

2017-03-24 Thread Sven Bretfeld

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

2017-03-22 Thread Sven Bretfeld

Nicolas Goaziou writes:

> Hello,
>
> Sven Bretfeld <sven.bretf...@ntnu.no> 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

2017-03-22 Thread Sven Bretfeld
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

2015-12-02 Thread Sven Bretfeld
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

2015-11-23 Thread Sven Bretfeld
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

2015-09-19 Thread Sven Bretfeld

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

2015-09-19 Thread Sven Bretfeld
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

2015-09-17 Thread Sven Bretfeld
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

2015-09-16 Thread Sven Bretfeld
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)

2013-01-27 Thread Sven Bretfeld
Hi David

David Engster d...@randomsample.de 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
  (with-current-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

Re: [O] Problems with org-caldav (wrong-type-argument stringp 47)

2013-01-27 Thread Sven Bretfeld
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 sven.bretf...@gmx.ch writes:

 Hi David

 David Engster d...@randomsample.de 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
   (with-current-buffer buf (goto-char

[O] Problems with org-caldav (wrong-type-argument stringp 47)

2013-01-26 Thread Sven Bretfeld
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)) 

Re: [O] Problems with org-caldav (wrong-type-argument stringp 47)

2013-01-26 Thread Sven Bretfeld
Hi David

David Engster d...@randomsample.de 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)




Re: [O] Using non-org files as agenda files?

2013-01-25 Thread Sven Bretfeld
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 samolog...@gmail.com writes:

 On 1/22/13, Sven Bretfeld sven.bretf...@gmx.ch 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?

2013-01-22 Thread Sven Bretfeld
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

2012-11-24 Thread Sven Bretfeld
Hi Alan

Thanks for your answer.

Alan Schmitt alan.schm...@polytechnique.org writes:

 Sven Bretfeld sven.bretf...@gmx.ch 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

2012-11-23 Thread Sven Bretfeld
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

2012-11-04 Thread Sven Bretfeld
Sven Bretfeld sven.bretf...@gmx.ch 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

2012-11-01 Thread Sven Bretfeld
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



[O] [Sticky Agenda] How to create Agenda Buffers in functions

2012-04-03 Thread Sven Bretfeld
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] [Sticky Agenda] How to create Agenda Buffers in functions

2012-04-03 Thread Sven Bretfeld
Max Mikhanosha m...@openchat.com 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



Re: [O] MobileOrg for Android 0.8.0

2012-02-08 Thread Sven Bretfeld
Hi

Tom Regner t...@goochesa.de 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/



Re: [O] MobileOrg for Android 0.8.0

2012-02-08 Thread Sven Bretfeld
Hi Matthew

Matthew Jones bsdmatb...@gmail.com 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 0.8.1 for Android

2012-02-08 Thread Sven Bretfeld
Hi Tom

Tom Regner t...@goochesa.de 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

2012-02-08 Thread Sven Bretfeld
Nick Dokos nicholas.do...@hp.com writes:

 Matthew Jones bsdmatb...@gmail.com 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




[O] MobileOrg for Android 0.8.0

2012-02-07 Thread Sven Bretfeld
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] how do scientists use org mode?

2012-02-01 Thread Sven Bretfeld
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 christoph...@gmx.net 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] New iCalendar import script

2012-02-01 Thread Sven Bretfeld
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 simon.t...@gmx.de 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] Viewing all entries of a file in Agenda

2011-12-11 Thread Sven Bretfeld
Hi Herbert 

Herbert Sitz hes...@gmail.com writes:

 Sven Bretfeld sven.bretfeld at 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



Re: [O] [feature request] Org as an Excerpt Database (or Multivalue Properties)

2011-12-11 Thread Sven Bretfeld
Hi Christian and Herbert

Christian Moe m...@christianmoe.com 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



[O] [feature request] Org as an Excerpt Database (or Multivalue Properties)

2011-12-10 Thread Sven Bretfeld
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



[O] Viewing all entries of a file in Agenda

2011-12-10 Thread Sven Bretfeld
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



Re: [O] What do you use to identify projects (in the GTD sense)

2011-10-11 Thread Sven Bretfeld
Hi Bernt

Bernt Hansen be...@norang.ca 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 

[O] Additive tags or meta-tags

2011-09-21 Thread Sven Bretfeld
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

2011-09-03 Thread Sven Bretfeld
Hi Brad

I don't know anything about your question proper, but ...

Brad Collette shopinthewo...@gmail.com 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

2011-05-31 Thread Sven Bretfeld
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

2011-05-26 Thread Sven Bretfeld
Hi Michael

Michael Markert markert.mich...@googlemail.com 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

2011-05-26 Thread Sven Bretfeld
Hi Julien

Julien Danjou jul...@danjou.info 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

2011-05-25 Thread Sven Bretfeld
Hi Nick, hi all

Nick Dokos nicholas.do...@hp.com writes:

 Sven Bretfeld sven.bretf...@gmx.ch 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

2011-05-24 Thread Sven Bretfeld
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

2011-05-04 Thread Sven Bretfeld
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 bsdmatb...@gmail.com 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?

2011-03-16 Thread Sven Bretfeld
Hi all

I have solved the problem with some sed operations now.

Greetings

Sven

Sven Bretfeld sven.bretf...@gmx.ch 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?

2011-03-15 Thread Sven Bretfeld
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] MobileOrg Android 0.5.0 - Now with native Dropbox support!

2010-12-30 Thread Sven Bretfeld
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 bsdmatb...@gmail.com 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)

2010-12-07 Thread Sven Bretfeld
Hi Matthew

Matthew Jones bsdmatb...@gmail.com 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)

2010-12-07 Thread Sven Bretfeld
Hi Matthew

Matthew Jones bsdmatb...@gmail.com 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)

2010-12-03 Thread Sven Bretfeld
Hi Matthew

Matthew Jones bsdmatb...@gmail.com 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)

2010-12-02 Thread Sven Bretfeld
Mark Elston m_els...@comcast.net 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)

2010-12-01 Thread Sven Bretfeld
Hi Mark

Mark Elston m_els...@comcast.net 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)

2010-11-30 Thread Sven Bretfeld
Hi Matthew

Matthew Jones bsdmatb...@gmail.com 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)

2010-11-28 Thread Sven Bretfeld
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] Re: Freemind conversion and Notes

2010-09-29 Thread Sven Bretfeld
Hi Lennart

Lennart Borgman lennart.borg...@gmail.com 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

2010-09-28 Thread Sven Bretfeld
Hi Lennart

Lennart Borgman lennart.borg...@gmail.com 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

2010-09-20 Thread Sven Bretfeld
Hi Robert

Robert Goldman rpgold...@sift.info 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


Re: [Orgmode] Re: Adding entries to Google calendar

2010-09-13 Thread Sven Bretfeld
Hi

Eric S Fraga ucec...@ucl.ac.uk 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


[Orgmode] Freemind conversion and Notes

2010-09-13 Thread Sven Bretfeld
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] Adding entries to Google calendar

2010-09-09 Thread Sven Bretfeld
Hi Matt

Matt Price mopto...@gmail.com 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] Agenda and weather forecast

2010-09-09 Thread Sven Bretfeld
Hi Julien

Julien Danjou jul...@danjou.info 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] Agenda and weather forecast | language and units

2010-09-09 Thread Sven Bretfeld
Hi Juan

Juan Pechiar pech...@computer.org 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] Re: Agenda and weather forecast

2010-09-09 Thread Sven Bretfeld
d.tchin d.tc...@voila.fr 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] Adding entries to Google calendar

2010-09-08 Thread Sven Bretfeld
Hi Eric

Eric S Fraga ucec...@ucl.ac.uk 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] MobileOrg now in the Android market

2010-09-04 Thread Sven Bretfeld
Matthew Jones bsdmatb...@gmail.com 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] Adding entries to Google calendar

2010-09-04 Thread Sven Bretfeld
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] Adding entries to Google calendar

2010-09-04 Thread Sven Bretfeld
Hi Eric

Eric S Fraga ucec...@ucl.ac.uk 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] MobileOrg now in the Android market

2010-09-03 Thread Sven Bretfeld
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

2010-07-23 Thread Sven Bretfeld
Hi Dan

Dan Griswold dgris...@rochester.rr.com 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


[Orgmode] Minor Bug in ical2org awk script

2010-07-21 Thread Sven Bretfeld
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


Re: [Orgmode] .ics export w/Alarms. Possible?

2010-07-21 Thread Sven Bretfeld
Hi

Eric S Fraga ucec...@ucl.ac.uk writes:

 On Wed, 21 Jul 2010 16:27:40 +0200, Giovanni Ridolfi 
 giovanni.rido...@yahoo.it 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


Re: [Orgmode] Minor Bug in ical2org awk script

2010-07-21 Thread Sven Bretfeld
Hi Eric

Eric S Fraga ucec...@ucl.ac.uk 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?

2010-07-21 Thread Sven Bretfeld
Eric S Fraga ucec...@ucl.ac.uk 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


[Orgmode] iCal export and complex diary sexps

2010-07-15 Thread Sven Bretfeld
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] Re: [google] updated awk script for google to org conversion

2010-07-13 Thread Sven Bretfeld
Michael Steiner michistei...@verizon.net writes:

 On 2010-07-12 05:22, Rémi Vanicat wrote:
 Sven Bretfeldsven.bretf...@gmx.ch  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

2010-07-12 Thread Sven Bretfeld
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

2010-07-07 Thread Sven Bretfeld
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(#marker at 1665 in mygtd.org 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 ... ... ...) (insert ...) (end-of-line 1) (insert \n) 
(unless sexp ... ...)))
  (while (not (eobp)) (cond 

Re: [Orgmode] AutOrg, and practice of GTD in a group

2010-06-27 Thread Sven Bretfeld
Hi Hellekin

Hellekin O. Wolf helle...@cepheide.org 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

2010-06-23 Thread Sven Bretfeld
Hi Hellekin

Hellekin O. Wolf helle...@cepheide.org 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?

2010-06-13 Thread Sven Bretfeld
Hi David

David Maus dm...@ictsoc.de 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?

2010-06-08 Thread Sven Bretfeld
Hi Juri

Sorry for answering so late. I have been away from the PC for a while.

Juri Krivov jkri...@gmail.com 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


[Orgmode] Meta-grouping properties?

2010-06-02 Thread Sven Bretfeld
Hi all

Is it possible to define meta-groups for certain properties? For
example:

* TODO Some Task
  :PROPERTIES:
  :dowith:   PR-Group
  :END:
* TODO Another Task
  :PROPERTIES:
  :dowith:   John
  :END:
* TODO A Third Task
  :PROPERTIES:
  :dowith:   Mary
  :END:

The PR-Group consists of four people including John and Mary. So when
John is with me, I would like to be able to build an agenda view that
shows Some Task and Another Task, when Mary is with me, Some Task
and A Third Task should show up. 

This would be easiest if I could make org aware who actually belongs to
the PR-Group and then just filter the Agenda View for John (or Mary
resp.). 

Is that possible?

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 for Android starts to become really usable

2010-05-31 Thread Sven Bretfeld
Hi Enrico

Enrico Indiogine hindiog...@gmail.com writes:

 Thanks to the help from you all I managed to install the latest
 development version of org-mobile-android on my Xperia X10.  I set up
 my .emacs for stage push-pull and have a mydisk.se account with an org
 directory.

 M-x push will fail with an ssh timeout.  I think it has to do with the
 fact that Emacs has no way of knowing the mydisk.se password.

Try another approach. You are under Ubuntu, aren't you? I'm also under
Ubuntu and I use mydisk.se. So this should also work for you:

1. sudo apt-get install davfs2

2. sudo adduser enrico davfs (I don't remember if this is really the
   groupname, maybe it's davfs2) 

3. edit the file /etc/fstab - add a line at the end:
   
   https://mydisk.se/yourusername   /home/enrico/webdav   davfs   user,noauto   
0  0

4. edit the file /etc/davfs2/secrets, add the following line:

   /home/enrico/webdavyourmydiskusername   yourmydiskpasswd

5. mkdir ~/webdav

6. sudo dpkg-reconfigure davfs2 -- set the SUID Bit (i.e. just say yes)

7. mount ~/webdav

Now, your folders of mydisk.se should appear under ~/webdav. Then tell
Emacs (org-mobile) to use this folder instead of scp. I just used
customize to set the org-mobile-directory.

 This in in my .emacs:

 (setq org-mobile-files (quote (~/org/agenda.org)))
 (setq org-mobile-directory ~/stage/)

Change this to ~/webdav or use stage in the procedure above.

 (add-hook 'org-mobile-post-push-hook
   (lambda () (shell-command scp -r ~/stage/* hindiog...@mydisk.se:org/)))
 (add-hook ' org-mobile-pre-pull-hook
   (lambda () (shell-command scp hindiog...@mydisk.se:org/mobile.org
 ~/stage )))
 (add-hook 'org-mobile-post-pull-hook
   (lambda () (shell-command scp ~/stage/mobileorg.org
 hindiog...@mydisk.se:org]/)))

I think with the webdav-approach you have to delete these hooks. Comment
them out and restart Emacs.

Good luck

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 for Android starts to become really usable

2010-05-28 Thread Sven Bretfeld
Hi to all, hi Matthew

I had a look at matburt's Github today and found the new 0.4alpha-build.
Now, MobOrg4And supports the capturing of notes. That's what I was
waiting for all the time. I can say that Note capturing works on my HTC
Magic, albeit I had little time so far to test it more than once or
twice. 

I just wanted to say thank you very much!

Note taking is rudimentary at the moment. As far as I can see, you have
to type todo-keywords, tags and active timestamps manually. But that
doesn't matter too much at the moment. The current alternatives (RTM,
Toodledo) have similar inconveniences. However, in MobOrg4And we are in
our familiar org-syntax, so /everything/ can be done without complex awk/sed
operations after syncing.

@Matthew: Do you have some kind of roadmap published anywhere?

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-toodledo : sycning org-mode and Toodledo

2010-05-22 Thread Sven Bretfeld
Hi Mark

I'm not at home at the moment. Just a short note off the road. 

Mark Elston m_els...@comcast.net writes:

 I just noticed, however, that setting a Deadline in Toodledo
 does set the DEADLINE in org.

I think it works for me this way only too. I have mainly tried to use
Toodledo as a means for capturing. This works quite good for next
actions with only one tag (context). What i have captured on my Android
since Thursday straightly went to my org file at home (run-at-time), and
found its way back to my phone within an automatic  html export of my agenda.

However, a full sync with any of the available web todo services would be great.
and I think Sachua's toodledo solution is by far the most advanced at
the moment and the best point to start with.

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


  1   2   >