The org-babel-detangle function is not working. Below is a description of how the issue manifests. (Thanks to Grant Rettke for crafting the detailed description).
1 Attempt ========= 1.1 Source input: ex1.org ───────────────────────── ┌──── │ * Heading │ │ #+BEGIN_SRC js :comments noweb :tangle yes :padline no │ function foo() {} │ #+END_SRC └──── 1.2 Tangled output: ex1.js ────────────────────────── ┌──── │ // [[file:~/tmp/ex1.org::*Heading][Heading:1]] │ function foo() {} │ // Heading:1 ends here └──── 2 Comments & Questions ══════════════════════ When I open the tangled output file, opened it in a buffer, put the cursor on line 2, and call `org-babel-detangle', the buffer switches to ex1.org, and then I get the message: Return to existing edit buffer ([n] will revert changes)? (y or n) Whether I choose yes or not, the current buffer always returns to ex1.js. Further, any modifications made in file ex1.js are reverted back to the state of what existed after orgmode's export. 3 Environment ═════════════ ┌──── │ (print emacs-version) └──── ┌──── │ "24.4.1" └──── ┌──── │ (print org-version) └──── ┌──── │ "8.2.8" └──── ┌──── │ (print (pp-to-string org-babel-default-header-args)) └──── ┌──── │ "((:session . \"none\") │ (:results . \"replace\") │ (:exports . \"code\") │ (:cache . \"no\") │ (:noweb . \"no\") │ (:hlines . \"no\") │ (:tangle . \"no\")) │ " └──── ------------------------------------------------------------------------ Emacs : GNU Emacs 24.4.1 (x86_64-apple-darwin14.0.0, NS apple-appkit-1343.14) of 2014-11-05 on somemachine Package: Org-mode version 8.2.10 (release_8.2.10 @ /usr/local/Cellar/emacs/24.4/share/emacs/24.4/lisp/org/) current state: ============== (setq org-tab-first-hook '(org-hide-block-toggle-maybe org-src-native-tab-command-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-metaup-hook '(org-babel-load-in-session-maybe) org-confirm-shell-link-function 'yes-or-no-p org-after-todo-state-change-hook '(org-clock-out-if-current) 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 (org-add-hook (quote change-major-mode-hook) (quote org-show-block-all) (quote append) (quote local)) ) (lambda nil (org-add-hook (quote change-major-mode-hook) (quote org-babel-show-result-all) (quote append) (quote local)) ) #[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-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-hide-inline-tasks org-cycle-show-empty-lines org-optimize-window-after-visibility-change) org-confirm-elisp-link-function 'yes-or-no-p org-metadown-hook '(org-babel-pop-to-session-maybe) org-clock-out-hook '(org-clock-remove-empty-clock-drawer) )