Жизнь в оболочке

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

В этом посте я покажу некоторые инструменты, которые я использую ежедневно,
работая с терминала.

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

Сопоставление CapsLock с Ctrl

Это такая простая вещь, поверьте мне и просто делайте это, вы не поверите, насколько это правильно, когда вы начнете ее использовать.

Я использую Fedora с Gnome, поэтому мне просто нужно открыть приложение Tweaks, затем «Ключевое слово и мышь» — ›Дополнительные параметры макета -› Поведение Caps Lock — ›Caps Lock — это также Ctrl.

Zsh

Https://github.com/robbyrussell/oh-my-zsh/wiki/Installing-ZSH

Https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/INSTALL.md

Zsh — это оболочка UNIX, а oh-my-zsh — фреймворк для управления ее конфигурацией; Это как треп на стероидах.

Я не использую многие плагины zsh, кроме подсветки синтаксиса, в моем профиле сейчас включены следующие:

plugins=(git mix-fast vi-mode)

Подробнее о плагинах вы можете прочитать здесь.

Tmux

Https://github.com/tmux/tmux

Со страницы руководства tmux.

tmux — это терминальный мультиплексор: он позволяет создавать, получать доступ и управлять несколькими терминалами с одного экрана. tmux можно отсоединить от экрана и продолжить работу в фоновом режиме, а затем снова подключить.

Tmux позволяет, помимо прочего, разбивать экран терминала на панели, создавать новые вкладки (окна), его можно даже использовать для однорангового программирования, поскольку несколько пользователей могут войти в один и тот же сеанс.

См. также:  Интернационализация Flutter (i18n) 101

Вы можете настроить vi-keybind для перемещения между панелями и окнами, настроить цвета и добавить к ним powerline.

Asdf

Https://github.com/asdf-vm/asdf

Перед использованием asdf у меня были pyenv для python, rvm для ruby, nvm для node, kerl для erlang, exenv для elixir и evm для elm; теперь у меня только asdf.

Asdf — это менеджер версий для большого количества языков программирования и приложений. Пользователи могут указать глобальную или локальную версию каталога. Когда asdf обнаруживает файл .tool_version в текущем каталоге, он будет использовать версии
, указанные в этом файле, в противном случае он будет использовать глобальную версию.

$ asdf global python 3.6.0 # Sets the default version to 3.6.0
$ asdf local python 3.4.0 # Creates a .tool_version file that contains the line python 3.4.0

NeoVim

Https://neovim.io/

Некоторое время назад я перешел на NeoVim, нашел его, когда искал поддержку для настоящих цветов, и был застигнут врасплох зрелостью проекта. Они реализовали асинхронный фреймворк (затем vim 8 запустил свой собственный), имели четкую и открытую дорожную карту, более разумные настройки по умолчанию и сосредоточились на совместимости с обычным Vim.

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

Некоторые из плагинов, не связанных с языком, которые я использую:

  • Vundle: менеджер плагинов.
  • Nerdcommenter: комментарии блоков кодов.
  • Nerdtree: проводник файловой системы.
  • Neomake: асинхронный линтер.
  • Vim-fugitive: поддержка git.
  • Vim-gitgutter: дополнительная поддержка Git.
  • Вим-монокай: тема.
  • Ack.vim: для поиска по проекту.
  • Fzf.vim: нечеткий поиск файлов и текста внутри файлов.
  • Vim-unimpaired: добавляет полезные сопоставления.
  • Vim-airlines: информация в строке состояния.
  • Tagbar: динамическая панель ctags текущего файла.
  • Vim-gutentags: обработка ctags для перехода к определению.
См. также:  СУРБД — Введение

Fzf и RipGrep

Https://github.com/junegunn/fzf
https://github.com/BurntSushi/ripgrep

fzf — это универсальный инструмент нечеткого поиска из командной строки.

Его можно использовать для поиска файлов, идентификатора процесса для kill -9 или моей любимой истории командной строки.

Чтобы улучшить синхронизацию, его можно настроить на использование ripgrep, инструмента, похожего на grep, который работает быстрее, чем его конкуренты. Интеграция с Vim очень проста, позволяя
искать файлы или контент в проекте.

Рейнджер

Https://ranger.github.io/

Файловый менеджер для консоли на основе VIM, он полезен для навигации или перемещения файлов, когда вы не хотите делать много ls. Функция предварительного просмотра очень хороша.

Я установил его через pip, потому что версия dnf сильно устарела.

Grv

Https://github.com/rgburke/grv

Терминальный интерфейс для просмотра репозиториев git, похож на рейнджера, но
для репозиториев git. Позволяет навигацию и фильтрацию коммитов, различий и ссылок.

Почетные упоминания

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

Jq

Https://stedolan.github.io/jq/

jq — это легкий и гибкий JSON-процессор командной строки.

$ echo '{"a":{"b": [1, 2]}}' | jq .a.b
[
 1,
 2
]

Ознакомьтесь с обучающими материалами на этой странице и узнайте все, что вы можете с ними сделать.

Tj

Https://github.com/sgreben/tj

Читает из стандартного ввода и записывает в стандартный вывод с меткой времени. README.md репозитория содержит пример поиска самого медленного шага при сборке докеров; обязательно зацените.

Exa

Https://the.exa.website/

Это похоже на команду ls, но с цветами, улучшенными настройками по умолчанию, древовидной структурой и
возможностью видеть статус git.

Tokei

Https://github.com/Aaronepower/tokei

Tokei — это программа, которая отображает статистику вашего кода. Tokei покажет
›количество файлов, общее количество строк в этих файлах и коде, комментарии и
› пробелы, сгруппированные по языку.

См. также:  Лучший способ создания индексов в BigQuery

Ternimal

Https://github.com/p-e-w/ternimal

Это ваш талисман на терминале. Я уверен, что это повысит вашу продуктивность в 10 раз.

Понравилась статья? Поделиться с друзьями:
IT Шеф
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: