LINUX.ORG.RU

[РЕШЕНО] Редактор с поддержкой выделения соответствующих if-fi , do-done и т.п. для bash

 , , , ,


1

1

Тут один проект так разросся, что несмотря на форматирование при вставке куска кода произошла ошибка, и fi оказался не там. Выловил, но пришлось использовать geany для сворачивания кода. Сразу говорю - я админ, и кодить люблю как собака палку. Но пришлось. «За неимением королев» как говорится…

Так вот. Я вспомнил юные годы, Delphi, C++, так где-то там я видел что встаёшь на скобку, а тебе соответствующая подсвечивается. Как это по-англицки не знаю, гугль не помогает. Коллеги говорят vscode, я говорю - н***й поделки Микрософт. Говорят Atom - он не разрабатывается (спасибо Микрософту, купившему гитхаб).

Всё что смог накопать - был когда-то плагин для gedit-a, но возможно для 2го, потому что то что скачал и положил текущий не увидел.

А ещё emacs-gtk. Он выделяет. И даже иногда по комбинации клавиш переходит на next-prev. Но крайне редко. И выделяет «в зоне видимости». А если встал на if 2мя страницами выше, то всё… Ну и у него своё поведение долбанутое, но с этим как-то можно матерясь смириться, или поотключать где со временем. Главное чтобы показывал что чему соответствует.

Господа практикующие программисты. Есть чего-то open-source с такими функциями? Ибо не для того я переходил на линукс в своё время, чтобы мелко-мягкий софт юзать.

================

Подошёл bluefish:

[РЕШЕНО] Редактор с поддержкой выделения соответствующих if-fi , do-done и т.п. для bash (комментарий)



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

Я работу работаю в VSCode (правильно ваши коллеги советуют), а петы разые пишу в neovim + treesitter + LSP для языка (LSP, кстати, тоже в Microsoft придумали, лол). Там весьма развитый фукционал.

Вот тут весьма годные базовые и продвинутые кофигурации для neovim. https://github.com/VonHeikemen/nvim-starter

Но кажется что мне, что для обозаченной цели будет достаточо чуть ли не дефолтного vim, в котором надо просто включить подсветку синтаксиса…

paddlewan
()

vim + искоробочный matchit или более продвинутый matchup

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

nmap D dV%
nmap Y yV%
bread
()

встаёшь на скобку, а тебе соответствующая подсвечивается. Как это по-англицки не знаю

Это называется bracket pair highlight или brace matching highlight.

Если нужна ещё и линия между скобками, то bracket pair guides.

Atom - он не разрабатывается (спасибо Микрософту, купившему гитхаб).

Дык код открыт, форкайте, разрабатывайте, кто мешает форкнуть, Микрософт под кроватью?

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

А юзаете гугловский софт as a service, ака поиск, почему не пользуетесь свободным поисковиком? Значит несвободным гулопоиском вы пользуетесь, а редактором от MS не хотите?

mydibyje ★★★★
()
Последнее исправление: mydibyje (всего исправлений: 3)
Ответ на: комментарий от einhander

vim-ом я пользуюсь для правки конфигов много лет. Однако выделить мышкой, скопировать-вставить удобнее в графических редакторах. neovim поставил - он просто запускает консоль с vim-ом. Ну я так и сам умею ))

c0unt0
() автор топика
Ответ на: комментарий от bga_

А майор чей? Если США - так я туда не собираюсь, нехай пишут. Вот Яндекс только через впн, если гугль не нашёл. А если чего-то вырезали по просьбе левообладателей - то duckduckgo. А вообще лучшей была nigma, жаль забили на неё. searx как-то хз, не сильно помогал, пробовал несколько раз его.

c0unt0
() автор топика
Ответ на: комментарий от mydibyje

Дык код открыт, форкайте, разрабатывайте, кто мешает форкнуть, Микрософт под кроватью?

Господа. Вы невнимательны. Я не кодер, я линукс-админ. Не девопс. И мне в буй не впилось форкать, тащить на себе какие-то пакеты через года, красноглазить от рассвета до засыпания в кресле. Это просто разовая работа. И всё. Она сделана.

Но! как человек предусмотрительный, на будущее я решил подстраховаться. С учётом своих предпочтений. И слегка удивлён, что кроме Микрософта, никто IDE под линукс нормальное не написал, и вы его, Микрософт, защищаете. Может ещё что они WSL сделали с установкой линухи в винду - это тоже гут? Как-то я пропустил момент, когда корпорация Зла стала друзьями кодеров. Ну оставим это на вашей совести. Наедитесь ещё от них.

А юзаете гугловский софт as a service, ака поиск, почему не пользуетесь свободным поисковиком? Значит несвободным гулопоиском вы пользуетесь, а редактором от MS не хотите?

Я разные поисковики пользую. Как и разное железо. Приход к опен-сорсу на 100%, как и к open-hardware невозможен, пока не произойдут изменения в обществе, zero-tolerance к блобам и копирайту, как к геям и гердосовым наркоманам. Но опять же, в нашей стране такое есть, а в Германии трансов в дет. сад приглашают работать.

