BarD wrote: Tue 27 May, 2025 14:40
Например(без кавычек): "base;base{01-10}"
Я старался сделать поведение, как у оригинального плагина. Он как и мой скрипт даёт следующий результат:
base;base01
base;base02
base;base03
base;base04
base;base05
base;base06
base;base07
base;base08
base;base09
base;base10
BarD wrote: Tue 27 May, 2025 15:09
Но ок - принимаю за фичу.
По-видимому, всё, что снаружи фигурных скобок интерпретируется как "неизменяемая часть" (по терминологии хелпа).
Однако, если фигурных скобок нет совсем, то подход другой - это перечисление с разделителем точка-с-запятой.
base;base2 - создает 2 каталога - логично.
base;base{01-05} - не создает каталоги: base, base01, base02, base03, base04, base05.
По моему не логично.
Но если цель была повторить поведение старого плагина, то ... может кому-то именно такое поведение нужно.
BarD wrote: Tue 27 May, 2025 15:09
Но ок - принимаю за фичу.
По-видимому, всё, что снаружи фигурных скобок интерпретируется как "неизменяемая часть" (по терминологии хелпа).
Однако, если фигурных скобок нет совсем, то подход другой - это перечисление с разделителем точка-с-запятой.
Собственно реализация описана в моём предыдущем сообщении. Я изучал поведение плагина и пришёл к такому алгоритму.
Однако это не означает, что в будущем всё обязано остаться как сейчас.
BarD wrote: Tue 27 May, 2025 14:40
Перечисление и диапазон одновременно не поддерживаются?
Например(без кавычек): "base;base{01-10}"
Попробуйте с вложенными скобками: {base;base{01-10}} — в bash аналогичная конструкция (с заменёнными операторами) срабатывает ожидаемо.
Скрипт по {base;base{01-10}} создает только папку base;base01-10}.
Для bash ожидаемый результат дает команда: mkdir base base{01..10} - кстати, исходя из принципа построения именно этой команды и её результатов, у меня и возник первоначальный вопрос.
Спасибо за скрипт. Давно хотел что-то подобное.
Два пожелания.
После создания директорий, становиться на вновь созданную "корневую" директорию. Если их несколько, то на первую. То есть при задании abc\{1-10} становиться после выполнения скрипта на директорию abc.
Второе пожелание более сложное и персональное.
Хотелось бы иметь шаблоны из которых можно было бы выбирать создаваемые директории. Например, создаем директорию с названием поездки и дальше есть стандартый набор поддиректорий Documents, Photo, Video, Music. Хотелось бы иметь имя для этого шаблона и всталять его в строку для генерации директорий. Другой пример, создается директория год (2025) и в ней поддиректории месяца.Потом в 2026 году не надо будет снова перечислять месяца.
Last edited by Volodya on Wed 28 May, 2025 04:53, edited 1 time in total.
local fp = io.open(FName:match(".+"..DIRSEP)..fname)
if fp then
- for line in fp:lines(fp) do
+ for line in fp:lines() do
local name,alias = line:match(patLine)
if name and alias ~= "" then map[name:lower()]=alias end
end
Last edited by tstr on Fri 30 May, 2025 18:36, edited 1 time in total.