Re: [O] Bug: Org-babel-detangle does not work for subtrees [8.3.5 (8.3.5-elpaplus @ /home/andrea/.emacs.d/elpa/org-plus-contrib-20160808/)]

2016-08-30 Thread Grant Rettke
On Tue, Aug 30, 2016 at 12:25 PM, Andrea Giugliano  wrote:
> I think that the ideal solution is to allow an user to make
> org-babel-detangle rely on header IDs, since this not only assures
> detangle to find the correct header every time, but also push the user
> to use IDs through org-id (that seems good practice).
> What do you think?

Yes you should set a ID on every Headline and source-block
automatically using org-id so that detangling always works.

When you want a custom ID it is easily changed.



[O] Bug: Org-babel-detangle does not work for subtrees [8.3.5 (8.3.5-elpaplus @ /home/andrea/.emacs.d/elpa/org-plus-contrib-20160808/)]

2016-08-30 Thread Andrea Giugliano

Hello,

I have an org mode file with deep subtrees (i.e., 7 stars nesting
level).
When I try to detangle a src block generated by

"
*** TODO find map
:PROPERTIES:
:ID:   501cfff7-3b24-47cc-9ada-42e6d46abbe9
:END:

#+BEGIN_SRC ocaml :noeval :comments both :mkdirp yes :tangle ~/tmp/findMap.ml
anything here
#+END_SRC
"

and the generated file contains:

(* TODO find map *)
(* :PROPERTIES: *)
(* :ID:   501cfff7-3b24-47cc-9ada-42e6d46abbe9 *)
(* :END: *)


(* [[file:../home/andrea/workspace/agenda/myTasks.org::*find%20map][find\ 
map:1]] *)
anything here
(* find\ map:1 ends here *)

the detangle cannot find the header, and proposes me to create a new one
in the file.
I think that the ideal solution is to allow an user to make
org-babel-detangle rely on header IDs, since this not only assures
detangle to find the correct header every time, but also push the user
to use IDs through org-id (that seems good practice).
What do you think?
Thanks for the fantastic org mode!!

Andrea

Emacs  : GNU Emacs 24.5.2 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.29)
 of 2016-08-26 on localhost
Package: Org-mode version 8.3.5 (8.3.5-elpaplus @ 
/home/andrea/.emacs.d/elpa/org-plus-contrib-20160808/)

current state:
==
(setq
 org-capture-prepare-finalize-hook '(org-id-get-create)
 org-reveal-mathjax t
 org-pandoc-epub-rights "Copyright 2016 Andrea <>"
 org-tab-first-hook '(org-hide-block-toggle-maybe 
org-babel-hide-result-toggle-maybe
  org-babel-header-arg-expand)
 org-speed-command-hook '(org-speed-command-default-hook 
org-babel-speed-command-hook)
 org-occur-hook '(org-first-headline-recenter)
 org-src-tab-acts-natively t
 org-metaup-hook '(org-babel-load-in-session-maybe)
 org-html-format-drawer-function '(lambda (name contents) contents)
 org-src-window-setup 'current-window
 org-latex-format-inlinetask-function 
'org-latex-format-inlinetask-default-function
 org-confirm-shell-link-function 'yes-or-no-p
 org-image-actual-width 550
 org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default
 org-latex-pdf-process '("latexmk -pdf %f")
 org-highlight-latex-and-related '(latex script entities)
 org-latex-format-headline-function 'org-latex-format-headline-default-function
 org-default-notes-file "/home/andrea/workspace/agenda/myTasks.org"
 org-after-todo-state-change-hook '(org-clock-out-if-current)
 org-latex-format-drawer-function '(lambda (name contents) contents)
 org-from-is-user-regexp "\\"
 org-loop-over-headlines-in-active-region 'start-level
 org-src-mode-hook '(org-src-babel-configure-edit-buffer
 org-src-mode-configure-edit-buffer)
 org-agenda-before-write-hook '(org-agenda-add-entry-text)
 org-babel-pre-tangle-hook '(save-buffer)
 org-mode-hook '((lambda nil
  (local-set-key "\357" (quote org-mime-org-buffer-htmlize)))
 org-toggle-blocks turn-on-flyspell
 #[nil "\300\301\302\303\304$\207"
   [org-add-hook change-major-mode-hook org-show-block-all 
append local]
   5]
 #[nil "\300\301\302\303\304$\207"
   [org-add-hook change-major-mode-hook 
org-babel-show-result-all
append local]
   5]
 org-babel-result-hide-spec org-babel-hide-all-hashes 
org-eldoc-load)
 org-archive-hook '(org-attach-archive-delete-maybe)
 org-use-speed-commands t
 org-ascii-format-drawer-function '(lambda (name contents width) contents)
 org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point 
org-babel-execute-safely-maybe)
 org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers
  org-cycle-show-empty-lines
  org-optimize-window-after-visibility-change)
 org-babel-tangle-lang-exts '(("haskell" . "hs") ("scala" . "scala") ("ruby" . 
"rb")
  ("python" . "py") ("java" . "java") ("ocaml" . 
"ml")
  ("emacs-lisp" . "el") ("elisp" . "el"))
 org-confirm-elisp-link-function 'yes-or-no-p
 org-metadown-hook '(org-babel-pop-to-session-maybe)
 org-html-format-headline-function 'org-html-format-headline-default-function
 org-structure-template-alist '(("n" "#+BEGIN_NOTES\n?\n#+END_NOTES")
("p"
 "#+BEGIN_SRC plantuml :file uml.png 
\n?\n#+END_SRC")
("s" "#+BEGIN_SRC ?\n\n#+END_SRC")
("e" "#+BEGIN_EXAMPLE\n?\n#+END_EXAMPLE")
("q" "#+BEGIN_QUOTE\n?\n#+END_QUOTE")
("v" "#+BEGIN_VERSE\n?\n#+END_VERSE")
("V" "#+BEGIN_VERBATIM\n?\n#+END_VERBATIM")
("c" "#+BEGIN_CENTER\n?\n#+END_CENTER")
("l" "#+BEGIN_LaTeX\n?\n#+END_LaTeX") ("L" 
"#+LaTeX: ")
("h" "#+BEGIN_HTML\n?\n#+END_HTML") ("H" 
"#+HTML: ")