Bashターミナルをジャズアップする方法—写真付きのステップバイステップガイド

このブログでは、テーマ、電力線、フォント、およびpowerline-gitstatusを追加して、上の図に示すように、通常のBashターミナルを美しく便利に見せるための手順を説明します。

Macを使用している場合、これを機能させるには、多くの手順がLinux向けであるか、古くなっているため、多くのフープを飛び越える必要があります。だから私はそれについてブログを書くと思いました-うまくいけばそれがあなたを助けるでしょう。

ノート:

1.間違いがあると多くの頭痛の種になるため、手順を慎重に実行してください。

2.これはMacOS用であり、Terminal.appの通常のbash用です。このブログではZSHやHyperを使用していません—それらのために別のブログを書く予定です。

3.私のバージョン:Mac High Sierra; gitバージョン2.14.3(Apple Git-98); Python 2.7.10

OK、デフォルトでは、新しいMacを使用すると、Terminal.appは次のようになります。先に進んで、テーマやフォントなどを追加しましょう。

ステップ1—新しいテーマを追加する

最初の明らかなステップは、テーマを強化することです。ターミナルは、他の開発者が使用しているようなクールでファンシーなテーマをすべて提供しているわけではありません。テーマをダウンロードして、ターミナルに追加しましょう。

このブログでは、Solarized-Darkテーマをターミナルに追加します。

注:このgitリポジトリからさまざまなテーマ(.terminalファイル)をダウンロードできます。*.terminalファイルを開いてインストールするだけです。つまり、right-click on the *.terminal file > “open with" > Terminal
  1. //ethanschoonover.com/solarizedにアクセスします
  2. 下にスクロールしてテーマをダウンロードします(solarized.zip)
  3. solarized.zipファイルを抽出します
  4. osx-terminal.app-colors-solarizedフォルダーを開きます。このフォルダには、端末のテーマが含まれています。
  5. 「SolarizedDarkansi.terminal」ファイルをダブルクリックしますこれはTerminal.appの特定のテーマファイルです。注:これが身元不明の開発者からのものであるという警告が表示された場合は、ファイルを右クリックして、[プログラムから開く]> [ターミナルオプション]を選択します
  6. この時点で、テーマがターミナルにインストールされています。これをデフォルトのテーマにする必要があります。
  7. [ターミナル]> [設定]> [テキスト]を開き、[Solarized Dark…]テーマを選択して、[デフォルト]をクリックします。

これから、あなたのターミナルは以下のようになるはずです。

ステップ2—電力線をインストールします

PowerlineはPythonアプリであり、vimのステータスラインプラグインであり、zsh、bash、tmux、IPython、Awesome、Qtileなどの他のいくつかのアプリケーションにステータスラインとプロンプトを提供します。

ターミナルプロンプトは次のようになります。

2.1Pythonをインストールする

PowerlineはPythonアプリであるため、Pythonが必要であり、それも適切なバージョンのPythonである必要があります。

  • MacOSにはPythonがすでにインストールされています。ターミナルに入力python -Vして、Pythonのバージョンが2.7.xであることを確認します
  • 2.7でない場合は、以下を実行して、CLIからさまざまなソフトウェアをインストールできるHomebrewをインストールします。/usr/bin/ruby -e "$(curl -fsSL //raw.githubusercontent.com/Homebrew/install/master/install)"
  • brew install pythonHomebrew経由で最新のPythonをインストールするために実行します

2.2 pipのインストール— Python用のパッケージマネージャー(npmと同様)

次のコマンドを実行してpipをインストールします

$ sudo easy_install pip

2.3 XCode DeveloperCLIツールをインストールする

XCode Developer CLIツールは、OSXのコア機能を操作するPowerlineやその他のアプリで使用されます。したがって、次のコマンドを実行して、XCodeCLIツールをインストールしてください。

$ xcode-select —-install

注:上記のコマンドは、Macのインストーラーを開き、XCode DeveloperCLIツールをインストールします。動作しない場合は、xcode-select -rリセットしてみてください。

2.4電力線のインストール

最後に、次のコマンドを実行して、pip経由でPowerline(安定バージョン)をインストールします。

$ pip install --user powerline-status

最新の開発ブランチをインストールする場合は、次を使用します。

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

2.5Powerlineデーモンをbashに追加します

ここで、Powerlineデーモンをbashに追加して、ターミナルプロンプトを監視し、変更を加える必要があります。

2.5.1電力線の設置場所をコピーする

以下を実行することにより、電力線の場所を把握できます。フィールドpip show powerline-statusから値をコピーしますLocation

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
注:場所/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新しいターミナル

新しいターミナルは次のようになります。「SolarizedDarkansi」テーマを使用し、コマンドプロンプトにPowerlineを表示する必要があります。ただし、「?」があることにも注意してください。キャラクター!これは、Powerlineがデフォルトでは使用できないさまざまなアイコンやフォントを使用しているためです。したがって、フォントをインストールする必要があります。

