Table of Contents
- 1. Instalar Emacs in linux mint 17.2
- 2. #####CREAR UNA MACRO:
- 3. #### Para USAR LA MACRO
- 4. #### DARLE NOMBRE A LA MACRO
- 5. #### GRABANDO UNA MACRO PARA FUTURAS SESIONES
- 6. #### INSTALAR MELPA
- 7. #### Leer ePUBs desde Emacs
- 8. ##### ELMACRO.EL. CONVIERTE KEYBOARD MACROS A ELISP #####
- 9. DESHACER EN EMACS
- 10. COMENTARIOS EN ELISP
- 11. PONER MARCA - AGREGAR UNA FRASE AL INICIO DE CADA LINEA DE UN ARCHIVO DE TEXTO
- 12. CONVERTIR 2 LISTAS DE 1 COLUMNA EN 1 LISTA DE 2 COLUMNAS
- 13. Leyendo PROGRAMACIÓN EN EMACS LISP. EN: https://www.davidam.com/docu/emacs-lisp-intro-es.html#Por-qu_00e9
- 14. INDENTAR UN PARRAFO
- 15. Escribir un mensaje en mini-buffer en emacs-lisp
- 16. crear un buffer y cerrar un buffer en emacs-lisp
- 17. escribir algo en el buffer "sisepudo"
- 18. ELIMINAR ESPACIOS AL INICIO DE CADA LINEA DE TEXTO
- 19. ELIMINAR TODAS LAS LINEAS QUE COMIENCEN CON UN TEXTO ESPECÍFICO
- 20. ORDENAR LINEAS DE UN TEXTO
- 21. ELIMINAR LINEAS DUPLICADAS
- 22. PONER TODO EL TEXTO EN MINUSCULAS
- 23. SELECCIONAR TEXTO SIN USAR EL MOUSE
- 24. INSTALAR TEXLIVE
- 25. COMO ESCRIBIR LATEX EN EMACS
- 26. HOW TO MERGE 2 FILES IN ONE WITH EMACS?
- 27. ========ESTO SE LOGRA CONVIRTIENDO 2 LISTAS DE 1 COLUMNA EN 1 LISTA DE 2 COLUMNAS LINEA 75
- 28. ############### ORDENAR PARRAFOS ALEATOREAMENTE ##############
- 29. #######ESCRIBIR ACENTOS Y CARACTERES ESPECIALES#######
- 30. #MOSTRAR DE BIBLEGATEWAY UN VERSICULO BIBLICO EN LA VERSIÓN QUE ELIJAS
- 31. ####CAMBIAR EL COLOR DE TEXTO SELECCIONADO
- 32. HACER ZOOM EN EMACS
- 33. USANDO HTML MODE EN EMACS.
- 34. PAGINA MODELO ADAPTABLE A CUALQUIER PANTALLA
- 35. #### USAR IMPATIENT MODE ####
- 36. HACER UNA PAGINA WEB EN ORG-MODE
- 37. BUSCAR Y REEMPLAZAR UNA CADENA DE TEXTO EN MAS DE UN ARCHIVO
- 38. ######### BUSCAR UNA EXPRESIÓN REGULAR EN VARIOS ARCHIVOS DENTRO DE DIRED MODE #########
- 39. #### ENCONTRAR LOS ARCHIVOS QUE CONTIENEN UNA FRASE ESPECIFICA ####
- 40. #### Anteponer un <p> a cada superscript del texto ####
- 41. #### Convertir un digito en superscript ####
- 42. ############### ABRIR ARCHIVOS EXTERNAMENTE EN DIRED MODE #####
- 43. #### SELECCIONAR ARCHIVOS POR PATRON EN DIRED ####
- 44. AGREGAR UN PIE DE PAGINA EN ORG MODE
- 45. HACER UN SALTO DE LINEA EN ORG MODE
- 46. CREAR UNA LINEA VACÍA PARA FIRMAR EN ORG-MODE
- 47. LIMPIAR EL CACHE DE TELEGA DESDE EMACS. código de null @Ox0NgSxIYT
- 48. VER EL UNICODE DE UN CARACTER
- 49. ####COMO ENUMERAR LAS LINEAS DE TEXTO SELECCIONADAS#####
- 50. #### Continuar numeración de lista después de un encabezado
- 51. Heading 1
- 52. Heading 2
- 53. #### VER LISTADO DE PAQUETES DE EMACS ####
- 54. #### VER GIFS EN EMACS DIRED ####
- 55. #### VER IMAGENES EN EMACS DIRED ####
- 56. #### QUE SE VEAN LOS emoji iconos unicode glyphs ####
- 57. #### Usar text to speak desde Emacs ####
- 58. ########## ENCOGER UN BUFFER EN EMACS CUANDO ESTOY VIENDO DOS SIMULTANEAMENTE #########
- 59. #### ABRIR UN ENLACE WEB DESDE EMAC EN UN BUFFER CON EWW ####
- 60. ######### ABRIR EMACS EN LA LINEA DE COMANDOS SIN MODO GRAFICO #########
- 61. ######### ABRIR EMACS SIN MOSTRAR LA PANTALLA DE INICIO SPLASH SCREEN ########
- 62. ####### ABRIR ARCHIVO REMOTAMENTE #######
- 63. ######### USAR SUPERSCRIPT Y SUBSCRIPT EN EMACS ORG MODE ########
- 64. ######### INSTALAR PDFLATEX PARA EXPORTAR .ORG A PDF ######
- 65. #### AGREGAR IMAGENES EN EMACS ORG MODE ####
- 66. #### COLOREAR TEXTO EN EMACS ORG MODE PARA EXPORTARLO A HTML ####
- 67. #### HACER TEXTO VERTICAL CON CSS EN ORG-MODE ####
- 68. #### QUITAR SANGRÍAS EN LINEA INICIAL DE CADA PÁRRAFO EN ORG MODE ####
- 69. #### REDUCIR ESPACIO VERTICAL ENTRE ITEMS DE UN LISTADO ####
- 70. #### Forzar una nueva pagina ORG-MODE latex
- 71. ### INSTALAR TELEGA 0.8.3 en Emacs 27.1 desde Melpa. ###
- 72. ### INSTALAR telega.el version 0.8.3 en emacs 27.1 usando melpa ###
- 73. Desinstalando telega.el
- 74. #### RENOMBRAR MUCHOS ARCHIVOS ####
- 75. #### Convertir texto separado por comas en una tabla ####
- 76. ### Que aparezcan lineas cuadriculadas de una tabla ####
- 77. #### No poner números de página al exportar PDF ####
- 78. #### Separar 1cm vertical el texto ####
- 79. # *Instalar ledger-mode para llevar cuenta de gastos ####
- 80. #### REEMPLAZAR UNA CADENA DADA CON NÚMEROS INCREMENTALES ####
- 81. #### Ver pdf, odt ods files
- 82. #### QUITAR TÍTULO Contents EN LOS .PDF GENERADOS A PARTIR DE ORG-MODE ####
- 83. #### Quitar autor, fecha y título al exportar a pdf a partir de org-mode
- 84. #### PONER MARGENES EN ORG-MODE ####
- 85. ### CENTRAR TEXTO EN ORG-MODE ###
- 86. #### PRESENTAR Y PREPARAR DOCUMENTOS USANDO EMACS y SOFT LIBRE ####
- 87. Emacs Keyboard Shortcuts
- 88. Create beautiful beamer slides with Emacs
- 89. ### SELECCIONAR MUCHOS ARCHIVOS A LA VEZ DIRED ###
- 90. Formularios y datos con forms-mode de Emacs
1 Instalar Emacs in linux mint 17.2
Documentacion ingles: https://www.gnu.org/software/emacs/manual/ Documentacion español: https://www.nongnu.org/emacs-man-es/index_toc.html#SEC_Contents
https://www.addictivetips.com/ubuntu-linux-tips/install-the-emacs-text-editor-on-linux/
Voy a instalar la version GUI pero voy a instalar desde la pagina : https://community.linuxmint.com/software/view/emacs desde alli esta instalando emacs24 listo
Información variada y útil de emacs https://davidam9.wordpress.com/category/emacs/
2 #####CREAR UNA MACRO:
Para inicar a grabar una macro: presiona C-x ( ó con la Tecla F3 y empieza a grabar tu macro.
cuando termines escribe
C-x ) ó F4 para finalizar de grabar la macro.
3 #### Para USAR LA MACRO
Oprime C-x e. Este comando ejecuta la ultima macro que definiste
4 #### DARLE NOMBRE A LA MACRO
Teclea M-x name-last-kbd-macro
dale un nombre corto. por ejemplo: versos
ya puedes ejecutar la macro tecleando M-x versos
5 #### GRABANDO UNA MACRO PARA FUTURAS SESIONES
M-x insert-kbd-macro te pregunta el nombre de tu macro. se lo das y te escribira el codigo de tu macro que empieza con (fset 'versos "macro")
ahora copia ese codigo e insertalo en tu archivo .emacs. Ahora podrás usar la macro en futuras sesiones de Emacs.
el archivo .emacs está en $HOME/.emacs en emacs24 si no aparece puede crear uno o usar init.el que suele estar en $HOME/.emacs.d/init.el que es el archivo de configuracion que se utiliza mas recientemente
MACROS CREADAS POR MI M-x versos – Hace espaciado organiza archivo abierto de versos M-x tg2w – Convierte los ** dobles a * simples y los __ dobles a _ simple
6 #### INSTALAR MELPA
MELPA es un repositorio de paquetes compatible con ELPA que contiene una enorme número de paquetes útiles de Emacs. En contraste a ELPA, Emacs no está configurado de fábrica para instalar paquetes desde MELPA. Tendrás que configurar Emacs para usarlo.
6.1 Comenzando
Para agregar MELPA a tu package-archives, pon esto en tu archivo init:
(require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
Si prefiere versiones que han sido marcadas para liberación por sus mantenedores, puedes usar esto en su lugar:
(require 'package) (add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/"))
Después, puedes usar 'M-x package-list-packages' e instalar nuevas cosas a tu gusto.
7 #### Leer ePUBs desde Emacs
https://depp.brause.cc/nov.el/ nov mode funciona en L5 así. Abre el archivo .epub activa nov mode M-x nov-mode
Navegación: SPC - scroll n - next chapter p - previous chapter m - metadata del epub < - beginning of buffer > - end of buffer
F1 m - keybinds
8 ##### ELMACRO.EL. CONVIERTE KEYBOARD MACROS A ELISP #####
M-x package-list-packages y buscar elmacro.el
Para usarlo hay que grabar una macro ejemplo: F3 C-e M-b M-u C-a C-n F4
luego M-x elmacro-show-last-macro y un nombre para la macro, produce un buffer con (defun upcase-last-word () "Change me!" (interactive) (move-end-of-line 1) (backward-word 1) (upcase-word 1) (move-beginning-of-line 1) (next-line 1 1)) 18
The elmacro package lets you view the last recorded macro as proper Emacs Lisp with M-x elmacro-show-last-macro. Fuente: https://emacs.stackexchange.com/questions/70/how-to-save-a-keyboard-macro-as-a-lisp-function
###################################################################### Tue Sep 14 18:32:04 -04 2021
9 DESHACER EN EMACS
C-x C-u Para deshacer una vez C-/ para deshacer multiples veces No funciona en emacs 24.3.1. Si en emacs 27.2 C-x u C-x z z z z z funciona en 24.3.1 y 27.2
https://stackoverflow.com/questions/15228883/is-fast-repeated-undo-possible-in-emacs ###################################################################### mié 24 nov 2021 17:53:17 -03
10 COMENTARIOS EN ELISP
Se recomienda usar ';' Comentarios que comienzan con un solo punto y coma ';', deben todos estar alineados en la misma columna a la derecha del código fuente. Tales comentarios usualmente explican cómo el código en esa linea hace su trabajo.
Ejemplo: base-version-list ; There was a base (assoc (substring fn 0 start-vn) ; version to which file-version-assoc-list)) ; this looks like ; a subversion.
11 PONER MARCA - AGREGAR UNA FRASE AL INICIO DE CADA LINEA DE UN ARCHIVO DE TEXTO
Para poner una marca se usa C-@ ó C-SPC ó C-x C-x
Estos marcan el inicio y activan la selección Ahora mueve el cursor hasta el punto donde quieres terminar la selección
Luego teclea C-x r t y escribe lo que quieras que aparezca al inicio. Cuando termines oprime RET. Y listo!
############################################################
12 CONVERTIR 2 LISTAS DE 1 COLUMNA EN 1 LISTA DE 2 COLUMNAS
Primero selecciona la lista que quieras que quede en la columna derecha y luego haz ‘C-x r M-w’ para grabar el texto de la region-rectangle como el last killed rectangle (‘copy-rectangle-as-kill’). Ahora ubica el point al lado derecho del primer articulo de la otra columna y pega el rectangulo con ‘C-x r y’ Yank the last killed rectangle con su la esquina superior izquierda en el point (‘yank-rectangle’). Y listo. ####OJO: Se copia un rectangulo por tanto la ultima linea debe tener el mismo numero de columnas de la linea mas larga. Si tiene menos saldra recortada. Para evitar eso por ahora manualmente busca cuantos caracteres tiene la linea mas larga y has una resta asi: LineamasLarga - CaracteresUltimaLinea : El resultado son los caracteres de espacio que debes agregar a la ultima linea del rectangulo para que salga completa. Cuando lo pegues tendras que eliminar cada espacio que se agrego en la(s) lineas que lo necesitaron.
####Tue 28 Dec 2021 12:14:46 PM -03
13 Leyendo PROGRAMACIÓN EN EMACS LISP. EN: https://www.davidam.com/docu/emacs-lisp-intro-es.html#Por-qu_00e9
Este mismo manual aqui se ve mejor: https://nasciiboy.github.io/book4all/elipo/emacs-lisp-intro_es.html
Emacs lisp estandar viene con un fichero opcional de extensiones, 'cl.el'. Este añade funcionalidades a Emacs lisp.
14 INDENTAR UN PARRAFO
Ejemplo. presionar M-C-\ al mismo tiempo identa una región. En mi caso indenta todo este archivo. Si quiero aplicar identación de 6 espacios a un segmento de texto, solo necesito seleccionar el texto y luego C-u 6 M-C-\ Probando en estas tres lineas. Funciona de perlas!.
'(dia tarde noche) '(and sometimes numbers) (esta lista incluye "texto entre comillas dobles.") (+ 2 (+ 3 3)) (+ 2 2) (concat "127.0.0.0 " "facebook.com") (substring "El rápido zorro marrón saltó." 10 15) (substring "The quick brown fox jumped." 16 19) (+ 2 fill-column) # suma 2 + el valor de fill-column (concat "Los " (number-to-string (+ 2 fill-column)) " zorros rojos.") #suma 2+ fill-column, convierte el resultado a cadena y lo concatena (message "This message appears in the echo area!") # muestra el mensaje en el area eco (message "Este búfer se llama: %s." (buffer-name)) # %s para string (message "Máximo número de columnas: %d" fill-column) # %d para numero entero (message "El vio %d %s" (- fill-column 32) (concat " "(substring "The quick brown foxes jumped." 16 21) " rojos saltando."))
Ejercicios: (fill-column) void (setq cont 0) (setq cont (+ 2 cont)) (message "hola %s Buenas noches" (buffer-name)) (buffer-name) (buffer-file-name) (other-buffer) (buffer-size) # el tamaño del buffer actual. (point) # La posición donde está el cursor en el buffer. Hasta aquí llegué leyendo el manual: Buffer Size and the Location Of Point
15 Escribir un mensaje en mini-buffer en emacs-lisp
(message "popup%s %s %s" PopupNum CitaB Cont) ; escribe "popup" y reemplaza las %s por el contenido de las strings PopupNum CitaB Cont)
16 crear un buffer y cerrar un buffer en emacs-lisp
(get-buffer-create "sisepudo") ; crea el buffer llamado sisepudo ((kill-buffer "sisepudo") ; lo elimina el buffer y de la memoria de emacs
17 escribir algo en el buffer "sisepudo"
(with-current-buffer "sisepudo" (insert "Contiene: " PopupNum CitaB Cont)) ;;
############################################# Thu 24 Feb 2022 05:45:00 PM -03
18 ELIMINAR ESPACIOS AL INICIO DE CADA LINEA DE TEXTO
Fuente: https://emacs.stackexchange.com/questions/45498/how-remove-whitespaces-in-the-beginning-of-lines
Go to the top of your buffer. Type C-M-% for query-replace-regexp. Input ^\s-+ as regular expression and RET. (See explanation below.) Leave the replacement string empty, i.e., press RET again. You are prompted by query-replace-regexp in the minibuffer. Press ! to perform all replacements at once.
Explanation of the regular expression:
The caret ^ stands for the beginning of line. The \s- stands for any character designated as space by the current modes syntax table. The + stands for one or more contiguous matches. ##################################################
19 ELIMINAR TODAS LAS LINEAS QUE COMIENCEN CON UN TEXTO ESPECÍFICO
por ejemplo las lineas que comiencen con https://telegra.ph
M-x flush-lines RET ^https://telegra.ph/ RET
y listo!
https://stackoverflow.com/questions/47561988/emacs-how-to-delete-a-line-starting-with-specific-text
#############################################
20 ORDENAR LINEAS DE UN TEXTO
M-sort-lines ########################################
21 ELIMINAR LINEAS DUPLICADAS
Seleccionar la región de texto donde quieres que se busque y eliminen las lineas repetidas.
M-x delete-duplicate-lines RET
https://stackoverflow.com/questions/13046791/how-to-delete-the-repeat-lines-in-emacs #################################################################
22 PONER TODO EL TEXTO EN MINUSCULAS
M-x downcase-word ó M-x downcase-region ############################################# Thu 21 Jul 2022 08:47:15 PM -03
23 SELECCIONAR TEXTO SIN USAR EL MOUSE
C-SPC y moverse con teclas hasta el sitio que deseamos marcar
############################################# Thu 28 Jul 2022 01:59:25 PM -03
24 INSTALAR TEXLIVE
guix install texlive The following package will be installed: texlive 20210325 3,533.8 MB will be downloaded
25 COMO ESCRIBIR LATEX EN EMACS
Escribe el documento .tex con sus códigos y lo compilas ejecutando C-c C-c te aparece command [pdflatex]: oprime RET y se genera el .pdf cierra el buffer abierto con C-x C-k y abre en un nuevo buffer el archivo pdf generado. Puedes pasar entre el PDF y su código tecleando C-c C-c
###########################################################
26 HOW TO MERGE 2 FILES IN ONE WITH EMACS?
I want to add different icon to the begining of every line in phrases file. How I do that in Emacs?
I have one icons file with this:
🍼 🥭 🥝 🍇 🧄 🥦 🌽 🍒 🍋 🥛
And the phrases file with this: EL SÁBADO ENSEÑ L7: Esperanza ind RESEÑA Texto clave: Roma Enfoque del estud Introducción: Como el Posm En tiempos d En primer luga En segundo lug
I want the merge file with this: 🍼 EL SÁBADO ENSE 🥭 L7: Esperanza i 🥝 RESEÑA 🍇 Texto clave: Ro 🧄 Enfoque del est 🥦 Introducción: 🌽 Como el Po 🍒 En tiempos 🍋 En primer lu 🥛 En segundo l
Nowadays I do this in linux shell with paste command
paste -d " " icons phrases > mergefile
https://stackoverflow.com/questions/16394176/how-to-merge-two-files-consistently-line-by-line
27 ========ESTO SE LOGRA CONVIRTIENDO 2 LISTAS DE 1 COLUMNA EN 1 LISTA DE 2 COLUMNAS LINEA 75
28 ############### ORDENAR PARRAFOS ALEATOREAMENTE ##############
Se agrega esta funcion:
Adapted from sort-paragraphs:
(defun sort-paragraphs-randomly (beg end) (interactive (if (use-region-p) (list (region-beginning) (region-end)) (list (point-min) (point-max)))) (save-excursion (save-restriction (narrow-to-region beg end) (goto-char (point-min)) (sort-subr nil (lambda () (while (and (not (eobp)) (looking-at paragraph-separate)) (forward-line 1))) 'forward-paragraph nil nil (lambda (_ _) (= (random 2) 0))))))
Luego se carga con C-x C-e en el ultimo parentesis del codigo. Ahora se selecciona el texto de los iconos de frutas.
se ejecuta M-x sort-paragraphs-randomly
y listo!. ####################
29 #######ESCRIBIR ACENTOS Y CARACTERES ESPECIALES#######
Con Input Methods.
Es la manera de introducir caractéres que no están soportados por tu teclado.
teclea C-\ por primera vez y te pregunta "Input method:" escribe tex y RET A partir de ahí al usar la \ tienes para poner acentos a las vocales con \'a y la ñ con \~n
C-x C-m C-\ ó M-x set-input-method para conmutar a un nuevo método de entrada.
C-h C-\ ó C-h I para describir el método de entrada actual.
C-\ para conmutar el método de entrada (Encender y Apagar) pero si es la primera vez que lo usas entonces sirve para introducir el nuevo método de entrada.
30 #MOSTRAR DE BIBLEGATEWAY UN VERSICULO BIBLICO EN LA VERSIÓN QUE ELIJAS
El siguiente código se escribe en scratch o guardalo con el nombre que quieras. Es de una funcion que se llamará vb de Verso Bíblico.
======================================
(defun vb (Cita BibVer) "Buscar Cita biblica en biblegateway" (interactive (list (read-string "Versículo bíblico: ") (read-string "Versión: "))) (browse-url-chromium (format "https://www.biblegateway.com/passage/?search=%s&version=%s&interface=print" Cita BibVer)))
======================================
Con C-x C-e cargas la función y con M-vb la ejecutas
Te pregunta por el versículo y luego por la versión
Más información en: https://www.emacswiki.org/emacs/InputdMethods
#############################################
31 ####CAMBIAR EL COLOR DE TEXTO SELECCIONADO
poner esta linea en el archivo de configuracion de emacs:
(set-face-attribute 'region nil :background "#666")
o también modificar el color de texto ademas del color de fondo asi
(set-face-attribute 'region nil :background "#666" :foreground "#ffffff") El archivo de configuración de emacs puede estar en ~/.emacs ó en ~/.emacs.d/init.el ############################################# Thu 13 Oct 2022 07:41:10 PM -03
32 HACER ZOOM EN EMACS
C-x + Aumentar C-x - Disminuir ################################################## Fri 28 Oct 2022 02:21:43 PM -03
33 USANDO HTML MODE EN EMACS.
USANDO HTML MODE. C-c C-c # (ID Anchor) C-c C-c n (name Anchor) C-c C-c h (href Anchor) C-c C-c i (image) C-c C-c o (ordered list) C-c C-c u (unordered list) C-c C-c l (list item) C-c C-c c (check box) C-c C-c - (horizontal break) C-c C-c r (ratio button) C-c C-j (line break) C-c RET (paragraph) C-c 1 (heading 1) C-c 2 (heading 2) C-c 3 (heading 3) C-c 4 (heading 4) C-c 5 (heading 5) C-c 6 (heading 6) C-c C-o (insert tag) C-c C-a (insert attributes) C-c C-b (backward tag) C-c C-f (forward tag) C-c Backspace (delete tag) C-c ? (describe tag) C-c TAB (toggle tag visibility) M-o i (old school italic tag) M-o b (old school bold tag) M-o u (underline) C-c C-d (sgml-delete-tag) C-c C-e 2 (sgml-close-tag) C-c / (sgml-close-tag) C-c ] (sgml-close-tag) C-c C-d (sgml-delete-tag) C-M-i (ispell-complete-word) C-x C-; (comment lo que selecciones) C-c <left> (sgml-skip-tag-backward) C-c <right> (sgml-skip-tag-backward)
Fuente: https://y.com.sb/watch?v=CztlFGGRrpk
##################################################
34 PAGINA MODELO ADAPTABLE A CUALQUIER PANTALLA
<!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content="Esta es una pagina ejemplo de html."> <title>Ejemplo</title> <link rel="stylesheet" type="text/css" href="./style.css"> </head> <body> <header> <h1>Página modelo</h1> </header> <p> ESTA PAGINA MODELO SE PROPONE MOSTRAR CON EL CODIGO EN META PUEDE VERSE BIEN Y DE MANERA AJUSTABLE A CUALQUIER PANTALLA, SEA ESTA UNA PANTALLA DE PC, TABLET, O CELULAR. EL contenido se ajusta automáticamente y se puede ver bien independientemente del tamaño de la pantalla. Por ejemplo este párrafo se ve en 14" actualmente. Maximizado se hasta la columna 148. </body> </html>
############################################################
35 #### USAR IMPATIENT MODE ####
Fuente: https://y.com.sb/watch?v=mnfPRLlsXqU Sirve para ver en vivo los cambios que haces en un html en el navegador Requiere: descargar e instalar de melpa, -impatient mode -httpd-start
######################################################################
36 HACER UNA PAGINA WEB EN ORG-MODE
Hay mucho material pero: PONER ENCABEZADO: (eliminar los ' al inicio para que funcione) '#+TITLE: ÉL MURIÓ POR NOSOTROS '#+AUTHOR: Tony '#+EXPORTFILENAME: /tmp/Elmuriopornosotros.html '#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup '#+OPTIONS: num:nil
Grabar el archivo como .org
los links se insertan con C-c C-l (poner link y descripcion)
cursiva negrita
las fotos en la web simplemente agregar el enlace pelado
y las fotos en el almacenamiento local agregan con doble corchete
Se exporta el HTML con
C-c C-e h h
- * Los encabezados comienzan con asterisco
Para comentar una linea agregar asi:
#Este no es un comentario
o también determinar un bloque como comentario se hace asi:
#################################################################
37 BUSCAR Y REEMPLAZAR UNA CADENA DE TEXTO EN MAS DE UN ARCHIVO
Fuente: https://www.gnu.org/software/emacs/manual/html_node/efaq/Replacing-text-across-multiple-files.html
Entra en modo Dired (Mx dired RET, o C-x d) y le dices el directorio donde estan los archivos que quieres modificar
Luego debes marcar con usando m cada archivo a modificar, o usando t para marcar todos los archivos en el Dired resultante.
Luego usas M-x dired-do-find-regexp-and-replace (Q) para escribir la frase a buscar y luego escribir la nueva frase y enter si presionas Y cambiará cada uno de los archivos que contengan la frase. Luego tendras que grabar cada uno de ellos, Tecleando C-x C-c y respondiendo Y para guardar cada buffer modificado.
OJO: SI VAS A REEMPLAZAR CARACTERES ESPECIALES COMO estos tres : [ * ] necesitas anteponerles \ al buscarlos, y NO anteponerles \ en la frase nueva.
En general los caracteres especiales son $^.*+?[\
Mas info en: gnu.org/software/emacs/manual/htmlnode/emacs/Regexps.html
38 ######### BUSCAR UNA EXPRESIÓN REGULAR EN VARIOS ARCHIVOS DENTRO DE DIRED MODE #########
M-x dired en la carpeta donde están los archivos %g salmos [RET] esto marcará los archivos que contengan la palabra salmos.
39 #### ENCONTRAR LOS ARCHIVOS QUE CONTIENEN UNA FRASE ESPECIFICA ####
#EMACS #DIRED . find and grep from emacs https://irreal.org/blog/?p=10276
M-x find-grep-dired RET
Select the FOLDER where to search the PATRON and RET. You will have a buffer with all files containing PATRON in FOLDER.
Example: find string "Salmos 19" on Folder ~/gendoc
M-x find-grep-dired RET folder: ~/gendoc/ RET pattern: Salmos 19 RET
that's it!
40 #### Anteponer un <p> a cada superscript del texto ####
M-x query-replace-regexp [¹²³⁴⁵⁶⁷⁸⁹⁰] <p>\&
[¹²³⁴⁵⁶⁷⁸⁹⁰] buscará por un numero en superscript del 0-9 <p>\& Le antepone <p> y escribe el mismo número que apareció.
41 #### Convertir un digito en superscript ####
Fuente: https://irreal.org/blog/?p=305
query-replace-regexp with a regular expression of \([0-9]\) and the replacement string \,(format "%c" (+ \#1 8320))
42 ############### ABRIR ARCHIVOS EXTERNAMENTE EN DIRED MODE #####
Usa ! mientras estás en dired mode para correr un comando shell sobre un archivo. ejemplo ! RET cvlc Abrir un video.mp4 con cvlc para consola.
43 #### SELECCIONAR ARCHIVOS POR PATRON EN DIRED ####
%m patron - ejemplo: %m vid selecciona todo archivo que contenga "vid" en su nombre %m ^IMG selecciona todo archivo que comience con IMG %m txt$ marca todo archivo que termine con "txt" %m ^test.*org$ marca archivos que empiezan con "test" y terminan en "org" %m [kxj] marca archivos que contengan letras k, x ó j %m [6-9] marca archivos que contengan digitos 6,7,8, o 9
https://pragmaticemacs.wordpress.com/2015/05/07/dired-marking-copying-moving-and-deleting-files/
############################################################
44 AGREGAR UN PIE DE PAGINA EN ORG MODE
C-c C-x f
######################################################
45 HACER UN SALTO DE LINEA EN ORG MODE
agregarle \\ al final de la linea. Ejemplo
Linea 1
Linea 2
############################################# Fri 16 Dec 2022 04:00:06 PM -03
46 CREAR UNA LINEA VACÍA PARA FIRMAR EN ORG-MODE
Envuelve la linea en signos de igual _____ o signos _____
Otra forma es usar LaTeX, ejemplo:
47 LIMPIAR EL CACHE DE TELEGA DESDE EMACS. código de null @Ox0NgSxIYT
(defun telega-cache-cleaner () (interactive) (let ((guardar '("db" "td" "telega-server" "telega-server.log"))) (mapc (lambda (archivo) (if (not (member (file-name-base archivo) guardar)) (delete-file archivo))) (directory-files-recursively "~/.telega" ".*")) (message "cache borrada")))
⟹ C-x C-e en el último paréntesis del código. {carga}
Ejecucion: M-x telega-cache-cleaner Archivo guardado en ~/scripts/telega-cache-cleaner.sh Ya haba hecho esto pero en bash, que informa los mb de datos borrados del cache: ~/scripts/tgcc.sh
##################################################
48 VER EL UNICODE DE UN CARACTER
Teclea M-describe-char con el cursor en el carácter del que quieres conocer su unicode.
PARA ESCRIBIR UN UNICODE teclear C-x 8 RET y el numero hexadecimal del unicode. Veamos algunos útiles ejemplos:
á C-x 8 RET e1 é C-x 8 RET e9 í C-x 8 RET ed ó C-x 8 RET f3 ú C-x 8 RET fa ñ C-x 8 RET f1 ¿ C-x 8 RET bf Á C-x 8 RET c1 É C-x 8 RET c9 Í C-x 8 RET cd Ó C-x 8 RET d3 Ú C-x 8 RET da Ñ C-x 8 RET d1 ☒ C-x 8 RET 2612 ■ C-x 8 RET 25a0 or C-x 8 RET BLACK SQUARE ⛶ C-x 8 RET SQUARE FOUR CORNERS 🞖 C-x 8 RET SQUARE TARGET ▤ C-x 8 RET SQUARE WITH HORIZONTAL FILL ⧠ C-x 8 RET SQUARE WITH CONTOURED OUTLINE ⟹ C-x 8 RET 27f9 … C-x 8 RET 2026 or C-x 8 RET HORIZONTAL ELLIPSIS
49 ####COMO ENUMERAR LAS LINEAS DE TEXTO SELECCIONADAS#####
C-u C-x r N RET DEL . SPC RET
50 #### Continuar numeración de lista después de un encabezado
https://emacs.stackexchange.com/questions/51050/org-mode-numbered-list-across-headings
It is possible to define the item number of any entry of a numbered list. For setting the item number to 3 one inserts [@3] between the item number and the item text. If you apply that syntax in your example you get:
51 Heading 1
- Item
- Item
52 Heading 2
- Item
- Item
- Item
53 #### VER LISTADO DE PAQUETES DE EMACS ####
M-x package-list-packages ó M-x list-packages
54 #### VER GIFS EN EMACS DIRED ####
Después de abrir la imagen Teclear M-x i-t-an RET (image-toggle-animation
55 #### VER IMAGENES EN EMACS DIRED ####
Abrir dired M-x dired M-x image-mode
puedes usar ahora n para ver la siguente imagen p para ver la imagen previa f para ver el siguiente frame b para ver el frame anterior
56 #### QUE SE VEAN LOS emoji iconos unicode glyphs ####
Funcionó así con emacs 27.2 en gnu guix. Agregar la siguiente linea en archivo $HOME/.emacs
(set-fontset-font t 'symbol "Noto Color Emoji" nil)
No sale en colores pero si se ven los iconos excepto los iconos de números 0 a 9, el 10 si aparece.
Otras posibles opciones: set-face-attribute 'default nil :family "Droid Sans Mono")
En emacs 27.1 que viene en pureOS 10 bullseye funciona con el primer comando y los iconos salen a colores
57 #### Usar text to speak desde Emacs ####
1- Instalas espeak : sudo apt get install espeak 2- instalas greader dentro de Emacs: – M-x package-list-packages -> Buscar Greader -> Install 3- activar greader para usar en Emacs> agregar esto en init.el o .emacs (require 'greader) 4- Usarlo Comandos:- Activar el modo greader => M-x greader-mode C-r SPC iniciar lectura del buffer a partir de donde se encuentra el puntero. SPC detener lectura C-r l cambiar lenguaje (es, en, pt..)
58 ########## ENCOGER UN BUFFER EN EMACS CUANDO ESTOY VIENDO DOS SIMULTANEAMENTE #########
C-x { encoge buffer horizontal Funciona en Emacs 27.1 pureOS C-x } alarga buffer horizontal C-x + balancea igual alto y ancho C-x - acorta ventana C-x ^ agranda el buffer activo vertical
Fuente: https://emacs.stackexchange.com/questions/582/how-to-change-size-of-split-screen-emacs-windows
59 #### ABRIR UN ENLACE WEB DESDE EMAC EN UN BUFFER CON EWW ####
Seleccionar el enlace y M-x ew-i RET
funciona abriendo el archivo desde dired o si el buffer no esta en modo org
60 ######### ABRIR EMACS EN LA LINEA DE COMANDOS SIN MODO GRAFICO #########
emacs -nw
61 ######### ABRIR EMACS SIN MOSTRAR LA PANTALLA DE INICIO SPLASH SCREEN ########
emacs –no-splash
62 ####### ABRIR ARCHIVO REMOTAMENTE #######
Usar C-x C-f para iniciar find-file, introducir la parte TRAMP (Transparently Accessing Remote Files) para el archivo en cuestion. Basta con escribir / y ssh: [TAB] Te mostrará opciones de acceder por sshx o ssh, elige ssh: y sigue las opciones incluyendo introducir la clave de acceso hasta llega al archivo en cuestion. Ej:
C-x C-f /ssh: [TAB] purism@ [TAB] 192.168.0.6 [TAB] Password: ** [TAB] Documents [TAB] DTG-Erratas.org [TAB] [RET]
63 ######### USAR SUPERSCRIPT Y SUBSCRIPT EN EMACS ORG MODE ########
https://orgmode.org/manual/Subscripts-and-Superscripts.html#Subscripts-and-Superscripts
‘^’ y ‘_’ se usan para indicar superíndice y subíndice. Para que el texto ASCII sea más legible, no es necesario, pero está bien, rodear los caracteres múltiples de superíndice o subíndice con corchetes {}. Por ejemplo:
El radio del sol es Rsun = 6.96 x 108 m. Por otro lado, el radio de Alpha Centauri es RAlpha Centauri = 1.28 x Rsol.
Nota que el guión bajo es precedido por un carácter de tamaño normal
Por ejemplo un número de página 92 entre corchetes se pone así:
[92]
Para activar/desactivar la visualización de superíndices y subíndices :
C-c C-x | *(org-toggle-pretty-entities)
Este comando formatea subíndices y superíndices visualmente.
64 ######### INSTALAR PDFLATEX PARA EXPORTAR .ORG A PDF ######
PdfLatex is a tool that converts Latex sources into PDF. This is specifically very important for researchers, as they use it to publish their findings. It could be installed very easily using Linux terminal, though this seems an annoying task on Windows. Installation commands are given below.
sudo apt-get install texlive-latex-base
The following additional packages will be installed: dvisvgm fonts-lmodern libkpathsea6 libptexenc1 libsynctex2 libteckit0 libtexlua53 libtexluajit2 libzzip-0-13 lmodern t1utils tex-common texlive-base texlive-binaries Suggested packages: debhelper xzdec texlive-latex-base-doc The following NEW packages will be installed: dvisvgm fonts-lmodern libptexenc1 libteckit0 libtexlua53 libtexluajit2 libzzip-0-13 lmodern t1utils tex-common texlive-base texlive-binaries texlive-latex-base The following packages will be upgraded: libkpathsea6 libsynctex2 2 upgraded, 13 newly installed, 0 to remove and 308 not upgraded. Need to get 48,4 MB of archives. After this operation, 159 MB of additional disk space will be used.
Listo!
Also install the recommended and extra fonts to avoid running into the error [1], when trying to use pdflatex on latex files with more fonts.
sudo apt-get install texlive-fonts-recommended
The following additional packages will be installed: fonts-texgyre tex-gyre tipa Suggested packages: texlive-fonts-recommended-doc The following NEW packages will be installed: fonts-texgyre tex-gyre texlive-fonts-recommended tipa 0 upgraded, 4 newly installed, 0 to remove and 308 not upgraded. Need to get 24,4 MB of archives. After this operation, 62,5 MB of additional disk space will be used.
sudo apt-get install texlive-fonts-extra
Install the extra packages,
sudo apt-get install texlive-latex-extra
the following additional packages will be installed: javascript-common libapache-pom-java libcommons-logging-java libcommons-parent-java libfontbox-java libjs-jquery libpdfbox-java libruby2.7 preview-latex-style rake ruby ruby-minitest ruby-net-telnet ruby-power-assert ruby-rubygems ruby-test-unit ruby-xmlrpc ruby2.7 rubygems-integration texlive-latex-recommended texlive-pictures texlive-plain-generic
The following NEW packages will be installed: javascript-common libapache-pom-java libcommons-logging-java libcommons-parent-java libfontbox-java libjs-jquery libpdfbox-java libruby2.7 preview-latex-style rake ruby ruby-minitest ruby-net-telnet ruby-power-assert ruby-rubygems ruby-test-unit ruby-xmlrpc ruby2.7 rubygems-integration texlive-latex-extra texlive-latex-recommended texlive-pictures texlive-plain-generic 0 upgraded, 23 newly installed, 0 to remove and 307 not upgraded. Need to get 73,5 MB of archives. After this operation, 234 MB of additional disk space will be used.
Once installed as above, you may be able to create PDF files from latex sources using PdfLatex as below.
pdflatex latex_source_name.tex
65 #### AGREGAR IMAGENES EN EMACS ORG MODE ####
agregar el path precedido por doble corchetes cuadrados y la palabra file:/ así:
[[file:/path/to/an/image.png]]
para se vea se puede hacer un suiche con C-c C-x C-v
66 #### COLOREAR TEXTO EN EMACS ORG MODE PARA EXPORTARLO A HTML ####
Se puede hacer enviando etiquetas HTML directo con el org mode según menciona en https://orgmode.org/manual/Quoting-HTML-tags.html
Una aplicación de esto se encuentra aquí: https://newbedev.com/changing-color-of-text-in-html-export-from-org-mode y lo hace usando una macro. Basicamente copias este código personalizando el texto y el color que quieres usar:
- This is a test
This is a sample sentence in normal text color.
This is a sample sentence in red text color.
This is a sample sentence in green text color.
Tiene la limitación que el segundo argumento no debe contener comas , y tal vez otros caracteres especiales.
67 #### HACER TEXTO VERTICAL CON CSS EN ORG-MODE ####
Fuente: https://webdesign.tutsplus.com/the-easiest-way-to-create-vertical-text-with-css--net-15284t
Hay 9 métodos de hacerlo con CSS y el método 8 writing-mode fue el que utilicé
Básicamente hay que agregar lo siguiente en el archivo CSS
.vericaltext{ writing-mode: vertical-lr; text-orientation: mixed; }
y en el html agregar esto:
<p class="vericaltext"> VERTICAL TEXT </p>
donde VERTICAL TEXT es el rótulo que quiero en vertical
pero para que funcione en org-mode hay que meterle código html con una macro así:
ANALGESICOS . y . AINE
En este ejemplo el rótulo es ANALGESICOS . y . AINE
los puntos son para darle un espacio separador en la conjunción y.
68 #### QUITAR SANGRÍAS EN LINEA INICIAL DE CADA PÁRRAFO EN ORG MODE ####
69 #### REDUCIR ESPACIO VERTICAL ENTRE ITEMS DE UN LISTADO ####
http://www.terminally-incoherent.com/blog/2007/09/19/latex-squeezing-the-vertical-white-space/ Then instead of using normal lists use:
70 #### Forzar una nueva pagina ORG-MODE latex
71 ### INSTALAR TELEGA 0.8.3 en Emacs 27.1 desde Melpa. ###
M-x package-list-packages buscar telega que está en melpa-stable y es version 0.8.3 actualmente. Toca donde dice Install y luego x para proceder
Packages to install: 1 (telega-0.8.3). Proceed? (y or n) y
Operation finished. Salir de emacs.
72 ### INSTALAR telega.el version 0.8.3 en emacs 27.1 usando melpa ###
M-x package-list-packages buscar telega y teclear i para instalar. Te pregunta si procede? responde y. Instalado.
en el init.el o .emacs file te agrega algo como :
(add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/")) (add-to-list 'package-pinned-packages '(telega . "melpa-stable"))
Al iniciar telega con M-x telega te pregunta si quieres construir el servidor telega. dile Yes a ver qué pasa.
Arroja el siguiente error:
usr/bin/gmake -C server clean gmake[1]: Entering directory '/home/tonyp.emacs.d/elpa/telega-0.8.3/server' gmake[1]: Leaving directory 'home/tonyp.emacs.d/elpa/telega-0.8.3/server' usr/bin/gmake -C server install gmake[1]: Entering directory '/home/tonyp.emacs.d/elpa/telega-0.8.3/server' cc -I/usr/local/include -Wall -g -pthread -o telega-server telega-server.c telega-dat.c telega-pngext.c -L/usr/local/lib -Wl,-rpath,/usr/local/lib -ltdjson telega-server.c:30:10: fatal error: td/telegram/tdjsonclient.h: No such file or directory 30 | #include <td/telegram/tdjsonclient.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
compilation terminated. gmake[1]: * [Makefile:35: telega-server] Error 1 gmake[1]: Leaving directory 'home/tonyp.emacs.d/elpa/telega-0.8.3/server' gmake: * [Makefile:12: server-reinstall] Error 2
Evgeny Zajcev me responde: Install TDLib, if installed to custom path, don’t foregt to specify it with telega-server-libs-prefix https://t.me/emacs_telega/36503
Procedo a instalar telega desde git directamente https://zevlg.github.io/telega.el/#linux-users
$ git clone https://github.com/zevlg/telega.el
respuest de la terminal: Cloning into 'telega.el'… remote: Enumerating objects: 8233, done. remote: Counting objects: 100% (724/724), done. remote: Compressing objects: 100% (151/151), done. remote: Total 8233 (delta 596), reused 674 (delta 573), pack-reused 7509 Receiving objects: 100% (8233/8233), 5.69 MiB | 1.55 MiB/s, done. Resolving deltas: 100% (6239/6239), done.
Finally load telega into Emacs using: (use-package telega :load-path "~/telega.el" :commands (telega) :defer t)
Da error Symbol's function definition is void: use-package en home/tonyp.emacs.d/init.el. Eliminando las lineas.
Agrego estas lineas (add-to-list 'load-path "~/telega.el") (require 'telega)
*allí no me da error pero al iniciar M-x telega pregunta build telega-server? respondo no.
*Voy a instalar el telega-server con docker como dice en manual https://zevlg.github.io/telega.el/#building-tdlib
Running telega-server in docker Pull latest telega-server image: $ docker pull zevlg/telega-server:latest Make telega know you want to use docker by adding this to your init.el: (setq telega-use-docker t) That's it, you are ready to get starting. However, you might anyway need to have local ffmpeg installation to utilize some telega features, such as playing audio/voice messages, capturing video/voice notes, etc.
Se complica con el docker, me instaló wmdocker y no funciona igual.
73 Desinstalando telega.el
M-x package-delete telega-0.8.3 listo!
74 #### RENOMBRAR MUCHOS ARCHIVOS ####
-Abre dired (M-x dired - RET) en la carpeta con los archivos a renombrar -Entra al modo dired "editable" usando M-x wdired-change-to-wdired-mode -Edita los nombres de archivos como quieras. Puedes usar M-x replace-string en el búfer, y otras herramientas de edición de texto. -Los cambios no son en vivo, debes someter tus cambios con C-c C-c o abortar todos tus cambios con C-c ESC
75 #### Convertir texto separado por comas en una tabla ####
M-x org-table-convert-region en el texto seleccionado
76 ### Que aparezcan lineas cuadriculadas de una tabla ####
Agregar el estilo de tablas en LaTeX
antes de la tabla
77 #### No poner números de página al exportar PDF ####
78 #### Separar 1cm vertical el texto ####
79 # *Instalar ledger-mode para llevar cuenta de gastos ####
Una guia de ledger: https://notxor.nueva-actitud.org/blog/2018/10/30/ledger-cli-y-el-ledger-mode-de-emacs/
Primer hay que instalar ledger con sudo apt install ledger
y luego en emacs instalar el modo ledger
M-x package-install RET ledger-mode RET
Le configuro la moneda guarani
commodity Gs note Euros format Gs 1,000.00 default
80 #### REEMPLAZAR UNA CADENA DADA CON NÚMEROS INCREMENTALES ####
sáb 02 mar 2024 19:49:00 -03 Fuente: https://emacs.stackexchange.com/questions/37898/incrementally-replace-a-given-string
Dada una cadena de texto X quiero reemplazar la primera vez por 0, la segunda vez que aparece por 1 y así sucesivamente
M-x replace-regexp X RET \#
Dada una cadena de texto X quiero reemplazar la primera vez por 2, la segunda vez que aparece por 3 y así sucesivamente
M-x replace-regexp X RET \,(+ 2 \#)
puedes reemplazar M-x replace-regexp por C-M-%
81 #### Ver pdf, odt ods files
82 #### QUITAR TÍTULO Contents EN LOS .PDF GENERADOS A PARTIR DE ORG-MODE ####
https://notxor.nueva-actitud.org/2021/03/03/publicar-con-org-mode.html
Poner esto al inicio de archivo .org # #+OPTIONS: toc:nil num:nil \n:t *:t toc:nil no hace tabla de contenidos num:nil no enumera los encabezados \n:t preserva los saltos de linea al exportar el documento *:t activa la exportacion de negritas, cursiva, subrayado.
83 #### Quitar autor, fecha y título al exportar a pdf a partir de org-mode
84 #### PONER MARGENES EN ORG-MODE ####
85 ### CENTRAR TEXTO EN ORG-MODE ###
Este texto está centrado y en negrita
86 #### PRESENTAR Y PREPARAR DOCUMENTOS USANDO EMACS y SOFT LIBRE ####
https://emacsconf.org/2023/talks/uni/ EmacsConf/ 2023/ talks/ Authoring and presenting university courses with Emacs and a full libre software stack
Su hardware para presentar cursos en universidad y hacer documentos:
Tablet Surface con Linux en ella. Laptop. Desk mic: https://www.iptt.co.uk/desk-mic-interface/ https://bestofreviewgeeks.com/usb-desk-mic/ Lapel mic: https://www.ericsardinas.com/best-lapel-mic-for-preaching/ Stylus Camara Video converter Green Screen
Software Emacs (laptop) Firefox (laptop) VLC (laptop) Xournal++ (en la tablet) OBS Studio (laptop) Jitsi Meet for streaming (laptop)
Haciendo slides y handouts con org mode Mas en el enlace inicial.
87 Emacs Keyboard Shortcuts
https://www.maketecheasier.com/cheatsheet/emacs-keyboard-shortcuts/
Shortcut,Function General Emacs Controls C-g,Cancel or suspend a command C-g C-g C-g,Forcibly suspend a command. C-l,Refresh the current screen.
88 Create beautiful beamer slides with Emacs
89 ### SELECCIONAR MUCHOS ARCHIVOS A LA VEZ DIRED ###
https://www.gnu.org/software/emacs/manual/html_node/emacs/Flagging-Many-Files.html 31.4 Flagging Many Files at Once
The #, ~, ., % &, and % d commands flag many files for deletion, based on their file names:
Flag all auto-save files (files whose names start and end with ‘#’) for deletion (see Auto-Saving: Protection Against Disasters). ~
Flag all backup files (files whose names end with ‘~’) for deletion (see Backup Files). . (Period)
Flag excess numeric backup files for deletion. The oldest and newest few backup files of any one file are exempt; the middle ones are flagged. % &
Flag for deletion all files with certain kinds of names which suggest you could easily create those files again. % d regexp RET
Flag for deletion all files whose names match the regular expression regexp.
~ (dired-flag-backup-files) flags all files whose names say they are backup files—that is, files whose names end in ‘~’. See Backup Files.
. (period, dired-clean-directory) flags just some of the backup files for deletion: all but the oldest few and newest few backups of any one file. Normally, the number of newest versions kept for each file is given by the variable dired-kept-versions (not kept-new-versions; that applies only when saving). The number of oldest versions to keep is given by the variable kept-old-versions.
Period with a positive numeric argument, as in C-u 3 ., specifies the number of newest versions to keep, overriding dired-kept-versions. A negative numeric argument overrides kept-old-versions, using minus the value of the argument to specify the number of oldest versions of each file to keep.
% & (dired-flag-garbage-files) flags files whose names match the regular expression specified by the variable dired-garbage-files-regexp. By default, this matches certain files produced by TeX, ‘.bak’ files, and the ‘.orig’ and ‘.rej’ files produced by patch.
% d flags all files whose names match a specified regular expression (dired-flag-files-regexp). Only the non-directory part of the file name is used in matching. You can use ‘^’ and ‘$’ to anchor matches. You can exclude certain subdirectories from marking by hiding them while you use % d. See Hiding Subdirectories.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31.4 Marcar Muchos Archivos Simultáneamente
Los comandos #, ~, ., % &, y % d marcan (seleccionan) muchos archivos para eliminar, basado en sus nombres de archivo:
Marca todos los archivos que se graban automáticamente (archivos cuyos nombres inician y terminan con '#') para eliminación (vea Grabación Automática: Protección Contra Desastres).
~ Marca todos los archivos de respaldo (backup) (archivos cuyos nombres terminan con '~') para eliminación (Vea Archivos de Respaldo).
. (Punto) Marca para eliminación los archivos de respaldo excesivos en número. Los archivos de respaldo mas antiguos y los mas nuevos de cualquier archivo están exentos; los del medio se marcan.
% & Marca para eliminación todos los archivos con cierta clase de nombres que sugieren que puedes crearlos de nuevo fácilmente.
% d regexp RET Marca para eliminación todos los archivos cuyos nombres concuerdan con la expresión regular regexp.
…
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
90 Formularios y datos con forms-mode de Emacs
https://notxor.nueva-actitud.org/blog/2020/06/23/formularios-y-datos-con-forms-mode-de-emacs/
Estructura de los datos
Los datos para forms-mode tienen una estructura muy básica: son ficheros de texto, conde cada registro se encuentra en una línea y cada campo está separado por un carácter especial. Si no se especifica cual, forms-mode entiende que es \t (un tabulador). Los campos pueden mostrarse también en varias líneas. Esas líneas se separan dentro del campo utilizando un carácter "\k" (C-k), por defecto, aunque se puede definir el que queramos con la variable forms-multi-line. Si se establece ese valor a nil deshabilita los campos en varias líneas.
Los campos son posicionales de izquierda a derecha y cuando definamos la estructura del formulario en pantalla, los podemos insertar mediante su número de orden en el fichero de datos. Sin embargo, veremos que hay una forma más cómoda de hacerlo y dotar de nombre a cada campo.
En el caso del ejemplo, se hizo un volcado de datos desde una hoja de cálculo a CSV, pero utilizando como separador de campos el carácter |, porque si se hubiera utilizado la prosaica , hubiera cortado los títulos que contienen comas, aunque estén delimitados por comillas, forms ignora esas estructuras y se fija sólo en el separador establecido.
Aunque es un código corto y suficientemente autoexplicativo lo cuento más despacio. Con la variable forms-read-only establecemos que inicie los datos en modo de sólo lectura ─luego veremos que podemos cambiar ese estado con una simple combinación de teclas─. La variable forms-field-sep se establece al carácter que hemos utilizado para exportar el fichero CSV: |. La variable forms-file establece el nombre del fichero donde se guardan los datos, en este caso ./FratecoBiblioteko.csv. En caso de no existir el fichero, forms lo crea. La variable forms-number-of-fields estable el número de columnas o campos que tiene cada línea. En este caso 4, pero se ha utilizado la función forms-enumerate para establecer ese número de columnas. Dicha función lo que hace es proveer de nombres, emparejando cada nombre con su número de posición y devolviendo el número más alto asignado. De esa manera, cuando en la definición de forms-format-list, que establece la estructura del formulario, podemos utilizar los nombres anteriores en lugar de su número correspondiente ─como se puede apreciar en el código─, porque a veces el orden de las columnas no es el que interesa mostrar. El truco de los nombres además nos ahorra muchos quebraderos de cabeza en caso de que los campos no sigan el mismo orden que en el fichero de datos. En la variable form-format-list se especifica el formato de los datos en el fichero de datos.
En la lista de formato se pueden proporcionar una serie de valores para especificar lo que se mostrará:
Cadena: Una cadena se mostrará tal cual está escrita. Número: Indica el número de campo del registro. En nuestro ejemplo, los hemos sustituido con forms-enumerate por atoms con el nombre. Lista: O mejor dicho, una forma. Especifica una llamada a una función. La función se la llama cada vez que se muestra un registro y su resultado ─que debe ser una cadena─ se muestra en pantalla.
Si no se especifica una lista de formato, forms genera una simple lista, cada campo en una línea con la etiqueta del número correspondiente delante de cada campo.