TGViewer
Channel Public Channel
Инструменты программиста

Инструменты программиста

@prog_tools

Полезные инструменты для программистов — бесплатные и платные

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Регистрация в перечне РКН: https://tprg.ru/mX0S
Subscribers
12.9K
Photos
1.7K
Videos
158
Links
2.1K
Recent Posts 20 shown
Post #2975 451
Как переходить между каталогами с zoxide

zoxide запоминает, какие каталоги вы открываете чаще. Команда z foo переводит в каталог с самым высоким рейтингом среди совпадений по foo. Обычные переходы тоже работают: z .. поднимает на уровень, а z - возвращает в предыдущий каталог.

Для неоднозначного запроса есть zi foo: команда открывает интерактивный выбор через fzf. Например, так можно выбрать нужный каталог, если одному запросу соответствуют несколько путей.

Установить утилиту можно командой cargo install zoxide --locked, затем её нужно подключить к используемой командной оболочке. В репозитории zoxide есть инструкции для Bash, PowerShell и других основных оболочек и платформ.
Post #2974 549
Как искать по коду с ripgrep с учётом .gitignore

ripgrep (rg) рекурсивно ищет строки по регулярному выражению. По умолчанию утилита учитывает .gitignore и .ignore, пропускает скрытые каталоги и бинарные файлы. Поэтому выдача сосредоточена на файлах, которые не исключены правилами проекта.

Для точечного поиска rg -tpy foo оставит только файлы Python, а rg -Tjs foo исключит JavaScript. Если нужно проверить вообще всё, rg -uuu отключит автоматические фильтры.

В тесте на собранном исходном коде ядра Linux ripgrep выполнил один и тот же поиск за 0,082 секунды против 0,273 секунды у git grep. README репозитория ripgrep на GitHub предупреждает, что одного теста недостаточно; там же есть другие сравнения, способы установки и руководство пользователя.
Post #2973 645
Три вещи, которые невозможно объяснить человеку, родившемуся после 2005-го: зачем нужен был счётчик посещений, почему интернет нельзя было включить одновременно с телефоном и что такое «превед медвед». Всем остальным объяснять ничего не надо — просто пройдите анкету к 25-летию SpaceWeb.
Post #2972 689
Task: кроссплатформенный запуск задач проекта

Task — быстрый инструмент сборки для повторяющихся команд. Он поставляется одним бинарным файлом без зависимостей, а один и тот же Taskfile работает на Linux, macOS и Windows. Поэтому команды проекта не придётся отдельно адаптировать под систему каждого разработчика.

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

На сайте Task перечислены способы установки через Homebrew, Snapcraft и Scoop. Если команде нужен одинаковый набор локальных команд на разных ОС, начните с генерации кода или запуска линтера.
  • ❤ 2
Post #2971 742
Как запускать и тестировать HTTP-запросы с Hurl

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

Запросы связываются в сценарий: например, сначала получить HTML-страницу, извлечь из неё CSRF-токен, затем подставить значение в форму входа и ожидать ответ со статусом 302. Hurl также работает с HTML, REST, SOAP, GraphQL и API на основе XML или JSON.

На официальном сайте Hurl есть установка, справочник, примеры и учебный раздел: от первого файла и проверок ответа до цепочек запросов, отладки, захвата значений и раздела о безопасности.
hurl.dev Hurl - Run and Test HTTP Requests Hurl, run and test HTTP requests with plain text and curl. Hurl can run fast automated integration tests.
  • 👍 2
  • ❤ 1
Post #2970 800
Tokei считает строки кода и отделяет их от комментариев

Tokei — утилита командной строки для статистики по репозиторию. Она группирует файлы по языкам и отдельно считает весь объём строк, код, комментарии и пустые строки. Поддерживается более 150 языков, включая разные расширения файлов.

