Я хотел бы использовать SE-аромат уценки в моем emacs. Режим уценки по умолчанию имеет некоторые функции (обратные метки и код отступа, #
создает заголовок, а >
также изменяет шрифт), но я также хотел бы иметь:
*
сделать элемент списка, включая отступ.[foo](http://example.com)
отображаться как foo и открывать браузерhttp://example.com
при нажатии.
В идеале, я бы хотел, чтобы это отображалось в моем emacs как отображаемое Markdown. Например, если бы я написал:
## Header
* item 1
* item 2
while true; do echo foo; done
End of list and more code
while true; do echo bar; done
See [here](http://example.com) for details
Я хотел бы, чтобы это отображалось в самом emacs:
заголовок
- пункт 1
пункт 2
while true; do echo foo; done
Конец списка и больше кода
while true; do echo bar; done
Смотрите здесь для деталей
Можно ли этого достичь и, если да, то как?
xdg-open
или даже просто отображать целевой адрес при нажатии, но текст ссылки, когда нет: «Нажмите здесь », чтобы статьClick [here](http://example.com)
при нажатии. Просто быстрый способ беспрепятственного включения URL в мои текстовые документы.Ответы:
** РЕДАКТИРОВАТЬ: ** После написания этой статьи, кажется, что часть функций была непосредственно реализована в режиме уценки. Проверьте этот комментарий и ссылки в нем.
конфигурация
Есть два подхода, которые вы можете использовать.
Я объясняю здесь, как реализовать номер 2. Просто скопируйте весь код ниже в ваш файл инициализации.
Добавьте правила блокировки шрифтов
Эта переменная контролирует, как вы хотите, чтобы списки выглядели. Он добавляет пространство для отступа в списке и использует довольно точный пункт (если ваш шрифт может отображать его).
Это команда, которая на самом деле добавляет правила. Есть один для списков и один для ссылок.
Сделать ссылку редактируемой
Поскольку мы используем
display
свойство, чтобы скрыть часть ссылки, нам нужно сообщить font-lock, что оно должно стирать это свойство всякий раз, когда вы удаляете часть ссылки (таким образом, мы все равно можем ее редактировать).Мы также можем определить команду для ее простого редактирования, привязки
C-c C-l
, как в режиме org.(Необязательно) Настройте некоторые лица
Этого должно быть достаточно для очков, которые вы просили. Если вы хотите, чтобы ваш буфер выглядел еще больше как уценка SE, позвоните
и изменить то, что вы считаете нужным. Я сделал некоторые настройки самостоятельно, и вот что я получил.
Результаты
Вот что вы получите после первых двух наборов конфигураций:
Вот что вы получите после настройки лиц. Это спорно ли это выглядит лучше, я буду лично придерживаться одного выше.
источник
[foo]
и[foo](http://bar.com)
нажатием? Я не слишком обеспокоен деталями, но хотел бы способ легко отобразить URL при желании. На данный момент я должен удалить один из скобок, чтобы он появился. Я могу жить с этим, но я был бы заинтересован в лучшем способе."Unknown rx form
group-n '". Output of
--debug-init` здесь . Есть идеи?group-n X
простоgroup
. Это может все еще работать.Хорошее место для начала было бы,
markdown-mode.el
которое можно скачать отсюда .Этот режим не предлагает
org-mode
улучшение стиля, но он предлагает подсветку синтаксиса и наборcustomize
опций.Чтобы получить это украшение стиля, кто-то должен написать расширение для markdown-mode.el, реализующего font-face.
Большинство лиц org-mode.el определены в org-faces.el .
Кроме того, вы захотите взглянуть на то, как режим org визуально заменяет текст символами. Этот код находится в org-entity.el . Это код, который заменяет латекс
\pm
на ±.источник
*
обозначающие уровни, и изменяет размер заголовка в зависимости от того, где он находится в документе. Он также умеет красиво форматировать ссылки.