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

1656559830 kak uluchshit svoj terminal bash — poshagovoe rukovodstvo s izobrazheniyami

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

от rajaraodv

1*QRJ9_60oCmcwRGfYqCbqSw

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

Оказывается, если вы используете 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 к нашему терминалу.

Примечание. Вы можете скачать разные темы (файлы терминалов) из этого репозитория 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. Двойной щелчок “Solarized Dark ansi.terminal” файлЭто конкретный тема файла для Terminal.app. Примечание. Если вы получаете предупреждение от неустановленного разработчика, щелкните правой кнопкой мыши на файле и выберите «Открыть с помощью» > Terminal optiна.
  6. На этом этапе в вашем терминале установлена ​​тема. Нам просто нужно сделать его темой по умолчанию.
  7. Откройте «Терминал» > «Настройки» > «Текст», выберите тему «Solarized Dark…» и нажмите «По умолчанию».
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

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

$ xcode-select —-install

Примечание. Вышеуказанная команда открывает установщик Mac и устанавливает инструменты интерфейса командной команды 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 регулярный и an Курсив версия Месло шрифт.

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

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

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:

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 завершен по Тьюрингу.
  2. Функциональное программирование в JS – с практическими примерами (часть 1)
  3. Функциональное программирование в JS – с практическими примерами (часть 2)
  4. Почему Redux нужны редукторы, чтобы быть «чистыми функциями»

WebPack

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

Draft.js

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

React и Redux:

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

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

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

Ваш адрес email не будет опубликован.