Установить Tokei через Cargo можно командой cargo install tokei. Затем запустите tokei ./project: утилита обойдёт вложенные папки и учтёт правила из .gitignore и .ignore. Ключ --files добавит статистику по каждому файлу, а --sort code отсортирует языки по объёму кода.

Так можно быстро оценить состав незнакомого репозитория и найти языки, на которых написана его основная часть. Все варианты установки и параметры запуска собраны в репозитории Tokei.
  • ❤ 1
Post #2969 873
Как искать файлы с fd и запускать команды по результатам

fd ищет файлы и каталоги рекурсивно, но предлагает более короткий синтаксис, чем find. Например, fd netfl находит имена с фрагментом netfl, а fd -e md оставляет только Markdown-файлы.

Утилита распараллеливает обход каталогов, не показывает скрытые файлы и учитывает .gitignore. Эти ограничения отключаются флагами -H и -I, а -u включает оба режима сразу.

Результаты можно сразу передать внешней команде: -x запускает её отдельно для каждого пути, а -X один раз для всей выборки. Так, fd -e zip -x unzip распакует найденные ZIP-архивы параллельно. Больше сценариев и синтаксис заполнителей собраны в репозитории fd на GitHub.
  • 👍 3
Post #2968 907
HTTPie CLI: проверяем HTTP и API из терминала

HTTPie CLI отправляет запросы к API, HTTP-серверам и веб-сервисам через команды http и https. Утилита поддерживает JSON, заголовки, аутентификацию, прокси, формы и загрузку файлов, а ответ форматирует и подсвечивает.

Для быстрой проверки адреса достаточно https httpie.io/hello. С флагом -v можно увидеть отправляемый запрос, а режим --offline собирает и печатает его без отправки. Именованная сессия сохраняет авторизацию и заголовки для следующих запросов к тому же серверу.

В документации HTTPie CLI есть способы установки для разных ОС и примеры запросов с данными, авторизацией, загрузкой и скачиванием файлов.
Post #2967 946
VisiData: исследуем табличные данные в терминале

VisiData — интерактивный инструмент с открытым исходным кодом для изучения табличных данных. Он сочетает наглядность электронной таблицы, эффективность терминала и возможности Python. Утилита рассчитана на таблицы с миллионами строк, поэтому подходит для первичного разбора больших CSV и других табличных файлов.

Одной клавишей можно построить гистограмму, а диаграмму рассеяния показать прямо в терминале. Сессию можно сохранить и позднее воспроизвести, чтобы не повторять исследование вручную. Для пакетного режима авторы приводят команду vd -b input.csv.

На сайте VisiData есть обзор возможностей и материалы для начала работы.
Post #2966 922
uv: один инструмент для пакетов, проектов и версий Python

uv объединяет задачи pip, pip-tools, pipx, Poetry, pyenv, virtualenv и Twine. Он устанавливает зависимости, создаёт виртуальные окружения, фиксирует точные версии пакетов в едином файле, запускает скрипты с их зависимостями и устанавливает нужные версии Python. Авторы заявляют ускорение в 10–100 раз по сравнению с pip и экономию места благодаря общему кэшу: одинаковые зависимости не хранятся повторно.

Для первого проекта установите uv командой pip install uv, затем выполните uv init example и добавьте пакет через uv add ruff. Команда uv run ruff check запустит установленный инструмент в окружении проекта. Остальные сценарии и варианты установки собраны в репозитории uv от Astral.
  • 👍 1
Post #2965 960
Difftastic сравнивает код по синтаксису, а не по строкам

Difftastic — консольный инструмент для сравнения файлов. Он распознаёт выражения и скобочные конструкции, затем сопоставляет их между версиями файла. Поэтому перенос выражения на другие строки не прячет реальную правку, а добавленная обёртка отображается отдельно от содержимого, которое осталось прежним.

Утилита показывает номера строк до и после изменений и работает с Git. Среди поддерживаемых языков есть C++, Go, JavaScript, Python, Rust и TypeScript; среди форматов — HCL, HTML, JSON и YAML. Проект распространяется по лицензии MIT.

