LINUX.ORG.RU

Программы на Rust, которые стоит попробовать. Часть №0.

 , ,


3

5
  • jless

    jless - это TUI просмотрщик JSON файлов.

  • eza

    eza - это мощный заменитель ls + tree с подсветкой и текстовыми значками (для которых нужен Nerd Font).

  • yazi

    yazi - это мощный TUI файловый менеджер с предпросмотром картинок, видео и PDF файлов. Текстовые форматы в области предпросмотра отображаются текстом. Всё это позволяет быстрее ориентироваться где что.

  • elio

    elio - это альтернатива yazi.

  • fish 4

    fish 4 - это мощная альтернатива bash с быстрыми автодополнениями и встроенной командой math, которая мощнее bc.

  • Wezterm

    Wezterm - это гибкий и мощный эмулятор терминала с конфигом на Lua, который перезагружается динамически после правок. При этом он также поддерживает полноценную графику наравне с kitty (не исключительно через sixel).

  • Niri

    Niri - это мощный и активно развивающийся скролл-тайлинговый Wayland-композитор. Рабочие столы расположены вертикально, при этом на любых рабочих столах при необходимости можно делать прокручивающуюся (горизонтально) ленту из окон.

  • ripgrep

    ripgrep - это мощная альтернатива grep'а заточенная на поиск в директориях, которая по дефолту учитывает правила gitignore, пропускает скрытые файлы и директории, а также пропускает бинарные файлы (это отключается через опции).

  • bat

    bat - это мощная альтернатива less с подсветкой исходников и номерами строк (также отключается через опции).

  • bottom

    bottom (команда - «btm») - это мощный TUI системный монитор.

  • difftastic

    difftastic - это мощная альтернатива diff для оценки изменений.

  • git-delta

    git-delta - это мощная альтернатива diff, которая через настройки git'а встраивается в его работу.

  • bookokrat

    bookokrat - это просмотрщик PDF и EPUB для эмуляторов терминала, которые полноценно поддерживают графику (как kitty и Wezterm). Да, он рендерит прямо в эмуляторе терминала не только текст, но и картинки.

Enjoy!

Перемещено hobbit из desktop

★★★★★

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

Так-то есть ncdu для детального просмотра «кто сожрал всё место»

С версии 2.0 для него уже нужна тема «Программы на Zig, которые стоит попробовать». :)
И свежим Zig уже не компилируется.

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

тем кто пользуется yazi :

у него история позиций просмоторщика файлов на сколько точно - крч интересует просмоторщик файлов с логом мест

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

Так не все читают reddit (хотя его читают тысячи людей, которые потом ставят эти программы).

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

Программы на Rust’е начали появляться относительно недавно, и многие про них ещё не в курсе.

Как я уже заметил, по моему о программе следует быть в курсе если она полезная. А на расте она или на бейсике - дело десятое.

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

и да и да но нет

есть флёр обусловленный традициями тех или иных экосистем

простейшие корреляции

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

А мне это видется, как будто вы пишите про программы на расте, а полезные они или бесполезные устанавливаете по ходу дела. У вас телега впереди лошади стоит.

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

Обновляю я как-то Gentoo, и тут начинает качаться и ставиться LLVM. Я делаю o_0. Оказалось, что ncdu переехал на zig, из-за чего начал ставиться компилятор, который потянул за собой весь LLVM.

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

Пардоньте, но если не фанбойствовать устанавливать строгие эмоциональные связи с нематериальными объектами, то зачем мы все здесь вообще собрались?

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

Пардоньте, но если не фанбойствовать устанавливать строгие эмоциональные связи с нематериальными объектами, то зачем мы все здесь вообще собрались?

Мне казалось мы уже не раз дискутировали. Да, пусть это звучит странно, и даже немного глупо, но я здесь учусь. Учусь тому, чему в другом мире научиться будет намного сложнее. Нет, я сюда хожу не фанбойствовать, хотя может это именно так и выглядит.

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

Вроде коммиты есть, но релизов уже 2,5 года не было, да и автор вроде уходил из проекта.

Я в генту просто в ебилде коммиты обновляю (ну и в CARGO все зависимости засунул из cargo.lock, чтобы не париться). Стал пошустрее и на баги больше не натыкаюсь, думаю с foot+zellij назад на wezterm вернуться.

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

думаю с foot+zellij назад на wezterm вернуться.

