Logo

dev-resources.site

for different kinds of informations.

Explorando org-babel en emacs

Published at
9/15/2024
Categories
emacs
babel
org
programaciónliterata
Author
johnnatan_sandovalcardon
Author
24 person written this
johnnatan_sandovalcardon
open
Explorando org-babel en emacs

Soy usuario de GNU/Emacs desde el año 2005. A pesar de tanto tiempo, no me considero un experto. No me he querido meter de
lleno con ELisp, por ejemplo, así que las configuraciones que hago a emacs, las hago basándome en consejos de internet. Y, de un tiempo para acá, empecé a usar doom emacs, que me entrega una "distribución" pre-configurada y lista para usarse.

No obstante, cada tanto pruebo nuevas características que, aunque las
conozco desde hace mucho tiempo, no me había animado a usarlas. Una de
las más recientes es org-babel.

org-mode me permite introducir bloques de código por aquí y por allá. Es una forma de programación literata. Para ello, puedo definir bloques que empiezan con begin_src y terminan con end_src. Cualquier modo que emacs soporte, lo puedo definir de la siguiente
manera:

#+begin_src python
print("Hola mundo")
#+end_src
Enter fullscreen mode Exit fullscreen mode

Al exportar, puedo obtener coloreado de sintaxis del lenguaje. No obstante, hay algo más que puedo hacer y es ejecutar el bloque de código con C-c C-c. Y lo puedo hacer con cualesquier lenguaje que org soporte, siempre que tenga acceso al intérprete.

Algo que he hecho en los últimos días, es almacenar instrucciones de la línea de comandos para pruebas que hago:

#+begin_src sh :results output>
http get https://google.com
#+end_src
Enter fullscreen mode Exit fullscreen mode

De esa forma, puedo repetir continuamente un comando haciendo pequeñas modificaciones y ver la salida en el mismo buffer de emacs. Me gusta porque no soy muy fan de postman, y de esta forma no lo necesito. Puedo usar httpie o curl, donde me siento más cómodo.

Veamos el resultado de lo siguiente:

#+begin_src sh :results output
curl google.com
#+end_src
Enter fullscreen mode Exit fullscreen mode
: <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
: <TITLE>301 Moved</TITLE></HEAD><BODY>
: <H1>301 Moved</H1>
: The document has moved
: <A HREF="http://www.google.com/">here</A>.
: </BODY></HTML>
Enter fullscreen mode Exit fullscreen mode

Puedo copiar, puedo pegar o hacer lo que quiera. En este momento, no he probado la posibilidad de comunicar un bloque con otro, o de manejar sesiones. Tal vez lo haga más adelante. Por ahora, este es un paso más en emacs que me gusta.

emacs Article's
30 articles in total
Favicon
Emacs 2024 Changes
Favicon
emacs error Failed to verify signature archive-contents.sig
Favicon
Mastering Parentheses in Emacs: Essential Commands
Favicon
C Development with GNU Emacs
Favicon
Mastering Golang Debugging in Emacs
Favicon
Emacs for Python and Poetry Using `basedpyright-langserver`
Favicon
Explorando org-babel en emacs
Favicon
(Game)Dev with Emacs - Because it's not Already Hard Enough Without it
Favicon
The Power of Tries, Data Structure Optimization in Emacs
Favicon
Creating an Emacs major mode - because why not?
Favicon
Learning to Like Neovim
Favicon
Emacs, a simple tour
Favicon
Learning Lisp
Favicon
Managing multiple terminals in Emacs
Favicon
Vim-style repeatable key bindings for navigating windows in Emacs
Favicon
Mermaid preview using xwidget browser
Favicon
Setting up Doom Emacs for Astro Development
Favicon
Moving to Emacs Tree Sitter Modes
Favicon
Mastering JSX Editing in Emacs with Tree-sitter
Favicon
Exploring Syntax Trees in Emacs with Tree-sitter
Favicon
Chinese Zodiac Time for Emacs
Favicon
Using Jmespath in Emacs
Favicon
From Doom to Vanilla Emacs
Favicon
Tell runtime/cgo to not thread warnings as errors
Favicon
Creating dynamic task runners for your npm scripts in Emacs
Favicon
5 ways to get text from an Emacs buffer
Favicon
Using age with org-journal
Favicon
Once again I wanted to have Emacs be my XML Notepad 2006
Favicon
Dia 9
Favicon
Emacs is More Like a Terminal Than an Editor

Featured ones: