Целевой стиль форматирования, которого вы пытались достичь, не всегда возможен (но да, это возможно сложнее), но вы также можете решить свою проблему простым трюком. Я обсуждаю оба здесь.
Почему это не возможно напрямую:
Если вы перейдете в каталог Notepad++
в Windows, вы найдете файл с именем SciLexer.dll
. Этот файл был построен из исходного исходного кода Notepad++. То, как коды Bash
обнаруживают команды heredoc
, жестко запрограммировано в этом файле. И этот файл не редактируется пользователем напрямую.
Тогда как редактировать SciLexer.dll
:
Поскольку мы знаем, что Notepad++
является программным обеспечением с открытым исходным кодом, мы можем создать собственный SciLexer.dll
из их исходных кодов. Но для этого нужно очень хорошо знать язык программирования, иначе он мог все испортить. Здесь вы найдете полный исходный код Notepad++
и SciLexer.dll
вместе с подробными инструкциями по их сборке. Итак, если вы хорошо разбираетесь в программировании, вы наверняка можете просмотреть их учебник и найти файл с именем LexBash.cxx
в каталоге scintilla
> lexers
который вы можете редактировать, чтобы удалить часть обнаружения heredoc
и восстановить файлы в соответствии с этот учебник. Наконец вы получите новый SciLexer.dll
. Если вы замените его SciLexer.dll
в каталоге Notepad++
, он будет работать как шарм.
Теперь проблема в том, что если вы не можете делать все эти вещи из-за недостатка знаний в области программирования или нехватки времени, то есть ли какой-то другой путь !!!! Может быть и нет, но я нашел трюк, который можно использовать для частичного решения вашей проблемы.
Будет ли это работать так, как вы думали:
Как вы заявили:
Я попытался зайти в « Settings > Style configurator > Language --- Bash
и там каким-то образом полностью удалить ЗДЕСЬ DELEM && ЗДЕСЬ Q, но я не нашел такой способ в графическом интерфейсе.
Очевидно, что в графическом интерфейсе нет возможности удалить эти атрибуты, но мы можем удалить эти атрибуты. Для этого в Windows вам нужно перейти в этот каталог:
%AppData%\Notepad++
(скопируйте и вставьте каталог в адресную строку Windows Explorer)
В этом каталоге вы найдете несколько xml
файлов. То, что нам нужно, это stylers.xml
. Итак, найдите и откройте его с помощью Notepad++
или других хороших инструментов форматирования и редактирования текста, так как Windows Notepad по умолчанию портит форматирование. В этом файле ищите bash
. Вы найдете что-то вроде этого:
Это все свойства стилей внутри файлов Bash
. В последних двух строчках рассказывается о HERE DOC
. Так что вы можете подумать об удалении этих строк и сохранении файла. Таким образом, вы больше не будете видеть выше две опции, которые вы упомянули в графическом интерфейсе Notepad++. Но не делай этого.
На самом деле они удалят стиль форматирования HERE DELIM
и HERE Q
из сценариев Notepad++
Bash, но не решат вашу проблему. Потому что, как я уже говорил ранее, стиль форматирования heredoc
жестко запрограммирован в SciLexer.dll
. Таким образом, когда вы удаляете эти атрибуты, Notepad++
может по-прежнему обнаруживать команды heredoc
и, поскольку он не найдет подходящий стиль форматирования, он переопределит стиль по умолчанию, что означает, что все строки будут черного цвета. Таким образом, ваша проблема не может быть решена так, как вы думаете.
Простой трюк, который может частично решить вашу проблему:
Notepad++ предоставляет доступ к стилю форматирования почти 52 языков программирования, но все они не нужны всем. Итак, мой трюк - отредактировать другой язык с похожим стилем форматирования для работы с файлами Bash
.
Я обнаружил, что NSIS
использует почти тот же стиль форматирования, что и Bash
. Таким образом, во время редактирования или записи .sh
или других файлов Bash
после открытия файла в Notepad++
просто выберите язык как NSIS
.
Это сделает свое дело, но вы можете видеть, что ключевые слова все еще черные, которые мы должны быть окрашены в синий цвет. Поэтому мы должны заменить ключевые слова NSIS
на ключевые слова Bash
. Для этого снова перейдите в каталог:
%AppData%\Notepad++
(скопируйте и вставьте каталог в адресную строку Windows Explorer)
На этот раз нам нужен файл с именем langs.xml
. Так что откройте его с помощью Notepad++
. Ищите bash
. Вы найдете что-то вроде этого:
Скопируйте эту часть куда-нибудь еще. Теперь снова ищите nsis
в этом файле langs.xml
. Вы найдете что-то вроде этого:
Теперь, наконец, замените часть nsis
ранее скопированной частью, как показано ниже:
И сохраните файл. Теперь перезагрузите Notepad++ и посмотрите изменения. Надеюсь, это поможет вам несколько. Проблема, которую вы найдете в этом методе, состоит в том, что переменная со знаком $
не дифференцируется с другим цветом. Но, может быть, это не большая проблема. Надеюсь, поможет. Приветствия.