Попробуйте его на изменении после автоформатирования: так проще отделить новую логику от переставленных переносов. На сайте Difftastic есть минутное демо, полный список языков и инструкция по настройке Git.
  • 🔥 1
Post #2964 833

Forwarded from Типичный программист

Delta делает вывод Git, diff и grep удобнее для чтения

Delta — настраиваемая программа для просмотра вывода в терминале. Она подсвечивает синтаксис и изменения внутри строк, показывает версии рядом, добавляет номера строк и позволяет переходить между файлами клавишами n и N. Работает с Git, diff, grep и ripgrep.

Для Git установите пакет git-delta и настройте delta как программу просмотра. Delta определяет светлый или тёмный фон; темы подсветки берёт из набора bat. Можно улучшить отображение конфликтов слияния и превратить хеши коммитов в ссылки на GitHub, GitLab, SourceHut или Codeberg.

В репозитории Delta есть начальная конфигурация и полное руководство. Попробуйте инструмент, если в больших diff сложно быстро найти нужный файл и изменённую строку.
  • ❤‍🔥 1
Post #2963 1.07K
Как перехватывать и изменять HTTPS-трафик через mitmproxy

mitmproxy — бесплатный инструмент с открытым исходным кодом для отладки и тестирования веб-трафика. Он перехватывает HTTP/1, HTTP/2, HTTP/3 и WebSocket-сообщения, показывает их содержимое и позволяет изменить запрос или ответ до отправки адресату.

Для работы есть интерактивная командная строка и mitmweb с графическим интерфейсом, похожим на Chrome DevTools. Сценарий можно автоматизировать на Python через mitmdump: например, перенаправлять запросы на другой хост или возвращать подготовленный ответ для выбранного пути.

Установить инструмент можно командой brew install mitmproxy. На странице mitmproxy есть другие варианты загрузки, примеры дополнений и описание возможностей.
Post #2962 1.12K
Как попробовать Zellij без установки

Zellij — бесплатное рабочее пространство для терминала с открытым исходным кодом. На сайте Zellij есть отдельные команды пробного запуска для Bash, Zsh, fish и PowerShell. Для Bash и Zsh команда выглядит так:

bash <(curl -L https://zellij.dev/launch)


Перед запуском откройте и проверьте сценарий, который собираетесь выполнить. На сайте можно отдельно посмотреть его варианты для Linux и Mac или Windows. Так получится оценить Zellij до установки и затем решить, подходит ли инструмент для вашей работы в терминале.

Разработчики также предлагают платный размещённый сервис для совместного доступа к сессиям. Пока он находится в бета-версии.
Post #2961 7.15K
hexyl: цветной просмотр байтов в терминале

hexyl показывает содержимое файла в шестнадцатеричном виде и окрашивает разные категории байтов. Отдельные цвета получают нулевые байты, печатные ASCII-символы, пробелы и переносы строк, прочие ASCII-символы и байты вне ASCII. Так категории можно различать прямо в выводе терминала.

В Ubuntu и Debian утилита ставится командой sudo apt install hexyl, в Fedora через sudo dnf install hexyl, а в macOS через brew install hexyl. Сборка из исходников доступна через Cargo при Rust 1.56 или новее.

Цвета категорий и смещения настраиваются переменными окружения: можно выбрать стандартные цвета терминала, их яркие варианты или значение RGB. Команды для других систем и список настроек собраны в репозитории hexyl на GitHub.
Post #2960 1.12K
Как direnv переключает переменные окружения между проектами

direnv загружает настройки окружения для текущего каталога и убирает их при выходе. Так переменные проекта не приходится складывать в общий ~/.profile.

Перед выводом очередной командной строки утилита ищет разрешённый .envrc в текущем и родительских каталогах. Затем запускает файл в отдельном процессе Bash, сравнивает экспортированные переменные до и после запуска и переносит изменения в текущую оболочку. Поэтому такой файл может менять переменные, но не передаёт наружу функции и псевдонимы команд.

После установки подключите direnv к своей оболочке, создайте .envrc в проекте и разрешите его командой direnv allow .. Инструмент подойдёт для отдельных настроек разработки, секретов развёртывания и дополнений к PATH. Команды установки, интеграция с bash, zsh и fish, а также готовые функции для .envrc собраны в документации direnv.
Post #2959 1.14K
jless: как читать и искать JSON в терминале

jless показывает JSON в терминале с форматированием и подсветкой синтаксиса. Объекты и массивы можно сворачивать и раскрывать, чтобы сначала увидеть структуру документа, а затем перейти к нужным значениям.

Полнотекстовый поиск поддерживает регулярные выражения: так можно найти фрагмент внутри длинной строки или перейти между значениями одного ключа. Инструмент пригодится при изучении ответов внешних API и отладке содержимого запросов. Управление включает набор команд в стиле Vim.

На macOS и Linux jless можно поставить через несколько пакетных менеджеров. Для Homebrew команда одна: brew install jless. Другие варианты установки и полный список возможностей собраны на сайте jless.
Post #2958 1.14K
Dependabot теперь выжидает перед обновлением: причина в двух часах сентября 2025 года

В сентябре 2025-го атакующий выудил учётные данные одного мейнтейнера npm и выложил заражённые версии chalk, debug и ещё примерно десятка пакетов с суммарными двумя миллиардами загрузок в неделю. Код переписывал адреса криптокошельков в любом браузерном приложении, которое его подгружало.

🔘 отравленные версии прожили около двух часов, пока сообщество их не заметило и npm не снял;
🔘 двух часов хватает, чтобы ночная сборка в CI утянула их к вам;
🔘 отсюда период ожидания: Dependabot выдерживает паузу перед тем, как предложить свежую версию.

GitHub объясняет, как это соотносится со скоростью закрытия настоящих уязвимостей.

#инструменты
The GitHub Blog The case for a cooldown: Why Dependabot now waits before issuing version updates A new default three-day cooldown delays version update pull requests so maintainers and security researchers can address findings in a release before it gets into your code.
Post #2957 918

Forwarded from Типичный программист

Плагин для GitHub Accessibility Scanner ловит alt-текст, который проходит обычные проверки

Проверки доступности отвечают на один вопрос: есть ли у картинки атрибут alt. Поэтому alt="IMG_2847.png" проходит, и одинаковое alt="3/5 stars" на пяти разных иконках тоже. По отчёту WebAIM Million за 2026 год alt нет у 16,2% изображений на миллионе главных страниц, а ещё у 10,8% он ничего не описывает.

Плагин GitHub для Accessibility Scanner добавляет пять правил, которым не нужна сама картинка: атрибут отсутствует или состоит из пробелов; вместо описания имя файла вроде hero.png; забытая заглушка TODO или tbd; одно общее слово вместо описания: image, logo, chart; один и тот же alt у соседних изображений.

Где пригодится: прогнать по своей вёрстке и увидеть места, где alt формально есть, а незрячему пользователю не даёт ничего.

#инструменты
Post #2956 1.12K
С днем программиста, коллеги!

Желаем, чтобы код компилировался с первого раза, баги находились до релиза, а таски «на пять минут» действительно занимали пять минут. 

И конечно, пусть в жизни будет больше приятных сюрпризов — один из них мы уже подготовили. Скорее переходите по ссылке, трясите коробку и забирайте свой подарок ко Дню программиста: https://tprg.ru/2mAD
Older posts →

About this channel

How can I read @prog_tools without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Инструменты программиста: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Инструменты программиста have?
Инструменты программиста (@prog_tools) has 12.9K subscribers on Telegram, refreshed roughly every 30 minutes.
Does Инструменты программиста know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →