Как улучшить свой терминал Bash — Пошаговое руководство с изображениями

1656668062 kak uluchshit svoj terminal bash — poshagovoe rukovodstvo s izobrazheniyami

Содержание статьи

от rajaraodv

1*QRJ9_60oCmcwRGfYqCbqSw

В этом блоге я расскажу о шагах добавления тем, Powerline, шрифтов и powerline-gitstatus, чтобы сделать ваш обычный Bash Terminal красивым и полезным, как показано на рисунке выше.

Оказывается, если вы пользуетесь Mac, вам придется пройти через много препятствий, чтобы это заработало, поскольку многие инструкции предназначены для Linux или устарели. Так что я решил написать об этом в блоге – надеюсь, это вам поможет.

Примечания:

1. Внимательно выполняйте шаги, поскольку любая ошибка повлечет за собой много головной боли.

2. Это для MacOS и для обычного bash в приложении Terminal.app. Я не использую ZSH или Hyper в этом блоге – планирую писать для них разные блоги.

3. Мои версии: Mac High Sierra; git версия 2.14.3 (Apple Git-98); Python 2.7.10

Хорошо, по умолчанию, если у вас новый Mac, Terminal.app будет выглядеть примерно так, как показано ниже. Давайте добавим темы, шрифты и т.д.

1*A2RjRAGXHeUQtIIy5XIBwQ

Шаг 1 — Добавьте новую тему

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

В этом блоге я добавлю тему Solarized-Dark к нашему терминалу.

Примечание. Вы можете загружать разные темы (файлы .terminal) из этого хранилища git. Просто откройте *.terminal файл, чтобы его установить, т.е. right-click on the *.terminal file > “open with" > Terminal

  1. Перейдите на страницу http://ethanschoonover.com/solarized
  2. Прокрутите вниз и загрузите тему (solarized.zip)
  3. Распакуйте файл solarized.zip
  4. Откройте osx-terminal.app-colors-solarized папку. Эта папка содержит тему терминала.
  5. Двойной щелчок «Солнечный Темный ansi.terminal» файлЭто специальный тема файла для Terminal.app. Примечание. Если вы получаете предупреждение от неизвестного разработчика, щелкните файл правой кнопкой мыши и выберите «Открыть с помощью» > Параметры терминалана.
  6. На данный момент в вашем терминале установлена ​​тема. Нам просто нужно сделать ее темой по умолчанию.
  7. Откройте «Терминал» > «Параметры» > «Текст», выберите тему «Solarized Dark…» и нажмите кнопку «Default».
1*0hPqERUbwhdAXVQfdQih1A

Теперь ваш терминал должен выглядеть ниже.

1*hvkwX_GZIXHQxuYY2987GQ

Шаг 2 — Установите Powerline

Powerline – это программа Python и плагин строки состояния для vim, а также предоставляет строки состояния и подсказки для нескольких других программ, включая zsh, bash, tmux, IPython, Awesome и Qtile.

Благодаря этому подсказка терминала выглядит как показано ниже.

1*7SLVI9-_IBwEcmZpGaDvmw

2.1 Установите Python

Поскольку Powerline – это программа Python, нам нужен Python, а также правильная версия Python.

  • MacOS поставляется с уже установленным Python. Убедитесь, что версия Python 2.7.x, введя python -V в терминале.
  • Если это не 2.7, установите Homebrew, позволяющий устанавливать разное программное обеспечение с CLI, выполнив:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • бежать brew install python чтобы установить последнюю версию Python через Homebrew

2.2 Установить pip — менеджер пакетов для Python (похож на npm)

Установите pip, выполнив такую ​​команду

$ sudo easy_install pip

2.3 Установите инструменты CLI разработчика XCode

Инструменты XCode Developer CLI используются Powerline и другими приложениями, которые манипулируют основными функциями OSX. Поэтому обязательно установите инструменты XCode CLI, выполнив такую ​​команду.

$ xcode-select —-install

Примечание. Вышеуказанная команда открывает установщик Mac и устанавливает инструменты CLI XCode Developer. Если не выходит, попробуйте xcode-select -r чтобы сбросить.

2.4 Установите Powerline

Наконец установите Powerline (стабильную версию) через pip, выполнив такую ​​команду.

$ pip install --user powerline-status

Если вы хотите установить последнюю ветвь разработки, воспользуйтесь:

$ pip install --user git+git://github.com/powerline/powerline  //dev

2.5 Добавьте демон Powerline в bash

Теперь нам нужно добавить демон Powerline в bash, чтобы он мог контролировать подсказку терминала и вносить изменения.

2.5.1 Скопируйте место установки Powerline

Вы можете определить расположение Powerline, выполнив следующее: pip show powerline-status Скопируйте значение с Location поле.

1*1Hi5bB475XFf-Iu43tAFvA

2.5.2 Добавьте демон с надлежащим расположением к .bash_profile

  1. Убедитесь, что у вас есть .bash_profile файл в вашем корневом каталоге. Если не следует, создайте его, выполнив: cd ~ && touch ~/.bash_profile

2. Открыть .bash_profile и добавьте следующее:

export PATH=$PATH:$HOME/Library/Python/2.7/bin
powerline-daemon -q
POWERLINE_BASH_CONTINUATION=1
POWERLINE_BASH_SELECT=1
. /Users/rupa/Library/Python/2.7/lib/python/site-packages/powerline/bindings/bash/powerline.sh
1*QY-1dEQtAn6SUOpgOTQcsg
Некоторые подробности о bash_profile

Примечание. Расположение /Users/rupa/Library/Python/2.7/lib/python/site-packages/ взято из предыдущего шага (2.5.1). Измените его в соответствии с местоположением компьютера.

2.5.3. Перезапустите терминал

Полностью закройте терминал, если он открыт (Терминал > Выйти из терминала). И откройте его снова.

Вы должны иметь возможность просто использовать $ source ~/.bash_profile для обновления настроек. Но мне стало странно powerline-config файл отсутствует! Обычно вы получаете эту ошибку, если в вашем PATH нет $HOME/Library/Python/2.7/bin.

2.5.4 Ваш новый терминал

Новый терминал должен выглядеть, как показано ниже. Он должен использовать тему «Solarized Dark ansi» и должен отображать Powerline в командной строке. Но также заметьте, что есть «?» символы! Это происходит потому, что Powerline использует различные значки и шрифты, которые недоступны по умолчанию. Итак, нам нужно установить шрифты.

1*fVqgdIqo7AIw7EJdcHZZxw

Шаг 3 — Установите шрифты Powerline

Чтобы установить шрифты Powerline, просто перейдите к Там вы увидите целую кучу папок. Каждый из них — шрифт, он же «заправленные шрифты».

Его называют «исправленными шрифтами», потому что люди взяли обычные шрифты и добавили/исправили дополнительные специальные значки и шрифты Powerline.

1*sYBQZYzxe37bkmtBUw_Oww

3.1 Загрузите все репо и распакуйте его.

  • Нажмите кнопку «Клонировать или загрузить» и загрузите все хранилище, чтобы попробовать различные шрифты.
  • Разархивируйте файл fonts-master.zip

3.2 Установите некоторые шрифты

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

Просто дважды щелкните файл .ttf и нажмите кнопку «Установить шрифт», чтобы установить шрифт на вашем компьютере.

Для нашего случая давайте установим «Meslo LG L DZ Regular для Powerline.ttf» и «Meslo LG L DZ Italic для Powerline.ttf». Это добавит a регулярный и ан Курсив версия Месло шрифт.

1*zmoF1ksmDJfRH0lGK00GKg

3.3 Выберите шрифт в теме терминала

