Предположим, что каждая строка файла содержит ровно одно слово.
Тогда последовательность команд vi, подобных этой, выполнит задачу:
:%s/.*/"&"/
^G1G300J:s/" "/","/g
I[^[A]^[
%s/.*/"&"/
делаетпоиск и замена в каждой строке, заключая в кавычки (введите RETURN для выполнения) ^G
- это CTRL-G - примечание о количестве строк (предположим, что оно показывает 300) 1G
перемещается на первую строку 300J
объединяет следующие 300 строк вместе с пробелами :s/" "/","/g
заменяет пробел между словами в кавычках (введите RETURN для выполнения) I[
добавляет скобку к началу строки.^[
- ESC для завершения ввода A]
добавляет скобку в конец строки.^[
- это ESC, чтобы завершить ввод - Готово!
В качестве альтернативы я начал совсем как jq
.Выполнение этой конкретной задачи из командной строки оболочки становится простым:
jq <wordlist -Rc '[inputs]'
или вызывается изнутри vi, работая непосредственно с редактируемым списком слов:
1G!Gjq -Rc '[inputs]'