2009-06-29 9 views
0

Je cherche un éditeur - pas un IDE - qui a juste la coloration syntaxique. La complétion des mots serait bien pour les mots-clés que je spécifie aussi, mais je pourrais abandonner cette fonctionnalité. Il doit seulement être compatible avec Windows. La situation est que j'ai un langage spécifique au domaine extrêmement étroit qui a seulement environ 25 mots-clés; il n'a même pas de conditions. Je voudrais que les mots-clés soient surlignés afin que l'utilisateur sache quand ils ont écrit un mot-clé correctement. Et pour s'assurer qu'ils n'ont pas besoin de mémoriser spécifiquement chaque mot-clé, c'est là que le mot-complétion serait bien. Je pars de l'hypothèse que l'utilisateur possède les compétences en informatique de vos grands-parents - j'ai facilement créé des fichiers de syntaxe pour ce DSL dans Vim et PSPad, mais je pense que ceux-ci ont trop de fonctionnalités pour être "utilisable" pour ce public cible. La fonctionnalité du Bloc-notes (plus la coloration) serait à peu près suffisante. Je suis également ouvert à l'écriture d'un éditeur simple à partir de zéro, s'il y a une bibliothèque qui fait déjà la plupart du travail que j'ai expliqué ici - je lui dis juste quoi surligner de quelle couleur, en utilisant peut-être régulièrement expressions. Mises à jour: J'ai un peu regardé SciTE - c'est très semblable à ce que je recherche, sauf que créer un nouveau fichier de syntaxe (fichier de propriétés) devient très compliqué. Ma syntaxe est assez simple: un script court exemple peut avoir la forme:Éditeur de texte très simple, distribuable avec coloration syntaxique personnalisable et peut-être compléter le mot - rien d'autre

CommandA 
CommandB Num1 Num2 

CommandC 

Il ne correspond pas tout à fait en Python ou un langage de base, mais je ne vais pas écrire un lexer pour qu'il soit. Mais la simplicité de SciTE et sa capacité à exécuter des programmes externes avec le fichier sont deux points forts.

Notepad ++ est décent aussi - Je pense que c'est un peu trop complet pour le but prévu, mais ce n'est pas trop mal en soi. J'avais déjà essayé de mettre en place un fichier de syntaxe, mais j'ai quelques problèmes qui ne devraient même pas apparaître. Par exemple, j'ai choisi une couleur pour le style de nombre. Si je mets le numéro 3, ça se montre bien. Si je mets 3.0, la partie .0 est dans la couleur par défaut, pas la couleur du nombre. Si je fais 0x80, seul le premier zéro est coloré, sans parler du x80; Donc, bien sûr, 0xff n'est pas coloré non plus. En outre, # est mon caractère de commentaire de ligne. Si j'ai une ligne telle que

# foo bar 

la ligne entière est bleue, ce qui est correct. Mais s'il n'y a pas d'espace (#foo bar), alors toute la ligne reste noire. Mon dernier reproche est que l'auto-complétion ne semble prendre en compte que les mots déjà utilisés dans le fichier, pas les mots-clés qui n'ont pas encore été utilisés. Est-ce que je manque quelque chose d'évident avec la configuration de la syntaxe ici?

J'ai eu de la malchance à chercher Google pour ce que je pense devrait être des réponses évidentes en ce qui concerne la syntaxe Notepad ++.

+0

pouvez-vous donner un exemple de la façon dont il devrait être «distribuable» – akf

+0

Distribuable comme je peux légalement l'empaqueter avec un logiciel commercial sans payer les frais de licence. Il ne doit pas être libre comme dans la liberté d'expression, mais il doit être libre comme dans la bière gratuite. –

Répondre

1

Après avoir creusé à travers le Wikipedia article on text editors, j'ai trouvé que Programmer's Notepad convient le mieux à mes besoins. L'achèvement du mot-clé est basé uniquement sur les mots-clés définis; le fichier de syntaxe était simple à configurer; et je peux désactiver les fonctionnalités "compliquées" par défaut, en les transformant en ce dont j'ai besoin.

4

Utilisez la bibliothèque Scintilla, comme l'a vu l'éditeur SciTE. Il a des systèmes pour la coloration syntaxique personnalisée et pour l'auto-complétion.

Vous pouvez utiliser SciTE tel quel, ou vous pouvez facilement le modifier ou écrire votre propre shell pour le composant de l'éditeur Scintilla.

Il est livré avec une licence Open Source commerciale.

4

utilisez notepad plus plus ...avec le plugin de langue .. il a lu les mots-clés d'un fichier texte

2

NotePad++ répond à toutes vos exigences, et plus encore.

à partir du lien:

Bloc-notes ++ est un libre (comme dans "expression" et également comme dans "bière libre")

il a également auto-complétion et de l'utilisateur coloration syntaxique définie.

1

et jedit bien Crimson Editor travail

Questions connexes