Попробуй Ghostty, я для себя его смог идеально прямо настроить. Единственный баг, если предпросмотр картинок через ueberzugpp и kitty-протокол делать, то при быстром переключении картинок вперемешку с другими файлами может мусор в терминал вылезти. Но этот баг есть и в Wezterm. Причем в Kitty всё работает отлично, но он меня по другим причинам не устраивает.

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

Попробуй Ghostty, я для себя его смог идеально прямо настроить.

Надо глянуть, раньше он мне чем-то не понравился, но он тогда еще совсем свежий был.

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

Мне довольно важно табы и меню по ПКМ, где есть пункт Скопировать. Я часто лениво просматриваю выхлоп и не хочу до клавиатуры тянутся. В Kitty мне этого меню не хватало.

В Ghostty единственно что пришлось патчить, это создание вкладки даблкликом, хренов GTK-шный таббар при даблклике только окно максимизирует. FR делать я что-то постеснялся, поэтому запатчил у себя, благо Gentoo.

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

Мне довольно важно табы и меню по ПКМ, где есть пункт Скопировать. Я часто лениво просматриваю выхлоп и не хочу до клавиатуры тянутся.

У меня в терминалах авто-копирование в clipboard. Если бы не это, то повесил бы просто копирование выделенного текста на нажатие правой кнопки мышки в kitty (я в этом меню в терминале больше ничем не пользовался).

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

Попробуй Ghostty…

Сыроват похоже всё еще (Ghostty 1.3.1 пробовал). При работе со сплитами (создание/закрытие) получал ситуацию, когда как бы пропадает активный сплит и перемещение между ними с хоткеев перестаёт работать, пока не нажму энтер. А один раз получилось, что я выполнял команды в каком-то несуществующем сплите за экраном (видел появление команды в табе).

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

Сыроват похоже всё еще (Ghostty 1.3.1 пробовал).

Они релизы что-то вообще ленятся бампать, приходится git pull --rebase origin main делать и zig-bin-0.16.0 build -Doptimize=ReleaseFast.

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

Смущают такие серьезные баги, которые вылезли за пять минут. Создал свои конфиги для wezterm, ghostty, kitty, потестил. Меньше всего проблем оказалось с kitty, только немного странное решение автора отказаться от функции зума окна-сплита не через смену раскладки сплитов смутило.

С ghostty у меня было ощущение, что он в первую очередь под мак разрабатывается и тестируются, а под линуксом у меня всегда какие-то косячки вылазят.

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

Ну, думаю у нас разные совершенно способы работы с терминалом «функции зума окна-сплита не через смену раскладки сплитов», я и слов-то таких не знаю. А вот предпросмотр картинок(да и вообще всего включая pdf) через vifm и ueberzugpp это мне важно, меню по ПКМ, новая вкладка по даблклику на панели, поиск выделенного в гугле по Ctrl-Shift-F.

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

…я и слов-то таких не знаю.

Если разбить на несколько окон терминал, то раскрыть одно такое окно на полный экран. В Kitty автор предлагает это делать через активацию/деактивацию режима, когда активное окно на полный экран, а остальные не видно. Почти тоже самое, но из-за особенностей реализации нельзя без написания хитрых костылей сделать так, чтобы при открытии нового окна (нового разбиения) китти автоматически вышел из этого режима.

А вот предпросмотр картинок(да и вообще всего включая pdf) через vifm и ueberzugpp это мне важно, меню по ПКМ, новая вкладка по даблклику на панели, поиск выделенного в гугле по Ctrl-Shift-F.

Примерно так же. Только в меню по ПКМ я никогда ничего кроме копирования и вставки не использовал, поэтому просто эти функции у меня на мышке. В kitty из доп. функций использую еще разные буферы для копирования/вставки. Иногда сохраняю что-нибудь в такой отдельный буфер, если подозреваю, что по какой-то причине придется несколько раз это вставлять.

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

Программы не надо пробовать. Надо брать под задачу.

А как брать под задачу, если не пробовать? Да и отношение к задаче часто меняется при обнаружении новых возможностей.

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

Обычная схема такая: мне надо сделать X, я вбиваю в гугл как сделать X, гугл (сейчас ИИ от гугла) говорит бери такой-то инструмент и делай. 99,999% задач этим покрываются. А пробовать все программы ну такое. Я не фанатик Linux-а или санкций (пользуюсь всеми ОС и любым софтом, не только опенсорсным) и программ доступных мне соответственно не полторы штуки а гораздо больше. Пробовать их все, ну такое, жизни не хватит. С 1970 года за 56 лет очень много софта сделали, некоторый живёт и развивается прямо с тех времён. Некоторый даже чуть старше, но того почти не встретить, если не знать что искать.

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

