Suomi

Opi luomaan omia VS Code -laajennuksia. Tämä kattava opas vie sinut asennuksesta julkaisuun, jotta voit tehostaa koodausympäristöäsi ja jakaa työsi maailmalle.

VS Code -laajennusten kehityksen hallinta: Kattava opas kansainvälisille kehittäjille

Visual Studio Codesta (VS Code) on tullut miljoonien kehittäjien suosikkikoodieditori maailmanlaajuisesti. Sen suosio perustuu sen keveyteen, tehokkaisiin ominaisuuksiin ja ennen kaikkea sen laajennettavuuteen. Mahdollisuus luoda omia laajennuksia antaa kehittäjille vapauden räätälöidä editori omiin tarpeisiinsa, mikä lisää tuottavuutta ja tehostaa työnkulkuja. Tämä kattava opas käy läpi prosessin, jolla luot oman VS Code -laajennuksesi, aina alkuasetuksista luomuksesi julkaisuun saakka.

Miksi kehittää VS Code -laajennuksia?

VS Code -laajennusten kehittäminen tarjoaa lukuisia etuja sekä yksittäisille kehittäjille että organisaatioille:

Edellytykset

Ennen kuin sukellat laajennuskehitykseen, varmista, että sinulla on seuraavat asennettuna:

Kehitysympäristön pystyttäminen

Kun edellytykset ovat kunnossa, olet valmis pystyttämään kehitysympäristösi:

  1. Luo uusi laajennusprojekti: Avaa terminaali ja suorita seuraava komento käynnistääksesi laajennusgeneraattorin:
  2. yo code
  3. Vastaa kehotteisiin: Generaattori esittää sarjan kysymyksiä laajennuksestasi. Tässä on erittely yleisimmistä kehotteista ja suositelluista vastauksista:
    • Minkä tyyppisen laajennuksen haluat luoda? Valitse "New Extension (TypeScript)" TypeScript-pohjaiselle laajennukselle, mikä on suositeltu lähestymistapa.
    • Mikä on laajennuksesi nimi? Valitse kuvaava ja uniikki nimi laajennuksellesi. Esimerkkejä: "Code Spell Checker," "JavaScript Snippets," "Python Autocomplete."
    • Mikä on laajennuksesi tunniste? Tämä on laajennuksesi uniikki tunniste, tyypillisesti muodossa `julkaisija.laajennuksen-nimi`. Valitse julkaisijan nimi (esim. GitHub-käyttäjänimesi tai yrityksen nimi).
    • Mikä on laajennuksesi kuvaus? Anna ytimekäs ja informatiivinen kuvaus siitä, mitä laajennuksesi tekee.
    • Alustetaanko git-tietovarasto? Valitse "Kyllä" alustaaksesi Git-tietovaraston versiohallintaa varten.
    • Haluatko käyttää eslintiä koodin tarkistukseen? Valitse "Kyllä" varmistaaksesi yhtenäisen koodityylin.
  4. Avaa projekti VS Codessa: Kun generaattori on valmis, avaa juuri luotu projektikansio VS Codessa.

Projektirakenteen ymmärtäminen

Laajennusgeneraattori luo perusprojektirakenteen seuraavilla avaintiedostoilla:

Ensimmäisen laajennuksen kirjoittaminen

Aloitetaan luomalla yksinkertainen laajennus, joka näyttää "Hello World" -viestin, kun komento suoritetaan:

  1. Avaa `src/extension.ts`: Tämä tiedosto sisältää `activate`-funktion, joka kutsutaan, kun laajennuksesi aktivoidaan.
  2. Muokkaa `activate`-funktiota: Korvaa olemassa oleva koodi seuraavalla:
  3. import * as vscode from 'vscode';
    
    export function activate(context: vscode.ExtensionContext) {
    	console.log('Congratulations, your extension \"my-extension\" is now active!');
    
    	let disposable = vscode.commands.registerCommand('my-extension.helloWorld', () => {
    		vscode.window.showInformationMessage('Hello World from My Extension!');
    	});
    
    	context.subscriptions.push(disposable);
    }
    
    export function deactivate() {}
  4. Selitys:
    • `vscode.commands.registerCommand('my-extension.helloWorld', ...)`: Rekisteröi komennon tunnisteella `my-extension.helloWorld`. Tämä komento on saatavilla VS Coden komentopaletissa.
    • `vscode.window.showInformationMessage('Hello World from My Extension!')`: Näyttää tietoviestin VS Code -ikkunassa.
    • `context.subscriptions.push(disposable)`: Lisää komennon laajennuksen tilauksiin, varmistaen että se vapautetaan oikein, kun laajennus deaktivoidaan.
  5. Muokkaa `package.json`-tiedostoa: Lisää seuraava `contributes`-osioon määritelläksesi komennon:
  6. "contributes": {
    		"commands": [{
    			"command": "my-extension.helloWorld",
    			"title": "Hello World"
    		}]
    	}
  7. Selitys:
    • `"commands"`: Määrittelee komennot, joita laajennuksesi tarjoaa.
    • `"command": "my-extension.helloWorld"`: Määrittelee komennon tunnisteen, joka vastaa `extension.ts`-tiedostossa käytettyä tunnistetta.
    • `"title": "Hello World"`: Asettaa komennon näyttönimen komentopaletissa.

Laajennuksen testaaminen

Nyt on aika testata laajennustasi:

  1. Paina F5: Tämä käynnistää uuden VS Code -ikkunan, johon laajennuksesi on asennettu. Tämä on "Extension Development Host".
  2. Avaa komentopaletti: Paina `Ctrl+Shift+P` (tai `Cmd+Shift+P` macOS:ssä) avataksesi komentopaletin.
  3. Kirjoita "Hello World": Sinun pitäisi nähdä komentosi listattuna komentopaletissa.
  4. Valitse "Hello World": Komennon napsauttaminen suorittaa sen ja näyttää "Hello World" -viestin VS Code -ikkunassa.

Laajennuksen debuggaus (virheenjäljitys)

Virheenjäljitys on ratkaisevan tärkeää ongelmien tunnistamisessa ja korjaamisessa laajennuksessasi. VS Code tarjoaa erinomaisen tuen virheenjäljitykseen:

  1. Aseta keskeytyspisteitä: Napsauta editorin reunuksessa rivinumeroiden vieressä asettaaksesi keskeytyspisteitä koodiisi.
  2. Paina F5: Tämä käynnistää Extension Development Host -ikkunan virheenjäljitystilassa.
  3. Käynnistä laajennuksesi: Suorita komento tai toimenpide, joka käynnistää koodin, jota haluat jäljittää.
  4. Tarkastele muuttujia ja kutsupinoa: VS Coden virheenjäljitin pysäyttää suorituksen keskeytyspisteissäsi, jolloin voit tarkastella muuttujia, edetä koodissa askel kerrallaan ja tutkia kutsupinoa.

Työskentely VS Code APIn kanssa

VS Code API tarjoaa monipuolisen joukon rajapintoja ja funktioita editorin kanssa toimimiseen. Tässä on joitakin APIn avainalueita:

Esimerkki: Koodinpätkä-laajennuksen luominen

Luodaan laajennus, joka lisää koodinpätkän perus-React-komponentin luomiseksi:

  1. Luo `snippets`-kansio: Luo uusi kansio nimeltä `snippets` projektisi juureen.
  2. Luo koodinpätkätiedosto: Luo tiedosto nimeltä `react.json` `snippets`-kansion sisään.
  3. Lisää koodinpätkän määrittely: Lisää seuraava JSON-sisältö `react.json`-tiedostoon:
  4. {
    	"React Component": {
    		"prefix": "reactcomp",
    		"body": [
    			"import React from 'react';",
    			"",
    			"interface Props {\n\t[key: string]: any;\n}",
    			"",
    			"const ${1:ComponentName}: React.FC = (props: Props) => {\n\treturn (\n\t\t
    \n\t\t\t${2:Content}\n\t\t
    \n\t);\n};", "", "export default ${1:ComponentName};" ], "description": "Creates a basic React component" } }
  5. Selitys:
    • `"React Component"`: Koodinpätkän nimi.
    • `"prefix": "reactcomp"`: Etuliite, joka laukaisee koodinpätkän. Kirjoittamalla `reactcomp` ja painamalla `Tab` lisätään koodinpätkä.
    • `"body"`: Merkkijonotaulukko, joka edustaa koodinpätkän rivejä.
    • `${1:ComponentName}`: Sarkainpysähdys, joka mahdollistaa komponentin nimen nopean muuttamisen.
    • `"description"`: Koodinpätkän kuvaus.
  6. Muokkaa `package.json`-tiedostoa: Lisää seuraava `contributes`-osioon:
  7. "contributes": {
    		"snippets": [{
    			"language": "javascriptreact",
    			"path": "./snippets/react.json"
    		}]
    	}
  8. Selitys:
    • `"snippets"`: Määrittelee koodinpätkät, joita laajennuksesi tarjoaa.
    • `"language": "javascriptreact"`: Määrittelee kielen, jolle koodinpätkä on tarkoitettu.
    • `"path": "./snippets/react.json"`: Määrittelee polun koodinpätkätiedostoon.
  9. Testaa koodinpätkääsi: Avaa `.jsx`- tai `.tsx`-tiedosto ja kirjoita `reactcomp`. Paina `Tab` lisätäksesi koodinpätkän.

Edistyneet laajennuskehitystekniikat

Kun olet oppinut perusteet, voit tutustua edistyneempiin laajennuskehitystekniikoihin:

Kansainvälistäminen ja lokalisointi (i18n ja L10n)

Tavoittaaksesi maailmanlaajuisen yleisön, harkitse laajennuksesi kansainvälistämistä ja lokalisointia. Tämä tarkoittaa laajennuksesi mukauttamista tukemaan eri kieliä ja alueita.

Laajennuksen julkaiseminen

Kun laajennuksesi on valmis, voit julkaista sen VS Code Marketplaceen muiden käytettäväksi:

  1. Luo Azure DevOps -organisaatio: Tarvitset Azure DevOps -organisaation julkaistaksesi laajennuksesi. Jos sinulla ei ole sellaista, luo ilmainen tili Azure DevOps -verkkosivustolla.
  2. Asenna `vsce`-työkalu: VS Code Extension Manager (`vsce`) on komentorivityökalu laajennusten paketointiin ja julkaisuun. Asenna se globaalisti npm:n avulla:
  3. npm install -g vsce
  4. Luo julkaisija: Julkaisija on identiteetti, joka omistaa laajennuksesi Marketplacessa. Luo julkaisija käyttämällä `vsce create-publisher` -komentoa. Sinun täytyy antaa julkaisijan nimi ja henkilökohtainen pääsytunnus (PAT) Azure DevOpsista.
  5. Luo henkilökohtainen pääsytunnus (PAT): Mene Azure DevOpsissa "User Settings" -> "Personal Access Tokens" ja luo uusi PAT "Marketplace (Publish)" -laajuudella.
  6. Paketoi laajennuksesi: Käytä `vsce package` -komentoa paketoidaksesi laajennuksesi `.vsix`-tiedostoksi.
  7. Julkaise laajennuksesi: Käytä `vsce publish` -komentoa julkaistaksesi laajennuksesi Marketplaceen. Sinun täytyy antaa julkaisijasi nimi ja PAT-tunnuksesi.

Parhaat käytännöt laajennuskehityksessä

Noudata näitä parhaita käytäntöjä luodaksesi laadukkaita ja ylläpidettäviä VS Code -laajennuksia:

Yhteisön resurssit

Tässä on joitakin arvokkaita resursseja oppiaksesi lisää VS Code -laajennuskehityksestä:

Yhteenveto

VS Code -laajennusten kehittäminen on tehokas tapa mukauttaa koodausympäristöäsi, lisätä tuottavuutta ja jakaa ratkaisujasi globaalin kehittäjäyhteisön kanssa. Seuraamalla tätä kattavaa opasta voit hallita laajennuskehityksen taidon ja luoda innovatiivisia työkaluja, jotka parantavat VS Code -kokemusta sekä itsellesi että muille. Muista omaksua yhteisöllisyys, osallistua avoimen lähdekoodin projekteihin sekä jatkuvasti oppia ja tutkia alati kehittyvää VS Code -laajennuskehityksen maailmaa. Onnea matkaan ja iloista koodausta!