ステップ3—Powerlineフォントをインストールする

Powerlineフォントをインストールするには、// github.com/powerline/fontsにアクセスするだけです。そこにはたくさんのフォルダがあります。それぞれがフォント、別名「パッチフォント」です。

人々が通常のフォントを使用し、Powerline固有のアイコンやフォントを追加/パッチしたため、「パッチフォント」と呼ばれます。

3.1リポジトリ全体をダウンロードして解凍します

  • 「クローンまたはダウンロード」ボタンをクリックしてリポジトリ全体をダウンロードし、さまざまなフォントを試してみてください。
  • フォントを解凍します-master.zip

3.2いくつかのフォントをインストールする

Let’s open Meslo dotted fontsfolder. It will look like below. You’ll see a whole bunch of .ttf file. Each one of them is a font but some are “bold” version of the font, some are “regular” version and so on.

Simply double-click on the .ttf file and press “Install font” to install the font on your computer.

For our case, let’s install “Meslo LG L DZ Regular for Powerline.ttf” and “Meslo LG L DZ Italic for Powerline.ttf”. This will add a regular and an Italic version of the Meslo font.

3.3 Select the font in the Terminal’s Theme

Remember we added “Solarized Dark” theme in Step 1? That didn’t have any fonts in it and MacOS had some default font. All we need to do is to set our Meslo dotted font for this theme and we are done!

  1. Open Terminal > Preferences > Text
  2. Select Solarized Dark ansi Theme
  3. Click on the “Font” button — This opens up “Fonts” dialog
  4. In the “Fonts” dialog, select “Meslo LG L DZ for Powerline” in the Family and also select font size 14 (so it’s easier to read).

3.4 Restart Terminal

Completely quit the Terminal (Terminal > Quit Terminal) and then reopen it.

Step 4 — Adding Git information to the prompt

プロンプトにさまざまなGitステータスを表示するには、powerline-gitstatusをインストールする必要があります。これはPowerlineへのシンプルなアドオンであり、さまざまなgitステータス情報を表示するために複数の色とテーマを追加します。

4.1powerline-gitstatusをインストールします

pip install --user powerline-gitstatus
注:ユーザーのプロファイルにインストールするには、「— user」コマンドが必要です。

4.2電力線-gitstatus配色を電力線に追加する

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次の色を追加します。

powerline-gitstatusreadmeで述べたように。PS:以下に示すように、「グループ」内の色をコピーして、default.jsonに追加するだけです。

これが私の配色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.2default.jsonに以下を追加します

{ "function": "powerline_gitstatus.gitstatus", "priority": 40 }

以下は私の電力線のテーマ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リポジトリに移動し、遊んでみると、次のようになります。

ソラリゼーション-ライトテーマでの外観は次のとおりです。

Here is how it looks in Cobalt2 Theme:

?? Thank you!

If you have questions, please feel free to ask me on Twitter: //twitter.com/rajaraodv

If this was useful, please click the clap ? button down below a few times to show your support! ⬇⬇⬇ ??

My Other Posts

//medium.com/@rajaraodv/latest

ECMAScript 2015+

  1. Check out these useful ECMAScript 2015 (ES6) tips and tricks
  2. 5 JavaScript “Bad” Parts That Are Fixed In ES6
  3. Is “Class” In ES6 The New “Bad” Part?

Terminal Improvements

  1. How to Jazz Up Your Terminal — A Step By Step Guide With Pictures
  2. Jazz Up Your “ZSH” Terminal In Seven Steps — A Visual Guide

WWW

  1. A Fascinating And Messy History Of The Web And JavaScript

Virtual DOM

  1. Inner Workings Of The Virtual DOM

React Performance

  1. Two Quick Ways To Reduce React App’s Size In Production
  2. Using Preact Instead Of React

Functional Programming

  1. JavaScript Is Turing Complete — Explained
  2. Functional Programming In JS — With Practical Examples (Part 1)
  3. Functional Programming In JS — With Practical Examples (Part 2)
  4. Why Redux Need Reducers To Be “Pure Functions”

WebPack

  1. Webpack — The Confusing Parts
  2. Webpack & Hot Module Replacement [HMR] (under-the-hood)
  3. Webpack’s HMR And React-Hot-Loader — The Missing Manual

Draft.js

  1. Why Draft.js And Why You Should Contribute
  2. How Draft.js Represents Rich Text Data

React And Redux :

  1. Step by Step Guide To Building React Redux Apps
  2. A Guide For Building A React Redux CRUD App (3-page app)
  3. Using Middlewares In React Redux Apps
  4. Adding A Robust Form Validation To React Redux Apps
  5. Securing React Redux Apps With JWT Tokens
  6. Handling Transactional Emails In React Redux Apps
  7. The Anatomy Of A React Redux App
  8. Why Redux Need Reducers To Be “Pure Functions”
  9. Two Quick Ways To Reduce React App’s Size In Production

If this was useful, please share it! Thank you! ??