Re: [O] [Test] several of my recent emails have not arrived on the list

2015-08-20 Thread Matt Lundin
Matt Lundin m...@imapmail.org writes:

 Several of my recent posts have not shown up in the archives or on
 gmane.

 I'd like to see if this email gets through.

OK. Sorry for the noise. It seems there was a significant delay, but all
is working now.

Matt



[O] Looking for other `org-babel-tangle-jump-to-org' and `org-babel-detangle' users

2015-08-20 Thread Grant Rettke
Good afternoon,

I'm looking for other `org-babel-tangle-jump-to-org' and
`org-babel-detangle' users.

I want to invest in this and don't want to do it alone.

Please let me know if you are also interested in this.

Sincerely,

Grant Rettke
--
g...@wisdomandwonder.com | http://www.wisdomandwonder.com/
“Wisdom begins in wonder.” --Socrates
“All creativity is an extended form of a joke.” --Kay
((λ (x) (x x)) (λ (x) (x x)))
“Life has become immeasurably better since I have been forced to stop
taking it seriously.” --Thompson



Re: [O] org-habit and Org 8.3

2015-08-20 Thread Nicolas Goaziou
Hello,

John Wiegley jo...@newartisans.com writes:

 Josiah Schwab jsch...@gmail.com writes:

 Upon upgrading, my org-habits did not display correctly, because the
 PROPERTY drawer where the habit style was indicated came after the LOGBOOK
 in my org files.

 Is there a reason why this was done?

Efficiency. Searching through large sections only to find there is no
property drawer in it has a cost. Now, properties are accessed in
constant time.


Regards,

-- 
Nicolas Goaziou



Re: [O] Bug: Org-indent does not align headings with text when using non-monospaced fonts [8.3.1 (8.3.1-16-gf6aa53-elpa @ /Users/cube/.emacs.d/elpa/org-20150810/)]

2015-08-20 Thread Jakub Szypulka

Hello Nicolas,

---
Nicolas Goaziou m...@nicolasgoaziou.fr, 2015-08-20 13:56
 Hello,

 Jakub Szypulka ja...@szypulka.de writes:

 Reproduction of bug: Open an org-file in org-mode with auto-indent turned on 
 while using a non-monospaced font.
 Expected result: The headings align with the text contents.
 Actual result: The headings do not align with the text contents.

 This has been originally filed two years ago:
 http://article.gmane.org/gmane.emacs.orgmode/64775/match=indent+misalign

 There is a proposed fix: replace the blankspace used to indent a line, 
 defined in org-indent.el, with a star ('*').
 Source: 
 http://emacs.stackexchange.com/questions/7429/how-to-customize-org-mode-indentation
 This link also includes screenshots that illustrate the problem.

 Thank you for reporting it.

 Unfortunately, the proposed fix isn't sufficient as alignment is still
 broken in plain lists, with `visual-line-mode'.

 Does the attached patch work for you?

Yes it does, I'm impressed! Thanks a lot for the quick fix!

I understand those changed will be included by default in the next org versions?

Cheers,
Jakub



 Regards,




Re: [O] Valid use cases for lists?

2015-08-20 Thread Florian Beck

 Can anyone give me an example of when it's a good idea to use lists
 rather than headlines?

Headlines often are too heavy for my taste. My reading notes as well as
my notes for writing usually do not have a title. (You might think it good
practice to come up with a title, but my experiments tell me otherwise.)
Headlines are too noisy, both on screen and when exporting.

 when you use them, and then try to use pretty much any
 other Org feature on them (marking them as a TODO item, tagging, etc.)
 it doesn't work because lists aren't meant to be used that way.

True, but there are ways around that:

 - Instead of tagging, write the keywords after the item (use custom
 links or hooks to supress exporting)
 - Use visual-line-mode and search with multi occur.
 - use =#+TODO:= instead of todo keywords (and use multi occur).
 - To uniquely id items, add timestamps (and use multi occur).
 - Write a function to refile items (my hack is a bit idiosyncratic so I
 don't share it here, but it should be pretty straighforward using
 =(org-refile t)= to get the location).

-- 
Florian Beck



Re: [O] org-agenda-insert-diary-make-new-entry adds entry as first child?

2015-08-20 Thread Nikolai Weibull
Here’s a patch that I hope I managed to compile correctly via git-send-email.




Re: [O] beamer_env tag issue with empty headlines

2015-08-20 Thread Rafael
Nicolas Goaziou m...@nicolasgoaziou.fr writes:

 This is an ambiguous headline. Indeed, it's impossible to tell if it is
 an empty headline with tags or a headline without tags whose title is
 :B_block:BMCOL:.

 I think the last option is better as the first one prevents any
 headline's title from being enclosed within colons. This is restrictive.

 In any case, there are workarounds available for what you have to do.

I've been using filters to fix this, is there any other trick that
works for all exporters?

On the other hand, I wish there would be a variable
org-no-headlines-between-colons, to solve these sort of ambiguities.

Regards,
Rafael



Re: [O] Stable releases

2015-08-20 Thread Bastien
Hi Rasmus,

Rasmus ras...@gmx.us writes:

 One data point: I can absolutely not be bothered using anything that is
 not at least in contrib.

Just out of curiosity: don't you use the Emacs package system at all?

I used not to use it, but thanks to recent improvements, I find it
quite good now -- and I would not mind using Org packages from there.

-- 
 Bastien



Re: [O] Stable releases

2015-08-20 Thread Thomas S . Dye

Bastien b...@gnu.org writes:

 Hi Rasmus,

 Rasmus ras...@gmx.us writes:

 One data point: I can absolutely not be bothered using anything that is
 not at least in contrib.

 Just out of curiosity: don't you use the Emacs package system at all?

 I used not to use it, but thanks to recent improvements, I find it
 quite good now -- and I would not mind using Org packages from there.

The package system appears to be quite popular in the Org mode world.

There are a dozen ob-* languages distributed by the package system
vs. eight in contrib.  There are fifteen ox-* exporters available
through the package system vs. eleven in contrib.

Download statistics from Melpa indicate several of the packages are
quite popular.  ox-reveal has been downloaded more than 4,000 times, and
ox-pandoc and ox-gfm (Github flavored markup) more than 1,000 times.
The babel languages are less popular, but ob-browser (for html),
ob-ipython, ob-mongo, and ob-sml have all been downloaded more than 300
times.

Melpa has 91 org-* packages. The packages evil-org, org-bullets, and
org-fstree have all been downloaded more than 10,000 times.  There are
ten others with more than 1,000 downloads.

All the best,
Tom

-- 
Thomas S. Dye
http://www.tsdye.com



Re: [O] nested macro expansion?

2015-08-20 Thread Eric Abrahamsen
Nicolas Goaziou m...@nicolasgoaziou.fr writes:

 Hello

 Eric Abrahamsen e...@ericabrahamsen.net writes:

 After googling for a while, I also thought this might work:

 #+MACRO: bubba (eval (format-time-string %Y property{{{TIMESTAMP}}}))

 {{{bubba}}}

 But the nested definition isn't expanded, either with or without
 quotes.

 As you noticed, you cannot nest macros. You can use macros within macro
 definitions, tho. Alas, it will not work with (eval ...) templates,
 since those make no assumptions about the rest of the template and
 simply use `read' on it.

 Anyway, as pointed out in this thread, if you take the (eval ...) path,
 you don't really need macros: you're in Elisp.

Thanks to both of you for the pointers! This is my first time trying to
do anything non-trivial with macros, and the orientation is very useful.

Eric




Re: [O] Bug: Org-indent does not align headings with text when using non-monospaced fonts [8.3.1 (8.3.1-16-gf6aa53-elpa @ /Users/cube/.emacs.d/elpa/org-20150810/)]

2015-08-20 Thread Nicolas Goaziou
Hello,

Jakub Szypulka ja...@szypulka.de writes:

 Reproduction of bug: Open an org-file in org-mode with auto-indent turned on 
 while using a non-monospaced font.
 Expected result: The headings align with the text contents.
 Actual result: The headings do not align with the text contents.

 This has been originally filed two years ago:
 http://article.gmane.org/gmane.emacs.orgmode/64775/match=indent+misalign

 There is a proposed fix: replace the blankspace used to indent a line, 
 defined in org-indent.el, with a star ('*').
 Source: 
 http://emacs.stackexchange.com/questions/7429/how-to-customize-org-mode-indentation
 This link also includes screenshots that illustrate the problem.

Thank you for reporting it.

Unfortunately, the proposed fix isn't sufficient as alignment is still
broken in plain lists, with `visual-line-mode'.