За названия на английском благодарю, bracket pair guides - вообще отлично, такое тоже видел.

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

kate

Подсветка во многих редакторах есть. Надо либо подсветку Соответствующих, либо линии между ними, либо переход. Ну и у меня нет в системе KDE, с момента выхода 4го, и не будет. Хотя сейчас его вес уже ерундовский по сравнению с ёмкостями дисков. И они общие либы выделили qt-шные. Но всё равно залезать на их иглу не хочется. Слез в своё время и не жалею.

c0unt0
() автор топика
Последнее исправление: c0unt0 (всего исправлений: 3)
Ответ на: комментарий от ox55ff

Ну накосячь в скрипте и завали прод, зато не микрософт. Гнать из профессии.

Нету прода. standalone проект чисто мой. Острелялся, на будущее думаю для удобства прогу. Так хватало любого блокнота с подсветкой.

c0unt0
() автор топика
Ответ на: комментарий от vvn_black

Вам шашечки или ехать?

Чтобы биток х3 сделал. Лучше х5. Но экономика США идёт только вниз. И инвесторы деньги прижали.

c0unt0
() автор топика
Последнее исправление: c0unt0 (всего исправлений: 2)
Ответ на: комментарий от c0unt0

Также обратите внимание на проект CudaText

Выпуск редактора CudaText 1.188.0

Подсветка скобок в нём есть, хоть по умолчанию отключена

https://wiki.freepascal.org/CudaText_VS_other_editors#How_to_highlight_pair_brackets.3F

кроме Микрософта, никто IDE под линукс нормальное не написал

А они не под Линукс писали, а под браузер, а раз браузер запускается везде и плагины на жсе писать просто также как… сайты на пхп, плюс html/css/js позволяет выжать максимум бирюлек и свистоперделок из гуя, получили модный, кросс-платформенный редактор с кучей плагинов. End.

mydibyje ★★★★
()
Последнее исправление: mydibyje (всего исправлений: 2)
Ответ на: комментарий от c0unt0

А майор чей? Если США - так я туда не собираюсь, нехай пишут.

Гугловские кураторы из ЦРУ ещё подбрасывают в результаты поиска идеологически заряженную пропаганду на первые места. С прошлого года — официально.

И даже анонимный мета-поисковик от этого воздействия майора не спасает.

emorozov
()
Последнее исправление: emorozov (всего исправлений: 2)
Ответ на: комментарий от c0unt0

Однако выделить мышкой, скопировать-вставить удобнее в графических редакторах.

Во-первых, vim/neovim работу мышью тоже поддерживают, сюрприз. Во-вторых, если знать сочетания vim для копирования и вырезания, то это в разы быстрее и эффективнее, нежели пытаться точно попасть мышкой в нужное место.

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

В чём смысл тогда писать рабочие в VS Code, если всё настроено в neovim?

Хотя я тоже так делаю, у меня тоже всё настроено и treesitter, и LSP, но рабочие проекты делаю в PyCharm. Отчасти инерция, отчасти из-за отладчика, хотя очень редко им пользуюсь.

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

vim-ом я пользуюсь

Однако выделить мышкой, скопировать-вставить удобнее в графических редакторах.

Точно пользуетесь? Vim/neovim так тоже умеет.

neovim поставил - он просто запускает консоль с vim-ом

Как и для vim, для neovim нужно ставить графический интерфейс. По умолчанию это консольный редактор.

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

Во-первых, vim/neovim работу мышью тоже поддерживают, сюрприз. Во-вторых, если знать сочетания vim для копирования и вырезания, то это в разы быстрее и эффективнее, нежели пытаться точно попасть мышкой в нужное место.

Действительно, умеет.

Да знаю как бы, и не только их. Но как-то уж повелось, что vim - для редактирования чего-то из-под рута. Так же как окна Оперы с боковыми панелями и автозасыпанием вкладок через минуту - для ютуба и лонгридов. А поиск и всякая фигня - в окнах Хрома. В хромиуме был Тор. И Хромиум стал snap-овый. Вечная память… Приходится в Хроме «чёрный режим» включать плагинами с прокси.

c0unt0
() автор топика
Ответ на: комментарий от emorozov

Гугловские кураторы из ЦРУ ещё подбрасывают в результаты поиска идеологически заряженную пропаганду на первые места. С прошлого года — официально.

Не видел. Может ищу не то. Я новости в ТГ читаю, на доверенных каналах-агрегаторах. Так же как что и Википедию правят теперь поуехавшие русские из новостей узнал.

c0unt0
() автор топика
Ответ на: комментарий от mydibyje

Обратил, благодарю. Но как подсветку врубить так и не нашёл. Только вот это, но оно не помогло:

