Текстовый редактор и основанные на текстовом файле гиперссылки

Фон:

Кажется, что некоторые текстовые редакторы и IDE начинают становиться более "подобными браузеру" в своих функциях. А именно, одной такой функцией является способность рассматривать обычный текст в открытом текстовом буфере как гиперссылка в другой файл, ресурс или даже выполнимую команду.

Программирование этого как плагин редактора или макрос

Так как это походит на хорошую идею, я начал программировать некоторые сценарии и дополнения редактора, чтобы сделать это очень любезное со стороны вещи, так, чтобы пользователь текстового редактора мог открыться или воздействовать на ссылки следующего стиля:

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)

Вопросы:

  1. Действительно ли там кто-либо - вид появляющейся конвенции для формирования текстовых гиперссылок?
  2. Если существует конвенция для такого рода вещи, есть ли опубликованная спецификация?
  3. Существует ли реализация этой идеи в Вашем любимом редакторе/IDE?
  4. Существует ли альтернативный существующий ранее подход для этой идеи, которая не использует гиперссылки?
  5. Как эта функция обрабатывается в редакторах "дедушки"? (Vim, Emacs)

Обновление:

Похоже, что вопрос, возможно, был разъяснен, но оказывается, что режим Emacs Org является одним определенным примером того, что я искал, который отвечает на все мои вопросы.

6
задан dreftymac 13 January 2010 в 23:09
поделиться

5 ответов

Орг-режим Emacs поддерживает все виды Гиперссылки .

5
ответ дан 8 December 2019 в 14:43
поделиться
  1. URL, такие как http://example.com/ (Обратите внимание, что автоматически связывает это), а иногда и «www». префикс, только потому, что это так распространено. Адреса электронной почты являются еще одним примером, обычно распознанным.
    • Но не этот квази-XML-атрибут, которые у вас есть.
  2. конечно нет; Как только вы попытаетесь сделать простой текст, следуя некоторой конвенции, у вас больше нет простого текста.
  3. Да, см. # 5.
  4. Да, см. # 5.
  5. Это чрезвычайно распространено для редакторов, особенно редакторов программистов, иметь скрипты, макросы, инструменты или что-то, что они-хотят позвечать. Обычно они не контролируются непосредственно текстом в файле, но могут использовать файл, имя файла, выделение, положение курсора, каталог текущего файла и т. Д. Я ожидаю, что многие хорошие программисты используют такие функции, не думая о них больше.

В основном звучит так, как вы пытаетесь решить проблему, которая не существует.

3
ответ дан 8 December 2019 в 14:43
поделиться

Существует несколько сценарий для VIM, который добавляет гиперссылки и разметки. Один из самых популярных Viki .

4
ответ дан 8 December 2019 в 14:43
поделиться

Конечно, Jumpto = «34» и Find = «Lorem» может быть заменена в стиле веб-браузера # и ? Марки.

Таким образом, ваш второй и третий пример будет выглядеть так:

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

Хотя, хотя, как говорит выше, то, как указано выше, он звучит так, как вы решаете проблему, которая не существует.

2
ответ дан 8 December 2019 в 14:43
поделиться

EMACS также имеет «Find-файл-точку», который вы можете вызвать с M-X FFAP

1
ответ дан 8 December 2019 в 14:43
поделиться