Does the attached patch work for you?


Regards,

-- 
Nicolas Goaziou
From 95bfd6529664994554b60cbc22d2e26bb3158a23 Mon Sep 17 00:00:00 2001
From: Nicolas Goaziou m...@nicolasgoaziou.fr
Date: Thu, 20 Aug 2015 13:44:36 +0200
Subject: [PATCH] org-indent: Fix indentation with proportional font

* lisp/org-indent.el (org-indent-max):
(org-indent-max-levels):
(org-indent-strings):
(org-indent-stars): Remove unused variables.

(org-indent-initialize): Remove function.

(org-indent-boundary-char): Remove unnecessary comment.  Do not rely on
function above.

(org-indent): Make sure characters used for virtual indentation are
invisible since they are not necessarily white spaces.

(org-indent-set-line-properties): Fix indentation with proportional
font, i.e., do not use only white spaces to indent.
(org-indent-add-properties): Apply changes above.

Reported-by: Jakub Szypulka ja...@szypulka.de
http://permalink.gmane.org/gmane.emacs.orgmode/100252
---
 lisp/org-indent.el | 128 -
 1 file changed, 47 insertions(+), 81 deletions(-)

diff --git a/lisp/org-indent.el b/lisp/org-indent.el
index c8d3325..868ef5f 100644
--- a/lisp/org-indent.el
+++ b/lisp/org-indent.el
@@ -52,20 +52,6 @@
   :tag Org Indent
   :group 'org)
 
-(defconst org-indent-max 40
-  Maximum indentation in characters.)
-(defconst org-indent-max-levels 20
-  Maximum added level through virtual indentation, in characters.
-
-It is computed by multiplying `org-indent-indentation-per-level'
-minus one by actual level of the headline minus one.)
-
-(defvar org-indent-strings nil
-  Vector with all indentation strings.
-It will be set in `org-indent-initialize'.)
-(defvar org-indent-stars nil
-  Vector with all indentation star strings.
-It will be set in `org-indent-initialize'.)
 (defvar org-indent-inlinetask-first-star (org-add-props * '(face org-warning))
   First star of inline tasks, with correct face.)
 (defvar org-indent-agent-timer nil
@@ -92,15 +78,12 @@ This is used locally in each buffer being initialized.)
 It is modified by `org-indent-notify-modified-headline'.)
 
 
-(defcustom org-indent-boundary-char ?\   ; comment to protect space char
+(defcustom org-indent-boundary-char ?\s
   The end of the virtual indentation strings, a single-character string.
 The default is just a space, but if you wish, you can use \|\ or so.
 This can be useful on a terminal window - under a windowing system,
-it may be prettier to customize the org-indent face.
+it may be prettier to customize the `org-indent' face.
   :group 'org-indent
-  :set (lambda (var val)
-	 (set var val)
-	 (and org-indent-strings (org-indent-initialize)))
   :type 'character)
 
 (defcustom org-indent-mode-turns-off-org-adapt-indentation t
@@ -121,30 +104,12 @@ turn on `org-hide-leading-stars'.
   :group 'org-indent
   :type 'integer)
 
-(defface org-indent
-  (org-compatible-face nil nil)
+(defface org-indent '((t (:inherit org-hide)))
   Face for outline indentation.
 The default is to make it look like whitespace.  But you may find it
 useful to make it ever so slightly different.
   :group 'org-faces)
 
-(defun org-indent-initialize ()
-  Initialize the indentation strings.
-  (setq org-indent-strings (make-vector (1+ org-indent-max) nil))
-  (setq org-indent-stars (make-vector (1+ org-indent-max) nil))
-  (aset org-indent-strings 0 nil)
-  (aset org-indent-stars 0 nil)
-  (loop for i from 1 to org-indent-max do
-	(aset org-indent-strings i
-	  (org-add-props
-		  (concat (make-string (1- i) ?\ )
-			  (char-to-string org-indent-boundary-char))
-		  nil 'face 'org-indent)))
-  (loop for i from 1 to org-indent-max-levels do
-	(aset org-indent-stars i
-	  (org-add-props (make-string i ?*)
-		  nil 'face 'org-hide
-
 (defsubst org-indent-remove-properties (beg end)
   Remove indentations between BEG and END.
   (org-with-silent-modifications
@@ -174,7 +139,6 @@ during idle time.
(org-indent-mode
 ;; mode was turned on.
 (org-set-local 'indent-tabs-mode nil)
-(or org-indent-strings (org-indent-initialize))
 (org-set-local 'org-indent-initial-marker (copy-marker 1))
 (when 

Re: [O] Logging the new time on a reschedule.

2015-08-20 Thread Malcolm Purvis
 Nicolas == Nicolas Goaziou m...@nicolasgoaziou.fr writes:

Nicolas Malcolm Purvis malc...@purvis.id.au writes:
 Thanks.  Unfortunately I now get an error when I try to reschedule:

Nicolas Oops. Fixed. Thank you.

It works as expected now.  Thanks again.

Malcolm

-- 
   Malcolm Purvis malc...@purvis.id.au



Re: [O] org-agenda-custom-commands with org-agenda-filter-by-regexp

2015-08-20 Thread Matt Lundin
torys.ander...@gmail.com (Tory S. Anderson) writes:

 I've previously had success with using 
 `org-agenda-tag-filter-preset` in `org-agenda-custom-commands` but 
 I wanted to include OR logic on two different tags, which seemed 
 beyond th tag-filter (which seems to use AND logic). In my agenda 
 view I can use `=` to use a conditional on two tags, but I can't 
 seem to duplicate that behavior in a custom command. With no 
 errors it simply doesn't seem to work, and googling around has 
 proved fruitless for giving examples; I've tried a number of 
 different syntax without effect.

 (setq org-agenda-custom-commands
   '((w.Work)
   (wd Work Day
((agenda  ((org-agenda-span 1) 
(org-agenda-start-on-weekday nil) 
(org-agenda-filter-by-regexp 
'(:\\(ODH\)\\|\\(AGENDA\\):


 What's the proper way to get a working regexp filter in my 
 custom-command? Thanks!

I think the regexp above is not correct. It's missing a backward slash
after ODH (and contains an redundant set of parentheses).

But even the regexp were correct, it wouldn't work, since
org-agenda-filter-by-regexp is designed to be used interactively. Its
parameter is a prefix argument, not a list or string.

I think you need a skip function here:

(setq org-agenda-custom-commands
  '((w.Work)
(wd Work Day
 ((agenda  ((org-agenda-span 1) 
 (org-agenda-start-on-weekday nil) 
 (org-agenda-skip-function
  '(org-agenda-skip-entry-if 'notregexp :\\(ODH\\|AGENDA\\):

Matt



Re: [O] Valid use cases for lists?

2015-08-20 Thread Mike McLean
On Wed, Aug 19, 2015 at 3:55 PM, Rasmus ras...@gmx.us wrote:

 Chris Patti cpa...@gmail.com writes:

  I'm guessing I'm missing something obvious here, and that's why I'm
 asking.

 Export.  List are used everywhere.


I also use them for “simple” projects. I have a set of Task TODO keywords
for one-off tasks. I have a set of Project TODO keywords for projects.
Typically a project is a heading with a Project keyword and a number of
(level + 1) headings with Task keywords. For projects that span several
days/weeks this works well.

Some things that I do fall between Project and Task in the complexity. The
items needs 1-2 things done and discrete and different points in time
(temporal dependency, first A then B) or with different co workers
(collaboration) or both. The overall work, however, will only take 0-2
days. It's too big for a single task. It's too small for a Project. It's
related items that conceptually belong together. In Goldilocks fashion, a
check-box list is just the right size.

#+begin_example
** TODO Medium Sized “project” [1/3]
- [X] Get information from John
- [ ] Process information and send to Mary for review
- [ ] Finalize and submit final to Joe (based on Mary’s comments and
changes)
#+end_example


Re: [O] Local variables in an org file

2015-08-20 Thread Thomas S . Dye
Aloha all,

Grant Rettke g...@wisdomandwonder.com writes:

 I've been thinking about this all week. Must be in the global memory space.
 Grant Rettke

Here is one way.

* Define a local variable
#+name: my-var
#+header: :exports none
#+begin_src R
768
#+end_src

#+name: pass-my-var-to-code-block
#+header: :var x=my-var
#+header: :exports both
#+begin_src emacs-lisp
(+ x 1)
#+end_src

#+results: pass-my-var-to-code-block
: 769

The variable is call_my-var().

When I export this to an ASCII buffer, I get:

1 Define a local variable
=

  ,
  | (+ x 1)
  `

  ,
  | 769
  `

  The variable is `768'.

All the best,
Tom

-- 
Thomas S. Dye
http://www.tsdye.com



Re: [O] Regression: org-translate-link doesn't work correctly in Org 8.3

2015-08-20 Thread Sergei Nosov
Great! Thanks!

2 questions, though.

1. Previously, the type of the link was thisfile, now it's custom-id
and also, the leading hash is removed from the link. Let's consider
the [[#about][About]]
example once again. Previously, I was given (thisfile . #about) and I
changed this to (thisfile . About), which then worked like a charm.
Now, I'm given (custom-id . about), which I don't know how I should
translate. Neither of (custom-id . About) or (id . About) work.
What should it be?

BTW, there's a line (require 'ord-id) in org-open-at-point function in
master. Probably, it's a typo (should be (require 'org-id))

2. When those fixes will be available in MELPA?


--
Best regards,
   Sergei Nosov

On Wed, Aug 19, 2015 at 4:28 PM, Nicolas Goaziou m...@nicolasgoaziou.fr
wrote:

 Bastien b...@gnu.org writes:

  Nicolas Goaziou m...@nicolasgoaziou.fr writes:
 
  I think `org-translate-link' should be updated to provide correct type,
  including internal ones, to `org-link-translation-function'. E.g.,
 
http://orgmode.org = http
#something = custom-id
(ref:line) = coderef
whatever   = fuzzy
 
  At least, this would be consistent with the parser.
 
  Agreed.

 Done. There is one foreseeable incompatible change however. When link
 type is unknown to Org, it is reported as fuzzy, e.g.:

   [[foobar:something]]

 is seen as (fuzzy foobar:something) by
 `org-link-translation-function', not (foobar something), unless
 foobar belong to `org-link-types'.

 In practice I don't think it matters because
 `org-link-translation-function' isn't meant to create new link types but
 handle conflicting link types. In any case, in the example above, one
 can always use

   (when (and (string= type fuzzy)
  (string-match \\(.*?\\):\\(.*\\) path))
(cons (match-string 1) (match-string 2)))

 in `org-link-translation-function'.

 Regards,



Re: [O] org-block-background in 8.3.1?

2015-08-20 Thread JI , Xiang
The thing is that while I could previously use variable-pitch-mode in the rest 
of org buffer and still let source code blocks inherit fixed-pitch face, now 
this seems to be impossible to achieve. With org-block-background face gone, 
even if I already set org-block face to inherit fixed-pitch, the face displayed 
in blocks such as #BEGIN_SRC haskell is still variable-pitch as the rest of the 
buffer. Only plain blocks of #BEGIN_SRC without any language specified are 
displayed in fixed-pitch. Any workaround for this? Thanks.

Related Stackexchange questions:

https://stackoverflow.com/questions/26290924/fontify-r-code-blocks-in-org-mode%E2%80%938

https://emacs.stackexchange.com/questions/14824/org-block-background-font-not-having-effect




Re: [O] outorg issue

2015-08-20 Thread Kaushal
I don't know the outshine and outorg code in and out. But I wouldn't mind
keeping it maintained with the pull requests I get.

That said, adding Thorsten Jolitz to this discussion.
@Thorsten Would you mind making me (
https://github.com/tj64/outshine/pull/46 ) a temporary maintainer of your
outshine package on github. Or do you have anyone in mind you would take
this up? Thanks.

On Wed, Aug 19, 2015 at 2:26 PM Pip Cet pip...@gmail.com wrote:

 On 8/19/15, Andreas Leha andreas.l...@med.uni-goettingen.de wrote:
  Thank you for your patch!  It seems as it breaks global visibility
  cycling, though.

 Sorry about that, I really messed up there. Kaushal's patch should
 work better, as long as there is at least one valid heading in the
 file (if I try running it on an entirely empty org file, I can still
 produce the error message with M-x outline-hide-sublevels).

 I'd also like to second Bastien's suggestion, it would be excellent to
 see this useful extension maintained again.




Re: [O] beamer_env tag issue with empty headlines

2015-08-20 Thread Rafael
Nicolas Goaziou m...@nicolasgoaziou.fr writes:

 Rafael rvf0...@gmail.com writes:

 On the other hand, I wish there would be a variable
 org-no-headlines-between-colons, to solve these sort of ambiguities.

 What do you mean exactly? What beamer code do you want to generate?

Hi,

I mean that I would like to have a new variable, say,
'org-no-headlines-between-colons', that when set to t, would cause org
to treat any part of a heading between colons as a tag. 

Best regards,

Rafael



Re: [O] 8.3.1 bug or misunderstanding -- inline archive

2015-08-20 Thread Kyle Meyer
Hymie! hy...@lactose.homelinux.net writes:

 I have a few items in my org file that are tagged ARCHIVE.  They show up
 grey in my emacs window.

 If I sit the cursor on the * bullet and hit TAB, I get a message that says
 Subtree is archived and stays closed.  Use C-tab to cycle it anyway.

 However, if I sit the cursor on the actual headline and hit TAB, I get the
 same message, but the subtree is also expanded.

 I don't recall offhand how it worked in 8.2.x, but I'm pretty sure it
 refused to expand the subtree no matter where the cursor was.

Yes, you're correct.  This behavior was introduced by 389274c (Fix
`org-hide-archived-subtrees', 2014-12-16).  The issue is that the new
regexp is anchored at the start of the heading, but the argument BEG is
not necessarily at the beginning of the line.

--
Kyle



Re: [O] org-habit and Org 8.3

2015-08-20 Thread Josiah Schwab
Hello John,

On 19 August 2015 at 09:35 PDT, John Wiegley wrote:

 I've upgrade today to Org 8.3.1, and I've noticed that any customization which
 used overlays (mainly, org-habit) now displays no overlays in the Agenda
 buffer.

 Is this something others have already seen and found a fix for?

Upon upgrading, my org-habits did not display correctly, because the
PROPERTY drawer where the habit style was indicated came after the
LOGBOOK in my org files.

After using org-repair-property-drawers 

  http://orgmode.org/Changes.html

my habits returned to their previous appearance.

That's not directly overlay related, but since the symptoms sounded
similar I thought I'd chime in.

Hope that helps,
Josiah



Re: [O] [DEV] Bump Emacs requirement to 24.4?

2015-08-20 Thread Bastien
Hi Rasmus,

Rasmus ras...@gmx.us writes:

 It would seem to me, that the natural conclusion from this is simply to
 EOL Org 8+ and move on to v9, no?

(I'm not sure what you mean by EOL.)

And surely I've not been clear (see my answer to Suvayu too):
the whole purpose of this three-branches temporary move is to be
able to continue adding new features to the 8.x series, so that
Emacs-23 users can enjoy those features.

So the next major version will be 8.4, and Emacs 23 compatible.

This does not prevent from working on the master branch and
develop things that are Emacs 24.3+ compatible.

I hope it makes more sense.

-- 
 Bastien



Re: [O] Sticky agendas not redone when using org-agenda-(set|remove)-restriction-lock

2015-08-20 Thread Bastien
Hi Nikolai,

 Here’s the patch again, as I don’t think the one I sent yesterday got
 through.  My FSF papers are signed, by the way.

It looks like you forgot to attach the patch...

-- 
 Bastien



[O] org-agenda-custom-commands with org-agenda-filter-by-regexp

2015-08-20 Thread Tory S. Anderson
I've previously had success with using 
`org-agenda-tag-filter-preset` in `org-agenda-custom-commands` but 
I wanted to include OR logic on two different tags, which seemed 
beyond th tag-filter (which seems to use AND logic). In my agenda 
view I can use `=` to use a conditional on two tags, but I can't 
seem to duplicate that behavior in a custom command. With no 
errors it simply doesn't seem to work, and googling around has 
proved fruitless for giving examples; I've tried a number of 
different syntax without effect.


--8---cut here---start-8---
(setq org-agenda-custom-commands
 '((w.Work)
(wd Work Day
	 ((agenda  ((org-agenda-span 1) 
	 (org-agenda-start-on-weekday nil) 
	 (org-agenda-filter-by-regexp 
	 '(:\\(ODH\)\\|\\(AGENDA\\):

--8---cut here---end---8---


What's the proper way to get a working regexp filter in my 
custom-command? Thanks!




Re: [O] nested macro expansion?

2015-08-20 Thread Eric Abrahamsen

On 08/19/15 14:43 PM, Pip Cet wrote:
 Hi Eric,
 I know this doesn't answer your actual question about nested macro
 expansion, but writing some elisp might help you get the TIMESTAMP
 property, at least: both

 #+MACRO: bubba (eval (org-entry-get nil TIMESTAMP))

 and

 #+MACRO: bubba (eval (org-macro-expand {{{property(TIMESTAMP)}}}
 org-macro-templates))

 appear to produce the current timestamp, and both can be fed to
 another function, but not `format-time-string': the result of
 (org-entry-get...) is a string of the form 2014-08-19, which would
 need to be passed to `org-parse-time-string' first.

Hey, that does the trick, thank you! I guess I should have thought of
that.

Sure, the example as I gave it would have errored had it done anything,
but the main thing was just getting the right values in the right place.
Off to write the function...

Thanks again,
Eric

 On 8/19/15, Eric Abrahamsen e...@ericabrahamsen.net wrote:
 Eric Abrahamsen e...@ericabrahamsen.net writes:

 What I'm trying to do is have a macro that takes the computed TIMESTAMP
 property for an entry, and then runs it through a custom function that
 breaks out the start/end times, and produces a nicely formatted string
 from that.

 I don't see how to write a macro that feeds the value of a computed
 special property to a function.

 Right now my testing version looks like this:

 #+MACRO: bubba (eval (format-time-string %Y $1))

 and I'm calling it like this:

 {{{bubba({{{property(TIMESTAMP)}}})}}}

 That doesn't expand the interior {{{property(TIMESTAMP)}}} clause.
 What `format-time-string' ends up seeing is {{{property(TIMESTAMP,
 without the final braces etc.

 Is there any way to get that value expanded first, and then passed to
 `format-time-string' (or, eventually, my custom function)?

 After googling for a while, I also thought this might work:

 #+MACRO: bubba (eval (format-time-string %Y property{{{TIMESTAMP}}}))

 {{{bubba}}}

 But the nested definition isn't expanded, either with or without quotes.

 E






[O] [PATCH 2/2] Allow inserting diary entries last in date tree

2015-08-20 Thread Nikolai Weibull
* org-agenda.el (org-agenda-insert-diary-strategy): Add new value
  'date-tree-last.
  (org-agenda-insert-diary-make-new-entry): Handle
  `org-agenda-insert-diary-strategy' set to 'date-tree-last.

To allow for diary entries to be entered in time order in the date tree,
add a new value to `org-agenda-insert-diary-strategy' that allows for
this.  The code for handling this value, 'date-tree-last, is a bit
tricky, as we need to keep track of whether the date-tree already had
one or more entries for the given date.
---
 lisp/org-agenda.el | 26 +-
 1 file changed, 17 insertions(+), 9 deletions(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 5fd1cd4..22a4ad9 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -9417,11 +9417,13 @@ buffer, display it in another window.
   Where in `org-agenda-diary-file' should new entries be added?
 Valid values:
 
-date-treein the date tree, as child of the date
-top-levelas top-level entries at the end of the file.
+date-tree in the date tree, as first child of the date
+date-tree-lastin the date tree, as last child of the date
+top-level as top-level entries at the end of the file.
   :group 'org-agenda
   :type '(choice
- (const :tag in a date tree date-tree)
+ (const :tag first in a date tree date-tree)
+ (const :tag last in a date tree date-tree-last)
  (const :tag as top level at end of file top-level)))
 
 (defcustom org-agenda-insert-diary-extract-time nil
@@ -9525,14 +9527,20 @@ a timestamp can be added there.
   (when org-adapt-indentation (org-indent-to-column 2)))
 
 (defun org-agenda-insert-diary-make-new-entry (text)
-  Make a new entry with TEXT as the first child of the current subtree.
+  Make a new entry with TEXT as a child of the current subtree.
 Position the point in the heading's first body line so that
 a timestamp can be added there.
-  (outline-next-heading)
-  (org-back-over-empty-lines)
-  (unless (looking-at [ \t]*$) (save-excursion (insert \n)))
-  (org-insert-heading nil t)
-  (org-do-demote)
+  (let ((last (eq org-agenda-insert-diary-strategy 'date-tree-last))
+   (has-children (save-excursion (org-goto-first-child
+(if (not (and last has-children))
+   (outline-next-heading)
+  (org-goto-first-child)
+  (while (org-get-next-sibling)))
+(org-back-over-empty-lines)
+(unless (looking-at [ \t]*$) (save-excursion (insert \n)))
+(org-insert-heading nil t)
+(unless has-children
+  (org-do-demote)))
   (let ((col (current-column)))
 (insert text)
 (org-end-of-meta-data)
-- 
2.5.0




Re: [O] Stable releases

2015-08-20 Thread Rasmus
Bastien b...@gnu.org writes:

 In the meantime, `org-latex-with-hyperref' will be back in 8.3.2 as
 I don't see why we needed to remove this option too.

Because too many cooks spoil the broth.  It's a bad idea to have two
variables controlling the same thing.  You can put in nil in template if
you don't want it.

Rasmus


-- 
There are known knowns; there are things we know that we know




Re: [O] Valid use cases for lists?

2015-08-20 Thread Matt Lundin
Chris Patti cpa...@gmail.com writes:

 Can anyone give me an example of when it's a good idea to use lists
 rather than headlines?

 They feel rather like a violation of the principle of least surprise
 to me, because when you use them, and then try to use pretty much any
 other Org feature on them (marking them as a TODO item, tagging, etc.)
 it doesn't work because lists aren't meant to be used that way.

 I'm guessing I'm missing something obvious here, and that's why I'm asking.

Lists are lists. Headlines are headlines. If you need something to show
up in an agenda view, use a headline. 

From the perspective of document structure, headlines vs. lists
corresponds with section headings vs. lists in Markdown:
https://en.wikipedia.org/wiki/Markdown#Example

I find lists to be a good means quickly to organize and reorganize items
within an entry. I use them for brainstorming, for making grocery lists,
for itemizing ingredients in recipes, for documenting what I did on a
task, etc.

Though you can't tag them or add todos to them, you can use checkboxes
to track your progress on items in a list.

 - http://orgmode.org/manual/Checkboxes.html#Checkboxes

Lists also play an important role in export. E.g., this list...

 - apples
   - Fuji
   - Red Delicious
 - bananas
 - pears

Exports to html as...

ul class=org-ul
liapples
ul class=org-ul
liFuji/li
liRed Delicious/li
/ul/li
libananas/li
lipears/li
/ul

Matt



Re: [O] Add version header to org.el

2015-08-20 Thread Rasmus
Achim Gratz strom...@nexgo.de writes:

 Rasmus writes:
 Is there any issues with adding a version header to org.el in maint and
 master?

 I don't think so. It may require to update README_maintainer
 accordingly.

 Done.

 Please revert that change.  It's messing with the version numbers on
 ELPA since (as I suspected) the idea of using the version from the
 header comments in the (main) package file is half-baked.

Feel free to do so.

 Since it doesn't appear that there'll be a proper build environment for
 ELPA packages anytime soon, the only way out is to generate org.el.  We
 could do it just for ELPA, although I suggest we go ahead and do it
 across the board.  We can get rid of org-version on the way and put all
 the headers someone wants there as well.  From the new, generated org.el
 we can then require whatever the contents of org.el moves to.

If the ELPA buildbot has sed wouldn't it just be easier to change

   Version: VER

to 

   Version: VER-HASH

Where HASH is whatever it is that needs to be added.

Rasmus

-- 
If you can mix business and politics wonderful things can happen!




[O] [PATCH 1/2] Redo Agenda in more cases even in sticky mode

2015-08-20 Thread Nikolai Weibull
* org-agenda.el (org-agenda-maybe-redo): Test for
org-agenda-this-buffer-name as well.

The Agenda buffer will have a different name if it’s in sticky mode,
but some commands that alter the agenda should still redo it, for
example, org-agenda-remove-restriction-lock, just like
org-agenda-filter-by-category does.
---
 lisp/org-agenda.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 07b77ac..5fd1cd4 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -7169,7 +7169,9 @@ in the file.  Otherwise, restriction will be to the 
current subtree.
 
 (defun org-agenda-maybe-redo ()
   If there is any window showing the agenda view, update it.
-  (let ((w (get-buffer-window org-agenda-buffer-name t))
+  (let ((w (get-buffer-window (or org-agenda-this-buffer-name
+ org-agenda-buffer-name)
+ t))
(w0 (selected-window)))
 (when w
   (select-window w)
-- 
2.5.0




Re: [O] Local variables in an org file

2015-08-20 Thread Grant Rettke
I've been thinking about this all week. Must be in the global memory space.
Grant Rettke
--
g...@wisdomandwonder.com | http://www.wisdomandwonder.com/
“Wisdom begins in wonder.” --Socrates
“All creativity is an extended form of a joke.” --Kay
((λ (x) (x x)) (λ (x) (x x)))
“Life has become immeasurably better since I have been forced to stop
taking it seriously.” --Thompson


On Thu, Aug 20, 2015 at 1:39 AM, Jarmo Hurri jarmo.hu...@iki.fi wrote:

 Greetings.

 Is there a way to define a (preferably local) variable in an org file so
 that the value of that variable could be referenced in both plain text
 and code blocks?

 I often bump into situations where I have a value, say 768, and I use
 that value both in code blocks and in the accompanying text. Now basic
 programming approach tells me that if and when I need to change that
 value, I should be able to do that by changing the value in only one
 location. That implies defining a variable for the value.

 Properties sound like they might be the solution. But I don't know how
 to refer to properties in text and code.

 Jarmo





Re: [O] user-error: No language for src block: (unnamed) when running `org-icalendar-combine-agenda-files`

2015-08-20 Thread JI , Xiang
Well actually I think the error shows because of another block below the 
emacs-lisp blocks. In this header I just wrote #+BEGIN_SRC without any language 
name. Is it actually wrong and maybe I should have written #+BEGIN_EXAMPLE 
instead? Though I’d still say it probably shouldn’t have failed the export?…


On 20. August 2015 at 17:38:36, JI, Xiang (h...@xiangji.me) wrote:

I’m trying to export all my agenda files into an ics file via 
org-icalendar-combine-agenda-files. However, the export process stops halfway 
through. The following are shown in Messages:

org-babel-exp process emacs-lisp at line 72...
org-babel-exp process emacs-lisp at line 208...
user-error: No language for src block: (unnamed)

which is weird because

I already set org-calendar-include-body to nil. I don’t think a code block in 
the middle of a org file should impact iCalendar export.
The code block begins with #BEGIN_SRC emacs-lisp and is highlighted correctly. 
I’m not sure why it says “no language for src block”.
Regards,

JI, Xiang



[O] Bug: org-element--cache-sync called after switching buffers [8.3.1 (8.3.1-16-gf6aa53-elpa @ /home/mah/.emacs.d/elpa/org-20150810/)]

2015-08-20 Thread Mark A. Hershberger


While composing an email in mu4e, I get the following backtrace.  It
looks like this is because mu4e switches buffers between the time
org-element-cache-reset is called and the time that
org-element--cache-sync is called.

Debugger entered--Lisp error: (wrong-type-argument hash-table-p nil)
  clrhash(nil)
  (if org-element--cache-sync-requests (org-element--cache-set-timer buffer) 
(clrhash org-element--cache-sync-keys))
  (let ((inhibit-quit t) request next) (if org-element--cache-sync-timer (progn 
(cancel-timer org-element--cache-sync-timer))) (catch (quote interrupt) (while 
org-element--cache-sync-requests (setq request (car 
org-element--cache-sync-requests) next (nth 1 
org-element--cache-sync-requests)) (org-element--cache-process-request request 
(and next (aref next 0)) threshold (and (not threshold) (time-add 
(current-time) org-element-cache-sync-duration)) future-change) (if next (progn 
(let* ((v next)) (aset v 3 (+ ... ...))) (aset next 2 (aref request 2 (setq 
org-element--cache-sync-requests (cdr org-element--cache-sync-requests (if 
org-element--cache-sync-requests (org-element--cache-set-timer buffer) (clrhash 
org-element--cache-sync-keys)))
  (save-current-buffer (set-buffer buffer) (let ((inhibit-quit t) request next) 
(if org-element--cache-sync-timer (progn (cancel-timer 
org-element--cache-sync-timer))) (catch (quote interrupt) (while 
org-element--cache-sync-requests (setq request (car 
org-element--cache-sync-requests) next (nth 1 
org-element--cache-sync-requests)) (org-element--cache-process-request request 
(and next (aref next 0)) threshold (and (not threshold) (time-add 
(current-time) org-element-cache-sync-duration)) future-change) (if next (progn 
(let* (...) (aset v 3 ...)) (aset next 2 (aref request 2 (setq 
org-element--cache-sync-requests (cdr org-element--cache-sync-requests (if 
org-element--cache-sync-requests (org-element--cache-set-timer buffer) (clrhash 
org-element--cache-sync-keys
  (progn (save-current-buffer (set-buffer buffer) (let ((inhibit-quit t) 
request next) (if org-element--cache-sync-timer (progn (cancel-timer 
org-element--cache-sync-timer))) (catch (quote interrupt) (while 
org-element--cache-sync-requests (setq request (car 
org-element--cache-sync-requests) next (nth 1 
org-element--cache-sync-requests)) (org-element--cache-process-request request 
(and next (aref next 0)) threshold (and (not threshold) (time-add ... 
org-element-cache-sync-duration)) future-change) (if next (progn (let* ... ...) 
(aset next 2 ...))) (setq org-element--cache-sync-requests (cdr 
org-element--cache-sync-requests (if org-element--cache-sync-requests 
(org-element--cache-set-timer buffer) (clrhash org-element--cache-sync-keys)
  (if (buffer-live-p buffer) (progn (save-current-buffer (set-buffer buffer) 
(let ((inhibit-quit t) request next) (if org-element--cache-sync-timer (progn 
(cancel-timer org-element--cache-sync-timer))) (catch (quote interrupt) (while 
org-element--cache-sync-requests (setq request (car 
org-element--cache-sync-requests) next (nth 1 
org-element--cache-sync-requests)) (org-element--cache-process-request request 
(and next ...) threshold (and ... ...) future-change) (if next (progn ... ...)) 
(setq org-element--cache-sync-requests (cdr 
org-element--cache-sync-requests (if org-element--cache-sync-requests 
(org-element--cache-set-timer buffer) (clrhash 
org-element--cache-sync-keys))
  org-element--cache-sync(#buffer *draft*)
  apply(org-element--cache-sync #buffer *draft*)
  byte-code(r\301\302H\303H\\210)\301\207 [timer apply 5 6] 4)
  timer-event-handler([t 0 0 60 nil org-element--cache-sync (#buffer 
*draft*) idle 0])
  read-from-minibuffer(Identity:  nil (keymap (10 . 
minibuffer-complete-and-exit) (13 . minibuffer-complete-and-exit) keymap 
(menu-bar keymap (minibuf Minibuf keymap (tab menu-item Complete 
minibuffer-complete :help Complete as far as possible) (space menu-item 
Complete Word minibuffer-complete-word :help Complete at most one word) (63 
menu-item List Completions minibuffer-completion-help :help Display all 
possible completions) Minibuf)) (27 keymap (118 . switch-to-completions)) 
(prior . switch-to-completions) (63 . minibuffer-completion-help) (32 . 
minibuffer-complete-word) (9 . minibuffer-complete) keymap (menu-bar keymap 
(minibuf Minibuf keymap (previous menu-item Previous History Item 
previous-history-element :help Put previous minibuffer history element in the 
minibuffer) (next menu-item Next History Item next-history-element :help 
Put next minibuffer history element in the minibuffer) (isearch-backward 
menu-item Isearch History Backward isearch-backward :help Incrementally 
search minibuffer history backward) (isearch-forward menu-item Isearch 
History Forward isearch-forward :help Incrementally search minibuffer history 
forward) (return menu-item Enter exit-minibuffer :key-sequence . :help 
Terminate input and exit minibuffer) (quit menu-item Quit 

[O] [PATCH 1/2] Redo Agenda in more cases even in sticky mode

2015-08-20 Thread Nikolai Weibull
* org-agenda.el (org-agenda-maybe-redo): Test for
org-agenda-this-buffer-name as well.

The Agenda buffer will have a different name if it’s in sticky mode,
but some commands that alter the agenda should still redo it, for
example, org-agenda-remove-restriction-lock, just like
org-agenda-filter-by-category does.
---
 lisp/org-agenda.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 07b77ac..5fd1cd4 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -7169,7 +7169,9 @@ in the file.  Otherwise, restriction will be to the 
current subtree.
 
 (defun org-agenda-maybe-redo ()
   If there is any window showing the agenda view, update it.
-  (let ((w (get-buffer-window org-agenda-buffer-name t))
+  (let ((w (get-buffer-window (or org-agenda-this-buffer-name
+ org-agenda-buffer-name)
+ t))
(w0 (selected-window)))
 (when w
   (select-window w)
-- 
2.5.0




[O] Local variables in an org file

2015-08-20 Thread Jarmo Hurri

Greetings.

Is there a way to define a (preferably local) variable in an org file so
that the value of that variable could be referenced in both plain text
and code blocks?

I often bump into situations where I have a value, say 768, and I use
that value both in code blocks and in the accompanying text. Now basic
programming approach tells me that if and when I need to change that
value, I should be able to do that by changing the value in only one
location. That implies defining a variable for the value.

Properties sound like they might be the solution. But I don't know how
to refer to properties in text and code.

Jarmo




[O] [PATCH 1/2] Redo Agenda in more cases even in sticky mode

2015-08-20 Thread Nikolai Weibull
* org-agenda.el (org-agenda-maybe-redo): Test for
org-agenda-this-buffer-name as well.

The Agenda buffer will have a different name if it’s in sticky mode,
but some commands that alter the agenda should still redo it, for
example, org-agenda-remove-restriction-lock, just like
org-agenda-filter-by-category does.
---
 lisp/org-agenda.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 07b77ac..5fd1cd4 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -7169,7 +7169,9 @@ in the file.  Otherwise, restriction will be to the 
current subtree.
 
 (defun org-agenda-maybe-redo ()
   If there is any window showing the agenda view, update it.
-  (let ((w (get-buffer-window org-agenda-buffer-name t))
+  (let ((w (get-buffer-window (or org-agenda-this-buffer-name
+ org-agenda-buffer-name)
+ t))
(w0 (selected-window)))
 (when w
   (select-window w)
-- 
2.5.0




Re: [O] Bug: Org-indent does not align headings with text when using non-monospaced fonts [8.3.1 (8.3.1-16-gf6aa53-elpa @ /Users/cube/.emacs.d/elpa/org-20150810/)]

2015-08-20 Thread Jakub Szypulka
Wait, it seems your patch also fixed another issue!

Until now, org-mode would only indent text correctly up until a certain level 
(not sure exactly, but approx 8-10 stars), and would then bug out: the heading, 
when demoted further, would be correctly indented by a certain amount of 
characters (`org-indent-indentation-per-level' probably), but the text would be 
indented by a *lesser* amount of characters, resulting in a slight misalign at 
every demote step, that would grow bigger and bigger the more you demoted.

Now I can demote even beyond the right screen edge, and the text keeps 
following.

Maybe you can add this information to the commit or the changelog in case 
anyone else was affected by this.

Thanks again!
Jakub

 --- Original message ---
 Nicolas Goaziou m...@nicolasgoaziou.fr wrote on Thursday, 20 August 2015 at 
 21:56:

 Jakub Szypulka ja...@szypulka.de writes:

 Yes it does, I'm impressed! Thanks a lot for the quick fix!

 Applied then. Thank you for the feedback.

 I understand those changed will be included by default in the next org
 versions?

 Yes, they will.

 Regards,




[O] Bug: Capturing to datetree with inactive timestamp messes up level of heading

2015-08-20 Thread Gregor Zattler
Dear org-mode developers,

customizing org to add timestamps in datetrees via …
(org-datetree-add-timestamp (quote inactive) nil nil Add an
inactive time stamp when create a datetree entry.)… and
activating a minimal capture template which captures to a
datetree results in:

a)

* 2015  
** 2015-08 August   
*** 2015-08-19 Mittwoch 
[2015-08-19 Mi] 
** actual entry heading of captured item

The heading of the newly captured item is at level 2 instead at
level 4.  I consider this to be a bug.  A second capture item to
the same day is correctly created at level 4 (and bevor the first
captured item which does not belong to the same (or any) day in
the datetree).


2)

The timestamp is added to the heading of the day under which the
captured item is stored iff the day entry is created for this
capture.

I think the timestamp should go with the actual captured entry.
This allows for a timestamp for each captured entry under the
same date heading.  They may be made at different days.


3)

The timestamp adds only a date but I think it’s much more
interesting to capture with date+time.  Think of several journal
entries all done at the same day but at different times of a day.


All three observations werde made with an otherwise uncustimazed
org-mode (emacs -Q).  I created the journal capture template from
the org-capture prompt („C“).


Org-mode version 8.3.1 (release_8.3.1-120-gc5cbc6 @ 
/home/grfz/src/org-mode/lisp/)
GNU Emacs 25.0.50.6 (i686-pc-linux-gnu, GTK+ Version 3.14.5) of 2015-08-19 on 
boo


Thanks for your attention, Gregor



Re: [O] beamer_env tag issue with empty headlines

2015-08-20 Thread Nicolas Goaziou
Hello,

Rafael rvf0...@gmail.com writes:

 On the other hand, I wish there would be a variable
 org-no-headlines-between-colons, to solve these sort of ambiguities.

What do you mean exactly? What beamer code do you want to generate?

Regards,

-- 
Nicolas Goaziou



[O] org-habit and Org 8.3

2015-08-20 Thread John Wiegley
Hello,

I've upgrade today to Org 8.3.1, and I've noticed that any customization which
used overlays (mainly, org-habit) now displays no overlays in the Agenda
buffer.

Is this something others have already seen and found a fix for?

Thanks,
  John



[O] user-error: No language for src block: (unnamed) when running `org-icalendar-combine-agenda-files`

2015-08-20 Thread JI , Xiang
I’m trying to export all my agenda files into an ics file via 
org-icalendar-combine-agenda-files. However, the export process stops halfway 
through. The following are shown in Messages:

org-babel-exp process emacs-lisp at line 72...
org-babel-exp process emacs-lisp at line 208...
user-error: No language for src block: (unnamed)
which is weird because

I already set org-calendar-include-body to nil. I don’t think a code block in 
the middle of a org file should impact iCalendar export.
The code block begins with #BEGIN_SRC emacs-lisp and is highlighted correctly. 
I’m not sure why it says “no language for src block”.
Regards,

JI, Xiang

Re: [O] Logging the new time on a reschedule.

2015-08-20 Thread Malcolm Purvis
 Nicolas == Nicolas Goaziou m...@nicolasgoaziou.fr writes:

Nicolas None that I know. This is fixed. Thank you.

Thanks.  Unfortunately I now get an error when I try to reschedule:

Error in post-command-hook (org-add-log-note): (wrong-type-argument 
char-or-string-p time)

The relevant part of my config is:

--8---cut here---start-8---
(setq
 org-log-reschedule (quote time)
 org-log-redeadline (quote time)
 )

(setq org-log-note-headings
  (cons '(reschedule .  Rescheduled from %S to %s on %t)
org-log-note-headings))
(setq org-log-note-headings
  (cons '(redeadline .  New deadline from %S to %s on %t)
org-log-note-headings))
--8---cut here---end---8---

Malcolm

-- 
   Malcolm Purvis malc...@purvis.id.au



[O] 8.3.1 bug or misunderstanding -- inline archive

2015-08-20 Thread Hymie!
I have a few items in my org file that are tagged ARCHIVE.  They show up
grey in my emacs window.

If I sit the cursor on the * bullet and hit TAB, I get a message that says
Subtree is archived and stays closed.  Use C-tab to cycle it anyway.

However, if I sit the cursor on the actual headline and hit TAB, I get the
same message, but the subtree is also expanded.

I don't recall offhand how it worked in 8.2.x, but I'm pretty sure it
refused to expand the subtree no matter where the cursor was.

--hymie!




Re: [O] Valid use cases for lists?

2015-08-20 Thread Peter Salazar
Export isn't a good reason to use lists over headings, since you can always
export headings as li lists if you want to, e.g. by setting number of
heading levels in export options. This doesn't mean plain text lists aren't
useful in org, it just means you don't need them to get lists in your
export format.

On Wed, Aug 19, 2015 at 3:55 PM, Rasmus ras...@gmx.us wrote:

 Chris Patti cpa...@gmail.com writes:

  I'm guessing I'm missing something obvious here, and that's why I'm
 asking.

 Export.  List are used everywhere.

 --
 The right to be left alone is a human right





Re: [O] org-habit and Org 8.3

2015-08-20 Thread Nicolas Goaziou
Hello,

John Wiegley jo...@newartisans.com writes:

 I've upgrade today to Org 8.3.1, and I've noticed that any customization which
 used overlays (mainly, org-habit) now displays no overlays in the Agenda
 buffer.

 Is this something others have already seen and found a fix for?

It doesn't ring a bell.

Would you have an ECM?

Regards,

-- 
Nicolas Goaziou



Re: [O] Valid use cases for lists?

2015-08-20 Thread Rasmus
Chris Patti cpa...@gmail.com writes:

 I'm guessing I'm missing something obvious here, and that's why I'm asking.

Export.  List are used everywhere.

-- 
The right to be left alone is a human right




Re: [O] [ANN] orgtbl-join

2015-08-20 Thread Thierry Banel
Le 18/08/2015 17:22, Bastien a écrit :
 I will submit a patch to the mailing-list, including a translation of
 the documentation (https://github.com/tbanel/orgtbljoin) to the texi
 format.
 Great, thanks in advance!


Hi the List

Here is the patch to add table-joining feature in Org mode.
It comes with unit tests and texi documentation.

Of course, everything can be reviewed, commented, changed.
Of particular interest are:

- key and menu bindings (which tend to be over-crowded)
  C-c C-x j  (orgtbl-join)
  Menu  Tbl  Column  Join with a reference table

- documentation
 cd org-mode
 make doc
 C-u C-h i  doc/org
 goto node Joining tables

Thierry


From 44507a06d5213ca986bd901c50fb96915a208ef4 Mon Sep 17 00:00:00 2001
From: Thierry Banel tbanelweb...@free.fr
Date: Mon, 17 Aug 2015 14:45:50 +0200
Subject: [PATCH] Add table joining feature

* org-tbljoin.el (orgtbl-join), (orgtbl-to-joined-table),
  (org-insert-dblock:join), (org-dblock-write:join):
  the new joining engine
* org.el, org-table.el: key and menu bindings
* test-org-tbljoin.el, org-tbljoin.org: unit tests
* org.texi: document feature under the Joining ables
  entry in the Tables section.
---
 doc/org.texi | 290 +
 lisp/org-table.el|   3 +-
 lisp/org-tbljoin.el  | 450 +++
 lisp/org.el  |   3 +-
 testing/examples/org-tbljoin.org | 251 ++
 testing/lisp/test-org-tbljoin.el | 233 
 6 files changed, 1228 insertions(+), 2 deletions(-)
 create mode 100644 lisp/org-tbljoin.el
 create mode 100644 testing/examples/org-tbljoin.org
 create mode 100644 testing/lisp/test-org-tbljoin.el

diff --git a/doc/org.texi b/doc/org.texi
index 0f5747d..4259ccb 100644
--- a/doc/org.texi
+++ b/doc/org.texi
@@ -374,6 +374,7 @@ Tables
 * Orgtbl mode:: The table editor as minor mode
 * The spreadsheet:: The table editor has spreadsheet capabilities
 * Org-Plot::Plotting from org tables
+* Joining tables::  Adding material from a table to another
 
 The spreadsheet
 
@@ -2095,6 +2096,7 @@ calculations are supported using the Emacs @file{calc} package
 * Orgtbl mode:: The table editor as minor mode
 * The spreadsheet:: The table editor has spreadsheet capabilities
 * Org-Plot::Plotting from org tables
+* Joining tables::  Adding material from a table to another
 @end menu
 
 @node Built-in table editor
@@ -3402,6 +3404,294 @@ The formula is an elisp call:
 
 @end table
 
+@node Joining tables
+@section Joining tables
+@cindex joining two tables
+
+One table (the master table) is grown by selectively appending rows of
+another table (the reference table).  As an example, here is a list of
+products for a cooking recipe.
+
+@verbatim
+| type | quty |
+|--+--|
+| onion|   70 |
+| tomatoe  |  120 |
+| eggplant |  300 |
+| tofu |  100 |
+@end verbatim
+
+We want to complete it with nutritional facts: quantities of fiber,
+sugar, proteins, and carbohydrates.  For this purpose, we have a long
+reference table of standard products.  (This table has been freely
+borrowed from Nut-Nutrition, @uref{http://nut.sourceforge.net/}, by Jim
+Jozwiak).
+
+@verbatim
+#+tblname: nut
+| type | Fiber | Sugar | Protein | Carb |
+|--+---+---+-+--|
+| eggplant |   2.5 |   3.2 | 0.8 |  8.6 |
+| tomatoe  |   0.6 |   2.1 | 0.8 |  3.4 |
+| onion|   1.3 |   4.4 | 1.3 |  9.0 |
+| egg  | 0 |  18.3 |31.9 | 18.3 |
+| rice |   0.2 | 0 | 1.5 | 16.0 |
+| bread|   0.7 |   0.7 | 3.3 | 16.0 |
+| orange   |   3.1 |  11.9 | 1.3 | 17.6 |
+| banana   |   2.1 |   9.9 | 0.9 | 18.5 |
+| tofu |   0.7 |   0.5 | 6.6 |  1.4 |
+| nut  |   2.6 |   1.3 | 4.9 |  7.2 |
+| corn |   4.7 |   1.8 | 2.8 | 21.3 |
+@end verbatim
+
+Let us put the cursor on the type column of the recipe table, and type
+@kbd{C-c C-x j} or @code{M-x orgtbl-join}.  A few questions are asked.  Then
+the recipe gets new columns appended with the needed nutrition facts:
+
+@verbatim
+| type | quty | Fiber | Sugar | Protein | Carb |
+|--+--+---+---+-+--|
+| onion|   70 |   1.3 |   4.4 | 1.3 |  9.0 |
+| tomatoe  |  120 |   0.6 |   2.1 | 0.8 |  3.4 |
+| eggplant |  300 |   2.5 |   3.2 | 0.8 |  8.6 |
+| tofu |  100 |   0.7 |   0.5 | 6.6 |  1.4 |
+@end verbatim
+
+If you are familiar with SQL, you would get a similar result with the
+a @emph{join} (actually a @emph{left outer join}).
+
+@example
+select *
+from recipe, nut
+left outer join nut on recipe.type = nut.type;
+@end example
+
+@menu
+* In-place push pull::  Enriching a table or deriving an enriched table
+* Block parameters::Specifying tables and columns to use
+* Duplicates or missing values:: 

Re: [O] Per-backend export options?

2015-08-20 Thread tomas
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Wed, Aug 19, 2015 at 11:45:37PM -0400, Jay Dixit wrote:
 I do something similar to change export options between HTML and LaTeX:
 
 (defun my-org-export-change-options (plist backend)
   (cond
((equal backend 'html)
 (plist-put plist :with-toc nil)
 (plist-put plist :section-numbers nil))
((equal backend 'latex)
 (plist-put plist :with-toc t)
 (plist-put plist :section-numbers t)))
   plist)
 (add-to-list 'org-export-filter-options-functions
 'my-org-export-change-options)

Thanks!

this one has the charm of being a more centralized solution.

While the macro thingie does the trick for me (for now), I'll give
it a try.

Regards
- -- tomás
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAlXVaR0ACgkQBcgs9XrR2kaBCgCeJnYBnUtZmYI9mt7hsKLaPsuv
n50An3o03vZWGIihXhQfM8/e6WFeb5AA
=UY8i
-END PGP SIGNATURE-



[O] [Test] several of my recent emails have not arrived on the list

2015-08-20 Thread Matt Lundin
Several of my recent posts have not shown up in the archives or on
gmane.

I'd like to see if this email gets through.

Matt



[O] Valid use cases for lists?

2015-08-20 Thread Chris Patti
Can anyone give me an example of when it's a good idea to use lists
rather than headlines?

They feel rather like a violation of the principle of least surprise
to me, because when you use them, and then try to use pretty much any
other Org feature on them (marking them as a TODO item, tagging, etc.)
it doesn't work because lists aren't meant to be used that way.

I'm guessing I'm missing something obvious here, and that's why I'm asking.

Thanks in advance!
-Chris

-- 
Christopher Patti - Geek At Large | GTalk: cpa...@gmail.com | AIM:
chrisfeohpatti | P: (260) 54PATTI
Technology challenges art, art inspires technology. - John Lasseter, Pixar



Re: [O] nested macro expansion?

2015-08-20 Thread Nicolas Goaziou
Hello

Eric Abrahamsen e...@ericabrahamsen.net writes:

 After googling for a while, I also thought this might work:

 #+MACRO: bubba (eval (format-time-string %Y property{{{TIMESTAMP}}}))

 {{{bubba}}}

 But the nested definition isn't expanded, either with or without
 quotes.

As you noticed, you cannot nest macros. You can use macros within macro
definitions, tho. Alas, it will not work with (eval ...) templates,
since those make no assumptions about the rest of the template and
simply use `read' on it.

Anyway, as pointed out in this thread, if you take the (eval ...) path,
you don't really need macros: you're in Elisp.


Regards,

-- 
Nicolas Goaziou



Re: [O] Logging the new time on a reschedule.

2015-08-20 Thread Nicolas Goaziou
Hello,

Malcolm Purvis malc...@purvis.id.au writes:

 I would like to log the new time as well as the old when changing the
 scheduling or deadline of a task.  I changed the value of
 org-log-note-headings to include the new time (%s) in the reschedule
 log:

 (reschedule .  Rescheduled from %S to %s on %t)

 and set org-log-reschedule to 'time.  However the new time is missing
 from the log entry:

 - Rescheduled from [2015-08-21 Fri] to  on [2015-08-19 Wed 11:03]

 I expected this instead:

 - Rescheduled from [2015-08-29 Sat] to [2015-09-19 Sat] on 
 [2015-08-19 Wed 11:38]

 The cause is neither org-schedule nor org-deadline pass the the new time
 to org-add-log-setup.  Is there a reason for this?

None that I know. This is fixed. Thank you.


Regards,

-- 
Nicolas Goaziou



Re: [O] nested macro expansion?

2015-08-20 Thread Pip Cet
Hi Eric,
I know this doesn't answer your actual question about nested macro
expansion, but writing some elisp might help you get the TIMESTAMP
property, at least: both

#+MACRO: bubba (eval (org-entry-get nil TIMESTAMP))

and

#+MACRO: bubba (eval (org-macro-expand {{{property(TIMESTAMP)}}}
org-macro-templates))

appear to produce the current timestamp, and both can be fed to
another function, but not `format-time-string': the result of
(org-entry-get...) is a string of the form 2014-08-19, which would
need to be passed to `org-parse-time-string' first.

On 8/19/15, Eric Abrahamsen e...@ericabrahamsen.net wrote:
 Eric Abrahamsen e...@ericabrahamsen.net writes:

 What I'm trying to do is have a macro that takes the computed TIMESTAMP
 property for an entry, and then runs it through a custom function that
 breaks out the start/end times, and produces a nicely formatted string
 from that.

 I don't see how to write a macro that feeds the value of a computed
 special property to a function.

 Right now my testing version looks like this:

 #+MACRO: bubba (eval (format-time-string %Y $1))

 and I'm calling it like this:

 {{{bubba({{{property(TIMESTAMP)}}})}}}

 That doesn't expand the interior {{{property(TIMESTAMP)}}} clause.
 What `format-time-string' ends up seeing is {{{property(TIMESTAMP,
 without the final braces etc.

 Is there any way to get that value expanded first, and then passed to
 `format-time-string' (or, eventually, my custom function)?

 After googling for a while, I also thought this might work:

 #+MACRO: bubba (eval (format-time-string %Y property{{{TIMESTAMP}}}))

 {{{bubba}}}

 But the nested definition isn't expanded, either with or without quotes.

 E






Re: [O] Logging the new time on a reschedule.

2015-08-20 Thread Nicolas Goaziou
Malcolm Purvis malc...@purvis.id.au writes:

 Thanks.  Unfortunately I now get an error when I try to reschedule:

 Error in post-command-hook (org-add-log-note): (wrong-type-argument 
 char-or-string-p time)

Oops. Fixed. Thank you.

Regards,



Re: [O] Sticky agendas not redone when using org-agenda-(set|remove)-restriction-lock

2015-08-20 Thread Nikolai Weibull
I am so disappointed with everything that has to do with e-mail right
now.  For some reason the e-mail isn’t being delivered.  I assume it’s
not being accepted by the mailing list, but I can’t see why.  I’m not
getting any error message.

Anyway, here’s the relevant part (and let’s see if this e-mail gets through):

* org-agenda.el (org-agenda-maybe-redo): Test for
org-agenda-this-buffer-name as well.

The Agenda buffer will have a different name if it’s in sticky mode,
but some commands that alter the agenda should still redo it, for
example, org-agenda-remove-restriction-lock, just like
org-agenda-filter-by-category does.
---
 lisp/org-agenda.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 07b77ac..5fd1cd4 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -7169,7 +7169,9 @@ in the file.  Otherwise, restriction will be to
the current subtree.

 (defun org-agenda-maybe-redo ()
   If there is any window showing the agenda view, update it.
-  (let ((w (get-buffer-window org-agenda-buffer-name t))
+  (let ((w (get-buffer-window (or org-agenda-this-buffer-name
+ org-agenda-buffer-name)
+ t))
(w0 (selected-window)))
 (when w
   (select-window w)
-- 
2.5.0

On Thu, Aug 20, 2015 at 7:21 PM, Bastien b...@gnu.org wrote:
 Hi Nikolai,

 Here’s the patch again, as I don’t think the one I sent yesterday got
 through.  My FSF papers are signed, by the way.

 It looks like you forgot to attach the patch...

 --
  Bastien



Re: [O] org-habit and Org 8.3

2015-08-20 Thread John Wiegley
 Josiah Schwab jsch...@gmail.com writes:

 Upon upgrading, my org-habits did not display correctly, because the
 PROPERTY drawer where the habit style was indicated came after the LOGBOOK
 in my org files.

Is there a reason why this was done?  I rather liked having my PROPERTY
drawers at the bottom of each entry, out of the way.  That way, every record
in my Org file ends with :END:, closing its property drawer (every single
headline I create has an accompanying PROPERTY drawer).

John



Re: [O] Logging the new time on a reschedule.

2015-08-20 Thread Malcolm Purvis
 Nicolas == Nicolas Goaziou m...@nicolasgoaziou.fr writes:

Nicolas None that I know. This is fixed. Thank you.

Thanks.  Unfortunately I now get an error when I try to reschedule:

Error in post-command-hook (org-add-log-note): (wrong-type-argument 
char-or-string-p time)

The relevant part of my config is:

--8---cut here---start-8---
(setq
 org-log-reschedule (quote time)
 org-log-redeadline (quote time)
 )

(setq org-log-note-headings
  (cons '(reschedule .  Rescheduled from %S to %s on %t)
org-log-note-headings))
(setq org-log-note-headings
  (cons '(redeadline .  New deadline from %S to %s on %t)
org-log-note-headings))
--8---cut here---end---8---

Malcolm

-- 
   Malcolm Purvis malc...@purvis.id.au



Re: [O] Bug: Org-indent does not align headings with text when using non-monospaced fonts [8.3.1 (8.3.1-16-gf6aa53-elpa @ /Users/cube/.emacs.d/elpa/org-20150810/)]

2015-08-20 Thread Nicolas Goaziou
Jakub Szypulka ja...@szypulka.de writes:

 Yes it does, I'm impressed! Thanks a lot for the quick fix!

Applied then. Thank you for the feedback.

 I understand those changed will be included by default in the next org
 versions?

Yes, they will.

Regards,



Re: [O] Sticky agendas not redone when using org-agenda-(set|remove)-restriction-lock

2015-08-20 Thread Nikolai Weibull
Here’s the patch again, as I don’t think the one I sent yesterday got
through.  My FSF papers are signed, by the way.