Référence : profile
Description neutre et exhaustive de
codeberg.org/turbo-editors/turbo-core/profile.
Profile est la valeur par laquelle diffère un éditeur bâti sur turbo-core. Tout champ qui serait sinon un nom, un chemin ou une commande en dur se trouve ici.
Profile
| Champ | Type | Défaut | Description |
|---|---|---|---|
Name |
string |
"" |
Le nom que l'éditeur se donne, dans les titres de fenêtres et la boîte À propos. "Turbo Go". Également envoyé au serveur de langage comme nom du client. |
Slug |
string |
"" |
Son nom en un mot. "turbo-go". Le binaire, le répertoire de projet, le répertoire utilisateur et les variables d'environnement en dérivent tous. |
Language |
string |
"" |
Ce pour quoi l'éditeur existe, en prose destinée à être lue. "Go", "Rust". Apparaît dans les messages et dans la boîte À propos, pas dans les formats de fichier. |
ToolsMenu |
string |
"" |
L'étiquette du menu de la chaîne d'outils, avec sa touche rapide entre tildes. "~G~o", "Rus~t~". |
RootMarkers |
[]string |
nil |
Les fichiers qui marquent la racine d'un projet, dans l'ordre où ils sont cherchés. ["go.mod"], ["Cargo.toml"]. Vide signifie qu'on ne remonte pas. |
Server |
Server |
valeur nulle | Le serveur de langage. La valeur nulle signifie que l'éditeur fonctionne sans. |
Templates |
Templates |
valeur nulle | Les fichiers de départ que l'éditeur propose d'écrire. |
Valeurs dérivées
| Méthode | Renvoie | Exemple pour Slug: "turbo-go" |
|---|---|---|
ProjectDir() |
string |
".turbo-go" |
UserDir() |
string |
"~/.config/turbo-go", ou "" si le système n'a pas de répertoire de configuration |
ThemeDir() |
string |
"~/.config/turbo-go/themes", ou "" |
DirEnvVar() |
string |
"TURBO_GO_DIR" |
ThemeDirEnvVar() |
string |
"TURBO_GO_THEME_DIR" |
SnippetDirEnvVar() |
string |
"TURBO_GO_SNIPPET_DIR" |
UserDir renvoie la valeur de DirEnvVar quand elle est définie. ThemeDir renvoie la valeur de ThemeDirEnvVar quand elle est définie, et cette variable nomme le répertoire des thèmes lui-même, pas celui qui le contient.
Les tirets d'un slug deviennent des soulignés dans un nom de variable d'environnement : turbo-rust donne TURBO_RUST_THEME_DIR.
Server
| Champ | Type | Défaut | Description |
|---|---|---|---|
Command |
string |
"" |
Le nom de l'exécutable, cherché d'abord dans PATH. "gopls", "rust-analyzer". |
Args |
[]string |
nil |
Les arguments de démarrage. gopls prend ["serve"] ; rust-analyzer n'en prend aucun. |
InstallHint |
string |
"" |
Une commande que l'utilisateur peut copier quand le serveur manque. Affichée sur la barre d'état, donc elle doit tenir sur une ligne. |
Dirs |
[]string |
nil |
Répertoires supplémentaires fouillés après PATH, dans l'ordre. Les chaînes vides sont ignorées. |
Exemple
profile.Server{
Command: "gopls",
Args: []string{"serve"},
InstallHint: "go install golang.org/x/tools/gopls@latest",
Dirs: []string{goBinDir()},
}
Templates
| Champ | Type | Arguments de formatage, dans l'ordre |
|---|---|---|
Settings |
string |
le nom du thème (%q), le délai de sauvegarde automatique (%q) |
Snippets |
string |
le nom du groupe sans nom (%s), le chemin des extraits de l'utilisateur (%s) |
Tools |
string |
aucun |
Un modèle avec le mauvais nombre de verbes produit %!s(MISSING) ou %!(EXTRA …) dans le fichier écrit ; rien ne le vérifie à votre place.
Exemple
const settingsTemplate = `# turbo-go project settings.
[editor]
theme = %q
autosave = false
autosave_delay = %q
`
Erreurs
profile ne renvoie aucune erreur. Un Profile dont le Slug est vide produit un répertoire de projet nommé "." et des variables d'environnement nommées _DIR ; rien ne le refuse.
Voir aussi
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
|