Moving Your JavaScript Development To Bash On Windows

Tekijästä

Burke Holland on Nashvillessä, TN:ssä asuva front-end-kehittäjä, joka on maailman hienoin kaupunki. Hän nauttii JavaScriptistä paljon, koska se on ainoa tapa, jolla hän …LisätietojaBurke↬

  • 24 min. luettu
  • JavaScript
  • Tallennettu offline-lukemista varten
  • Jaa Twitterissä, LinkedIn
Rakastat Bash-päätettäsi, mutta rakastat myös PC:täsi? Ehkä olet silmäillyt uutta Surface-laitteistoa, mutta et voi vaihtaa ilman päätelaitettasi. Nyt sinulla voi olla Windows ja Bash. Tässä artikkelissa tarkastelemme perusteellisesti, miten Windows/Linux-kehityslaatikko voidaan asentaa JavaScript-kehitystä varten.

Olen yksi niistä ihmisistä, jotka eivät voi elää ilman Bash-terminaaliaan. Pelkästään tämä seikka on vaikeuttanut frontend-työn tekemistä Windowsissa. Olen töissä Microsoftilla ja käytän Macia. Vasta kun uusi Surface-laitteistolinja tuli muutama vuosi sitten ulos, tajusin:

Niinpä hankin sellaisen. Tarkalleen ottaen Surface Book 2, jossa on Windows 10. Laadin tätä artikkelia sillä juuri nyt. Entä minun ihana, ihana Bash-promptini? No, otin sen tietysti mukaani.

Tässä artikkelissa aion tarkastella perusteellisesti, miten Windows 10:n uusi teknologia mahdollistaa täydellisen Linux-päätteen käyttämisen Windowsissa. Näytän myös hämmästyttävän pääteasennukseni (jonka ”minä” nimesi ”kaikkien aikojen parhaaksi”) ja kuinka sinäkin voit perustaa ikioman Windows/Linux-kehityskoneesi.

Jos olet kaivannut Surface-laitteistoa, mutta et voi elää ilman Linux-päätettä, olet tullut oikeaan paikkaan.

Huomautus: Tätä kirjoitettaessa monet tämän artikkelin kohteet edellyttävät, että käytät tai vaihdat eri kohteiden, myös Windowsin, ”esikatselu-” tai ”sisäpiirin” versioita. Suurin osa näistä asioista tulee olemaan Windowsin pääversiossa jossain vaiheessa tulevaisuudessa.

Windows Subsystem For Linux (WSL)

Windows Subsystem for Linux eli ”WSL” mahdollistaa Linuxin käytön Windowsissa. Mutta mitä tämä hullu tiede oikein on?

WSL on nykyisessä muodossaan käännöskerros, joka muuntaa Linux-järjestelmäkutsut Windows-järjestelmäkutsuiksi. Linux toimii WSL:n päällä. Tämä tarkoittaa sitä, että saadaksesi Linuxin Windowsiin sinun täytyy tehdä kolme asiaa:

  1. Valmis WSL,
  2. Asenna Linux,
  3. Kirjoita aina kolme kohdetta listaan.

Kuten kävi ilmi, tuo käännöskerros on hiukan hidas – vähän kuin minä yrittäisin muistella tarvitsenko splice:tä vai slice. Tämä pätee erityisesti silloin, kun WSL lukee ja kirjoittaa tiedostojärjestelmään. Se on tavallaan suuri ongelma web-kehittäjille, koska mikä tahansa oikea npm install kopioi koneellesi tuhansia tiedostoja. En tiedä sinusta, mutta minä en aio kirjoittaa omia merkkijonojani vasemmalle.

WSL:n versio 2 on eri juttu. Se on huomattavasti nopeampi kuin nykyinen versio, koska se hyödyntää Windowsin virtualisointiydintä käännöskerroksen sijaan. Kun sanon, että se on ”huomattavasti nopeampi”, tarkoitan paljon, paljon nopeampaa. Yhtä nopeasti kuin minä googlaamalla ”splice vs slice”.

Tästä syystä näytän, miten WSL 2 asennetaan. Tätä kirjoitettaessa se edellyttää, että sinulla on Windowsin ”Insider”-rakennus.

Ensiksi: seuraa tätä lyhyttä ohjetta ottaaksesi WSL:n käyttöön Windows 10:ssä ja tarkista Windows-versionumerosi.

Kun olet asentanut WSL:n, paina Windows-näppäintä ja kirjoita ”windows insider”. Valitse sitten ”Windows Insider Program Settings”.

(Suuri esikatselu)

Sinulla on pari erilaista vaihtoehtoa sen suhteen, missä ”ringissä” haluat olla. Monet tuntemani ihmiset ovat nopealla kehällä. Minä olen kuitenkin varovainen kaveri. Lapsena menin leikkipuiston liukumäkeä alas vatsallani pitäen kiinni sivuista. Siksi pysyn hitaalla renkaalla. Olen ollut sillä nyt useita kuukausia, eikä se ole mielestäni häiritsevämpi tai epävakaampi kuin tavallinen Windows.

Hyvä vaihtoehto, jos haluat WSL 2:n, mutta et halua kuolla liukumäkeen.

(Suuri esikatselu)

Huomautus: Artikkelin julkaisemisen jälkeen sain selville, että WSL 2:ta ei itse asiassa olekaan hitaalla rengasalueella. Sinun täytyy olla nopealla renkaalla saadaksesi sen. Minun on täytynyt olla nopealla renkaalla jossain vaiheessa tätä artikkelia kirjoittaessani. Se on siis nopea rengas. Onnea liukuun!

Seuraavaksi sinun täytyy ottaa Windowsissa käyttöön ”Virtual Machine Platform” -ominaisuus, jota WSL:n versio 2 vaatii. Pääset tähän näyttöön painamalla Windows-näppäintä ja kirjoittamalla ”windows features”. Valitse sitten ”Ota Windowsin ominaisuudet käyttöön tai pois käytöstä”. Valitse ”Virtual Machine Platform”. ”Windows Subsystem for Linux” -vaihtoehdon pitäisi olla jo käytössä.

(Suuri esikatselu)

Nyt kun WSL on käytössä, voit asentaa Linuxin. Tämän teet, ironista kyllä, suoraan Windows Storesta. Vasta vuonna 2019 ehdottaisin, että ”asennat Linuxin Windows Storesta”.

Valittavanasi on useita eri jakeluja, mutta Ubuntu tulee olemaan tuetuin kaikissa työkaluissa, joita konfiguroimme myöhemmin – mukaan lukien VS Code. Kaikki tästä eteenpäin tulevat ohjeet olettavat Ubuntu-asennuksen. Jos asennat muun jakelun, kaikki vedot ovat poissa.

Hae ”Ubuntu” Windows Storesta. Valittavana on kolme: Ubuntu, Ubuntu 18.04 ja Ubuntu 16.04. Ubuntu taitaa todella pitää tuosta 04:n pikkuversionumerosta?

(Suuri esikatselu)

”Ubuntu”-distro (ensimmäinen tässä kuvakaappauksessa) on ”metaversio”, eli pikemminkin paikanvaraaja, joka vain osoittaa uusimpaan versioon. Tällä hetkellä se on 18.04.

Päädyin käyttämään metaversiota, koska myöhemmin näytän, miten selaat Linux-tiedostojärjestelmää Windows Explorerilla, ja on aika sotkuista, kun aseman nimenä on ”Ubuntu 18.04” vs. vain ”Ubuntu”.

Tämä asennus on aika nopea riippuen internet-yhteydestäsi. Se on vain noin 215 megatavua, mutta minulla on gigabitin yhteys täällä ja mistä tiedät, onko jollakulla gigabitin yhteys? Älä huoli, he kertovat sinulle.

Asennuksen jälkeen sinulla on nyt ”Ubuntu”-sovellus käynnistysvalikossasi.

(Suuri esikatselu)

Jos napsautat sitä, saat Bash-terminaalin!

(Suuri esikatselu)

Varaa hetki aikaa paistatella tekniikan ihmeessä.

Oletusarvoisesti käytät WSL-versiota 1. Jos haluat päivittää versioon 2, sinun on avattava PowerShell-terminaali ja suoritettava komento.

Paina Windows-näppäintä ja kirjoita ”Powershell”.

(Suuri esikatselu)

PowerShell-terminaalista näet, mikä WSL-versio sinulla on, suorittamalla wsl --list --verbose.

(Suuri esikatselu)

Jos näytössä on versio 1, sinun on suoritettava komento --set-version ja määritettävä instanssin nimi (Ubuntu) ja haluamasi versio (2).

wsl --set-version Ubuntu 2
(Suuri esikatselu)

Tämä vie hieman aikaa riippuen siitä, paljonko koneessasi on lihaa. Omassani kesti ”joitakin minuutteja” enemmän tai vähemmän. Kun se on valmis, olet WSL:n uusimmassa ja parhaassa versiossa.

Onko aivosi Linuxissa… Windowsissa.

Linux ei ole Windows. WSL ei ole bash-kehote Windows-käyttöjärjestelmän päällä. Se on täysi käyttöjärjestelmä itsessään omine kansiorakenteineen ja asennettuine sovelluksineen. Jos asennat Noden Windows-asennusohjelmalla, node kirjoittaminen Linuxissa epäonnistuu, koska Nodea ei ole asennettu Linuxiin. Se on asennettu Windowsiin.

WSL:n todellinen taika piilee kuitenkin tavassa, jolla se yhdistää Windowsin ja Linuxin saumattomasti niin, että ne näkyvät koneellasi yhtenä tiedostojärjestelmänä.

Tiedostojen ja kansioiden navigointi

Oletusarvoisesti Ubuntun päätepäätteestä putoat Linuxin kotihakemistoosi (tai /home/your-user-name). Voit siirtyä Windowsin puolelle siirtymällä /mnt/c.

(Suuri esikatselu)

Huomaa, että jotkut käyttöoikeudet kielletään tässä. Minun pitäisi napsauttaa Ubuntun kuvaketta hiiren kakkospainikkeella ja napsauttaa ”Suorita järjestelmänvalvojana” saadakseni pääsyn näihin tiedostoihin. Näin Windows tekee korotetut käyttöoikeudet. Windowsissa ei ole sudoa.

Sovellusten käynnistäminen

Voit käynnistää minkä tahansa Windows-sovelluksen Ubuntun päätelaitteesta. Esimerkiksi voin avata Windows Explorerin Unbuntun päätelaitteesta.

(Suuri esikatselu)

Tämä toimii myös toisinpäin. Voit suorittaa mitä tahansa Linuxin puolelle asennettua sovellusta. Tässä suoritan Linuxiin asennettua ”fortunea” Windowsin komentoriviltä. (Koska se ei ole kunnon Linux-asennus ilman satunnaisia, merkityksettömiä fortuneja.)

(Suuri esikatselu)

Kaksi eri käyttöjärjestelmää. Kaksi eri tiedostojärjestelmää. Kaksi erilaista asennettujen sovellusten joukkoa. Näetkö, miten tästä voi tulla hämmentävää?

Jotta kaikki pysyisi selvänä, suosittelen, että pidät kaikki JavaScript-kehitystiedostosi ja -työkalusi asennettuina Linuxin puolelle. Tästä huolimatta kyky siirtyä Windowsin ja Linuxin välillä ja käyttää tiedostoja molemmista järjestelmistä on WSL:n keskeinen taika. Älä unohda sitä, sillä se tekee tästä koko asetelmasta paremman kuin tavallinen Linux-laatikko.

Kehitysympäristön asentaminen

Tästä eteenpäin annan sinulle listan mielipidekirjoituksia siitä, mikä mielestäni tekee tappavasta Linux on Windows -asetelmasta. Muista vain: mielipiteeni ovat vain sitä. Mielipiteet. Sattuu vain niin, että kuten kaikki mielipiteeni, ne ovat 100-prosenttisesti oikeita.

Paremman päätelaitteen hankkiminen

Joo, sait päätelaitteen, kun asensit Ubuntun. Se on itse asiassa Windows-konsoli, joka on kytketty Linux-distroosi. Se ei ole huono konsoli. Voit muuttaa sen kokoa, ottaa käyttöön copy/paste (asetuksissa). Mutta et voi tehdä esimerkiksi välilehtiä tai avata uusia ikkunoita. Aivan kuten monet ihmiset käyttävät Macissa korvaavia terminaaliohjelmia (minä käytän Hyperiä), myös Windowsissa on muita vaihtoehtoja. Githubin Awesome WSL -lista sisältää melko tyhjentävän listan.

Nämä kaikki ovat hyviä emulaattoreita, mutta on olemassa uusi vaihtoehto, jonka ovat rakentaneet ihmiset, jotka tuntevat Windowsin melko hyvin.

Microsoft on työstänyt uutta sovellusta nimeltä ”Windows Terminal”.

(Suuri esikatseluversio)

Windows Terminal on asennettavissa Windows-kaupasta, ja se on tällä hetkellä esikatselussa. Olen käyttänyt sitä jo jonkin aikaa, ja siinä on tarpeeksi ominaisuuksia ja se on tarpeeksi vakaa, jotta voin antaa sille täyden tukeni.

Uudessa Windows Terminalissa on täydellinen välilehtikäyttöliittymä, kopiointi/liittäminen, useita profiileja, läpinäkyvät taustat, taustakuvat – jopa läpinäkyvät taustakuvat. Se on kenttäpäivä, jos haluat muokata terminaaliasi, ja tulin voittamaan tämän säkkikisan.

Tässä on nykyinen terminaalini. Käymme tässä läpi joitakin tärkeitä hienosäätöjä.

(Suuri esikatselu)

Windowsin päätelaite on varsin muokattavissa. Klikkaamalla ”⌄”-nuolta vasemmassa yläkulmassa (+ -merkin vieressä) pääset kohtaan ”Asetukset”. Tämä avaa JSON-tiedoston.

Sidonta Copy/Paste

Tiedoston yläosassa ovat kaikki näppäinsidonnat. Ensimmäiseksi kartoitin ”kopioinnin” Ctrl + C:hen ja liittämisen Ctrl + V:hen. Miten muuten kopioisin ja liittäisin Stack Overflow’sta komentoja, joita en ymmärrä?

{ "command": "copy", "keys": },{ "command": "paste", "keys": },

Ongelma on se, että Ctrl + C on jo kartoitettu SIGINT:iin eli Linuxin Interrupt/kill-komentoon. Windowsille on olemassa paljon päätelaitteita, jotka hoitavat tämän mapittamalla Copy/Paste komennon Ctrl + Shift + C ja Ctrl + Shift + V vastaavasti. Ongelmana on, että kopiointi/liittäminen on Ctrl + C / Ctrl + V joka toisessa paikassa Windowsissa. Painoin päätelaitteessa Ctrl + C yhä uudelleen ja uudelleen yrittäessäni kopioida asioita. En voinut lopettaa sitä.

Windowsin terminaali käsittelee tätä eri tavalla. Jos sinulla on teksti korostettuna ja painat Ctrl + C, se kopioi tekstin. Jos käynnissä on prosessi, se lähettää silti SIGINT-komennon alas ja keskeyttää sen. Tämä tarkoittaa sitä, että voit turvallisesti liittää Ctrl + C / Ctrl + V -komennon kopiointiin/liittämiseen Windows-päätteessä, eikä se häiritse prosessien keskeyttämistä.

Kuka olisi uskonut, että kopiointi/liittäminen voi aiheuttaa näin paljon sydänsuruja?

Esimerkkiprofiilin muuttaminen

Esimerkkiprofiili on se, mikä tulee näkyviin, kun uusi välilehti avataan. Oletuksena se on Powershell. Vieritä alaspäin ja etsi Linux-profiili. Tämä on se, joka avautuu wsl.exe -d Ubuntu. Kopioi sen GUID-tunnus ja liitä se defaultProfile-asetukseen.

Olen siirtänyt nämä kaksi asetusta niin, että ne ovat aivan vierekkäin, jotta ne ovat helpommin nähtävissä:

(Suuri esikatselu)

Taustan asettaminen

Tykkään, että taustani on tumma yksivärinen ja että siinä on litteä logon kaltainen kuva oikeassa kulmassa. Teen näin, koska haluan logon olevan kirkas ja näkyvä, mutta ei tekstin tiellä. Tämän tein itse, mutta Simple Desktops -sivustolla on loistava kokoelma litteitä kuvia, joista voi valita.

Tausta asetetaan backgroundImage-ominaisuudella:

"backgroundImage": "c:/Users/YourUserName/Pictures/earth.png"
(Suuri esikatselu)

Huomaa myös asetus nimeltä ”akryyli”. Tämän avulla voit säätää taustan läpinäkymättömyyttä. Jos sinulla on yksivärinen taustaväri, tämä on melko suoraviivaista.

"background": "#336699","useAcrylic": true,"acrylicOpacity": 0.5
(Suuri esikatselu)

Voit tehdä tämän myös taustakuvan kanssa yhdistämällä arcylicOpacity-asetuksen backgroundImageOpacity:n kanssa:

"backgroundImage": "c:/Users/username/Pictures/earth-and-stars.png","useAcrylic": true,"acrylicOpacity": 0.5
(Suuri esikatselu)

Teemassani läpinäkyvyys saa kaiken näyttämään vaimealta, joten pidän useAcrylic-asetuksen false.

Vaihda fonttia

Windowsin päätelaitteen rakentajatiimi työstää myös uutta fonttia nimeltä ”Cascadia Code”. Se ei ole saatavilla tätä kirjoitettaessa, joten saat sen sijaan Windowsin oletusfontin.

Windowsin päätelaitteen oletusfontti on ”Consolas”. Tämä on sama fontti, jota Windowsin komentorivi käyttää. Jos haluat aidon Ubuntu-tunnelman, Chris Hoffman kertoo, miten voit asentaa Ubuntun virallisen Mono-fontin.

Tässä on ennen ja jälkeen, jotta näet eron:

"fontFace": "Ubuntu Mono"
(Suuri esikatselu)

Näyttävät melko samankaltaisilta; suurin ero on Ubuntu Monon välissä, joka tekee päätelaitteesta vain hieman tiukemman ja siistimmän.

Värimaailmat

Värimaailmat sijaitsevat kaikki asetustiedoston alaosassa. Kopioin ”Campbell”-värimaailman perusasetukseksi. Yritän sovittaa värit yhteen niiden nimien kanssa, mutta en pelkää myöskään rötöstelyä. Kartoitan ”#ffffffff” ”siniseksi” – en edes välitä.

(Suuri esikatselu)

Jos pidät tästä nimenomaisesta skeemasta, jonka olen nimittänyt ”Maaksi”, olen koonnut tämän gistin, jotta sinun ei tarvitse kopioida manuaalisesti kaikkea tätä sekasotkua kuvakaappauksesta.

Huomautus: Värien esikatselu tulee VS Code -ohjelman ”Color Highlight” -laajennuksen ansiosta.

Change The Default Starting Directory

Oletusarvoisesti WSL-profiili pudottaa sinut kotihakemistoosi Windowsin puolella. Tässä artikkelissa suosittelemieni asetusten perusteella se olisi parempi pudottaa sen sijaan Linuxin home-kansioon. Tätä varten muuta ”Ubuntu”-profiilisi startingDirectory-asetusta:

"startingDirectory": "\\wsl$\Ubuntu\home\burkeholland"

Huomaa siinä oleva polku. Voit käyttää tätä polkua (ilman ylimääräisiä escape-viivoja) päästäksesi WSL:ään Windowsin komentoriviltä.

(Suuri esikatselu)

Asenna Zsh/Oh-My-Zsh

Jos et ole koskaan aiemmin käyttänyt Zsh:ta ja Oh-My-Zsh:ta, sinua odottaa varsinainen herkku. Zsh (tai ”Z Shell”) on Linuxin korvaava komentotulkki. Se laajentaa Bashin perusominaisuuksia sisältäen implisiittisen hakemistonvaihdon (ei tarvitse kirjoittaa cd), paremman teematuen, paremmat kehotteet ja paljon muuta.

Asennat Zsh:n napataksesi sen apt-paketinhallintaohjelmalla, joka tulee Linux-asennuksen mukana:

sudo apt install zsh

Asenna oh-my-zsh curl:n avulla. Oh-my-zsh on joukko konfiguraatioita zsh:lle, jotka parantavat komentotulkkikokemusta entisestään lisäosilla, teemoilla ja lukemattomilla pikanäppäimillä.

sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

Sitten se kysyy, haluatko vaihtaa oletuskomentotulkin Zsh:ksi. Haluat, joten vastaa myöntävästi ja olet nyt käyttämässä Zsh:ta ja Oh-My-Zsh:ta.

(Suuri esikatselu)

Huomaa, että kehote on nyt paljon siistimpi. Voit muuttaa tuon kehotteen ulkoasua muuttamalla teemaa tiedostossa ~/.zshrc.

Avaa se komennolla nano, joka on vähän kuin VIM, mutta voit muokata asioita ja poistua tarvittaessa.

nano ~/.zshrc

Vaihda riviä, joka asettaa teeman. Sen yläpuolella on URL-osoite, jossa on koko luettelo teemoista. Minusta tuo ”pilvi” on kiva. Ja söpö.

(Suuri esikatselu)

Voidaksesi saada muutokset .zshrc poimittua, sinun täytyy lähteä siitä:

source ~/.zshrc
(Suuri esikatselu)

Note: Jos valitset ”agnosterin” kaltaisen teeman, joka vaatii glyfejä, tarvitset Ubuntu Monon virtajohtoisen version, jossa on… glyfejä. Muuten päätelaitteesi on vain täynnä outoja merkkejä kuin olisit murskannut kasvosi näppäimistöön. Nerd Fonts tarjoaa yhden, joka näyttää toimivan melko hyvin.

Nyt voit tehdä asioita, kuten vaihtaa hakemistoja vain syöttämällä hakemiston nimen. Ei tarvita cd. Haluatko palata hakemistoon? Tee vain ... Sinun ei tarvitse edes kirjoittaa koko hakemiston nimeä, kirjoita vain muutama ensimmäinen kirjain ja paina tabulaattoria. Zsh antaa sinulle luettelon kaikista hakuasi vastaavista tiedostoista/hakemistoista, ja voit selata niitä tabulaattorilla.

(Suuri esikatselu)

Noden asentaminen

Verkkokehittäjänä haluat todennäköisesti asentaa Noden. Oletan, että sinun ei tarvitse asentaa Nodea tehdessäsi web-kehitystä, mutta se tuntuu siltä vuonna 2019!

Ensimmäinen vaistosi saattaa olla asentaa Node apt:llä, minkä voit tehdä, mutta katuisit sitä kahdesta syystä:

  1. Noden versio apt:ssä on ikävästi vanhentunut;
  2. Sinun kannattaisi asentaa Node versiohallinnalla, jotta et törmääisi käyttöoikeusongelmiin.

Paras tapa ratkaista nämä molemmat ongelmat on asentaa nvm (Node Version Manager). Koska olet asentanut zsh, voit vain lisätä nvm-liitännäisen zshrc-tiedostoosi ja zsh hoitaa loput.

Asenna ensin liitännäinen kloonaamalla zsh-nvm-reposta. (Älä huoli, Git on vakiona Ubuntu-asennuksessasi.)

git clone https://github.com/lukechilds/zsh-nvm ~/.oh-my-zsh/custom/plugins/zsh-nvm

Sitten lisää se lisäosana ~/.zshrc-tiedostoon.

`nano ~/.zshrc`plugins (zsh-nvm git)
(Suuri esikatselu)

Muista lähde zshrc-tiedosto uudestaan source ~/.zshrc:llä ja näet nvm:n olevan asennettuna.

(Suuri esikatselu)

Nyt pystyt asentamaan noden nvm:llä. Sen avulla on helppo asentaa useita rinnakkaisia versioita nodesta ja vaihtaa niiden välillä vaivattomasti. Ei myöskään käyttöoikeusvirheitä, kun teet globaaleja npm-asennuksia!

nvm install --lts

Suosittelen tätä tavallisen nvm-asennuksen sijaan, koska lisäosa antaa sinulle mahdollisuuden päivittää nvm helposti. Tämä on aika hankalaa tavallisen ”curl”-asennuksen kanssa. Se on yksi komento laajennuksen kanssa.

nvm upgrade

Automaattiehdotusten hyödyntäminen

Yksi erittäin suosikkiliitännäisistäni zsh:lle on zsh-autosuggestions. Se muistaa asioita, jotka olet kirjoittanut terminaaliin aiemmin, ja tunnistaa ne sitten, kun alat kirjoittaa niitä uudelleen sekä ”auto-suggests” rivin, jota saatat tarvita. Tämä lisäosa on ollut kätevä useammin kuin muistankaan – erityisesti silloin, kun on kyse pitkistä CLI-komennoista, joita olen käyttänyt aiemmin, mutta joita en koskaan muista.

Kloonaa repo zsh extensions -kansioon:

git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions

Sitten lisää se zsh-lisäosiin ja lähde zshrc-tiedosto:

nano ~/.zshrc# In the .zshrc fileplugins(zsh-nvm zsh-autosuggestions git)source ~/.zshrc

Lisäosa lukee zsh-historiaasi, joten aloita jonkun aiemmin kirjoittamasi komennon näppäileminen ja katsele taikaa. Kokeile kirjoittaa edellä olevan pitkän clone-komennon alkuosa.

(Suuri esikatselu)

Jos painat ↹, se täydentää komennon automaattisesti. Jos jatkat ↹-näppäimen painamista, se käy läpi kaikki historiassasi olevat komennot, jotka voisivat sopia yhteen.

Tärkeitä näppäinpikanäppäimiä

On muutama terminaalin pikanäppäin, joita käytän koko ajan. Löydän nämä kaikista työkaluistani – myös VS Code -ohjelmasta. Kaikkien pikanäppäinten opettelu on ajanhukkaa, koska et käytä niitä tarpeeksi, jotta muistaisit ne.

Tässä on muutama, joita käytän säännöllisesti:

Terminaalin pikanäppäin Mitä se tekee?
Ctrl + L Tämä tyhjentää terminaalin ja palauttaa sinut takaisin alkuun. Se vastaa ”tyhjennä” kirjoittamista.
Ctrl + U Tämä tyhjentää vain nykyisen rivin.
Ctrl + A Saat kursorin komentorivin alkuun.
Ctrl + E Siirtyy rivin loppuun.
Ctrl + K Poistaa kaikki merkit kursorin jälkeen.

Se on siinä! Kaiken muun olen luultavasti oppinut ja sitten unohtanut, koska sitä ei koskaan käytetä.

Gitin konfigurointi(Hub/Lab/Whatevs)

Git tulee Ubuntussa, joten asennusta ei tarvita. Voit seurata valitsemasi lähdekoodinhallintahosterin ohjeita saadaksesi ssh-avaimesi luotua ja toimimaan.

Huomaa, että Githubin ohjeissa kehotetaan käyttämään ”copy”-apuohjelmaa ssh-avaimen kopioimiseen. Ubuntussa on ”xcopy”-komento, mutta se ei tule toimimaan tässä tapauksessa, koska Linuxin ja Windowsin välillä ei ole interopia leikepöydän suhteen.

Sen sijaan voit käyttää Windowsin leikepöydän suoritusohjelmaa ja kutsua sitä suoraan terminaalista. Sinun täytyy saada teksti ensin cat:llä ja sitten putkella se Windowsin leikepöydälle.

cat ~/.ssh/id_rsa.pub | clip.exe 

Githubin dokumentit kertovat, että sinun täytyy varmistaa, että ssh-agent on käynnissä. Se ei ole. Näet tämän, kun yrität lisätä avaimesi agenttiin:

(Suuri esikatselu)

Voit käynnistää agentin, mutta kun käynnistät Windowsin seuraavan kerran uudelleen tai WSL pysäytetään, sinun on käynnistettävä se uudelleen. Tämä johtuu siitä, että WSL:ssä ei ole käynnistysjärjestelmää. Ei ole systemd tai muuta prosessia, joka käynnistää kaikki palvelut, kun WSL käynnistyy. WSL on vielä esikatseluvaiheessa, ja tiimi työstää ratkaisua tähän.

Sillä välin, uskokaa tai älkää, tähänkin on olemassa zsh-lisäosa. Sen nimi on ssh-agent, ja se tulee asennettuna oh-my-zsh:n mukana, joten sinun tarvitsee vain viitata siihen .zshrc-tiedostossa.

zsh-nvm zsh-autosuggestions ssh-agent git

Tämä käynnistää ssh-agentin automaattisesti, jos se ei ole käynnissä ensimmäisellä kerralla, kun käynnistät WSL:n. Huonona puolena on, että se kysyy salasanaa joka kerta, kun WSL käynnistetään uudelleen. Tämä tarkoittaa käytännössä aina, kun käynnistät tietokoneesi uudelleen.

(Suuri esikatselu)

VS-koodi ja WSL

WSL:llä ei ole graafista käyttöliittymää, joten et voi asentaa visuaalista työkalua, kuten VS Code. Se pitää asentaa Windowsin puolelle. Tämä aiheuttaa ongelman, koska sinulla on Windows-puolella toimiva ohjelma, joka käyttää tiedostoja Linux-puolella, ja tämä voi johtaa kaikenlaisiin omituisuuksiin ja ”permission denied” -ongelmiin. Yleisenä nyrkkisääntönä Microsoft suosittelee, että WSL-puolen tiedostoja ei muuteta Windows-ohjelmilla.

Tämän ongelman ratkaisemiseksi VS Codeen on olemassa laajennus nimeltä ”Remote WSL”. Tämä laajennus on Microsoftin tekemä, ja sen avulla voit kehittää WSL:ssä, mutta VS Code:n sisältä.

Kun laajennus on asennettu, voit liittää VS Code:n suoraan Ubuntun puolelle avaamalla komentopaletin (Ctrl + Shift + P) ja valitsemalla ”Remote-WSL: New Window”.

(Suuri esikatselu)

Tällöin avautuu uusi VS Code -instanssi, jonka avulla voit työskennellä kuin olisit täysin Linuxin puolella. Tekemällä ”File/Open” selaat Ubuntun tiedostojärjestelmää Windowsin sijasta.

(Suuri esikatselu)

VS Codeen integroitu terminaali avaa kauniisti räätälöidyn zsh-asetuksen. Kaikki ”vain toimii” niin kuin pitääkin, kun sinulla on asennettuna Remote WSL -laajennus.

Jos avaat koodia terminaalista code .:llä, VS Code havaitsee automaattisesti, että se on avattu WSL:stä, ja liittää automaattisesti Remote WSL -laajennuksen.

VS Code -laajennukset Remote WSL:llä

VS Code -laajennuksen Remote WSL -laajennus VS Code -ohjelmistoon toimii siten, että se asettaa pienen palvelimen Linuxin puolelle, ja muodostaa sitten yhteyden siihen VS Code -ohjelmistosta Windowsin puolella. Tästä johtuen VS Codeen asennetut laajennukset eivät näy automaattisesti, kun avaat projektin WSL:stä.

Minulla on esimerkiksi Vue-projekti avoinna VS Codessa. Vaikka minulla on asennettuna kaikki oikeat Vue-laajennukset syntaksin korostusta, muotoilua ja muuta vastaavaa varten, VS Code käyttäytyy kuin se ei olisi koskaan ennen nähnyt .vue-tiedostoa.

(Suuri esikatselu)

Kaikki asennetut laajennukset voidaan ottaa käyttöön WSL:ssä. Etsi vain haluamasi laajennus WSL:stä ja napsauta ”Asenna WSL:ään” -painiketta.

(Suuri esikatselu)

Kaikki WSL:ään asennetut laajennukset näkyvät omassa osiossaan Extensions Explorer -näkymässä. Jos sinulla on paljon laajennuksia, voi olla hieman ärsyttävää asentaa jokainen erikseen. Jos haluat vain asentaa kaikki WSL:ssä olevat laajennukset, napsauta pientä pilvilatauskuvaketta ’Paikalliset – asennetut’ -osion yläreunassa.

(Suuri esikatselu)

How To Setup Your Dev Directories

Tämä on jo mielipidekirjoitus, joten tässä on artikkeli, jota et pyytänyt, siitä, miten mielestäni sinun pitäisi jäsentää projektisi tiedostojärjestelmässäsi.

Pidän kaikki projektini Linuxin puolella. En laita projektejani ”Omat tiedostot” -osioon ja yritä sitten työskennellä niiden kanssa WSL:stä käsin. Aivoni eivät kestä sitä.

Luotan kansion nimeltä /dev, jonka laitan Linuxissa /home-kansioni juureen. Tuon kansion sisälle luon toisen kansion, jolla on sama nimi kuin Github-repollani: /burkeholland. Tuohon kansioon menevät kaikki projektini – myös ne, joita ei ole työnnetty Githubiin.

Jos kloonaan repon eri Github-tililtä (esim. ”microsoft”), luon ”dev”-kansioon uuden kansion nimeltä /microsoft. Sitten kloonaan repon sen sisällä olevaan kansioon.

Periaatteessa jäljittelen samaa rakennetta kuin lähdekoodinhallinta paikallisella koneellani. Minusta on paljon helpompi päätellä, missä projektit ovat ja mihin reposiin ne on liitetty pelkästään niiden sijainnin perusteella. Se on yksinkertaista, mutta auttaa minua tehokkaasti pitämään kaiken järjestyksessä. Ja tarvitsen kaiken mahdollisen avun.

(Suuri esikatselu)

Tiedostojen selaaminen Windows Explorerista

Voi olla tilanteita, jolloin tiedostoon on päästävä Linuxissa käsiksi Windowsin puolelta. WSL:ssä on se hieno puoli, että se onnistuu edelleen.

Yksi tapa on käyttää WSL:ää aivan kuin mapattua asemaa. Pääset siihen käsiksi \wsl$:llä suoraan explorer-palkista:

\wsl$
(Suuri esikatselu)

Voit tehdä näin monista eri syistä. Esimerkiksi juuri tänään tarvitsin Chrome-laajennusta, jota ei ole verkkokaupassa. Niinpä kloonasin repon WSL:ssä, sitten navigoin siihen ”Unpacked Extensionina” ja latasin sen Edgeen.

Yksi asia, jota teen melko usein Linuxissa, on avata tiedoston sisältävä hakemisto suoraan terminaalista. Tämän voi tehdä myös WSL:ssä kutsumalla suoraan explorer.exe. Esimerkiksi tämä komento avaa nykyisen hakemiston Windows Explorerissa.

$ explorer.exe .

Tämä komento on kuitenkin hieman hankala. Linuxissa se on vain open .. Voimme tehdä saman taikuuden luomalla aliaksen ~/.zshrc.

alias open="explorer.exe"

Docker

Kun sanoin, että kaikkien työkalujen pitäisi olla Linuxin puolella, tarkoitin sitä. Se sisältää myös Dockerin.

Tässä kohtaa kumi todella alkaa kohtaamaan tien. Tarvitsemme Dockerin, joka toimii Linuxin sisällä, joka toimii Windowsin sisällä. Se on vähän kuin venäläinen pesänukke, kun sen kirjoittaa blogikirjoitukseen. Todellisuudessa se on melko suoraviivaista.

Tarvitset oikean Docker-version Windowsille. Tätä kirjoitettaessa se on WSL 2 Tech Preview.

Kun suoritat asennusohjelman, se kysyy, haluatko käyttää Windows-säiliöitä Linux-säiliöiden sijaan. Haluat ehdottomasti. Muuten et saa mahdollisuutta käyttää Dockeria WSL:ssä.

(Suuri esikatselu)

Voit nyt ottaa Dockerin käyttöön WSL:ssä napsauttamalla järjestelmätarjottimessa olevaa kohdetta ja valitsemalla ”WSL 2 Tech Preview”:

(Suuri esikatselu)

Palvelun käynnistyttyäsi pystyt käyttämään Dockeria WSL:ssä juuri niin kuin oletitkin pystyväsi. Dockerin käyttäminen WSL:ssä parantaa suorituskykyä ja konttien kylmäkäynnistymisaikaa.

Saanko myös suositella, että asennat Docker-laajennuksen VS Codeen? Se tuo visuaalisen käyttöliittymän Docker-asetukseesi ja yleensä vain helpottaa Dockerin kanssa työskentelyä, koska sinun ei tarvitse muistaa kaikkia niitä komentorivin lippuja ja optioita.

Lisää Bashia Windowsissa

Tässä vaiheessa sinun pitäisi saada käsitys siitä, miten Bash laitetaan Windowsiin ja miten se toimii, kun se on saatu sinne. Voit muokata päätepäätettäsi loputtomasti ja siellä on kaikenlaisia rad ohjelmia, joita voit lisätä tekemään asioita, kuten PATH-muuttujien automaattinen asettaminen, aliasien luominen, ASCII-lehmän saaminen päätepäätteeseesi ja paljon muuta.

Bashin käyttäminen Windowsissa avasi minulle täysin uuden universumin. Pystyn yhdistämään Windowsin, jota rakastan tuottavuuspuolen vuoksi, ja Linuxin, josta olen riippuvainen kehittäjänä. Mikä parasta, voin nyt rakentaa sovelluksia molemmille alustoille yhdellä koneella.

Lisälukemista

Voit lukea lisää Bashista Windowsissa täältä:

  • ”Windows Subsystem For Linux Installation Guide For Windows 10,” Microsoft Docs
  • ”How To Install And Use The Bash Shell On Windows 10,” Chris Hoffman, How-To Geek
  • ”Sharing SSH With WSL,” Drew Wilson
  • ”Getting Crazy With The Window Subsystem For Linux,” Brian Ketelsen
  • ”Everything You Can Do With Windows 10’s New Bash Shell,” Chris Hoffman, How-To Geek

Erityiset kiitokset Brian Ketelsenille, Matt Hernandezille, Rich Turnerille ja Craig Loewenille heidän kärsivällisyydestään, avustaan ja opastuksestaan tämän artikkelin kanssa.

(rb, dm, il)

Vastaa

Sähköpostiosoitettasi ei julkaista.