Il live sharing è una funzione che consente di condividere una sessione di programmazione attraverso Visual Studio Code. Per installarlo, è necessario cercare tra le estensioni "Live Share Extension Pack", id estensione: MS-vsliveshare.vsliveshare-pack
.
Attenzione: L'estensione per lo sharing audio di Visual studio code è stata purtroppo deprecata. Il pack la contiene ancora ma potrebbe non essere più installabile in futuro. Eventualmente si prenda in considerazione di installare solo l'estensione Live Share ms-vsliveshare.vsliveshare per una maggiore sicurezza.
Avviare una Live Share
Una volta conclusa l'installazione, è possibile ospitare una sessione di coding, con tanto di chat testuale e vocale, ma per far questo è necessario disporre di un account Microsoft o Github con cui creare un link di invito.
Per avviare una sessione di live sharing si deve poi cercare nel pannello di controllo "Live Share".
Se non è stato fatto in precedenza, questa è la fase in cui viene richiesto il login tramite uno degli account sopra citati. L'accesso avviene similmente a quanto visto nel secondo articolo su Github.
Una volta effettuato l'accesso viene avviata la sessione di collaborazione quindi copiato il link d'accesso nella clipboard.
Viene anche riadattato il pannello del Live Share con tutte le funzioni per una sessione già attiva, qui si può eventualmente ricopiare il link di invito se per un motivo o per un altro è stato perso o non copiato in precedenza.
Gestire una sessione
Una volta avviata la connessione chi ha il link può connettersi, è possibile per l'host gestire ogni singolo utente direttamente dal pannello di Live Share sulla sinistra o avviarne la chat.
Normalmente gli utenti hanno accesso ai documenti in modalità "read only", ovvero di sola lettura. Per cambiare questa modalità si deve cliccare con il tasto destro su un determinato "ospite" o partecipante e garantire l'accesso in scrittura selezionando "Make read/write".
Disconnettere un utente
Da gestore della sessione è possibile disconnettere qualunque utente. Se qualcosa non vi convince in un vostro ospite si può disconnetterlo posizionandosi sul suo nome e quindi premendo la "X" che appare:
Terminare la sessione
Quando la sessione è da considerarsi conclusa, potrebbe essere una buona idea terminarla in modo da disconnettere tutti. Per farlo, dal pannello di Live Share ci deve posizionare su "Session Details" e quindi cliccare sul simbolo del divieto:
Accedere ad una sessione da ospite
Per accedere come ospite ad una Live Share è necessario avere il link di connessione generato dall'host nella prima fase. Una volta cliccatoci dovrebbe apparire una pagina Web caratterizzata dalla UI di Visual Studio Code:
Al centro si può notare la notifica di connessione avvenuta, quindi dei pulsanti per indirizzare l'utente a continuare nel browser stesso oppure sul Visual Studio Code locale, se è installato.
Una volta avviato l'IDE locale apparirà un pop-up in basso a destra chiedendo l'accesso come anonimo (con username) oppure con account Github.
Cliccando su "Continue as Anonymous" appare un pop-up sulla parte superiore che permette di inserire il nome con cui si vuole entrare nella sessione.
Lato host bisogna quindi accettare la richiesta:
A procedura completata l'ospite sarà automaticamente indirizzato al file di testo attualmente aperto dall'utente che ha condiviso il codice, in modalità "following", ovvero seguirà ogni modifica e movimento.
Accedere da Web
Come anticipato è possibile accedere anche se non si ha installato direttamente Visual Studio Code sul proprio dispositivo. Si può infatti utilizzare (grazie a Live Share) una versione totalmente online.
Saranno poi disponibili tutte le normali funzioni di scrittura in un ambiente totalmente nuovo localizzato sul browser, non sono però disponibili tutte le estensioni dello store.
Disconnettersi
La procedura è la stessa di quella di un utente host che vuole disconnettere la sessione, ma l'effetto è solo locale. Bisogna quindi posizionarsi su "Session Details" nel pannello di condivisione e premere l'icona a forma di divieto.
Modalità di following
Molto utile può essere la modalità di following, che consente di "seguire" un utente nelle sue modifiche, anche in nuove aperture di file attraverso il progetto.
Per attivarla su un utente specifico si deve cliccare con il tasto destro sul suo nome nel pannello delle condivisioni e quindi premere su "Follow"
Nella parte superiore verrà mostrato un piccolo pop-up che indica come si sta effettivamente seguendo un altro utente.
Richiamare l'attenzione
Si può richiamare l'attenzione di un altro utente inviandogli una notifica con la funzione "Focus Partecipant", presente nel menu contestuale richiamabile con il tasto destro nel pannello del Live Share:
Il richiamato riceverà una notifica posizionata in basso a destra nella propria finestra:
Inoltre egli entrerà automaticamente in modalità following.
Chat testuale e chat audio (deprecata)
Come già citato in precedenza, questa funzione risulta ora deprecata. Potrebbe non funzionare più, non essere disponibile o non funzionare correttamente.
All'interno della sessione di condivisione è possibile sia utilizzare una chat testuale che un canale vocale. Per avviare una chat testuale è necessario andare nel pannello di Live Share e premere l'ultima opzione, ovvero quella di "Session chat".
Quindi si può iniziare a scrivere.
Una nuova notifica verrà indicata sia nella barra dello stato:
che nel pannello stesso:
Per la chat vocale invece si può utilizzare la funzione "Start audio call..." nel pannello di live share:
Partirà quindi una notifica in basso a destra e si dovrà cliccare su "Start audio call":
Attenzione: è possibile che l'audio non funzioni su tutti i sistemi, e comunque non prima di un riavvio dopo la prima installazione. Potrebbe essere quindi utile effettuare più tentativi e riavviare più volte l'IDE o il PC prima della riuscita.
Per fermare una chiamata si deve cliccare con il tasto destro sulla sezione del pannello relativa alle chiamate audio quindi su "Disconnect".
Commentare singole linee di codice
È possibile commentare singole linee di codice tramite Live Share. Con questa funzione è possibile condividere opinioni mirate o lasciare consigli e segnalazioni a chi dopo visionerà quel codice.
Per accedere a questa funzione ci si deve portare con il mouse sopra il numero di riga su cui si vuole lasciare il commento, apparirà un simbolo "+" da premere:
Apparirà quindi una finestrella con un campo di testo, si potrà così scrivere il commento e premere "Create a comment thread":
Gli altri utenti riceveranno l'informazione nella tab "Commenti" del pannello inferiore di Visual Studio Code:
Cliccandoci sopra due volte si verrà riportati alla riga del commento, con il commento visibile a cui si potrà eventualmente rispondere.
Condividere un server
Un'altra funzione molto interessante è quella che permette di condividere un intero server con gli ospiti.
Ho personalmente testato questa funzione con LiveServer, un estensione che permette di aggiornare in tempo reale una pagina Web, è tuttavia probabile non funzioni con tutti i tipi di server.
Per condividere un server esistono due modi, il primo consiste nel avviarlo "dopo" aver avviato anche Live Share che lo condividerà automaticamente.
Il secondo metodo consiste nell'utilizzare il pannello di Live Share, portarsi con il mouse sulla voce "Shared Server" e quindi premere l'icona a forma di spinotto (oppure premere il tasto destro e quindi su "Share server")
L'ospite che vuole aprire il server può andare sempre sulla stessa zona del pannello e selezionare uno dei server condivisi.
Si potrà quindi usufruire delle stesse funzioni del server host.