2010-01-13 12 views
5

Antecedentes:hipervínculos editor de texto y de archivos de texto basados ​​en

Parece que algunos editores de texto y entornos de desarrollo están comenzando a obtener más "de tipo explorador" en sus características. Específicamente, una de estas características es la capacidad de tratar el texto ordinario en un búfer de texto abierto como un hipervínculo a otro archivo, recurso o incluso un comando ejecutable.

Programación esto como un plug-in editor o macro

Dado que esto parece una buena idea, me han empezado a programar algunas secuencias de comandos y complementos de edición para hacer esto muy tipo de cosas, por lo que el usuario de un texto editor puede abrir u operar en los enlaces del siguiente estilo:

href="c:/files/foobar.txt"     (click to open file) 
href="c:/files/foobar.txt" jumpto="34"  (jump to a line number) 
href="c:/files/foobar.txt" find="Lorem"  (jump to 1st line containing word) 
href="find_in_files://c:/files" find="Lorem" (show all matching lines) 
[[find_in_files://find=Lorem;exten=*.htm*]] (alternate syntax option) 
href="redir://c:/files/feebar.txt"   (replace current edit buffer) 
href="run://c:/files/foobar.jpg"    (open in default image editor) 
[[run://c:/files/foobar.jpg;runwith=foo.exe]] (alternate syntax option) 

Preguntas:

  1. ¿Existe algún tipo de convención emergente para formar hipervínculos basados ​​en texto?
  2. Si existe una convención para este tipo de cosas, ¿existe una especificación publicada?
  3. ¿Existe una implementación de esta idea en su editor/IDE favorito?
  4. ¿Existe un enfoque preexistente alternativo para esta idea que no utiliza hipervínculos?
  5. ¿Cómo se maneja esta función en los editores "grand-daddy"? (Vim, Emacs)

Actualización:

Parece que la cuestión podría haber sido aclarada, pero resulta que el modo Emacs Org es un ejemplo concreto de lo que estaba buscando que responde a todas de mis preguntas

+0

@Roger Pate @Matt: Gracias por sus respuestas. No estoy de acuerdo con el problema del "problema no existe". Tal vez debería haber dicho "lenguaje de marcado ligero" en lugar de "texto sin formato" (aunque también se puede objetar fácilmente sobre eso). Hay un trillón de motores Wiki diferentes con sus propias sintaxis, algunos de ellos siguen los estándares publicados. No hay una razón general para suponer que lo que pregunté aquí podría no ser similar. – dreftymac

Respuesta

5

Emacs 'Org-Mode tiene soporte para todo tipo de Hyperlinks.

+0

Gracias, respuesta aceptada porque esto realmente da un ejemplo específico de lo que me refiero en un editor de texto del mundo real. – dreftymac

+1

+1 por mencionar un modo increíble para el que no he visto ningún clon en ningún lado. –

3
  1. URLs, como http://example.com/ (fíjese que SO lo vincula automáticamente), y en ocasiones, "www." prefijo, solo porque es muy común. Las direcciones de correo electrónico son otro ejemplo comúnmente reconocido.
    • Pero no este material cuasi-xml que tiene.
  2. Por supuesto que no; una vez que intente y haga que el texto simple siga alguna convención, ya no tendrá texto sin formato.
  3. Sí, consulte el n. ° 5.
  4. Sí, consulte el n. ° 5.
  5. Es muy común que los editores, especialmente los editores de programadores, tengan scripts, macros, herramientas o lo que quieran para llamarlo. Usualmente estos no son controlados directamente por el texto en el archivo, pero pueden usar el archivo, nombre de archivo, selección, posición del cursor, directorio del archivo actual, etc. Espero que muchos buenos programadores usen estas características sin pensar más en ellas.

Suena casi como si estuvieras tratando de resolver un problema que no existe.

+0

@Roger Pate ** // Por supuesto que no; una vez que intente y haga que el texto simple siga alguna convención, ya no tendrá texto sin formato // ** No estoy seguro de a qué se refiere esto. Si esto significa que "texto plano" es un nombre inapropiado para "texto formateado", entonces podríamos volver a reunirnos con un entendimiento mutuo de que este término incorrecto puede ser reemplazado por "capaz de ser modificado en un editor de texto estándar". XML, YAML y JSON son ejemplos de lo que se entendía en OP. – dreftymac

+0

@Roger Pate ** // Parece que estás tratando de resolver un problema que no existe // ** En realidad no, solo investigando para una característica que ya puede existir. No es un problema, especialmente para aquellos que no necesitan ni usan esa característica. – dreftymac

2

Seguramente el jumpto="34" y find="Lorem" podrían ser reemplazados con el navegador web de estilo # y ? marcas.

lo tanto, su segundo y tercer ejemplo se vería así:

href="c:/files/foobar.txt#34"  (jump to a line number) 
href="c:/files/foobar.txt?Lorem" (jump to 1st line containing word) 

Aunque, como dice Roger Pate arriba, suena como que se está resolviendo un problema que no existe.

+2

Bienvenido a SO! Intente evitar "arriba" o "abajo", ya que el pedido cambiará según cómo se vea la página (la más antigua, la más nueva, los votos), dependiendo de los totales de votos actuales y según la respuesta que finalmente se acepte. –

3

Hay varias secuencias de comandos para Vim que agregan hipervínculos y etiquetas. Uno de los más populares es Viki.

1

Emacs también tiene "find-file-a-punto", que se puede invocar con M-x ffap

1

Véase también LinkD. Nada elegante como Org. Simple, pequeño

Cuestiones relacionadas