Få Spiffy Med Powerline

Hva du skal skape

Hver redaktør og terminal skal har en statuslinje. Det er et informasjonssted som forteller deg hvor du er i filen eller katalogstrukturen, programmets tilstand, git-status hvis det er aktuelt, etc. Ofte er det vanskelig å endre og nesten alltid umulig å holde konsistens på tvers av applikasjoner.

Det er her Powerline kommer inn. Powerline er en python-demon som leverer en konsistent, pent formatert statuslinjeinformasjon som kan brukes i alle redigerings- eller terminalskall.

Du kan også legge til ekstra informasjon (vær, tid, osv.). Ved slutten av opplæringen vil du kunne gjøre statuslinjen i terminal vim, MacVim, zsh, bash eller fisk, slik du vil ha den, og få den til å vise informasjonen du trenger.

Installasjon

Den enkleste måten å installere er å bruke pip fra python Du må sørge for at Python er versjon 2.7 eller 3.3 for å fungere. Du kan sjekke den installerte Python-versjonen med følgende kommando:

python - versjon 

Det skulle komme tilbake:

Python 2.7.5 

Hvis du har en eldre versjon av Python, bare installer en nyere versjon ved hjelp av HomeBrew. Hvis du ikke har installert HomeBrew ennå, sjekk ut Homebrew Demystified: OS Xs Ultimate Package Manager.

Når Python-versjonen er oppdatert, kan du bruke pip å installere Powerline. Bruk denne kommandolinjen:

pip installere - bruker git + git: //github.com/Lokaltog/powerline 

Dette installerer den nyeste versjonen fra Powerline på GitHub. Du bør beholde en kopi av dokumentasjonen som er åpen i nettleseren. 

Du må laste ned en zip-versjon fra GitHub. Rørinstallasjonen kopierer ikke alle filene som trengs. Det blir bare det som trengs for å gjøre biblioteket til Python. Du vil bruke den nedlastede kopien for å installere det som ikke blir installert. 

Viser pipens installasjonssted for Powerline

For å se hvor pip setter alt, skriv dette på kommandolinjen:

pip show powerline 

Du må kopiere katalogstedet og bytte til katalogen.

Kommer til Pips installasjon av Powerline

Du kan se høyspentlinje katalog og Python egginformasjon i katalogen. Å åpne en Finder vindu i katalogen, skriv inn:

åpen . 
Åpner Finder til katalogen og kopierer filer

Med en Finder vinduet åpent for den katalogen, last ned og pakke ut Powerline-filene fra GitHub og kopier høyspentlinje og skript kataloger fra GitHub nedlasting til denne katalogen.

Å opprette grunnleggende konfigurasjon for Høyspentlinje, skriv inn følgende kommandoer i kommandolinjegrensesnittet til Terminal:

cd mkdir .config mkdir .config / powerline 

Den første cd bare legger deg inn i hjemmekatalogen. Hvis du allerede har en .config katalog i hjemmekatalogen, kan du hoppe over å gjøre det. Kopier konfigurasjonsfilene fra powerline / config_files / katalog av Høyspentlinje GitHub nedlasting til høyspentlinje katalog du nettopp opprettet.

Font installasjon

Powerline må ha spesialtegn installert i skrifttypen som brukes. Du kan laste ned forhåndskomponerte skrifttyper med disse symbolene. Jeg bruker Inconsolata for Powerline.

Installere Powerline-skrifttypen

Når du laster ned skrifttypen, endrer du navnet fra Inkonsolat for Powerline.otf til InconsolataPowerline.otf. Fontbook vil ikke åpne den på riktig måte ellers. Etter å ha endret navnet, dobbeltklikk det for å åpne og installere i systemet.

Konfigurere Terminal og iTerm2

Før de forskjellige terminalskallene blir formatert, vil Terminal og iTerm2 Programmer må konfigureres for å bruke skrifttypen som ble lastet ned.

Konfigurere skrifttyper på terminalen

Åpne Preferanser dialog for Terminal, å velge innstillinger, å velge Tekst, og velg Endring…  ved siden av Font overskrift. Velg Inkonsolat for Powerline font og lagre.

Konfigurere skrifttyper på iTerm2

Til iTerm2, åpne Preferanser dialog, velg profiler, å velge Tekst, og velg Endre skrift for Vanlig skrift å sette Inkonsolat for Powerline font og lagre. Gjør det samme for Ikke-ASCII-skrift innstillingen også.

Tips: Hvis fargene for Høyspentlinje til slutt endres mellom Terminal og iTerm2, vil du kanskje sjekke for å se om farger spesifikasjonene er de samme. Disse forhåndsdefinerte fargene vil påvirke fargene som brukes i Høyspentlinje. Hvis du bruker forskjellige profiler, bør disse forhåndsinnstillingene være de samme på tvers av profiler som ikke kan endres Høyspentlinjes utseende.

Konfigurere fisk

Fisk er et svært konfigurerbart skall for alle Unix-baserte systemer. Hvis du bruker Alfred, kan du bruke Fisk Verktøykasse arbeidsflyt for enkelt å redigere konfigurasjonsfilen.

Bruke Fish Toolbox Workflow

I Alfred Prompt, type f: editconfig og trykk på Tast inn nøkkel. Teksteditoren du konfigureres til å bruke med arbeidsflyten, åpnes for Fisk konfigurasjonsfil. Ellers åpner du ~ / .Config / fisk / config.fish fil i tekstredigeringsprogrammet. Legg til følgende linjer nederst:

sett fish_function_path $ fish_function_path "/Users/raguay/Library/Python/2.7/lib/python/site-packages/powerline/bindings/fish" powerline-setup 

De sett kommandoen må ha banen til Powerline-katalogen som du oppnådde fra pip show powerline kommandoen over. Neste linje kjører powerline-oppsett fiskfunksjon for å lage Powerline-spørringen.

Powerline Powered Fish Prompt

Åpne et nytt iTerm- eller Terminal-vindu med Fish bør gi deg denne meldingen.

Konfigurere Zsh

Å få Zsh ved hjelp av Høyspentlinje, du kan installere Oh-My-Zsh. Når du er installert, bare sett temaet til agnoster tema ved å redigere .zshrc fil i hjemmekatalogen. Endre ZSH_THEME linje for å se ut

ZSH_THEME = "agnoster" 
Powerline Powered Zsh Prompt ved hjelp av Oh-My-Zsh Agnoster Theme

De Zsh spørre bør nå se ut som bildet ovenfor. Forskjellene i Fisk rask og Zsh Snakk har å gjøre med agnoster tema for Oh-My-Zsh være annerledes enn standard Høyspentlinje konfigurasjon. Det er problemet med denne tilnærmingen: Oh-My-Zsh temaer forandrer fargene fra Høyspentlinje ordningen. Du kan kontrollere det litt, men ikke helt.

Hvis du ikke vil bruke Oh-My-Zsh, Fjern deretter alle referanser til Oh-My-Zsh fra din .zshrc og plasser dette på bunnen:

kilde / brukere /raguay/library/python/2.7/lib/python/site-packages/powerline/bindings/zsh/powerline.zsh 

Banen skal svare til det du mottok fra pip show powerline kommando.

Powerline i Zsh uten Oh-My-Zsh

Med den kodet på denne måten, ingen av Oh-My-Zsh egenskaper er i veien. Det ser nå ut akkurat som Fisk rask og styres av Høyspentlinje konfigurasjon.

Konfigurere Bash

De bash konfigurasjonen er nesten nøyaktig den samme som den andre tilnærmingen til Zsh konfigurasjon. I din .bashrc fil, plasser dette nederst:

kilde / brukere /raguay/library/python/2.7/lib/python/site-packages/powerline/bindings/bash/powerline.sh 

Banen skal svare til det du mottok fra pip show powerline kommando.

Basiskonfigurasjon

De bash spør nå ser akkurat ut som Fisk og Zsh prompt.

Konfigurere Vim og Macvim

Bruk teksteditoren, åpne .vimrc fil og legg til disse linjene:

sett rtp + = / Brukere / raguay / Bibliotek / Python / 2.7 / lib / python / site-packages / powerline / bindings / vim "Disse linjene konfigurerer miljøet for å vise grafikk og farger på riktig måte. sett nocompatible sett t_Co = 256 la g: minBufExplForceSyntaxEnable = 1 python fra powerline.vim importoppsett som powerline_setup python powerline_setup () python del powerline_setup hvis! Har ('gui_running') sett ttimeoutlen = 10 augroup FastEscape autocmd! Au InsertEnter * sett timeoutlen = 0 au InsertLeave * sett timeoutlen = 1000 augroup END endif set laststatus = 2 "Vis alltid statuslinjen i alle vinduer satt guifont = Inconsolata \ for \ Powerline: h14 sett noshowmode" Skjul standardmodusteksten (f.eks. - INSERT - under statuslinjen) 

Denne konfigurasjonen fungerer for konsoll Vim og MacVim. Legg merke til spesifikasjonen av skrifttypen i sett guifont definisjon. Du må unnslippe mellomromene i navnet på skrifttypen. Jeg liker en stor skrift, men du kan gjøre det mindre ved å endre nummeret ved siden av h. Den er satt her for en 14pt skriftstørrelse.

Konsoll Vim med Powerline

For å installere den nyeste MacVim med de riktige kompilerte innstillingene for Høyspentlinje, bruk denne Hjemme brygget installere kommando:

brew install macvim --env-std - override-system-vim 

Dette har MacVim overstyr systemet vim og bruk standardmiljøet.

MacVim med Powerline

MacVim har syntaksutheving pre-configured, men konsollen Vim ikke. Det viktigste er at Høyspentlinje statuslinjen ser det samme ut på begge!

Konfigurere Powerline Color Schemes og Themes

For å vise hvordan du kan endre fargene og temaene rundt, endrer jeg shell konfigurasjoner. Å endre Vim og MacVim, Du vil følge en lignende prosedyre.

Alle Høyspentlinje konfigurasjonsfiler er i ~ / .Config / powerline / katalogen. Der vil du se:

cd ~ / .config / powerline / ls colors.json colorschemes config.json temaer 

Denne katalogen inneholder to filer (colors.json og config.json) og to kataloger (temaer og colorschemes).

Tips: I Høyspentlinje, tema refererer til strukturen av informasjon i statuslinjen. Det har ingenting å gjøre med colorization.

De colors.json fil definerer tallverdiene for fargeavnet. Du må referere til denne filen for å se hvilke fargenavn som er definert eller for å lage nye.

De config.json filen er hovedkonfigurasjonsfilen for Høyspentlinje. Dette er det første stedet som Høyspentlinje ser etter konfigurasjonsinformasjon. Det forteller Høyspentlinje hvilken fargevalg og tema som skal brukes for hver applikasjon.

De temaer katalog inneholder alle temaene for alle Høyspentlinje aktiverte apper. Temaene for et skall skal være under temaer / skall /.

De colorschemes katalog inneholder de forskjellige fargevalgene for alle Høyspentlinje aktiverte apper. Fargevalgene for skall er i colorschemes / skall / katalog.

Åpne Høyspentlinje konfigurasjonsfil (~ / .Config / powerline / config.json).

Hvis du bruker alfred, du kan laste ned Powerline Toolbox Alfred arbeidsflyt. Bruke pl: conf beordre å bla gjennom Høyspentlinje konfigurasjonskatalog. Ved å velge en fil kan du redigere den. Ved å velge en katalog kan du legge inn den.

Du bør se en stor json fil. Seksjonen shell er hva jeg vil endre:

"shell": "colorcheme": "standard", "tema": "standard", "local_themes": "fortsettelse": "fortsettelse", "velg": "velg" 

Endre fargevalg nøkkelen til solarized.

Solarized Color Scheme Under Standard Color Scheme

Det vil gjøre en fin start. For å lage din egen, endre fargevalg nøkkelen til min i config.json fil og kopiere colorschemes / skall / solarized.json fil til colorschemes / skall / mine.json.