Dynamic highlight is enabled by option "lexer_dynamic_hilite":true. Additional limitation option "lexer_dynamic_hilite_max_lines":2000 allows the feature only in files which have not more than (option value) lines. This limitation is useful because dynamic highlight makes lexer parsing slower.
Feature enables to highlight some lexer 'tokens' dynamically (with default greenish background color), when caret changes position. It is required that lexer utilizes this feature. These lexers in the CudaText distro utilize this feature:
HTML
PHP, because it copies lot of HTML configuration
XML
Lua
CSS: rule highlights {}-block with background color when caret is inside
JavaScript: rule highlights {} brackets when caret is inside (here it is the same as another feature: pair-bracket highlighting)

bracket_highlight тоже включил, не подсвечивает даже для html-кодов типа

<h1><p>123</p></h1>

c0unt0
() автор топика
Последнее исправление: c0unt0 (всего исправлений: 2)
Ответ на: комментарий от bga_

Думаешь майоры между собой не общаются?

Нет. Только по терр-ам и ещё чему-то важному. Для остального есть СОРМ. И он очень хорошо трафик классифицирует, где торренты, где впн-ы, когда ip-телефония, где майнинг… Раскрытию нашего трафика также может способствовать установка «российских корневых сертификатов» на устройства, а не в виртуалку для 5 сайтов.

c0unt0
() автор топика
Последнее исправление: c0unt0 (всего исправлений: 1)
Ответ на: комментарий от bga_

Лучше сделай доброе дело подними у себя searx для других. Чтобы американец мог искать из под русского ip

Бог подаст )) А ко мне уже приходили (из-а «оптимизации налогов» директором фирмы), так что ещё раз незванные гости не нужны, из-за того что кто-то там наискал не то.

c0unt0
() автор топика
Ответ на: комментарий от troizet

Ссылка для скачивания, чтобы по гиту не лазать (не все это любят): https://pulsar-edit.dev/download.html#regular-releases

-Сделано на Electron-e, за которым может и будущее, но Баба Яга против. Это вытесняет системных программистов с рынка, а ядро на html не напишешь. И дрова не портируешь.

-Дольше запускается.

+/- Версия 1.ххх

Для CudaText (чтобы не пытаться понять из ЛОР-статьи, где скачать): https://sourceforge.net/projects/cudatext/files/release/1.192.0.0/

-Нет deb-пакета, desktop файл надо делать ручками и класть куда следует

+Быстро открывается, сделано на qt

+Загружает последний открытый файл

+/- Версия 1.ххх

c0unt0
() автор топика
Последнее исправление: c0unt0 (всего исправлений: 2)
Ответ на: комментарий от friedrich

Так а зачем? Расширения есть, пользуй не хочу

Ну это у кого знает что искать есть.

Как Советские энциклопедии - вроде и написано всё правильно, но понять ответ можно только зная какой нужно задавать вопрос ))

Atom поставил, он оказался как Pulsar, видимо пульсар - форк. И весят на ссд-ке примерно одинаково. Пульсар - 700 МБ, Атом - 600+.

Раньше винда 700 весила, 2000я что ли. А теперь 1но «веб-приложение».

c0unt0
() автор топика

Про vim уже написали. Но главное при

Тут один проект так разросся, что несмотря на форматирование при вставке куска кода произошла ошибка, и fi оказался не там

это всё-таки shellcheck. Форматирование и подсветка синтаксиса в редакторе не заменят полноценный статический анализатор.

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

всё работает.

Ну со скобками - да, я правда в условиях их не использую, чтобы не путаться. Поэтому и не заметил может. У меня так например:

if  test -f debian-binary && test -f control.tar.* && test -f  data.tar.* && ! ls -l | grep ^d > /dev/null; then ...
fi

Но надо-то не скобки выделять а вот энти вон if-fi, когда встаёшь на if.

c0unt0
() автор топика
Ответ на: комментарий от annulen

При активных изменениях файлов shellcheck не назапускаешься. Только если где-то упёрся - так там и так в консоли видно что не так, или в лог-файлах с отдельных команд.

c0unt0
() автор топика
Ответ на: комментарий от bga_

https уже взломали чтобы палить что люди ищут? Или это google или утка посылает тревожные сигналы спецслужбам стран?

Пока нет. Но всё равно левая активность не нужна.

c0unt0
() автор топика
Ответ на: комментарий от L29Ah

Разрешаю завернуть исходящие в Tor.

На РТК и Билайне он не работал, на местном провайдере с перебоями. В 22м году. Поэтому пришлось от него отказаться. Потом поменял провайдеров, так что хз как сейчас. Но психологически от него уже «отучили». Пользую vpn-расширения, всегда что-то рабочее есть.

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

так там и так в консоли видно что не так

Большинство ошибок в шелл-скриптах проявляются только тогда, когда интерпретатор доходит до той самой строчки с ошибкой. Особенно опасны ошибки типа «забыл кавычки вокруг подстановки переменной», когда код ломается от неожиданно появившегося пробела в имени файла или чего-то подобного

annulen ★★★★★
()