Editor

  • Remix utilizza l’editor Monaco. È lo stesso editor utilizzato da VSCode.

  • Remix salva il file corrente ogni 5 secondi.

  • The Remix Editor will highlight keywords in Solidity, JavaScript, and TypeScript.

L’editor mostra informazioni da altri plugin

The main purpose of the Editor is, of course, to edit code. But it also works with other plugins, notably, the Solidity Compiler and the Debugger.

  • Il compilatore Solidity visualizzerà gli avvertimenti e gli errori nel riquadro dell’editor in corrispondenza della riga problematica.

  • I punti di interruzione per il Debugger vengono inseriti nel riquadro dell’editor.

  • Quando si scorre il codice nel Debugger, il codice pertinente viene evidenziato nell’Editor.

Remix editor showing code with gutter annotations from the Solidity Compiler and Debugger

General operations

I file vengono aperti come schede. Quando ci sono troppe schede da visualizzare, lo scorrimento con la rotella del mouse fa scorrere orizzontalmente le schede.

Remix editor showing multiple open file tabs with toolbar controls

  • The play button works on the active tab. If a Solidity file is active, clicking Play will compile it. If a TypeScript or JavaScript file is active, Play will run the script.

  • Le icone a forma di lente d’ingrandimento (+/-) nell’angolo in alto a sinistra servono ad aumentare/diminuire la dimensione dei caratteri.

  • Il carattere piccolo all’estrema destra dell’editor è cliccabile per passare a una sezione.

TypeScript

L’editor e lo script runner supportano TypeScript, il che significa che è possibile scrivere TypeScript, avere un completamento automatico ed eseguirlo direttamente da Remix. Come già detto, in TS è presente l’evidenziazione della sintassi.

L’area di lavoro predefinita contiene file TypeScript di esempio.

Editor & autoCompile

When auto-compile is enabled (in the Solidity Compiler), compilation will occur each time the current file is changed, or another file is selected.

Remix editor settings showing auto-compile enabled

Completamento automatico

Il completamento automatico del codice Solidity avviene quando si inizia a digitare nell’editor. Il compilatore viene eseguito in background ed elabora tutte le importazioni presenti. Queste importazioni appariranno nella cartella .deps nell’Esplora File.

Remix editor showing Solidity autocomplete suggestions while typing

Suggerimento

If you start with a Solidity file that contains errors, the Compiler might not be able to compile it. In that case, the Editor’s autocomplete features will not fully work until after the file is successfully compiled. After that, autocomplete will work even if there are errors, but only for the elements the Compiler already understands. For example, if you add a new function in a file that contains errors, autocomplete will not be able to find that function because it can’t compile the file.

Remix editor showing autocomplete dropdown with Solidity suggestions

Completamento automatico sulle importazioni

Il completamento automatico dell’editor offrirà l’opzione di inserire i contratti OpenZeppelin, i contratti Uniswap e i percorsi di tutti i file nell’area di lavoro corrente.

Remix editor showing import autocomplete with OpenZeppelin and Uniswap options

Quindi, scegliendo @openzeppelin, si otterrà questo:

Remix editor showing OpenZeppelin import path autocomplete

E lo stesso vale per Uniswap:

Remix editor showing Uniswap import path autocomplete

Errors and warnings

Si può dire che la compilazione del file è avvenuta correttamente se nell’editor non vengono visualizzati errori o avvertimenti. Gli errori vengono visualizzati con linee ondulate. Una linea rossa indica un errore, una linea gialla un avvertimento.

Remix editor showing red and yellow squiggly lines indicating errors and warnings

Passando il mouse sulla linea ondulata si visualizza il messaggio del compilatore.

Remix editor showing compiler error message on hover over squiggly line

Le schede e l’Esplora File mostrano anche se un file contiene errori o avvertimenti.

Remix editor tabs and File Explorer showing error and warning indicators

Errori nei file importati

Un file che presenta errori in uno dei file che importa genera un errore anche nell’editor. Il vostro file principale potrebbe non essere compilato, ma vi accorgerete subito che c’è un problema.

Passare sopra un Numero di Errore nell’Esplora File

Il numero di errori in un file è riportato anche nell’Esplora File. Passando il mouse sul numero, che indica la quantità di errori/avvertimenti, si visualizzeranno le informazioni del compilatore.

File Explorer showing error count with hover tooltip from the compiler

Quick Fixes for common mistakes

The Remix editor offers solutions to the following missing keywords & code:

  • License

  • Pragma

  • Visibility

  • Mutability

  • Data Location (storage, memory, etc)

  • Add virtual or override

  • Marking a contract abstract

A Quick Fix option is available when there is a blue dot in Editor - like in the image below.

In this example, the license has been left out. After compilation, a warning is triggered and a Quick Fix blue dot appears.

Remix editor showing Quick Fix blue dot for a missing license warning

When you click on the blue dot, a popup menu appears. In this case of a missing license, these are the options:

Remix editor showing Quick Fix popup menu with options for adding a license

If you can’t get the Quick Fix blue dot to appear, try clicking on the number for the line where the error occurs.

Gas estimates

Le stime del carburante sono visualizzate sulla stessa linea in cui viene dichiarata una funzione.

Remix editor showing inline gas estimates next to function declarations

Vengono visualizzate anche le stime del carburante del costruttore, che consistono in due componenti: costo di creazione e costo di deposito del codice.

Go to definition and references

Definizioni

Facendo clic con il tasto destro del mouse, è possibile accedere a una definizione. È anche possibile utilizzare la scorciatoia visualizzata.

È anche possibile fare clic con il pulsante destro del mouse sul nome del file di un’istruzione di importazione e passare a quel file.

Remix editor showing go to definition context menu option

È anche possibile «sbirciare» la definizione in linea nell’editor. È possibile passare a una definizione facendo doppio clic sul lato destro della riga.

Riferimenti

Facendo clic con il tasto destro del mouse, è possibile visualizzare tutti i riferimenti. È anche possibile utilizzare la scorciatoia visualizzata.

Remix editor showing all references panel for a selected symbol

È possibile passare a un riferimento facendo doppio clic sul lato destro della riga.

Remix editor showing a reference with double-click jump option

Highlighted references

I riferimenti sono evidenziati nell’Editor.

Remix editor showing highlighted references for a selected symbol

Passare sopra

Quando si passa il mouse su un termine con una definizione, viene visualizzata la definizione. Se si passa il mouse sul codice che ha generato un errore (sottolineato da una linea rossa), viene visualizzato il messaggio di errore.

Remix editor showing definition popup on hover over a term

Files with errors turn red

Quando un file contiene un errore, il suo nome diventa rosso, sia nell’Esplora File che nella sua scheda in alto nell’Editor.

Maggiori informazioni sugli aggiornamenti dell’editor in questo articolo: Aggiornamenti Importanti dell’Editor Remix