В SublimeText3 binary_file_patterns
исключает поиск файлов в файлах или нечетком поиске (Goto Anything), а index_exclude_patterns
предотвращает индексацию файлов.
Поскольку мы знаем, что неиндексированные файлы не могут быть найдены, и предполагая, что неотслеживаемые файлы не нужно индексировать, каковы различия и последствия использования одного над другим?
Sublime поддерживает каталог всех известных файлов на основе папок, которые в данный момент открыты в окне/проекте, и этот каталог файлов используется для заполнения списка файлов Goto Anything
, а также списка файлов, которые ищутся при выполнении Find in Files
.
Вы можете управлять тем, что отображается в каталоге, используя настройки file_exclude_patterns
и folder_exclude_patterns
, чтобы файлы не отображались на боковой панели (и, следовательно, в каталоге). Как вы упомянули, вы также можете использовать binary_file_patterns
, чтобы указать, что файлы должны по-прежнему отображаться на боковой панели, но не должны предлагаться на панели Goto Anything
или выполнять поиск по Find in Files
.
В дополнение к вышесказанному, пока index_files
включен, в дополнение к каталогу файлов Sublime также запускает процесс индексации файлов на боковой панели.
Индексатор работает в фоновом режиме с использованием некоторого количества потоков (управляемых index_workers
) и, по сути, загружает каждый файл на боковой панели, применяет соответствующее определение синтаксиса, а затем собирает список символов, помеченных как те, которые должны отображаться в индексе. (это настройка для каждого синтаксиса). Параметр index_exclude_patterns
указывает файлы, которые не следует индексировать, даже если они отображаются на боковой панели.
Индекс используется для включения функций Goto Definition
/Goto Reference
/Goto Symbol in Project
; это буквально просто список всех проиндексированных символов, в каких файлах они появляются и где в этом файле они появляются.
Ваше предположение о том, что неиндексированные файлы невозможно найти, неверно; файлы, которые не проиндексированы, могут по-прежнему отображаться на боковой панели и быть найдены с помощью Goto Anything
, они просто не вносят символы в индекс, что означает, что вышеуказанная функция не будет отображать содержимое этих файлов, но вы все равно можете открывать и искать их.
Итак, в целом последствия этих двух действий таковы:
Если вы хотите, чтобы файл отображался на боковой панели, но вы не хотите выполнять поиск внутри него или разрешить его открытие с помощью Goto Anything
, добавьте его в binary_file_patterns
.
Если вы хотите, чтобы файл отображался на боковой панели, но не добавлял символы в индекс, добавьте его в настройку index_exclude_patterns
.
Файлы могут отображаться в обоих настройках, и в этом случае вы можете видеть их на боковой панели, но Sublime делает вид, что их там нет, для целей всех вышеперечисленных функций.