Я собираюсь частично не согласны с утверждением, что вы можете делать то, что вы после этого. Вы можете только частично выполнять то, что вам нужно, и это немного взломать.
В принципе, вы можете установить разные шрифты для разных лиц. Таким образом, если текст, который вы хотите отобразить в шрифте с фиксированной шириной, имеет другое определение лица, вы можете изменить шрифт с пропорционального шрифта на шрифт с фиксированной шириной. По крайней мере, это теория.
К сожалению, результаты, как правило, меньше, чем вы надеетесь.
Проблема в том, что большинство режимов не определяют грани для всех возможных символов. Лица, как правило, используются только для того, чтобы сделать что-то выделяющееся, и это имеет тенденцию означать что-то особенное в этом режиме - заголовок, бит синтаксиса и т. Д.
Проблема будет с его «лицом по умолчанию» - используется лицо когда другое лицо не указано. По умолчанию лицо не зависит от режима. Если вы установите грань по умолчанию моноширинному шрифту, этот шрифт будет использоваться во всех режимах, а не только в «простых» символах в режиме уценки. Если какой-либо из ваших шрифтов в режиме уценки пропорционален, вы обнаружите, что выравнивание в отступе не будет выглядеть последовательным. В зависимости от структуры содержимого буфера это может быть или не быть проблемой.
Лично я отказался от использования шрифта пропорционального шрифта в качестве шрифта по умолчанию под emacs давным-давно и вместо этого установил вместо него шрифт с фиксированной шириной по умолчанию и затем задал пропорциональные шрифты для некоторых специальных целей, таких как org -модулировать заголовки.
некоторые вещи, которые вы можете попробовать какую мощь работу, будет
Файловые локальные переменные для настройки шрифтов только в уценки filtes. Я не пробовал это, но вы можете использовать локальные переменные файла. Вероятно, вы захотите создать шаблон уценки, который устанавливает это в новых методах уценки.
Сделать буфер переменных лица локальным. Возможно, вы сможете определить функцию привязки режима уценки, которая делает локальные переменные буфера локальными и устанавливает их на шрифт фиксированной ширины.
определение лица может использовать наследование, так что теоретически, если все лица используются унаследуют от лица по умолчанию, и вы делаете локальные переменный файл или буферу локальные переменным, чтобы установить лицо по умолчанию, то все другие лица должны унаследуют это определение, поэтому вам не нужно делать это для каждого шрифта в буфере.
'markdown-mode +' показывает '(Нет совпадений) ". «markdown-mode» будет соответствовать. Будет ли этот режим «достаточным»? Я думаю, что я установил его уже некоторое время назад (и не очень понравилось). – towi
@towi: Единственное, что нам нужно в этом режиме - это блокировка шрифтов. У вас уже должно быть много. Извините, если вам это не нравится, но какой-то режим должен быть включен, чтобы выполнить специальную блокировку шрифтов. Режим - это просто код, который можно обрезать, чтобы предоставить только части синтаксиса, но он немного продвинут. Если у вас есть что-то о режиме, в частности, который вы хотите отключить, задайте новый вопрос об этом! – progo