Помните, мы добавили тему «Solarized Dark» на шаге 1? В нем не было ни одного шрифта, а в MacOS был шрифт по умолчанию. Все, что нам нужно сделать, это установить наш пунктирное место шрифт на эту тему, и мы готовы!

  1. Откройте «Терминал» > «Параметры» > «Текст».
  2. Выберите Солнечный темный анси Тема
  3. Нажмите кнопку «Шрифт» – откроется диалоговое окно «Шрифты».
  4. В диалоговом окне «Шрифты» выберите «Meslo LG L DZ Powerline» в Семействе, а также выберите размер шрифта 14 (чтобы его было легче читать).
1*SbKUVJxHJ_PR8yh2cbSESw

3.4 Перезапустите терминал

Полностью закройте терминал (Терминал > Выйти из терминала) и снова откройте его.

1*5pfC372U2Uz9Q5SQJSqKzA

Шаг 4 — Добавление информации Git к подсказке

Чтобы отображать разные статусы Git в запросе, нам нужно установить powerline-gitstatus. Это простое дополнение к Powerline, которое добавляет несколько цветов и тем для отображения разной информации о состоянии git.

1*NKRx9-fVCZIiWKW_Tb0lhA
PS: Мы будем иметь дело с файлами в папках «цветные схемы» и «темы».

4.1 Установите powerline-gitstatus

pip install --user powerline-gitstatus

Примечание: для установки в пользовательском профиле нужна команда « — user».

4.2 Добавьте схемы цветов powerline-gitstatus в Powerline

4.2.1 Откройте следующее colorschemes/shell/default.json папку

${powerline-install-directory}/powerline/config_files/colorschemes/shell/default.json

//For example:
/Users/rupa/Library/Python/2.7/lib/python/site-packages/powerline/config_files/colorschemes/shell/default.json

4.2.2 Добавьте следующие цвета:

Как указано в файле readme powerline-gitstatus. PS: просто скопируйте цвета внутри группы, а затем добавьте их к default.json, как показано ниже.

1*shKgrO87LFrjoGMb2uOEVg
Нажмите для увеличения

Вот мои цветовые схемы default.json (вы можете скопировать и вставить это вместо этого):

{
	"name": "Default color scheme for shell prompts",
	"groups": {
		"hostname": {
			"fg": "brightyellow",
			"bg": "mediumorange",
			"attrs": []
		},
		"environment": {
			"fg": "white",
			"bg": "darkestgreen",
			"attrs": []
		},
		"mode": {
			"fg": "darkestgreen",
			"bg": "brightgreen",
			"attrs": ["bold"]
		},
		"attached_clients": {
			"fg": "white",
			"bg": "darkestgreen",
			"attrs": []
		},

		"gitstatus": {
			"fg": "gray8",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_branch": {
			"fg": "gray8",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_branch_clean": {
			"fg": "green",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_branch_dirty": {
			"fg": "gray8",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_branch_detached": {
			"fg": "mediumpurple",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_tag": {
			"fg": "darkcyan",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_behind": {
			"fg": "gray10",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_ahead": {
			"fg": "gray10",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_staged": {
			"fg": "green",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_unmerged": {
			"fg": "brightred",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_changed": {
			"fg": "mediumorange",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_untracked": {
			"fg": "brightestorange",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus_stashed": {
			"fg": "darkblue",
			"bg": "gray2",
			"attrs": []
		},
		"gitstatus:divider": {
			"fg": "gray8",
			"bg": "gray2",
			"attrs": []
		}
	},
	"mode_translations": {
		"vicmd": {
			"groups": {
				"mode": {
					"fg": "darkestcyan",
					"bg": "white",
					"attrs": ["bold"]
				}
			}
		}
	}
}

4.3 Активируйте тему

4.3.1 Откройте файл default.json темы

${powerline-install-directory}/powerline/config_files/themes/shell/default.json

//For example:
/Users/rupa/Library/Python/2.7/lib/python/site-packages/powerline/config_files/themes/shell/default.json

4.3.2 Добавьте следующее в default.json

{
    "function": "powerline_gitstatus.gitstatus",
    "priority": 40
}
1*QJIvX5hfNpUWZgoHTQ_nbQ

Ниже приведена моя тема Powerline default.json (вместо этого можно скопировать и вставить):

