Das offizielle VSCODE -Plugin für Rescript

Sie müssen über die übliche NPM- oder Garninstallation lokal in Ihrem Projekt in Ihrem Projekt installiert sein. Ältere Versionen funktionieren nicht garantiert.
Unser hervorgehobenes Hervorhebung passt gut zu den beliebtesten VSCODE -Themen, wie z. B.:
Die einzigen 2 Themen, die wir aufgrund ihres Mangels an Färben nicht unterstützen (und nicht unterstützen können), sind:
Beachten Sie , wenn Ihr benutzerdefiniertes Thema nicht viel hervorhebt (z. B. keine Farben für JSX-Tag in Oberkapazität, keine Unterscheidung zwischen Modul und Variante), versuchen Sie es mit einem der empfohlenen Themen, um festzustellen, ob dies das Problem ist. Weitere Informationen finden Sie in diesem Beitrag.
.res , .resi , rescript.json und die Legacy -Konfigurationsdatei bsconfig.json .external Funktionen wie @bs.module und @bs.valtry , for usw.//#region und //#endregion . Starten Sie VS Code Quick Open ( Ctrl+P ), fügen Sie den folgenden Befehl ein und drücken Sie die Eingabetaste.
ext install chenglou92.rescript-vscode
Das Plugin aktiviert auf .res und .resi -Dateien. Wenn Sie bereits ein installiertes Grundspring-Server haben, ist es möglich, dass letztere Vorrang vor diesem Vorrang hatte. Stellen Sie sicher, dass Sie dieses Plugin ("Rescript-Syntax") anstelle von Grundsprachen-Server ("Bucklescript-Syntax") verwenden.
Es gibt einen Kanal vor der Veröffentlichung. Es ist zum Testen neuer und möglicherweise instabiler Merkmale gedacht. Sie können es aktivieren, indem Sie auf der Seite rescript-vscode -Erweiterung in VSCODE" auf die Schaltfläche "zur vorveröffentlichten Version wechseln" klicken. Ab diesem Zeitpunkt haben Pre-Release-Versionen immer eine ungerade Version (1.5.x, 1.7.x, 2.1.x usw.), während stabile Veröffentlichungen sogar Moll-Nummern (1.4.x, 1.6.x, 2.0.0 usw.) aufweisen.
Auch wenn der Kanal vor der Veröffentlichung für Sie zu experimentell erscheint, empfehlen wir Ihnen, es zu versuchen, alle Probleme einzureichen, auf die Sie begegnet sind. Auf lange Sicht wird es uns insgesamt eine bessere Erfahrung zum Redakteur bieten.
| Befehl | Beschreibung |
|---|---|
| Reskript: Erstellen Sie eine Schnittstellendatei für diese Implementierungsdatei | Erstellt eine Schnittstellendatei ( .resi ) für die aktuelle .res -Datei und füllt automatisch alle Typen und Werte in der aktuellen Datei aus. |
| Reskript: Öffnen Sie die kompilierte JS -Datei für diese Implementierungsdatei | Öffnet die kompilierte JS -Datei für die aktuelle Rescript -Datei. |
| Reskript: Implementierung/Schnittstelle für Switch | Schaltet zwischen der Implementierung und der Schnittstellendatei. Wenn Sie sich in einer .res -Datei befinden, öffnet der Befehl die entsprechende .resi -Datei (falls vorhanden). Wenn Sie in einer .resi -Datei sind, öffnet der Befehl die entsprechende .res -Datei. Dies kann auch mit dem Schlüsselbindungs Alt+O ausgelöst werden. |
| Reskript: Startcodeanalysator | Dadurch wird die Codeanalyse im Rescript -Projekt der Datei gestartet, aus der Sie den Befehl ausführen. |
Sie finden alle reskriptionspezifischen Einstellungen im Rahmen des rescript.settings .
| Einstellung | Beschreibung |
|---|---|
| Aufforderung zum Aufbau zu beginnen | Wenn im geöffneten Projekt kein Rescript -Build ausgeführt wird, fordert Sie von der Erweiterung auf und fragen Sie, ob Sie einen Build automatisch starten möchten. Sie können diese automatische Eingabeaufforderung über das rescript.settings.askToStartBuild . |
| Rekript -binärer Pfad | Die Erweiterung wird nach der Existenz einer node_modules/.bin/rescript -Datei suchen und verwenden sein Verzeichnis als binaryPath . Wenn es nicht auf dem Projektrouch findet (in dem sich das nächste rescript.json befindet), wird die Ordner im Dateisystem rekursiv hochgezogen, bis es entweder findet (oft der Fall in Monorepos) oder auf die oberste Ebene trifft. Um diesen Lookup -Prozess zu überschreiben, kann der Pfad mithilfe des rescript.settings.binaryPath explizit konfiguriert werden |
| Rescript -Plattformpfad | In der Erweiterung wird nach dem Vorhandensein eines node_modules/rescript -Verzeichnisses und des Unterverzeichnisses verwendet, das der aktuellen Plattform als platformPath entspricht. Wenn es nicht auf dem Projektrouch findet (in dem sich das nächste rescript.json befindet), wird die Ordner im Dateisystem rekursiv hochgezogen, bis es entweder findet (oft der Fall in Monorepos) oder auf die oberste Ebene trifft. Um diesen Lookup -Prozess zu überschreiben, kann der Pfad explizit mithilfe des rescript.settings.platformPath konfiguriert werden |
| Inlay -Hinweise (experimentell) | Auf diese Weise kann ein Editor Anmerkungen inline mit Text platzieren, um Typen anzuzeigen. Aktivieren Sie mit rescript.settings.inlayHints.enable: true |
| Codelinse (experimentell) | Dadurch wird der Editor angewiesen, Funktionen für Funktionsdefinitionen zu Codestellen hinzuzufügen, wobei der vollständige Typ über der Definition angezeigt wird. Aktivieren Sie mit rescript.settings.codeLens: true |
| Signaturhilfe | Dies fordert den Editor an, Signaturhilfe anzuzeigen, wenn Sie Funktionsanrufe schreiben. Aktivieren Sie mit rescript.settings.signatureHelp.enabled: true |
Standardeinstellungen:
// Whether you want the extension to prompt for autostarting a ReScript build if a project is opened with no build running
"rescript.settings.askToStartBuild" : true ,
// Path to the directory where cross-platform ReScript binaries are. You can use it if you haven't or don't want to use the installed ReScript from node_modules in your project.
"rescript.settings.binaryPath" : null
// Path to the directory where platform-specific ReScript binaries are. You can use it if you haven't or don't want to use the installed ReScript from node_modules in your project.
"rescript.settings.platformPath" : null
// Enable (experimental) inlay hints.
"rescript.settings.inlayHints.enable" : true
// Maximum length of character for inlay hints. Set to null to have an unlimited length. Inlay hints that exceed the maximum length will not be shown
"rescript.settings.inlayHints.maxLength" : 25
// Enable (experimental) code lens for function definitions.
"rescript.settings.codeLens" : true Der Codeanalysator ist ein Modus in der Erweiterung, in dem zusätzliche Codeanalyse in Ihrem Projekt ausgeführt wird. Die Analyse hilft Ihnen dabei, toten Code auf körniger Ebene zu finden, unberatete Ausnahmen zu finden und vieles mehr.
Der Codeanalysator verwendet Reanalyze, das in die Erweiterung eingebettet ist, sodass Sie nichts mehr installieren müssen, um es auszuführen.
Sie müssen konfigurieren, welche Codeanalyse Sie ausführen möchten und welche (falls vorhanden) Verzeichnisse Sie ignorieren möchten. Die Konfiguration erfolgt durch Hinzufügen von reanalyze in rescript.json . Sie erhalten eine automatische Vervollständigung, welche Konfigurationsoptionen gültig sind. Sie können auch alles über die Konfiguration reanalyze hier lesen.
Öffnen Sie die Befehlspalette und führen Sie ReScript: Start Code Analyzer . Dadurch wird die Codeanalyse im Rescript -Projekt der Datei gestartet, aus der Sie den Befehl ausführen.
Dead Code wird im Herausgeber hervorgehoben, und Code -Aktionen zur Unterdrückung toter Code -Warnungen sind in den meisten Fällen verfügbar.
Stoppen Sie den Code -Analysemodus, indem Sie in der Statusleiste der Editor auf die Schaltfläche Stop Code Analyzer klicken. Dies wird alle gemeldeten Analysewarnungen löschen.
Derzeit funktioniert die Analyse von Monorepo Dead Code nicht (obwohl es für jedes Monorepo -Paket einzeln funktionieren sollte).
Sie können VSCODE so konfigurieren, dass die JavaScript -Dateien, die Rescript in seiner Quell -Rescript -Datei generiert, zusammenfasset. Dadurch wird die generierten Dateien im VSCODE -Datei -Explorer "ausgeblendet", aber dennoch zugänglich, indem sie die von ihnen gehörende Quell -Rescript -Datei erweitern.
Öffnen Sie Ihre VSCODE -Einstellungen und tippen Sie:
"explorer.fileNesting.enabled" : true ,
"explorer.fileNesting.patterns" : {
"*.res" : "${capture}.mjs, ${capture}.js, ${capture}.cmi, ${capture}.cmt, ${capture}.cmj" ,
"*.resi" : "${capture}.res"
} ,Dies nistet implementiert unter Schnittstellen, wenn sie vorhanden sind und alle generierten Dateien unter der Hauptdatei -Datei nisten. Passen Sie sich an und optimieren Sie Ihren Geschmack.
Ein Screenshot des Ergebnisses:

Siehe ChangeLog
Lesen Sie unseren beitragenden Leitfaden
Weitere Informationen finden Sie in der Lizenzdatei.