Fontify enlaces rotos en modo org


8

Si creo un mal [[file:link]]o un interno [[Link]]que no existe, me gustaría org-modefontificar esto usando la org-warningcara. ¿Cómo puedo hacer esto?

Gracias,

Respuestas:


7

En org-9 podría ser tan simple como esto para enlaces de archivos:

(org-link-set-parameters
 "file"
 :face (lambda (path) (if (file-exists-p path) 'org-link 'org-warning)))

Para enlaces internos, no conozco una manera fácil de hacerlo.


Gracias John! Esto funciona muy bien. ¿Hay alguna forma de actualizar esto automáticamente, de modo que una vez que se crea el archivo, el color cambie?
Adam

Realmente no. Cambiará la próxima vez que sea refontificado. Si cambia la línea o refontifica el búfer, creo que debería cambiar de color.
John Kitchin

¡Gracias! ¿Hay alguna forma de limitar la comprobación a los archivos locales? Emacs no debería intentar conectarse a archivos remotos debido a esto.
Timm

¿Cómo se ve una ruta de archivo remota? Probablemente pueda asociarlo con una expresión regular en una expresión condicional.
John Kitchin

1
Hay file-remote-p, que parece hacer el trabajo. He modificado su código de la siguiente manera:(org-link-set-parameters "file" :face (lambda (path) (when (not (file-remote-p path))(if (file-exists-p path) 'org-link 'org-warning))))
Timm
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.