LINUX.ORG.RU

Выпуск консольного текстового редактора Vis 0.9

 , ,


1

2

Vis – консольный текстовый редактор, сочетающий в себе модальное редактирование в стиле vi со структурными регулярными выражениями в стиле sam.

Основные особенности:

  • редактирование с помощью структурных регулярных выражений(1) основанное на командном языке Sam(2);
  • поддержка множественного выбора/курсоров;
  • подсветка синтаксиса обеспечивается с помощью грамматики синтаксических выражений, которую удобно выражать с помощью Lua LPeg;
  • API на Lua для расширения редактора(3).
  1. https://doc.cat-v.org/bell_labs/structural_regexps/
  2. https://doc.cat-v.org/bell_labs/sam_lang_tutorial/
  3. https://github.com/martanne/vis/wiki/Plugins

gif

>>> Подробности

anonymous

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 1)

neovis уже запилили?

flant ★★★
()

gif
by martanne 8 years ago

Неужели ничего не изменилось за 8 лет?

dataman ★★★★★
()

Лучше бы нормальный графический редактор сделали, а не все эти ваши Kate с Geany. 2024-й на дворе.

Это впору использовать детектором:

 - Здравствуйте, соискатель. Расскажите, каким текстовым редактором вы пользуетесь?
 - vim конечно же.
 - Извините, вы нам не подходите.
windows10 ★★★★★
()
Последнее исправление: windows10 (всего исправлений: 2)

текстовый редактор со структурными регулярными выражениями редактирование с помощью структурных регулярных выражений

Редактировать текст регулярками это клиника

fumanchez
()
Ответ на: комментарий от fumanchez

Редактировать текст регулярками это клиника

Справедливости ради, бывают ситуации когда не клиника, а нужно заменить сотню слов по определенной маске, при том не просто с вхождением подстроки, а еще и с невхождением другой подстроки.

windows10 ★★★★★
()

Все какие-то новомодные инструменты выходят, то поиска файлов, то регулярки..

Хоть бы в одной новости кратко описали в чём новизна идеи и отличие от привычного..

unDEFER ★★★★★
()

Вместо кошерного питона опять lua какая-то. Претензии к последней все сводятся к тому, что для lua нет нормальной ide, а значит разрабатывать плагины некому

rtxtxtrx
()
Ответ на: комментарий от windows10

Ситуации то бывают, но почти всегда корректная регулярка это тонна служебных символов с кучей экранировок типа \s+ и никогда так сразу не определишь, что же она делает и корректная ли она. А такую, чтобы не задевала лишнего, вообще практически невозможно написать.

fumanchez
()
Ответ на: комментарий от windows10

Лучше бы нормальный графический редактор сделали, а не все эти ваши Kate с Geany. 2024-й на дворе.

Давно Kate с Geany стали графическими редакторами?

wandrien ★★
()
Ответ на: комментарий от rtxtxtrx

что для lua нет нормальной ide

Чем не нравится ZeroBrane Studio?

dataman ★★★★★
()
Ответ на: комментарий от rtxtxtrx

Использовать IDE, чтобы писать плагины к текстовому редактору — это новый вид шизы, во всяком случае, такого на ЛОРе я ранее не видел.

Это буквальная реализация анекдота «спирт продал, а деньги пропил».

wandrien ★★
()
Последнее исправление: wandrien (всего исправлений: 1)

Лува Лува Лува ^.^

Но редактировение регулярками жесть конечно. Это надо прям проникнутся.
Я максимум чего могу это текст заменить или найти ибо самые банальные случаи только.

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
$ sudo pacman -S vis
[sudo] пароль для vadim: 
разрешение зависимостей...
проверка конфликтов...

Пакет (3)         Новая версия  Изменение размера  Размер загрузки

extra/libtermkey  0.22-3                 0,07 MiB         0,05 MiB
extra/unibilium   2.1.1-2                0,14 MiB         0,08 MiB
extra/vis         0.9-1                  1,16 MiB         0,33 MiB

Будет загружено:    0,46 MiB
Будет установлено:  1,37 MiB

:: Приступить к установке? [Y/n] 

Да, это вам не «утилита для поиска» на 4 мегабайта =)

wandrien ★★
()
Ответ на: комментарий от wandrien

То что прикольно спору нет. Но лично для себя вот примеров использования и не найду. У меня слишком скромные запросы или я просто не могу освоить ничего кроме базовых вещей :D

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

А еще там вот что есть:

$ ls /usr/bin/vis-* | xargs -L1 basename | xargs whatis
vis-clipboard (1)    - Read from or write to the system clipboard
vis-complete (1)     - Interactively complete file or word
vis-digraph (1)      - print Unicode character using mnemonics
vis-menu (1)         - Interactively select an item from a list
vis-open (1)         - Interactively select a file to open
wandrien ★★
()
Ответ на: комментарий от wandrien

Ну вот это уже может пригодится, как само по себе отдельное.

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от TomBOY

Кривая обучения уже перплюнула emacs?

Когда-то давно использовал vis, сейчас emacs. Мне не было сложно ни с тем, ни с другим.

Artsi0m
()
Ответ на: комментарий от windows10

Лучше бы нормальный графический редактор сделали

VS Code сделали нормально. С нормальной докой.

Ygor ★★★★★
()
Ответ на: комментарий от bernd

я пользовался тож одно время, потому что стыдно стало перед зумерами, когда запустился vim, и я не смог выйти, а их на вим дедок 45+ подсадил

rtxtxtrx
()

на командном языке Sam

Sam-то хоть серьёзный, или так, мимокрокодил?

Smacker ★★★★
()
Ответ на: комментарий от spqr

Интерфейс дурацкий, увы…

Толи дело у емакса, ни нормальных кейбилдингов из коробки, ни доки адекватной, ни конфига.

Ygor ★★★★★
()
Ответ на: комментарий от Ygor

Толи дело у емакса, ни нормальных кейбилдингов из коробки, ни доки адекватной, ни конфига.

Счаз вы нам тут расскажете.

ssh2 ★★★★
()
Ответ на: комментарий от windows10

А рефакторинг из IDE вам чем не нравится? Ctrl+F6 и все

tvldslv
()
Ответ на: комментарий от Ygor

Когда я тыкал это палкой биндинги там были ctrl+shift+что-то там.

Это странно, потому что обычно там просто аккорды, типа C-x C-c. То есть сначала жмёшь контрол икс, а затем контрол це.

Artsi0m
()
Ответ на: комментарий от spqr

emacs не надо устанавливать [на новую машину.]

Там есть TRAMP из коробки, можно редактировать файлы на удалённых хостах в своём редакторе на десктопе, подключаяся к тем новым машинам по ssh.

Artsi0m
()
Ответ на: комментарий от windows10

каким текстовым редактором вы пользуетесь

nano конечно же, ну что гожусь?

amd_amd ★★★★★
()

В новости нет чейнджлога, только вводная информация про структурные регулярные выражения и сам редактор.

То есть можно было бы это статьёй про структурные регулярные выражения оформить, наверное.

Artsi0m
()
Ответ на: комментарий от Evgueni

Команды для sed писать ещё сложнее чем просто регулярки, как и читать. Банальная задача вроде правки json - добавить поле либо изменить его значение (не ломая валидный файл, естественно) на sed практически не решается, а нужен он в основном в скриптах, т.е. должна быть какая-то защита от дурака и валидация входных данных, а это сразу ведёт к монструозным регуляркам. Его применение это максимум поправить конфиг с примитивным синтаксисом. Был бы он хорош, не было бы awk.

fumanchez
()
Последнее исправление: fumanchez (всего исправлений: 1)

Не верю в модальные редакторы, так как программировать ещё и редактором, пока ты программируешь, как-то когнитивно сложно. Иногда конечно нужно, но как основной режим, требующий переключений, оно больше мешает. Лучше использовать ассоциативную и мышечную память: вижу что нужно сделать — сразу без размышлений жахаю привычное комбо.

neumond
()
Ответ на: комментарий от fumanchez

Мне тут было нужно заменить урлы в объектах из MongoDB, как выяснилось с кучей вариантов структуры и вложенности. Сделал дамп в json, заменил с помощью sed и загрузил обратно.

Lucky ★★
()
Ответ на: комментарий от Lucky

Заменить строку А на строку Б можно миллионом способов. Если требуется что-то единоразово и прямо сейчас, то пойдёт и sed, но в шелл-скриптах строго jq.

fumanchez
()
Ответ на: комментарий от fumanchez

это сразу ведёт к монструозным регуляркам

Дуинг ит вронг во все поля, пайпы же религия запрещает или да?

должна быть какая-то защита от дурака и валидация 

Так это она и есть :) дуракам sed скорее противопоказан

Был бы он хорош, не было бы awk.

Лол, «был бы топор так хорош, не было б ящика с напильниками». Кто-то в скриптах запрещает пайпить одно с другим?

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

пайпы же религия запрещает или да?

Ты че регулярки в пайпы передаешь? Они как-то магическим образом устраняют необходимость эти регулярки писать?

Кто-то в скриптах запрещает пайпить одно с другим?

Из этого следует, что кто-то из этих двух хуже подходит для задач обработки текста и разумнее будет пользоваться чем-то полноценным.

дуракам sed скорее противопоказан

Ну исправь харек на хакер для user123, даже неважно sed’ом или awk’ом

{
  "user123": { "last_msg": "мама, я харек" },
  "user321": { "last_msg": "мама, я харек" },
  "user69": { "last_msg": "Я ХАКЕР" }
}
fumanchez
()
Ответ на: комментарий от rtxtxtrx

Если уровень вложенности один, то пойдёт, но это не замена вхождения, а sed вроде не может в lookaround

А заменять надо с помощью jq.

Я первый сказал

fumanchez
()
Ответ на: комментарий от fumanchez

Ты че регулярки в пайпы передаешь? 

Ты чо, не слышал, что выхлоп sed можно пайпить в sed? Или в awk? А не хотеть странного?

Из этого следует, что кто-то из этих двух хуже подходит для задач обработки текста

Это ты не подходишь для обработки текста ими, потому что хочешь комбаен, который за тебя подумает обо всем :)

slackwarrior ★★★★★
()
Ответ на: комментарий от fumanchez

Они как-то магическим образом устраняют необходимость эти регулярки писать?

Они становятся более простыми, например. И понимабельными спустя полгода, например

Ну исправь 

Ты новости с Job перепутал. А sed со швейцарским ножом.

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)

Vis – консольный текстовый редактор,

…созданный и развиваемый в рамках межпланетного чемпионата рептилоидов по красноглазию.

thesis ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.