Powerline - Ṣafikun Awọn ipo ipo Alagbara ati Awọn igbiyanju lati Olootu Vim ati Terminal Bash


Powerline jẹ ohun itanna ipo ipo nla fun olootu Vim, eyiti o dagbasoke ni Python ati pe o pese awọn ipo ipo ati awọn ibeere fun ọpọlọpọ awọn ohun elo miiran bii bash, zsh, tmux ati ọpọlọpọ diẹ sii.

  1. A ti kọ ọ ni Python, eyiti o jẹ ki o ṣee ṣe afikun ati ẹya ọlọrọ.
  2. Idurosinsin ati ipilẹ koodu idanwo, eyiti o ṣiṣẹ daradara pẹlu Python 2.6 + ati Python 3.
  3. O tun ṣe atilẹyin awọn itọsọ ati awọn ipo ipo ni ọpọlọpọ awọn ohun elo Linux ati awọn irinṣẹ.
  4. O ni awọn atunto ati awọn awọ ọṣọ ti dagbasoke nipa lilo JSON.
  5. Yara ati iwuwo fẹẹrẹ, pẹlu atilẹyin daemon, eyiti o pese paapaa iṣẹ ti o dara julọ sii.

Ninu àpilẹkọ yii, Emi yoo fihan ọ bi o ṣe le fi awọn nkọwe Powerline ati Powerline sori ẹrọ ati bii o ṣe le lo pẹlu Bash ati Vim labẹ awọn ọna ṣiṣe RedHat ati Debian.

Igbesẹ 1: Fifi Awọn ibeere Generic fun Powerline

Nitori rogbodiyan orukọ pẹlu diẹ ninu awọn iṣẹ akanṣe miiran, eto laini agbara wa lori PyPI (Atọka Package Python) labẹ orukọ package gẹgẹbi ipo agbara-agbara.

Lati fi awọn idii sii lati PyPI, a nilo ‘pip’ (irinṣẹ iṣakoso package fun fifi awọn idii Python). Nitorinaa, jẹ ki a kọkọ fi ọpa pip sori ẹrọ labẹ awọn eto Linux wa.

# apt-get install python-pip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Recommended packages:
  python-dev-all python-wheel
The following NEW packages will be installed:
  python-pip
0 upgraded, 1 newly installed, 0 to remove and 533 not upgraded.
Need to get 97.2 kB of archives.
After this operation, 477 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu/ trusty-updates/universe python-pip all 1.5.4-1ubuntu3 [97.2 kB]
Fetched 97.2 kB in 1s (73.0 kB/s)     
Selecting previously unselected package python-pip.
(Reading database ... 216258 files and directories currently installed.)
Preparing to unpack .../python-pip_1.5.4-1ubuntu3_all.deb ...
Unpacking python-pip (1.5.4-1ubuntu3) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
Setting up python-pip (1.5.4-1ubuntu3) ...

Labẹ awọn eto orisun Fedora, o nilo lati kọkọ mu ibi ipamọ epel ṣiṣẹ lẹhinna gbe package paipu sori ẹrọ bi o ti han.

# yum install python-pip          
# dnf install python-pip                     [On Fedora 22+ versions]           
Installing:
 python-pip          noarch          7.1.0-1.el7             epel          1.5 M

Transaction Summary
=================================================================================
Install  1 Package

Total download size: 1.5 M
Installed size: 6.6 M
Is this ok [y/d/N]: y
Downloading packages:
python-pip-7.1.0-1.el7.noarch.rpm                         | 1.5 MB  00:00:01     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : python-pip-7.1.0-1.el7.noarch                                 1/1 
  Verifying  : python-pip-7.1.0-1.el7.noarch                                 1/1 

Installed:
  python-pip.noarch 0:7.1.0-1.el7                                                

Complete!

Igbesẹ 2: Fifi Ọpa Powerline sii ni Lainos

Bayi o to akoko lati fi sori ẹrọ Powerline ẹya idagbasoke tuntun lati ibi ipamọ Git. Fun eyi, eto rẹ gbọdọ ni git package ti a fi sii lati le mu awọn idii lati Git.

# apt-get install git
# yum install git
# dnf install git

Nigbamii o le fi Powerline sii pẹlu iranlọwọ ti pipaṣẹ pip bi o ti han.

# pip install git+git://github.com/Lokaltog/powerline
 Cloning git://github.com/Lokaltog/powerline to /tmp/pip-WAlznH-build
  Running setup.py (path:/tmp/pip-WAlznH-build/setup.py) egg_info for package from git+git://github.com/Lokaltog/powerline
    
    warning: no previously-included files matching '*.pyc' found under directory 'powerline/bindings'
    warning: no previously-included files matching '*.pyo' found under directory 'powerline/bindings'
