Powerline - Żid linji ta 'status u Prompts b'saħħithom ma' Vim Editur u Bash Terminal


Powerline huwa plugin statusline kbir għall-editur Vim, li huwa żviluppat f'Python u jipprovdi statuslines u prompts għal ħafna applikazzjonijiet oħra bħal bash, zsh, tmux u ħafna aktar.

  1. Huwa miktub f'Python, li jagħmilha estensibbli u b'ħafna karatteristiċi.
  2. Bażi ta' kodiċi stabbli u li tista' tiġi ttestjata, li taħdem tajjeb ma' Python 2.6+ u Python 3.
  3. Jappoġġja wkoll prompts u statuslines f'diversi utilitajiet u għodod Linux.
  4. Għandu konfigurazzjonijiet u kuluri dekoraturi żviluppati bl-użu ta' JSON.
  5. Mgħaġġel u ħafif, b'appoġġ daemon, li jipprovdi prestazzjoni saħansitra aktar aħjar.

F'dan l-artikolu, ser nuruk kif tinstalla fonts Powerline u Powerline u kif tuża ma 'Bash u Vim taħt sistemi bbażati fuq RedHat u Debian.

Pass 1: Installazzjoni ta 'Rekwiżiti Ġeneriċi għal Powerline

Minħabba kunflitt ta' ismijiet ma' xi proġetti oħra mhux relatati, il-programm powerline huwa disponibbli fuq PyPI (Python Package Index) taħt l-isem tal-pakkett bħala powerline-status.

Biex ninstallaw pakketti minn PyPI, neħtieġu 'pip' (għodda ta 'ġestjoni tal-pakketti għall-installazzjoni ta' pakketti Python). Allura, ejja l-ewwel ninstallaw l-għodda tal-pip taħt is-sistemi Linux tagħna.

# 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) ...

Taħt sistemi bbażati fuq Fedora, trid l-ewwel tippermetti epel-repository u mbagħad tinstalla pakkett pip kif muri.

# 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!

Pass 2: Installazzjoni tal-Għodda Powerline fil-Linux

Issa wasal iż-żmien li tinstalla l-aħħar verżjoni tal-iżvilupp Powerline mir-repożitorju Git. Għal dan, is-sistema tiegħek għandu jkollha pakkett git installat sabiex iġġib il-pakketti minn Git.

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

Sussegwentement tista 'tinstalla Powerline bl-għajnuna tal-kmand tal-pip kif muri.

# 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...

Pass 3: Installazzjoni tal-Powerline Fonts fil-Linux

Powerline juża glifi speċjali biex juri effett ta 'vleġġa speċjali u simboli għall-iżviluppaturi. Għal dan, irid ikollok font simbolu jew font patch installata fis-sistemi tiegħek.

Niżżel l-aktar verżjoni reċenti tat-tipa tas-simbolu u l-fajl tal-konfigurazzjoni tal-fontconfig billi tuża l-kmand wget li ġej.

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

Imbagħad għandek bżonn tmexxi l-font fid-direttorju tal-fonts tiegħek, /usr/share/fonts/ jew /usr/local/share/fonts kif ġej jew tista' tikseb il-mogħdijiet tat-tipa validi billi tuża l-kmand xset q .

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

Sussegwentement, għandek bżonn taġġorna l-cache tat-tipa tas-sistema tiegħek kif ġej.

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

Issa installa l-fajl fontconfig.

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

Nota: Jekk is-simboli tad-dwana ma jidhrux, imbagħad ipprova tagħlaq is-sessjonijiet kollha tat-terminal u terġa 'tibda t-tieqa X biex il-bidliet jidħlu fis-seħħ.

Pass 4: L-issettjar tal-Powerline għal Bash Shell u Vim Statuslines

F'din it-taqsima se nħarsu lejn il-konfigurazzjoni ta' Powerline għal bash shell u editur vim. L-ewwel agħmel it-terminal tiegħek biex tappoġġja 256color billi żżid il-linja li ġejja mal-fajl ~/.bashrc kif ġej.

export TERM=”screen-256color” 

Biex tippermetti Powerline fil-bash shell b'mod awtomatiku, trid iżżid is-snippet li ġej mal-fajl ~/.bashrc tiegħek.

L-ewwel ikseb il-post tal-powerline installat billi tuża l-kmand li ġej.

# pip show powerline-status

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

Ladarba tkun taf il-post attwali tal-powerline, kun żgur li tissostitwixxi l-post fil-linja ta 'hawn taħt kif issuġġerit is-sistema tiegħek.

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

Issa ipprova logout u illoggja lura mill-ġdid, se tara statuesline powerline kif muri hawn taħt.

Ipprova ibdel jew taqleb għal direttorji differenti u żomm għajnejk fuq il-bidliet fil-pront \breadcrumb biex turi l-post attwali tiegħek.

Int tkun tista 'tara wkoll impjiegi fl-isfond pendenti u jekk powerline huwa installat fuq magna Linux remota, tista' tinnota li l-pront iżid l-isem tal-host meta tikkonnettja permezz ta 'SSH.

Jekk vim huwa l-editur favorit tiegħek, fortunatament hemm plugin b'saħħtu wkoll għal vim. Biex tippermetti dan il-plugin, żid dawn il-linji fil-fajl ~/.vimrc.

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

Issa tista 'tniedi vim u tara linja ta' status ġdid spiffy:

Sommarju

Powerline jgħin biex jistabbilixxi statuslines ikkuluriti u sbieħ u prompts f'diversi applikazzjonijiet, tajbin għall-ambjenti ta 'kodifikazzjoni. Nittama li ssib din il-gwida utli u ftakar li tpoġġi kumment jekk għandek bżonn xi għajnuna jew jekk ikollok ideat addizzjonali.