De mine.json vil se slik ut:

"name": "Solarized Dark", "groups": "jobnum": "fg": "oldlace", "bg": "darkgreencopper", "bruker": "fg": "oldlace" "bg": "blue", "attr": ["fet"], "superbruker": "fg": "oldlace", "bg": "rød", "attr" , "branchen": "fg": "old61", "bg": "green", "fg": "yellow", "bg": "royalblue5", "branch_clean": "fg": "gray61", "bg": "royalblue5", "fortsettelse": "fg": "lightyellow "," bg ":" darkgreencopper "," fortsettelse: nåværende ": " fg ":" oldlace "," bg ":" darkgreencopper "," attr ": [" fet "]," cwd " "fg": "oldgreen", "bg": "darkgreencopper", "cwd: current_folder": "fg": "oldlace", "bg": "darkgreencopper", "attr" , "cgd: divider": "fg": "gray61", "bg": "darkgreencopper", "vertsnavn": "fg": "oldlace", "bg": "darkgreencopper", "exit_fail" : "fg": "oldlace", "bg": "rød", "exit_success": "fg": "oldlace", "bg": "green", "miljø": "fg" "oldlace", "bg": "green", " modus ": " fg ":" oldlace "," bg ":" grønn "," attr ": [" fet "]," modus_translations ": " vicmd ": " grupper " : "fg": "oldlace", "bg": "blue", "attr": ["fet"] 

Du må endre Navn nøkkel til verdien Min. Gjør også disse endringene:

"cwd": "fg": "lightyellow", "bg": "gray13", "cwd: divider": "fg": "gray61", "bg": "gray13", 

Når du lagrer filen og trykker på retur på terminalen, får du det nye fargevalget.

Gruvefargeskjemaet under den solfargede fargeskjema

Det er nyttig å vise en dato og klokkeslettindikator. For å endre segmentoppsettene, en ny tema må opprettes. I config.json fil, endre tema nøkkel til verdien min. Kopier tema / skall / default.json fil til tema / skall / mine.json. Like før jsonlisten inneholder vertsnavn, legg til denne json listen:

"navn": "dato", "args": "format": "% m-% d% H:% M", 

Denne biten av json kode vil legge til et nytt segment ved hjelp av Dato kommando. De Dato kommandoen tar to argumenter: format som inneholder formatet for strftime () python kommando, og tiden er inne Det forteller om du skal bruke en egen tid fargevalg enn Dato en. Standardverdien for tiden er inne er greit. Dette format vil vise datoen med en Månededag 24 timer: minutter format.

Nå som det er et nytt segment, må en fargevalg legges til. I colorscheme / skall / mine.json fil, legg til disse linjene like over jobnum:

"date": "fg": "mediumcyan", "bg": "brightpurple", "tid" "fg": "mediumcyan", "bg": "hvit", 

For å forkorte antall overordnede kataloger som vises i spørringen, må du endre tema / skall / mine.json fil for å ha CWD segmentet ser slik ut:

"navn": "cwd", "args": "dir_limit_depth": 2, 

De dir_limit_depth definerer hvor mange foreldre kataloger vil bli vist. Her er det satt til 2.

Lagre konfigurasjonsfilene, og du kan se hvordan det ser ut.

Dato og klokkeslett lagt til Shell Prompt

Nedlastingen tilgjengelig med denne opplæringen har konfigurasjonsfilene du vil ha nå. Hvis du gjør en feil i filene, vil Høyspentlinje Snart vil raskt vise feil.

Listen over vanlige og programspesifikke kommandoer hjelper deg med å finne flere måter å endre spørringen din på. Siden det er alt i python, kan du til og med lage din egen!

Konklusjon

I denne opplæringen har jeg vist deg hvordan du konfigurerer Fisk shell, Zsh shell, bash skall, konsoll Vim, MacVim å bruke Høyspentlinje. Du vet nå hvordan du kan endre utseende og følelse av shell teksten. Det eneste igjen er å leke med din nye kunnskap og få den ultimate konfigurasjonen bare for deg!