Comment ajouter le support Aller à Geany
-
30-09-2019 - |
Question
Je suis en train de faire la coloration syntaxique et les options pour la construction de travaux Geany, un conseil?
La solution
Rechercher dans $ GOROOT / Divers et http://go-lang.cat -v.org/text-editors/ pour les fichiers de syntaxe d'autres éditeurs pour avoir une idée.
Sauf que, commencez par C ou C ++ et ajouter / choses Soustraire comme go
, <-
, func
, etc.
Autres conseils
Je viens de remarquer cette page: http://go-lang.cat-v.org/ texte-éditeurs / geany /
On dirait qu'ils ont tout ce dont vous avez besoin là-bas.
Voici le Geany instructions de formatage affichées par Steve Horsley à golang-noix:
-
Geany, goto Outils-> Configuration Files-> filetype_extensions.conf et ajouter dans la nouvelle rubrique suivante:
Go=*.go;
-
Copier la définition C filetypes.c à filedefs / filetypes.Go.conf:
cp /usr/share/geany/filetypes.c ~/.config/geany/filedefs/filetypes.Go.conf
-
Modifier filetypes.Go.conf et modifier les réglages et les mots clés sections à ceci:
[settings] # default extension used when saving files extension=go lexer_filetype=C [keywords] # all items must be in one line primary=break case chan const continue default defer else fallthrough for func go goto if import interface map package range return select struct switch type var secondary=byte int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 float32 float64 complex64 complex128 uintptr string
Avez-vous défini le type de fichier Go dans ~ / .config / geany / filetype_extensions.conf?
[Extensions]
...
Go=*.go
...
si le fichier n'existe pas conf encore, le copier depuis / usr / share / geany et ajouter cette ligne sous la rubrique « Extensions » (ou chercher sous Outils> Configuration des fichiers).
J'ai fait un script Python qui permet d'automatiser les instructions fournies par le lien Jaybill McCarthy.
import shutil, re, os
HOME = os.environ['HOME']
shutil.copy('/usr/share/geany/filetype_extensions.conf', HOME +'/.config/geany/')
with open(HOME + '/.config/geany/filetype_extensions.conf', 'r') as f:
fileData = f.read()
fileData = re.sub(r'Haskell=.*;', r'Go=*.go;\nHaskell=*.hs;*.lhs;', fileData)
fileData = re.compile('(\[Groups\][^\[]Programming=.*?$)', re.DOTALL|re.MULTILINE).sub(r'\1Go;', fileData)
with open(HOME + '/.config/geany/filetype_extensions.conf', 'w') as f:
f.write(fileData)
textSettings = """[settings]
extension=go
lexer_filetype=C
comment_single=//
comment_open=/*
comment_close=*/
comment_use_indent=true
"""
textKeywords = """[keywords]
primary=break case chan const continue default defer else fallthrough for func go goto if import interface map package range return select struct switch type var
secondary=byte int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 float32 float64 complex64 complex128 uintptr string"""
shutil.copy('/usr/share/geany/filetypes.c', HOME + '/.config/geany/filedefs/filetypes.Go.conf')
with open(HOME + '/.config/geany/filedefs/filetypes.Go.conf', 'r') as f:
fileData = f.read()
fileData = re.compile(r'\[settings\].*?^\[', re.DOTALL|re.MULTILINE).sub('%s\n\n[' %textSettings, fileData)
fileData = re.compile(r'\[keywords\].*?^\[', re.DOTALL|re.MULTILINE).sub('%s\n\n[' %textKeywords, fileData)
with open(HOME + '/.config/geany/filedefs/filetypes.Go.conf', 'w') as f:
f.write(fileData)
print "Complete!"
Je ne sais pas si cela signifie que je suis paresseux, ou l'inverse ... o.o.