Si tengo un fragmento de código que enredo en un archivo, pero espero que el nombre del archivo cambie con el tiempo, ¿hay una forma más limpia de cambiar el nombre del archivo que Query-replace?
Por ejemplo, digamos que enredo el código a ~ / dir / my-file.el:
#+BEGIN_SRC emacs-lisp :tangle ~/dir/my-file.el
(setq myvar1 "value1")
#+END_SRC
#+BEGIN_SRC emacs-lisp :tangle ~/dir/my-file.el
(defun foo (bar) ... )
#+END_SRC
etc.
Luego, más tarde, me doy cuenta de que el archivo estaría mejor ubicado en otra ubicación:
#+BEGIN_SRC emacs-lisp :tangle ~/dir/my/file.el
(setq myvar1 "value1")
#+END_SRC
#+BEGIN_SRC emacs-lisp :tangle ~/dir/my/file.el
(defun foo (bar) ... )
#+END_SRC
etc.
¿Hay alguna manera de cambiar el argumento a: enredar dinámicamente?
He investigado y descubierto que puedo alimentar a Elisp con el argumento: Tangle. Si evalúo (setq myfile "~/dir/file.el)
y luego enredo lo siguiente:
#+BEGIN_SRC emacs-lisp :tangle (print myfile)
(setq myvar1 "value1")
#+END_SRC
#+BEGIN_SRC emacs-lisp :tangle (print myfile)
(defun foo (bar) ... )
#+END_SRC
Obtengo el resultado deseado que estoy buscando. Entonces podría ejecutar un fragmento de elisp para establecer la variable usando org-babel, pero me preguntaba si hay una forma más limpia de hacerlo.
Los documentos del encabezado: tangle no estipulan una forma nativa.