Это связано с тем, как работает функция glob()
: одиночный символ звезды
не соответствует скрытым файлам по дизайну. В оболочке стиль по умолчанию
можно изменить на это (shopt -s dotglob
в Bash), но это невозможно
в Vim.
Однако есть несколько возможностей решить проблему. Первый и самый
очевидно, чтобы скрыть скрытые и не скрытые файлы по отдельности, а затем объединить
Результаты.
:let backupfiles = glob(&backupdir.'/*')."\n".glob(&backupdir.'/.[^.]*')
(будьте осторожны, чтобы не получить .
и ..
вместе со скрытыми файлами.)
Другой и, возможно, более удобный способ (но менее переносимый) заключается в использовании
расширение backtick в вызове glob()
.
:let backupfiles = glob('`find '.&backupdir.' -maxdepth 1 -type f`')
Это вынуждает Vim выполнять команду внутри обратных кавычек, чтобы получить список
файлы. Команда find
выводит список всех файлов (-type f
), включая скрытые,
в указанном каталоге (-maxdepth 1
запрещает рекурсию).