Installing collected packages: powerline-status
  Found existing installation: powerline-status 2.2
    Uninstalling powerline-status:
      Successfully uninstalled powerline-status
  Running setup.py install for powerline-status
    
    warning: no previously-included files matching '*.pyc' found under directory 'powerline/bindings'
    warning: no previously-included files matching '*.pyo' found under directory 'powerline/bindings'
    changing mode of build/scripts-2.7/powerline-lint from 644 to 755
    changing mode of build/scripts-2.7/powerline-daemon from 644 to 755
    changing mode of build/scripts-2.7/powerline-render from 644 to 755
    changing mode of build/scripts-2.7/powerline-config from 644 to 755
    changing mode of /usr/local/bin/powerline-config to 755
    changing mode of /usr/local/bin/powerline-lint to 755
    changing mode of /usr/local/bin/powerline-render to 755
    changing mode of /usr/local/bin/powerline-daemon to 755
Successfully installed powerline-status
Cleaning up...

Igbesẹ 3: Fifi Awọn Fonti Powerline sii ni Lainos

Powerline lo awọn glyphs pataki lati ṣe afihan ipa ọfa pataki ati awọn aami fun awọn aṣagbega. Fun eyi, o gbọdọ ni font aami kan tabi fonti patched ti a fi sori awọn eto rẹ.

Ṣe igbasilẹ ẹya ti o ṣẹṣẹ julọ ti fonti aami ati faili iṣeto fontconfig nipa lilo atẹle wget pipaṣẹ.

# wget https://github.com/powerline/powerline/raw/develop/font/PowerlineSymbols.otf
# wget https://github.com/powerline/powerline/raw/develop/font/10-powerline-symbols.conf

Lẹhinna o nilo lati gbe font si itọsọna awọn nkọwe rẹ,/usr/share/nkọwe/tabi/usr/agbegbe/ipin/awọn nkọwe bi atẹle tabi o le gba awọn ọna abuku to wulo nipa lilo pipaṣẹ xset q .

# mv PowerlineSymbols.otf /usr/share/fonts/

Nigbamii ti, o nilo lati ṣe imudojuiwọn kaṣe iruwe eto rẹ bi atẹle.

# fc-cache -vf /usr/share/fonts/

Bayi fi faili fontconfig sii.

# mv 10-powerline-symbols.conf /etc/fonts/conf.d/

Akiyesi: Ti awọn aami aṣa ko ba han, lẹhinna gbiyanju lati pa gbogbo awọn akoko ebute ati tun window X bẹrẹ fun awọn ayipada lati ni ipa.

Igbesẹ 4: Ṣiṣeto Laini Agbara fun Ikarahun Bash ati Awọn ipo Vim

Ni apakan yii a yoo wo ṣiṣatunto Powerline fun ikarahun bash ati olootu vim. Ni akọkọ ṣe ebute rẹ lati ṣe atilẹyin awọ 256 nipa fifi ila atẹle si ~/.bashrc faili bi atẹle.

export TERM=”screen-256color” 

Lati mu Powerline ṣiṣẹ ni ikarahun bash nipasẹ aiyipada, o nilo lati ṣafikun snippet atẹle si faili ~/.bashrc rẹ.

Akọkọ gba ipo ti laini agbara ti a fi sii nipa lilo pipaṣẹ atẹle.

# pip show powerline-status

Name: powerline-status
Version: 2.2.dev9999-git.aa33599e3fb363ab7f2744ce95b7c6465eef7f08
Location: /usr/local/lib/python2.7/dist-packages
Requires: 

Lọgan ti o ba mọ ipo gangan ti laini agbara, rii daju lati rọpo ipo ni laini isalẹ bi fun eto rẹ ti daba.

powerline-daemon -q
POWERLINE_BASH_CONTINUATION=1
POWERLINE_BASH_SELECT=1
. /usr/local/lib/python2.7/dist-packages/powerline/bindings/bash/powerline.sh

Bayi gbiyanju lati jade ati buwolu wọle pada lẹẹkansi, iwọ yoo wo awọn ila ila agbara bi a ṣe han ni isalẹ.

Gbiyanju lati yipada tabi yipada si awọn ilana oriṣiriṣi oriṣiriṣi ki o ma ṣojuuṣe\"akara akara" awọn iyipada kiakia lati fihan ipo rẹ lọwọlọwọ

Iwọ yoo tun ni anfani lati wo awọn iṣẹ isunmọtosi ni isunmọtosi ati ti o ba fi sori ẹrọ laini lori ẹrọ Lainos latọna jijin, o le ṣe akiyesi pe iyara naa ṣe afikun orukọ olupin nigba ti o ba sopọ nipasẹ SSH.

Ti vim ba jẹ olootu ayanfẹ rẹ, ni Oriire ohun itanna to lagbara fun vim, paapaa. Lati mu ohun itanna yi ṣiṣẹ, ṣafikun awọn ila wọnyi si ~/.vimrc faili.

set  rtp+=/usr/local/lib/python2.7/dist-packages/powerline/bindings/vim/
set laststatus=2
set t_Co=256

Bayi o le ṣe ifilọlẹ vim ki o wo laini ipo tuntun spiffy kan:

Akopọ

Powerline ṣe iranlọwọ lati ṣeto awọn ipo ipo awọ ati ẹlẹwa ati awọn itaniji ni awọn ohun elo pupọ, o dara fun awọn agbegbe ifaminsi. Mo nireti pe o rii itọsọna yii wulo ati ranti lati firanṣẹ ọrọ kan ti o ba nilo iranlọwọ eyikeyi tabi ni awọn imọran afikun.