Примечание: я удалил все из раздела «право», а также удалил «номер работы» («jobnum»), чтобы все было чисто. В противном случае вы увидите небольшой артефакт на правой стороне подсказки.

{
	"segments": {
		"left": [{
				"function": "powerline.segments.shell.mode"
			},
			{
				"function": "powerline.segments.common.net.hostname",
				"priority": 10
			},
			{
				"function": "powerline.segments.common.env.user",
				"priority": 30
			},
			{
				"function": "powerline.segments.shell.cwd",
				"priority": 10
			}, {
				"function": "powerline_gitstatus.gitstatus",
				"priority": 40
			}
		],
		"right": []
	}
}

4.4 Перезапустите Демон

Сохраните файл и выполните следующее: powerline-daemon —-replace в терминале.

Важное примечание: Каждый раз, когда вы изменяете конфигурацию Powerline, кроме перезапуска терминала, вам также нужно будет перезапустить демон, чтобы увидеть отображение изменений запустив: powerline-daemon —-replace.

4.5 Перезапустите терминал

Выйдите из терминала (Терминал > Выйти из терминала) и снова откройте его.

На этом мы все кончили! вау! Если вы откроете терминал и перейдете в любое хранилище git и поиграете, это должно выглядеть следующим образом.

1*QRJ9_60oCmcwRGfYqCbqSw

Вот как это выглядит в теме Solarized-Light:

1*8yii2h-RBMX3j5dtMagr2Q

Вот как это выглядит в Cobalt2 Theme:

1*hYHwy__bxYoA8cji8E3plQ

?? Спасибо!

Если у вас есть вопросы, пожалуйста, не стесняйтесь задавать их в Twitter: https://twitter.com/rajaraodv

Если это было полезно, пожалуйста, щелкните хлопать? нажмите кнопку ниже несколько раз, чтобы выразить свою поддержку! ⬇⬇⬇ ??

https://medium.com/@rajaraodv/latest

ECMAScript 2015+

  1. Просмотрите эти полезные советы и советы ECMAScript 2015 (ES6).
  2. 5 «плохих» частей JavaScript, которые исправлены в ES6
  3. Является ли «Класс» в ES6 новой «плохой» частью?

Улучшение терминала

  1. Как улучшить терминал — Пошаговое руководство с изображениями
  2. Совершенствуйте свой терминал «ZSH» в семи шагах — наглядное руководство

WWW

  1. Увлекательная и беспорядочная история Интернета и JavaScript

Виртуальный DOM

  1. Внутренняя работа виртуального DOM

Производительность React

  1. Два быстрых способа уменьшить размер программы React в производстве
  2. Использование Preact вместо React

Функциональное программирование

  1. JavaScript завершен по Turing — объяснение
  2. Функциональное программирование в JS – с практическими примерами (часть 1)
  3. Функциональное программирование в JS – с практическими примерами (часть 2)
  4. Почему Redux нуждается в том, чтобы редукторы были «чистыми функциями»

WebPack

  1. Webpack — непонятные части
  2. Webpack и горячая замена модуля [HMR] (под капотом)
  3. Webpack HMR и React-Hot-Loader – отсутствует руководство

Draft.js

  1. Почему Draft.js и почему вы должны внести вклад
  2. Как Draft.js представляет форматированные текстовые данные

React и Redux:

  1. Пошаговое руководство по созданию программ React Redux
  2. Руководство по созданию программы React Redux CRUD (3-страничное приложение)
  3. Использование промежуточного программного обеспечения в React Redux
  4. Добавление надежной формы для React Redux
  5. Защита приложений React Redux с помощью токенов JWT
  6. Обработка транзакционных электронных писем в программах React Redux
  7. Анатомия программы React Redux
  8. Почему Redux нуждается в том, чтобы редукторы были «чистыми функциями»
  9. Два быстрых способа уменьшить размер программы React в производстве

Если это было полезно, пожалуйста, поделитесь! Спасибо! ??

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *