Visual Studio Code (VS Code) on yleinen koodieditori, joka toimii minkä tahansa ohjelmointikielen kanssa. Tällä hetkellä VS Code tukee 150 ohjelmointikieltä, jotka ovat saatavilla itse editorissa tai Visual Studio Marketplacessa saatavilla olevien laajennusten kautta. Kaikki VS Coden teho on avointa lähdekoodia, ja yksi sen tärkeimmistä osista lisää tukea VS Codelle luomalla 'kielipalvelinprotokollan'.
Nykyään Microsoft, Red Hat ja Codenvy ilmoitti tämän uuden kielipalvelinprotokollan DevNation-konferenssissa San Franciscossa. JSON-pohjaista protokollaa käyttävät kehittäjät ja ohjelmointikielten tekijät alan laajuisesti. Uusi kielipalvelinprotokolla auttaa ohjelmointikielten tekijöitä parantamaan kielensä käytettävyyttä erilaisissa kehitystyökaluissa ja käyttöjärjestelmissä. Kielipalvelinprotokolla tarjoaa kehittäjille johdonmukaisen muokkauskokemuksen heidän suosikkiohjelmointikielellään riippumatta heidän käyttämänsä työkalusta, vaikka työkalu ei olisikaan VS-koodi.
Microsoft tarjoaa perusidean tämän kielipalvelinprotokollan toiminnasta. VS Code tarjoaa tarvittavan tuen kaikille ohjelmointikielille, jotka ovat tällä hetkellä saatavilla alan laajuisesti. Microsoft tarjoaa esimerkin siitä, kuinka uusi kielipalvelinprotokolla toimisi kehittäjien muokkausistunnossa.

Kielipalvelinprotokollan tyypillinen muokkausistunto
VS Code mahdollistaa vuorovaikutuksen useiden kielipalvelimien kanssa käytetystä ohjelmointikielestä ja ohjelmointityökalusta riippumatta, kunhan se käyttää samaa JSON-pohjaista protokollaa. Microsoft tarjoaa vaiheittaisen oppaan kuinka tyypillinen muokkausistunto sujuisi JSON-RPC:llä:
- Käyttäjä avaa tiedoston (johon viitataan nimellä a asiakirja ) työkalussa: Työkalu ilmoittaa kielipalvelimelle, että asiakirja on auki (|_+_|) ja että työkalu ylläpitää asiakirjaa koskevia tietoja muistissa.
- Käyttäjä tekee muokkauksia: Työkalu ilmoittaa palvelimelle dokumentin muutoksesta (|_+_|) ja kielipalvelin päivittää ohjelman semanttiset tiedot. Tällöin kielipalvelin analysoi nämä tiedot ja ilmoittaa työkalulle löydetyistä virheistä ja varoituksista (|_+_|).
- Käyttäjä suorittaa 'Go To Definition' -toiminnon symbolille: Työkalu lähettää |_+_| pyyntö palvelimelle. Palvelin vastaa |_+_| määritelmän sisältävän asiakirjan ja |_+_|dokumentin sisällä. Näiden tietojen perusteella työkalu voi avata vastaavan dokumentin määrittelykohdassa.
- Käyttäjä sulkee asiakirjan (tiedoston): A |_+_| työkalu lähettää ilmoituksen, joka ilmoittaa kielipalvelimelle, että asiakirja ei ole enää muistissa ja sen sijaan tiedostojärjestelmä ylläpitää (eli tallentaa siihen).
Tekniset tiedot kielipalvelinprotokolla on saatavilla GitHubin kautta , yhdessä a pöytäkirjan historia . Jos haluat lisätietoja tästä kielipalvelinprotokollasta, voit katsoa DevNation-puheenvuoron alla.
https://www.youtube.com/watch?v=nxnIpgHQ-Gw
Muuten, kielipalvelinprotokollan repo on saatavilla GitHubissa . Lisäksi, Kielipalvelimen esittely antaa sinulle perusteellisen katsauksen kielipalvelinesimerkin lähdekoodiin.