А пробовать все программы ну такое

Много лет назад понадобилась программа, у которой в зависимостях была какая-то неизвестная мне fzf. Стало любопытно, попробовал. Обнаружил новый подход к привычному worflow, простой как число два. С тех пор использую в 99% случаях. И даже для просмотра кино нередко вызываю mpv "$(fd -e mp4 | fzf)" + набираю название, вместо того, чтобы в торрентопомойке через mc руками каталог с фильмом искать.

Что мне надо было спросить у Гугла, чтобы он мне ее подсказал? «Расскажи о какой-нибудь программе, которая поможет мне повысить эффективность работы в консоли на 99%»? И что он ответит? «Извините, но свести выбор к одной программе невозможно. Зато вот список программ, которые вам стоит попробовать».

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

Пробовать их все, ну такое, жизни не хватит.

Так не надо все, а те что заинтересовали. В том же эмуляторе терминала столько времени приходится проводить, что он как обувь, примерять надо. Вот вроде foot+zellij, wezterm, ghostty, kitty, все должны годиться для выполнения моих задач, но все в какой-то степени натирают при использовании. А пользоваться после них каким-нибудь тормозным konsole просто раздражает.

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

Ну так давно уже без ctrl-r, куда забиндин fzf уже сложно

Так дело давно было.

Но fzf это уже go а не rust.

Я не не говорю, что руст.

Я писал в ответ на то, что программы не надо пробовать, а искать под задачу. Глобально говоря, если бы все люди так размышляли, то мы так до сих пор в пещерах бы и сидели.

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

А я долго работал на разных ПК, в том числе в проде и там где у меня не было полноценных прав или возможностей делать что я хочу иногда из соображений ИБ, иногда из соображений чтоб любой другой линуксоид разобрался, короче не админ локалхоста. Вот потому хотя fish или даже zsh лучше, нет смысла его использовать, если реально работа с линуксами связана, а не чисто дома для себя. По поводу помоек надо использовать fuzzy поиск, но по индексированным файлам (привет балу, непоймуки и зейгтаймам или как он там). Правда не прижилось почему-то нормально. Видимо потому что умной строки ввода в DE так и не сделали. zoxide это очень плохо. Я люблю предсказуемость. Тем более у меня много папок с названиями test и tmp. Если я что-то делаю и хочу проверить какую-то идею, то в папке с файлами с которыми я что-то делаю всегда создаю папку test и провожу там тестирование этой идеи. Иногда результаты остаются, если я понимаю что могу забыть или захотеть к ним вернуться. tmp это примерно тоже самое, но когда я точно удалю результаты когда-нибудь.

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

Вот потому хотя fish или даже zsh лучше, нет смысла его использовать, если реально работа с линуксами связана, а не чисто дома для себя.

У меня работа с линуксами связана и я использую fish, меня всё устраивает.

По поводу помоек надо использовать fuzzy поиск, но по индексированным файлам (привет балу, непоймуки и зейгтаймам или как он там).

fzf шикарно работает для поиска по истории команд. Можно найти нужную за секунду. Также ищу по проектам в директории из редактора.

zoxide это очень плохо. Я люблю предсказуемость.

Я использую связку zoxide+fzf. Набираю zi и через fzf за пару секунд нахожу нужную директорию из списка.

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

Что ж вы такое делаете, что у вас эмулятор терминала тормозит… Читаете текст со скоростью мегабайт жа секунду?

Порой просто grep тормозит на большом выводе, или символы с задержкой вбиваются в редакторах. А какой-нибудь tmux/zellij в konsole это просто лагалово. К отсутствию тормозов быстро привыкаешь.

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

Набираю zi и через fzf за пару секунд нахожу нужную директорию из списка.

Это что такое? fzf и так по умолчанию диры и файлы ищет.

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

А какой-нибудь tmux/zellij в konsole это просто лагалово.

Поглядел что я юзаю в качестве терминала, какой то

C+G /usr/bin/ptyxis 30MiB

И судя выхлопу nvidia-smi он юзает gpu+cuda.

anonymous
()

Программы на Rust, которые… ЧМО

Который раз так читаю в трекере.

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

Это что такое? fzf и так по умолчанию диры и файлы ищет.

fzf - поиск. zoxide - запоминает и ранжирует по посещаемости директории.

Т.е. zi (zoxide + fzf) поиск по этим директориям, позволяет найти нужную вбив меньше вводных данных.

altwazar ★★★★★
()
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария