ES-TEX Archivos

Usuarios hispanohablantes de TeX

ES-TEX@LISTSERV.REDIRIS.ES

Opciones: Vista Clásica

Use Proportional Font
Por defecto enseñar Text Part
Mostrar todas las cabeceras de correo

Tema: [<< Primero] [< Prev] [Siguiente >] [Último >>]

Print Responder
"Eric Concha M." <[log in para visualizar]>
Fri, 27 Aug 2021 16:16:08 -0400
text/plain (119 lines)
 Hola Juan Manuel, gracias por tus abundantes aportes ... para los que no usan emacs hay una herramienta multiplataforma que se llama RECOLL,
 la que básicamente funciona como un google de tu computador, la descargas, instalas y dentro de la misma app tienes que decirle qué directorios
 escanear en PREFERENCES/INDEX CONFIGURATION y luego FILE/UPDATE INDEX ... eso es lo básico, con eso "lee" los archivos (muchos formatos como doc,
 docx, pdf, todos los de texto, creo que también PPT, xls y así) dentro de los directorios señalados y genera una bbdd en la que hace las consultas
 cuando necesitas buscar algo ... también puedes configurarlo para que actualice el índice a intervalos regulares o cada vez que habres el
 programa ... para mi, que con frecuencia hago revisiones de literatura y que con frecuencia trabajo offline es muy muy útil ...
 espero que a alguien le sirva el dato.

 Saludos !!

 Eric.



On Mon, 23 Aug 2021 15:18:18 +0000
Juan Manuel Macías <[log in para visualizar]> wrote:

> Hola a todos:
> 
> Llevo unos días trasteando con la aplicación texdoc, y me he dado cuenta
> de algo obvio: que sólo busca por manuales (generalmente en PDF), pero
> no dentro de los manuales. A mí me gustaría contar en LaTeX con algo muy
> útil que tenemos en Elisp, donde podemos buscar rápidamente por
> funciones o variables: ¿qué tal si se pudiese buscar también por
> comandos, entornos o pasajes concretos dentro de los manuales de LaTeX?.
> 
> Me vino a la cabeza ripgrep, que es una aplicación excelente y
> utilísima, una especie de grep vitaminado que busca a una velocidad que
> mete miedo dentro de un directorio o de un proyecto git en el contenido
> de los archivos de texto. De hecho, cuenta también con una interfaz para
> Emacs, deadgrep, que funciona muy bien. Lo malo es que ripgrep sólo
> busca en archivos de texto, no en PDF o similares. Pero he aquí que
> tenemos también un ripgrep-all, que es una versión extendida de ripgrep
> para buscar con igual diligencia dentro de PDF, documentos de word o
> libreoffice, archivos comprimidos, etc.:
> https://github.com/phiresky/ripgrep-all
> 
> Para Arch, por suerte, hay un paquete ya compilado en el AUR, así que
> podemos instalarlo rápidamente ejecutando (si usamos trizen, por
> ejemplo):
> 
> trizen -S ripgrep-all
> 
> Para otras distribuciones de GNU/Linux, en la página del proyecto se dan
> también las instrucciones pertinentes.
> 
> Y con eso, en principio, ya bastaría: podemos usarlo simplemente en
> línea de comandos situándonos en el directorio donde está la
> documentación de TeX live y ejecutamos 'rga término a buscar'. La
> búsqueda, insisto, es de vértigo. Por supuesto, se puede afinar lo
> necesario para que no nos sepulte bajo los resultados.
> 
> Y otro plus para usuarios de Emacs. Usar la línea de comandos es un poco
> latoso, así que me preguntaba si podía aprovechar la interfaz deadgrep,
> pero cambiando el ejecutable localmente. Así que definí esta función:
> 
> (defun mi-busca-deadgrep-latex ()
>   (interactive)
>   (let
>       ((deadgrep-executable "rga")
>        (default-directory "/usr/share/texmf-dist/doc/latex/")
>        (termino (read-from-minibuffer "Comando o pasaje en la documentación: ")))
>     (deadgrep termino)))
> 
> Va bien, lo único es que no podemos abrir el pdf por la página de la
> búsqueda, sino que siempre nos salta a la primera página del PDF. Para
> solucionarlo, escribí lo siguiente (funciona solo si usamos el visor de
> pdf de Emacs pdf-tools). Primero escribí esta función para saltar a la
> página correcta:
> 
> (defun mi-open-function-deadgrep-latex (archivo)
>   (let ((pag-pdf (save-excursion
>                    (beginning-of-line)
>                    (when (re-search-forward "Page\s+\\([[:digit:]]+\\):" nil t)
>                      (match-string 1)))))
>     (find-file archivo)
>     (pdf-view-goto-page (string-to-number pag-pdf))))
> 
> Y acto seguido, definí también una versión personalizada de la función
> de deadgrep para saltar a los resultados. Si en el búfer de resultados
> está en el directorio de la documentación de TeX live, aplica mi
> función, en caso contrario, aplica la función de fábrica:
> 
> (defun mi-deadgrep-visit-result ()
>   (interactive)
>   (if (save-excursion
>         (goto-char (point-min))
>         (re-search-forward "Directory: /usr/share/texmf-dist/doc/latex/" nil t))
>       (deadgrep--visit-result #'mi-open-function-deadgrep-latex)
>     (deadgrep--visit-result #'find-file)))
> 
> Y ya sólo faltaba sobreescribir la versión antigua por la nueva:
> 
> (advice-add 'deadgrep-visit-result :override #'mi-deadgrep-visit-result)
> 
> Ahora ya podemos invocar cosas como M-x mi-busca-deadgrep-latex RET
> \babelprovide
> 
> y nos abre al momento la página de resultados con la aparición de ese
> comando, en el manual de Babel o donde sea. Si damos al enter en cada
> resultado, saltamos a la correspondiente página del PDF.
> 
> Aquí un pantallazo de muestra: https://ibb.co/h12FxWv
> 
> Saludos,
> 
> Juan Manuel
> 
> ----------------------------------------------------
> Si tiene algun problema con la utilizacion de la lista.
> Pongase en contacto con nosotros a traves de:
> [log in para visualizar]
> ----------------------------------------------------

----------------------------------------------------
Para darse de baja ES-TEX pincha y envia el siguiente url
mailto:[log in para visualizar]
----------------------------------------------------

ATOM RSS1 RSS2