Rozšíření a podporu ekosystém

Jedním z primárních cílů Visual Studio Live Share je vývojářům umožňuje spolupracovat s kolegy a z pohodlí jejich oblíbených a vysoce přizpůsobené nástroje. Tímto způsobem ad-hoc interakce často, může dojít, přitom vizuálně známé a výrazně, bez ohledu na to co vám pomáhají s. Za tím účelem je velmi důležité, že budou moci pokračovat v používání všechna rozšíření, které podporují účastníci v rámci spolupráce relace jejich osobní preference a pracovních postupů (třeba/ikony barevné motivy, klávesové zkratky, editor zvýšení produktivity stimulátory).

Kromě toho provést v rámci připojení k relaci spolupráci jako okamžité nejvíce přitom vysoce produktivní, cílem Visual Studio Live Share je povolit hosté automaticky využívat nástroje specifické pro projekt, který sdílí jeho hostitele. Tímto způsobem můžete jednoduše kliknout na odkaz, spusťte nástroj dle výběru a zahájit spolupráci, bez jakékoliv další nastavení. Za tím účelem je velmi důležité tohoto rozšíření, která power základní upravovat, vytvářet a ladit pracovní postupse transparentně "vzdálený" z hostitele na hosta, tak, aby věci, jako je automatické dokončování, přejít k definici a ladění " prostě fungují".

Tento dokument popisuje aktuální označuje stav pro rozšíření rozsáhlému ekosystému, stejně jako "metrik" pro výše uvedené cíle. Pokud dojde k rozšíření, které nebude tato kritéria splňují a je velmi důležité pro váš osobní pracovní postup, pak prosím dejte nám vědět!

Rozšíření specifické pro uživatele

Rozšíření, které podporují vlastní uživatelská nastavení musí práce pro hostitele, a by měl pro všechny hosté fungují. Pokud rozšíření nebude fungovat správně pro hostitele, který by byl regrese a je pravděpodobně chyba ve Visual Studio Live Share (prosím založte problém Pokud se zobrazí jedna!). Pokud rozšíření nechová podle očekávání pro hosta, můžou vyžadovat změn v samotné rozšíření, a jsme budete pracovat s ekosystémem partnerů pro adresu/zlepšit tyto scénáře.

Visual Studio Code

Kategorie Příklady () dotazů Host podporovány? Spolupráci?
Barevné motivy Jeden Pro tmavý, výstup Colorizer, Rainbow řetězec, Vybarvenými oblastech, odsazena bloku zvýraznění, Zvýraznění todo, párování Colorizer pár NENÍ K DISPOZICI
Ikona sady vscode-icons, Visual Studio Classic Icons NENÍ K DISPOZICI
Klávesové zkratky VIM, klávesové zkratky IntelliJ IDEA, Keymap popisný (emacs) NENÍ K DISPOZICI
Fragmenty kódu Fragmenty kódu angular v5, fragmentů kódu HTML, SVG ikony, hlavička souboru NENÍ K DISPOZICI 1
Organizace Synchronizace nastavení, projektový manažer, Timeit, kontrolní body, TODO analyzátor, Oblíbené položky (❌) záložky (❌) 2 NENÍ K DISPOZICI 3
Produktivita GitLens, Automatické přejmenování značky, kódu osnovy, barevné zvýraznění, zvýšit výběr, Bracketeer, náhled obrázku, pomocné rutiny JSON (ukazatel), výběr barvy, kopírování aplikace Word v kurzoru, CodeMetrics (CodeLens) Git spoluautoři, JavaScript podpůrná (CodeActions) protokolu konzoly Turbo, Goto další/předchozí člen, Automatické posunování, NPM Import verze (❌) importovat náklady (❌) 2 3
REPLs Klient REST, kódu Runner, Quokka.js, R 4 3
Správce prostředků MSSQL, ftp jednoduchý, Azure Functions, Docker, Brew služby 5 3

1 Pokud byl uživatel již znáte fragment kódu, očekávají by byla k dispozici, a proto, díky kterým sdílené nedává smysl nutně.

2 tyto kategorie rozšíření jsou tak rozdílné, že není možné Řekněme, že fungují. Ale teoreticky by měly a sledujeme budete klíč ty, které ji nemají.

3 tyto kategorie rozšíření můžou mít užitek z prostředí pro spolupráci, a proto potřebujeme vědět, že koncový uživatel zpětnou vazbu!

4 vyžadují hostem a být modulu runtime nainstalovány nástroje (například Node.js) a fungují tak, že spouštění kódu místně.

5 těchto fungují tak, že připojení k serveru určitého druhu a můžete pracovat buď centralizované servery, servery, které sdílí hosta.

Visual Studio

Již brzy.

Rozšíření specifické pro projekt

Hostiteli nainstalovaná rozšíření, která podporu základní úpravy, sestavování a ladění aplikace a specifické na jazyk nebo platformu/knihovny/sadu SDK, musí být automaticky dostupná ke hosté, bez nutnosti jejich nutnost nic instalovat. Tímto způsobem hostitele můžete nastavit jejich prostředí pro podporu produktivitu vývoje projektu a povolit jejich hosté k nim, okamžitě bez další předpoklady. Vzhledem k tomu, že rozšíření specifické pro projekt nejsou subjektivní nebo osobní žádným způsobem, nedeterministicky sdíleny z hostitele na hosta, aniž by to ovlivnilo kýmkoli známém prostředí.

Kromě toho za účelem podpory specifické pro projekt rozšíření, která má nainstalovanou hosta, ale hostitel nebude, by v ideálním případě poskytují degradovaný, ještě funkční prostředí (např. načtení jednotlivých souborů intellisense, nebudou moct dokument formátu).

Kategorie Příklady () dotazů Sdílet? Host podporovány?
Gramatika / zvýrazňování syntaxe Ryb prostředí, Nginx, Vetur, DotEnv, ES6 řetězec HTML, Todo +, Rainbow sdíleného svazku clusteru
Jazykové služby YAML, cesta Intellisense, ARM 1 2
JSON Schemas Azure Functions
Linterů ESLint, Markdownlint, kódu kontrolu pravopisu, PHPCS 2
Formátovací moduly Prettier, Beautify 2
Ladicí programy Python, ladicího programu pro Chrome 3 4
Nástrojům test Runner Nástroj Test Runner pro jazyk Java, postranního panelu Mocha, Postman Runner, Jest Runner, Neptun 5 2
Vlastní soubor náhledy Ve verzi Preview SVG, GraphViz, velikost obrázku Markdownu
Generátory souboru nebo projektu Služba Azure Functions, generátor projektu jazyka C/C++ 6
Poskytovatelé řízení zdrojů SVN, Hg

1 momentálně se podporuje jenom C# a jazyka JavaScript/TypeScript s další podporou již brzy.

2 by podporují pouze aktuálně aktivní dokument, protože hosté nemají přístup k místnímu souboru.

3 sdílené základní možnosti ladění, ale nejsou automaticky předávat všechny spuštěné servery.

4 hosté nemají místní kopii aplikace, a proto běžící aplikaci a všechny relace ladění potřeba spustit na počítači hostiteli.

5 výstup testovacího běhu by vyžadovaly všechny výsledné terminály, podokna výstup a chyby byly také sdílet s hosty.

6 téměř všechny z nich byste použili na Node.js fs modul přímo k vytváření souborů, které nebude fungovat.

Visual Studio

Již brzy.

Známé problémy

Toto jsou problémy s aktuálně známé rozšíření, které může bránit funkčním pro hosty v rámci kontextu relace spolupráce (spolu s jejich řešení) a proto může mít vliv na jejich pracovního postupu:

Visual Studio Code

Problém Důvod Alternativní řešení
Použití na Node.js fs modulu, který chcete detekovat/čtení souborů (například konfigurace souboru), nebo vytvoření výčtu adresářů (a nejste si služba jazyka). Hosté nemají přístup k místním souborům. 1. Řádně snížit činnost koncového uživatele (Pokud je to možné).

2. Použití openTextDocument a findFiles pracovního prostoru rozhraní API pro čtení a vytvoření výčtu souborů.
Použití na Node.js fs modulu k vytvoření nebo zápis souborů Stejný jako předchozí Není k dispozici můžete použít openTextDocument(Uri) rozhraní API k vytvoření untitled soubor, ale nelze uložit přímo do systému souborů do konkrétní cesty.
V závislosti na dodávat projektu knihovny nebo nástroj Stejný jako předchozí 1. Vytvoření balíčku záložní verze závislosti s příponou

2. Podporu globální instalace odblokujete hosté, pokud se rozhodnete explicitně ji nainstalovat.

3. Vzdálené stavu a akce, pokud je to možné, protože hostitel bude mít správné závislosti, které jsou k dispozici.
Použití na Node.js fs modulu k vytvoření adresáře Stejný jako předchozí NENÍ K DISPOZICI
Omezení funkce na dokumenty, které používají file schéma. Soubory při použití na straně hosta vsls schéma. Přidání podpory pro vsls dokumenty (příklad)
Použití Uri.file metoda a/nebo Uri.fsPath / TextDocument.fileName členy k serializaci/parsování identifikátorů URI Stejný jako předchozí Použití Uri.parse a Url.toString() místo, které udržovat a dodržovat schémata souboru (příklad)
Použití workspace.openTextDocument metodu s cestu k souboru místo Uri Stejný jako předchozí Zadejte Uri instanci místo řetězec cesty soubor raw (příklad)
Použití workspace.rootPath vlastnost pro zjištění přítomnosti tohoto pracovního prostoru workspace.rootPath Vlastnost volání Uri.fsPath první workspaceFolder v workspace, který má stejný problém uvedených výše Použití workspace.workspaceFolders vlastnost pro zjištění přítomnosti tohoto pracovního prostoru místo a v případě potřeby, podívejte se na každý workspaceFolderspolečnosti Uri.scheme chcete zjistit, jestli je místní nebo ne
Bez zadání schématu dokumentu, při registraci jazykových služeb (buď prostřednictvím LanguageClient, nebo languages.register* metody) Hosté příjem výsledků služby jazyka ze svých místních rozšíření i hostitele a proto, pokud obě účastníci mají nainstalované rozšíření služby stejného jazyka, guests uvidí duplicitní položky pro určité informace (například automatické doplňování, kód Akce) Omezit jazykové služby na pouze file a untitled schémata (příklad)
Nekontrolují se dokumentu Uri.scheme před naplnění DiagnosticCollection pro něj Stejný jako předchozí Generovat jenom Diagnostics pro documents jehož Uri.scheme === file (příklad)
Nekontrolují schéma pracovního prostoru se při vrácení Tasks z vlastního TaskProvider Zobrazit všechny úlohy vzdáleném i místním hostů a proto by se zobrazily duplicity po obou účastníci měl stejnou příponu nainstalované Vrátit pouze Tasks pro WorkspaceFolders jejíž Uri.scheme === file (příklad)

Visual Studio

Již brzy.

Viz také:

Máte potíže? Podívejte se na článek o odstraňování potíží nebo nám pošlete svůj názor.