Le système de script d’Altium Designer se compose de deux parties principales : l’éditeur et le débogueur. L’éditeur offre une gamme de fonctions d’aide et d’inspection du code de script, et le débogueur fournit l’accès aux composants du script ainsi qu’aux fonctions de débogage.
Outils de script
Le système de script fournit une gamme d’outils pour vous aider à écrire et à déboguer des scripts. En plus des capacités automatisées de complétion et d’analyse du code, le système de script vous permet de parcourir interactivement les scripts ligne par ligne, d’inspecter les variables et les objets, et de définir des points d’arrêt sur une ou plusieurs lignes du script.
Les outils de l’éditeur de script sont un atout essentiel lors du débogage des scripts.
Configuration du langage
À partir de la boîte de dialogue Language Setup , vous pouvez créer, modifier et gérer une liste de langages pouvant être associés aux documents ouverts dans une variante de l’éditeur de texte prenant en charge le code. Chaque langage se compose d’un schéma syntaxique, d’un ensemble de modèles de code et d’une liste d’associations de fichiers. Pour accéder à la boîte de dialogue, cliquez sur
dans la Text Utilities barre d’outils.

La boîte de dialogue Language Setup
La boîte de dialogue contient une liste des langages actuellement définis. Utilisez-la pour créer, dupliquer, modifier et supprimer des langages selon les besoins. Pour un langage donné, les éléments suivants doivent être définis :
- Le mappage d’une extension de fichier à un langage est unique ; si vous ajoutez la même extension à un autre langage, le mappage vers son ancien langage est automatiquement supprimé.
- Si un fichier avec une extension particulière est associé à un langage, le contenu du fichier est mis en évidence conformément à la syntaxe définie pour ce langage.
- Lorsque vous dupliquez un langage, vous copiez également son schéma syntaxique, ainsi que tous les modèles de code qu’il contient.
Mise en évidence de la syntaxe
La mise en évidence de la syntaxe est une méthode utilisée pour rendre les documents texte plus lisibles, où différents éléments du document sont mis en évidence en fonction de leur syntaxe. Pour cela, des couleurs uniques sont attribuées aux différents mots, symboles et identifiants. Cet ensemble d’attributions de couleurs constitue la syntaxe de ce langage.
Le schéma syntaxique du langage associé au document actif peut être défini/modifié à partir de la boîte de dialogue Syntax Editor , accessible depuis l’éditeur de texte (ou toute variante de l’éditeur de texte prenant en charge le code), en cliquant sur le bouton
dans la Text Utilities barre d’outils.

La boîte de dialogue Syntax Editor
Bien que la commande soit disponible de manière générique depuis la barre d’outils Text Utilities, notez qu’aucun langage n’est associé aux fichiers texte standard (*.txt) et que l’accès à la boîte de dialogue n’est donc pas autorisé depuis un document de ce type.
La boîte de dialogue Syntax Editor est divisée en cinq onglets, chacun représentant une zone différente de la syntaxe du langage :
- Options - utilisé pour définir diverses options générales de syntaxe.
- Comments - utilisé pour définir les commentaires. Les commentaires sont des éléments du fichier texte que vous souhaitez définir comme commentaires de code. Ils peuvent être définis comme commentaires sur une seule ligne, sur ligne complète ou sur plusieurs lignes. Les commentaires sont définis par leurs délimiteurs, c’est-à-dire les caractères qui indiquent qu’un bloc de texte est un commentaire. Les commentaires sur une seule ligne et sur ligne complète ne nécessitent qu’un délimiteur gauche (l’autre extrémité étant définie par un caractère de fin de ligne). Les commentaires sur une seule ligne peuvent commencer n’importe où sur une ligne ; les commentaires sur ligne complète exigent que le délimiteur de commentaire soit le premier caractère de la ligne. Les commentaires multilignes nécessitent un délimiteur gauche et un délimiteur droit pour définir leur début et leur fin.
- Strings - utilisé pour définir les chaînes. Les chaînes sont des éléments du fichier texte que vous souhaitez définir comme chaînes dans le code, par exemple les chaînes qui apparaissent comme message dans une boîte de dialogue affichée par votre programme. Les chaînes sur une seule ligne et sur plusieurs lignes sont toutes deux prises en charge, et les deux types nécessitent des délimiteurs gauche et droit pour définir leur point de début et de fin.
- Numbers - utilisé pour définir les nombres. Comme les commentaires et les chaînes, les nombres constituent une autre catégorie d’informations dans le document que vous pouvez souhaiter faire ressortir. Simple numbers sont définis comme des chaînes de chiffres numériques, pouvant contenir ou non un point décimal, par exemple 45, 45.6 mais pas 45.6.6. Les nombres simples peuvent également inclure un caractère E, indiquant une notation scientifique, comme 53E3 ou 24e6. Special numbers sont définis comme ayant un préfixe et/ou un suffixe et contenant des chiffres numériques, ou les lettres A-F. Ils peuvent être utilisés pour indiquer à un compilateur que le nombre est, par exemple, hexadécimal ou octal. Des exemples de ces nombres sont 0xAF034AD, 88j, j8A8y, mais pas 0xA.4. Chaque type de nombre est spécifié par un suffixe, un préfixe ou une combinaison préfixe-suffixe. Le comportement de base des préfixes et suffixes est que, lorsqu’un préfixe ou suffixe valide est détecté en combinaison avec un nombre, alors le nombre et le préfixe (ou suffixe) sont mis en évidence selon le style de nombre. Ce comportement de base peut être modifié via des options supplémentaires disponibles.
- Keywords - utilisé pour définir les mots-clés. Les mots-clés sont un ensemble de mots prédéfinis que vous souhaitez faire ressortir dans votre document. Il s’agit généralement de mots réservés par le langage de programmation pour identifier une fonction spécifique, une procédure, un type d’objet, etc. Les mots-clés sont définis dans un ou plusieurs ensembles de mots-clés, chacun avec son propre style (paramètres de couleur et de police), ce qui améliore encore la lisibilité de votre document.
- Activez/désactivez la mise en évidence de la syntaxe pour chacun des éléments syntaxiques dans leurs onglets respectifs. Si l’option de mise en évidence d’un élément syntaxique est désactivée, toute syntaxe de ce type présente dans le document ne sera plus mise en évidence et reviendra au style du texte normal.
- Si le même mot-clé apparaît dans plusieurs ensembles de mots-clés, le style de mise en évidence de l’ensemble qui apparaît en premier dans la liste sera appliqué.
- Les mots-clés peuvent contenir des caractères alphabétiques et numériques ainsi que le caractère de soulignement. Le mot-clé ne peut pas commencer par un caractère numérique.
Complétion du code
L’éditeur prend en charge une fonction de complétion du code, qui est une fenêtre contextuelle automatisée affichant des options de code sensibles au contexte.
Lorsque vous tapez un point après le nom d’une interface d’objet, une liste des propriétés et méthodes disponibles pour cet objet s’affiche dans une fenêtre contextuelle de complétion du code ; continuez à taper pour affiner davantage la liste. La sélection d’une option dans la liste insérera dans le code cette procédure/fonction ou propriété.

Vous pouvez utiliser les touches de raccourci Ctrl+Space pour afficher la fenêtre de liste de complétion du code à tout moment.
La liste de complétion du code inclura également les procédures et fonctions globales disponibles dans le projet actuellement ouvert, y compris celles du script en cours.
La fonction de complétion du code est extrêmement utile pour sélectionner l’interface d’objet, la méthode et la propriété correctes à appliquer dans un script.
Modèles d’instructions
Les modèles de code sont des blocs de code prédéfinis qui peuvent être automatiquement placés dans un fichier texte prenant en charge le code, et constituent une excellente aide à la productivité lorsque vous écrivez du code dans un langage particulier. Chaque modèle de code possède trois propriétés : un nom, une description et le code réel à insérer par le modèle.
La fonction de modèle de script générera automatiquement une structure de code pour l’instruction sélectionnée dans la fenêtre de liste contextuelle.
La liste contextuelle peut être activée à tout moment à l’aide des touches de raccourci Ctrl+J , du bouton Show Code Templates (
dans la Text Utilitiesbarre d’outils), ou de la commande Tools » Show Code Templates depuis les menus principaux. Si elle est activée après avoir saisi les premières lettres d’une instruction de code, par exemple « proc », le code de l’instruction correspondante remplira automatiquement le document avec la structure Procedure . Sinon, si plusieurs instructions sont disponibles pour les lettres déjà saisies (par exemple « if »), la fenêtre de liste des modèles proposera une liste filtrée d’instructions.
Vous pouvez également placer le curseur à l’emplacement souhaité dans le fichier, puis lancer la commande. Une fenêtre contextuelle répertoriant tous les modèles de code disponibles définis pour le langage associé apparaîtra. Choisissez l’entrée requise pour insérer ce modèle.

Chaque modèle de code est identifié par son nom, tel que spécifié dans la boîte de dialogue Code Templates Editor. L’accès à cette boîte de dialogue peut se faire depuis la boîte de dialogue Language Setup (cliquez sur
dans la Text Utilities barre d’outils), en choisissant la commande Templates depuis le Menu.
Paramètres de méthode
La fonction Paramètres de méthode du script affiche un message contextuel indiquant quels paramètres sont utilisés pour une méthode particulière (fonction/procédure, etc.) d’une interface d’objet.
Lorsque la parenthèse ouvrante initiale est saisie après une méthode, comme illustré dans l’image ci-dessous, le message Paramètres apparaît automatiquement. Les touches Shift+Ctrl+Space peuvent être utilisées pour afficher manuellement le message contextuel Paramètres, le cas échéant.

Pour voir la définition des paramètres d’une instruction de méthode complète, placez le curseur à l’intérieur de ses parenthèses de paramètres et utilisez Shift+Ctrl+Space pour appeler la fenêtre contextuelle.
Le message contextuel Paramètres affiche également l’emplacement source de la définition de la méthode (fonction/procédure), le cas échéant. Dans l’exemple ci-dessus, la méthode (ShowAParametricMessage) est définie dans le script HelloWorld.pas à la ligne 14 — survolez l’image pour voir la méthode telle qu’utilisée dans le script HelloWorldDialog.
Navigation vers la définition
La source de la définition d’une variable ou d’une méthode de script peut être localisée immédiatement à l’aide de la fonction de navigation de l’éditeur.
Pour trouver la source de définition d’une variable, appuyez sur la touche Ctrl tout en cliquant sur la variable à l’endroit où elle est utilisée dans le script. Le curseur se déplacera vers la définition. Utilisez la même méthode (Ctrl+Click) pour localiser la définition source d’une procédure. Si la procédure est définie dans un autre script du projet, ce script s’ouvrira avec le curseur positionné sur la procédure.

Info-bulle Insight
La fonctionnalité Insight ToolTip affiche le type de variable lorsque le curseur de la souris survole la variable. De même, lorsque vous survolez une procédure avec la souris, sa définition et son emplacement (script et numéro de ligne) s’affichent.

Points d’arrêt
Les points d’arrêt sont un outil de débogage principal qui vous permet de suspendre l’exécution d’un script à des emplacements prédéfinis. Une utilisation typique des points d’arrêt consiste à les placer dans les différentes branches d’une instruction conditionnelle, afin de vérifier laquelle est exécutée.
La manière la plus simple de définir un point d’arrêt consiste à cliquer dans la marge de l’éditeur, à côté d’une ligne de code, qui est alors surlignée en rouge. Le surlignage de la ligne devient vert clair lorsqu’un script en cours d’exécution atteint ce point d’arrêt. Le script peut ensuite s’exécuter jusqu’au point d’arrêt suivant avec la commande Run (raccourci : F9) ou avec les commandes de pas à pas.

Pour activer/désactiver un point d’arrêt sur la ligne courante, vous pouvez également utiliser la commande Run » Toggle Breakpoint dans les menus principaux (raccourci : F5).
Vous pouvez aussi utiliser la commande Run » Add Breakpoint dans les menus principaux pour ouvrir la boîte de dialogue Add New Breakpoint, à partir de laquelle vous pouvez définir un nouveau point d’arrêt à ajouter à tout document de script actuellement ouvert. Utilisez cette boîte de dialogue pour définir à quel numéro de ligne du document sélectionné le point d’arrêt doit être ajouté. Le champ Condition de la boîte de dialogue vous permet de définir un point d’arrêt conditionnel, de sorte que l’exécution du script ne s’arrête que si la condition associée au point d’arrêt renvoie true, sinon l’exécution se poursuit sans interruption.
Vous pouvez également choisir si le point d’arrêt doit être initialement activé ou désactivé. Un point d’arrêt désactivé reste défini, mais ne provoquera pas l’arrêt d’un script en cours d’exécution lorsqu’il sera rencontré.
- Un point d’arrêt activé est indiqué dans le code par un surlignage rouge sur la ligne du point d’arrêt et un cercle rouge avec une croix dans la marge (
). Un point d’arrêt désactivé est indiqué dans le code par un surlignage vert sur la ligne du point d’arrêt et un cercle vert avec une croix dans la marge (
).
- Un point d’arrêt désactivé ne peut pas être supprimé directement depuis le document de script. Lorsqu’il est désactivé, sa suppression n’est possible que depuis le panneau Breakpoints panel.

La boîte de dialogue Add New Breakpoint
Notez qu’un point d’arrêt de script doit se trouver sur une ligne d’instruction. Tout point d’arrêt placé sur une ligne vide, une ligne commentée ou tout autre élément qui n’est pas une instruction sera ignoré.
Les points d’arrêt sont accessibles via le panneau Breakpoints, ce qui permet de localiser et de gérer facilement tous les points d’arrêt définis sans devoir parcourir un script pour les trouver. Le panneau fournit des informations sur tous les points d’arrêt actuellement définis dans tous les fichiers de script ouverts (indépendamment du projet de script parent (*.PrjScr) auquel ils appartiennent), ainsi que des commandes permettant d’ajouter, d’activer, de désactiver et de supprimer les points d’arrêt sélectionnés via le menu contextuel.

Le panneau Breakpoints
Double-cliquez sur une entrée de point d’arrêt dans le panneau (ou sélectionnez la commande Edit Source dans le menu contextuel) pour faire du document de script associé le document actif dans l’espace de conception, en plaçant le curseur de texte au début de la ligne de script à laquelle le point d’arrêt s’applique.
Sélectionnez la commande Properties dans le menu contextuel pour accéder à la boîte de dialogue Breakpoint Properties pour l’entrée de point d’arrêt sélectionnée. Vous pouvez utiliser cette boîte de dialogue pour modifier l’état du point d’arrêt (l’activer/le désactiver) et également ajouter/modifier une condition pour ce point d’arrêt selon les besoins. Vous ne pouvez pas modifier le fichier dans lequel le point d’arrêt a été ajouté, ni le numéro de ligne spécifique dans ce fichier.

La boîte de dialogue Breakpoint Properties
Évaluation d’expression
Lorsqu’un script est arrêté en réponse à un point d’arrêt ou à une erreur, la valeur de toute expression (une instruction de script) peut être déterminée à l’aide d’une fonctionnalité ToolTip ou via la boîte de dialogue interactive Evaluate .
Les outils d’évaluation sont principalement des outils de débogage, utilisés conjointement avec des panneaux d’aide au débogage tels que les panneaux Watch List et Call Stack.
ToolTip d’évaluation
La fonctionnalité ToolTip d’évaluation d’expression affiche la valeur actuelle des données pour la variable survolée par le curseur.

Fonction d’évaluation
Pour utiliser la boîte de dialogue Evaluate de l’éditeur, cliquez sur une variable d’expression dans le script et sélectionnez le bouton Run » Evaluate (raccourci : Ctrl+F7). La boîte de dialogue sera automatiquement renseignée avec l’expression et son résultat actuel.
Vous pouvez également copier une expression du script dans le champ Expression de la boîte de dialogue et cliquer sur Evaluate pour voir le résultat. Le nom d’une expression peut aussi être saisi directement dans le champ Expression afin d’évaluer le résultat.

Un script en mode point d’arrêt avec la boîte de dialogue Evaluate activée.
Expressions surveillées
Les expressions surveillées vous permettent de suivre les valeurs des variables/expressions pendant que vous déboguez pas à pas le document de script courant. Une expression surveillée peut être une variable unique ou une expression contenant une ou plusieurs variables.
Pour définir des expressions surveillées pour le document de script courant, utilisez la commande Run » Add Watch dans les menus principaux (raccourci : Ctrl+F5). Après le lancement de la commande, la boîte de dialogue Add New Watch apparaît. Utilisez cette boîte de dialogue pour définir l’expression à surveiller. Par exemple, l’expression peut être une variable particulière utilisée dans le code (par ex. OUT, a, Remainder), ou une expression basée sur une ou plusieurs variables définies (par ex. a+b, a*b, c+(b-a)).

La boîte de dialogue Add New Watch
Après avoir cliqué sur OK, l’expression surveillée apparaîtra dans le panneau Watch List. Utilisez ce panneau pour afficher toutes les expressions surveillées définies en même temps. Les surveillances peuvent être ajoutées, modifiées et supprimées depuis le menu contextuel accessible par clic droit dans le panneau.

Le panneau Watch List
À mesure que vous parcourez les lignes de code du document de script, les expressions surveillées sont évaluées et les valeurs correspondantes sont mises à jour si le script modifie l’une des variables utilisées dans ces expressions.
Lorsque l’exécution du script entre dans une fonction ou une procédure, une expression surveillée n’est valide que si la ou les variables de l’expression sont définies et utilisées dans cette fonction ou procédure. Si une variable n’est pas disponible pour la fonction ou la procédure (c’est-à-dire qu’elle n’est pas globale ou qu’elle est locale à une autre partie du script), alors le champ Value affichera Undeclared identifier: VariableName.
Double-cliquez sur une entrée de surveillance dans le panneau, ou cliquez avec le bouton droit sur une entrée et sélectionnez la commande Edit Watch pour accéder à la boîte de dialogue Watch Properties, à partir de laquelle vous pouvez modifier l’expression de la surveillance sélectionnée selon les besoins.
Signets
Les signets sont utilisés dans les scripts pour repérer des instructions et y naviguer rapidement. Jusqu’à 10 signets peuvent être définis dans un script.
Un signet est indiqué par une case verte dans la marge de l’éditeur, contenant le numéro du signet. Pour ajouter un signet, sélectionnez une ligne de code, cliquez avec le bouton droit, sélectionnez Toggle Bookmarks dans le menu contextuel, puis un numéro d’emplacement dans le sous-menu (Toggle Bookmarks » Set Location Mark n, où « n » est le numéro du signet de 0 à 9).
Pour aller à (sauter vers) un signet, cliquez avec le bouton droit puis sélectionnez Goto Bookmarks et l’emplacement de signet souhaité dans le sous-menu (Goto Bookmarks » Jump Location Mark n). Pour supprimer un signet, désactivez-le en répétant le processus d’ajout de signet pour cette ligne de code.
L’emplacement mémorisé n’est disponible que tant que le document reste ouvert (actif ou non). Si le document est fermé puis rouvert, le marqueur d’emplacement sera vide.

Utilisez les signets pour accéder rapidement à une instruction dans le script.
- Utilisez les touches de raccourci Ctrl+n pour accéder à un signet existant dans le script (où n est le numéro du signet de 0 à 9) — par exemple, pour aller au signet numéro 3, appuyez sur les touches de raccourci Ctrl+3.
- Utilisez les touches de raccourci Ctrl+Shift+n pour activer/désactiver un signet (où n est le numéro du signet à basculer), ou pour déplacer un signet attribué vers la ligne courante.
Plan du code
Pour faciliter votre travail avec le code, les procédures/fonctions/sous-routines du document sont organisées en blocs de plan de code. Ces blocs de plan de code peuvent être réduits ou développés afin de n’afficher que le contenu du document dont vous avez besoin à l’instant.
L’utilisation du plan de code, y compris une option permettant d’afficher les lignes de réduction — l’étendue d’un bloc de code individuel — est activée/désactivée depuis la page
Text Editors - Display page de la boîte de dialogue
Preferences.
Pour développer/réduire un bloc de code individuel, cliquez sur le petit contrôle
ou
, à gauche de l’instruction supérieure du bloc. Lorsqu’il est réduit, un contrôle
apparaît à droite de l’instruction supérieure pour chaque bloc de code. En le survolant avec la souris, le code réduit s’affiche. Un double-clic sur ce contrôle développera ce bloc de code individuel.
Pour développer/réduire tous les blocs de plan de code dans le document courant, cliquez avec le bouton droit et choisissez Outlining » Collapse All ou Expand All dans le menu contextuel.
Outils généraux d’édition de texte
Ajout d’éléments To-Do
Un élément To-Do, comme son nom l’indique, sert essentiellement de rappel pour une tâche qui devra être effectuée ultérieurement en lien avec le document.
Pour ajouter un élément To-Do à un endroit précis dans le document en cours, placez le curseur de texte à cet endroit, cliquez avec le bouton droit et choisissez Add To-Do Item dans le menu contextuel. Après le lancement de la commande, la boîte de dialogue Edit To-Do Item apparaît. Utilisez cette boîte de dialogue pour saisir un texte approprié concernant la tâche à effectuer à cet endroit du document. Utilisez les champs disponibles dans la boîte de dialogue pour définir une Priority pour la tâche (de Lowest à Highest, avec Normal sélectionné par défaut), le Owner de la tâche ainsi qu’une Category pour la tâche (par ex. Formatting pass, Code Review pass, etc).
Après avoir défini l’élément To-Do comme souhaité, cliquez sur OK pour fermer la boîte de dialogue et revenir au document en cours. Une entrée pour l’élément To-Do apparaîtra à l’endroit marqué par la position actuelle du curseur de texte. L’entrée apparaîtra entre les délimiteurs { et }, comme illustré dans l’exemple ci-dessous :
{TODO Name=Check Spelling|Priority=3|State=1|Owner=Jase|Category=Proofing|UID=UIDYOGFS}
Où :
- Name correspond au texte réel de l’action à effectuer.
- Priority est une valeur représentant la priorité attribuée (Lowest = 0, Low = 1, High = 3, Highest = 4). Si la Priority a été définie sur Normal, aucune entrée ne sera affichée.
- State indique si l’élément a été effectué ou non. Si ce n’est pas le cas, aucune entrée ne sera affichée. Si c’est fait, la valeur de State sera 1.
- Owner est le propriétaire attribué à l’élément.
- Category est la catégorie attribuée à l’élément.
- UID est l’identifiant unique de cet élément particulier.
Tous les éléments To-Do du projet actif sont répertoriés dans le
panneau To-Do .
Modifier la casse ou la capitalisation du texte
Les commandes du menu Tools » Change Case vous permettent de modifier la capitalisation ou la casse du texte sélectionné ou du mot sous le curseur.
- Selection To UpperCase – sélectionnez le texte dont vous souhaitez changer la casse de lower en UPPER puis lancez la commande. La sélection passera en majuscules.
- Selection To LowerCase – sélectionnez le texte dont vous souhaitez changer la casse de UPPER en lower puis lancez la commande. La sélection passera en minuscules.
- Capitalize Selection – sélectionnez le texte que vous souhaitez mettre en capitale initiale puis lancez la commande. Chaque mot distinct de la sélection qui ne commence pas déjà par une majuscule verra sa première lettre convertie en majuscule.
- Word To UpperCase – placez le curseur de texte au début, à la fin ou n’importe où dans le mot dont vous souhaitez changer la casse de lower en UPPER puis lancez la commande. Le mot passera en majuscules.
- Word To LowerCase – placez le curseur de texte au début, à la fin ou n’importe où dans le mot dont vous souhaitez changer la casse de UPPER en lower puis lancez la commande. Le mot passera en minuscules.
- Capitalize Word – placez le curseur de texte au début, à la fin ou n’importe où dans le mot que vous souhaitez mettre en capitale initiale puis lancez la commande. La première lettre du mot sera convertie en majuscule.
Retrait du texte
Pour une meilleure lisibilité, vous pouvez appliquer un retrait au texte dans votre document. Pour augmenter ou réduire le retrait du texte sélectionné dans le document en cours, choisissez Tools » Indent ou Tools » Unindent dans les menus principaux, ou cliquez sur le bouton
/
de la barre d’outils Text Utilities. La sélection sera indentée/désindentée du nombre de caractères spécifié dans le champ Block Indent, sur la page Text Editors - General page de la boîte de dialogue Preferences.
Si l’option Backspace unindents est activée (sur la page Text Editors - General de la boîte de dialogue Preferences ), vous pouvez réduire le retrait à l’aide de la touche Backspace . Placez le curseur de texte avant le premier caractère non espace de la ligne à désindenter et appuyez sur Backspace. La ligne sera désindentée, en s’alignant sur le début des nouveaux mots de la ligne précédente.
Recherche et remplacement de texte
Pour configurer une recherche de texte spécifique situé dans le document en cours, dans tous les documents texte du projet actif, dans tous les documents texte ouverts, ou dans tous les documents texte d’un répertoire spécifié, la boîte de dialogue Find Text est utilisée. La boîte de dialogue est accessible depuis l’éditeur de texte (ou toute variante de l’éditeur de texte prenant en charge le code) en choisissant la commande Edit » Find dans les menus principaux (raccourci : Ctrl+F).

La boîte de dialogue Find Text
La boîte de dialogue fonctionne essentiellement selon deux modes, avec des fonctionnalités fournies par deux onglets :
- Find - utilisez les options de cet onglet pour configurer une recherche dans le document en cours uniquement. Après avoir cliqué sur OK, la première occurrence du texte correspondant trouvée sera mise en surbrillance dans le document.
- Find in Files - utilisez les options de cet onglet pour configurer une recherche dans tous les documents texte du projet actif, tous les documents texte ouverts, ou tous les documents texte d’un répertoire spécifié. Après avoir cliqué sur OK, toutes les occurrences du texte correspondant trouvées dans les fichiers inclus dans la portée de la recherche seront répertoriées sous forme d’entrées dans le panneau Messages. Chaque message indiquera le fichier source, la ligne sur laquelle le texte recherché a été trouvé, le texte complet de cette ligne, ainsi que la position du caractère dans cette ligne à laquelle commence la chaîne de texte recherchée.
- Chaque message du panneau Messages est de la forme (x, y): <LineText>, où x est la position du caractère sur la ligne y du document.
- Les fichiers n’ont pas besoin d’être ouverts pour rechercher du texte à l’aide du mode Find in Files.
- Lors de l’utilisation du mode Find in Files, le texte trouvé peut faire l’objet d’un cross-probing à partir de l’entrée du panneau Messages : il suffit de double-cliquer sur le message.
Pour trouver l’occurrence suivante de la dernière recherche de texte spécifiée à l’aide de la boîte de dialogue Find Text, utilisez la commande Edit » Find Next dans les menus principaux (raccourci : F3). Après le lancement de la commande, l’occurrence suivante du texte spécifié dans le champ Text to find de la boîte de dialogue Find Text sera localisée et mise en surbrillance. Utilisez la commande de manière répétée pour parcourir toutes les autres occurrences. Cette fonctionnalité applique tous les critères de recherche qui ont été spécifiés lors de la recherche de texte initiale.
Activez l’option Find selected text on Find Next, sur la page Text Editors - General page de la boîte de dialogue Preferences, pour utiliser cette commande afin de trouver rapidement les occurrences suivantes du texte actuellement sélectionné, au lieu du texte utilisé lors de l’action de recherche initiale.
Vous pouvez également trouver l’occurrence suivante du texte actuellement sélectionné dans le document actif à l’aide de la commande Edit » Find Next Selected dans les menus principaux (raccourci : Ctrl+Shift+F). Après le lancement de la commande, l’occurrence suivante du texte sélectionné sera sélectionnée. Utilisez la commande de manière répétée pour parcourir toutes les autres occurrences. Cette fonctionnalité effectue essentiellement une recherche de texte à l’aide de la boîte de dialogue Find Text, le texte sélectionné étant utilisé comme entrée pour le champ Text to find . Tous les critères de recherche spécifiés lors de la dernière recherche de texte effectuée à l’aide de la boîte de dialogue Find Text seront appliqués avec cette fonctionnalité.
Pour configurer une recherche afin de localiser et remplacer un texte spécifique situé dans le document en cours, dans tous les documents texte du projet actif, dans tous les documents texte ouverts, ou dans tous les documents texte d’un répertoire spécifié, la boîte de dialogue Replace Text est utilisée. La boîte de dialogue est accessible depuis l’éditeur de texte (ou toute variante de l’éditeur de texte prenant en charge le code) en choisissant la commande Edit » Replace dans les menus principaux (raccourci : Ctrl+H).

La boîte de dialogue Replace Text
La boîte de dialogue fonctionne essentiellement selon deux modes, avec des fonctionnalités fournies par deux onglets :
- Replace Text - utilisez les options de cet onglet pour configurer le remplacement de texte dans le document en cours uniquement. Pour remplacer uniquement la première occurrence du texte correspondant, cliquez sur OK. Si l’option Prompt on replace était activée, le texte sera mis en surbrillance et une boîte de dialogue apparaîtra pour confirmer le remplacement. Cliquez sur Yes pour remplacer uniquement cette occurrence. Vous aurez la possibilité de remplacer toutes les occurrences correspondantes depuis cette boîte de dialogue. Sinon, pour tout remplacer dès le départ, cliquez sur Replace All, plutôt que sur OK. Là encore, toutes les occurrences correspondantes du texte recherché seront soit remplacées directement, soit remplacées après confirmation individuelle, selon l’état de l’option Prompt on replace .
- Replace in Files - utilisez les options de cet onglet pour configurer un remplacement de texte dans tous les documents textuels du projet actif, tous les documents textuels ouverts ou tous les documents textuels d’un répertoire spécifié. Après avoir cliqué sur OK, toutes les occurrences du texte correspondant trouvées dans les fichiers inclus dans la portée de la recherche seront remplacées. Là encore, vous pouvez choisir d’être invité à confirmer le remplacement en activant au préalable l’option Prompt on replace. La boîte de dialogue Replacing s’affichera pour montrer la progression du remplacement. Chaque remplacement effectué sera répertorié sous forme d’entrées dans le panneau Messages. Chaque message indiquera le fichier source, la ligne sur laquelle le texte recherché a été trouvé, le texte complet de cette ligne et la position du caractère dans cette ligne à laquelle commence la chaîne de texte recherchée.
Dans chaque cas, une boîte de dialogue d’information apparaîtra, résumant le nombre de remplacements effectués.
- Chaque message du panneau Messages se présente sous la forme (x, y): <OriginalLineText>, où x est la position du caractère sur la ligne y du document. Le texte affiche le texte d’origine, avant remplacement.
- Les fichiers n’ont pas besoin d’être ouverts pour remplacer du texte à l’aide du mode Replace in Files. Ces fichiers peuvent éventuellement être ouverts après le remplacement en activant l’option Open changed files in editor avant d’effectuer le remplacement.
- Lors de l’utilisation du mode Replace in Files, il est possible d’effectuer un cross-probing vers le texte remplacé résultant à partir de l’entrée du panneau Messages : il suffit de double-cliquer sur le message.
Pour la recherche et le remplacement de texte, consultez les options associées dans la région Find, sur la page Text Editors - General page de la boîte de dialogue Preferences.
Options and Controls of the Find-Replace Text Dialog
Onglet Find/Replace Text
- Text to find - saisissez la chaîne de texte à rechercher dans le document ou utilisez la liste déroulante pour sélectionner la chaîne parmi les recherches précédentes.
- Replace with - saisissez la chaîne de texte qui remplacera le texte trouvé ou utilisez la liste déroulante pour sélectionner la chaîne de remplacement parmi les chaînes de remplacement précédentes. Cette commande est disponible uniquement dans la boîte de dialogue Replace Text.
- Options
- Case sensitive - cochez cette option pour effectuer la recherche en respectant la casse.
- Whole words only - cochez cette option pour ne trouver que des mots entiers.
- Regular expressions - cochez cette option pour effectuer la recherche à l’aide d’expressions régulières.
- ^ - correspond uniquement lorsque la chaîne se trouve au début d’une ligne.
- $ - correspond uniquement lorsque la chaîne se trouve à la fin d’une ligne.
- . - indique n’importe quel caractère unique (par exemple, « te.t » correspond à « test », « text » et « tent », mais pas à « tet »).
- * - indique n’importe quel ensemble de caractères, y compris aucun caractère (par exemple, « te* » correspond à « text », « tent » et « te », mais pas à « t »).
- + - indique n’importe quel ensemble de caractères, sauf aucun caractère (par exemple, « te+ » correspond à « text » et « tent », mais pas à « te »).
- [ ] - trouve n’importe lequel des caractères placés entre crochets.
- [^] - un accent circonflexe au début d’une chaîne entre crochets signifie NOT (par exemple, « [^tes] » correspond à n’importe quels caractères sauf t, e ou s).
- [-] - un trait d’union dans une chaîne entre crochets indique une plage de caractères (par exemple, « [l-o] » correspond aux caractères l, m, n et o).
- { } - utilisé pour regrouper des caractères ou des expressions. Les groupes peuvent être imbriqués, avec un maximum de 10 groupes dans un même motif.
- \ - une barre oblique inverse devant un caractère générique indique au Text Editor de traiter ce caractère littéralement, et non comme un caractère générique (par exemple, « \^test » ne recherche pas la chaîne test au début d’une ligne ; il recherche la chaîne « ^test »).
- Prompt on replace - cochez cette option pour être invité avant qu’un remplacement ne soit effectué. Cette commande est disponible uniquement dans la boîte de dialogue Replace Text.
- Search hidden text - cochez cette option pour inclure le texte masqué dans la recherche.
- Wrap search - cochez cette option pour boucler la chaîne de recherche. Cette commande est disponible uniquement dans la boîte de dialogue Find Text.
- Direction - utilisez ces sélections conjointement avec les options Origin pour déterminer d’où et comment le texte est recherché..
- Forward - sélectionnez cette option pour effectuer la recherche vers l’avant à partir du curseur.
- Backward - sélectionnez cette option pour effectuer la recherche vers l’arrière à partir du curseur.
- Scope
- Global - sélectionnez cette option pour rechercher dans l’ensemble du document.
- Selected text - sélectionnez cette option pour rechercher uniquement dans le texte actuellement sélectionné.
- Origin - utilisez ces sélections conjointement avec les options Direction pour déterminer d’où et comment le texte est recherché.
- From cursor - sélectionnez cette option pour commencer la recherche à partir de l’emplacement du curseur.
- Entire scope - sélectionnez cette option pour effectuer la recherche dans l’ensemble du document.
Onglet Find in Files/Replace in Files
- Text to find - saisissez la chaîne de texte à rechercher dans le document ou utilisez la liste déroulante pour sélectionner la chaîne parmi les recherches précédentes.
- Replace with - saisissez la chaîne de texte qui remplacera le texte trouvé ou utilisez la liste déroulante pour sélectionner la chaîne de remplacement parmi les chaînes de remplacement précédentes. Cette commande est disponible uniquement dans la boîte de dialogue Replace Text.
- Options
- Case sensitive - cochez cette option pour effectuer la recherche en respectant la casse.
- Whole words only - cochez cette option pour ne trouver que des mots entiers.
- Regular expressions - cochez cette option pour effectuer la recherche à l’aide d’expressions régulières. Les expressions régulières valides incluent les suivantes :
- ^ - correspond uniquement lorsque la chaîne se trouve au début d’une ligne.
- $ - correspond uniquement lorsque la chaîne se trouve à la fin d’une ligne.
- . - indique n’importe quel caractère unique (par exemple, « te.t » correspond à « test », « text » et « tent », mais pas à « tet »).
- * - indique n’importe quel ensemble de caractères, y compris aucun caractère (par exemple, « te* » correspond à « text », « tent » et « te », mais pas à « t »).
- + - indique n’importe quel ensemble de caractères, sauf aucun caractère (par exemple, « te+ » correspond à « text » et « tent », mais pas à « te »).
- [ ] - trouve n’importe lequel des caractères placés entre crochets.
- [^] - un accent circonflexe au début d’une chaîne entre crochets signifie NOT (par exemple, « [^tes] » correspond à n’importe quels caractères sauf t, e ou s).
- [-] - un trait d’union dans une chaîne entre crochets indique une plage de caractères (par exemple, « [l-o] » correspond aux caractères l, m, n et o).
- { } - utilisé pour regrouper des caractères ou des expressions. Les groupes peuvent être imbriqués, avec un maximum de 10 groupes dans un même motif.
- \ - une barre oblique inverse devant un caractère générique indique au Text Editor de traiter ce caractère littéralement, et non comme un caractère générique (par exemple, « \^test » ne recherche pas la chaîne « test » au début d’une ligne ; il recherche la chaîne « ^test »).
- Prompt on replace - cochez cette option pour être invité avant qu’un remplacement ne soit effectué. Cette commande est disponible uniquement dans la boîte de dialogue Replace Text.
- Search hidden text - cochez cette option pour inclure le texte masqué dans la recherche.
- Where
- Search all files in project - sélectionnez cette option pour rechercher dans tous les fichiers du projet en cours.
- Search all open files - sélectionnez cette option pour rechercher dans tous les fichiers ouverts.
- Search in directories - sélectionnez cette option pour rechercher dans des répertoires.
- Open changed files in editor - sélectionnez cette option pour ouvrir les fichiers modifiés.
- Search Directory Options
- File Mask - cliquez sur le bouton Browse pour ouvrir une boîte de dialogue permettant de sélectionner le dossier à rechercher.
- Include subdirectories - cochez cette option pour inclure les sous-répertoires dans la recherche.
Contrôle supplémentaire
- Replace All - cliquez pour remplacer toutes les chaînes trouvées par le texte saisi dans la zone de texte Replace with. Cette commande est disponible uniquement dans la boîte de dialogue Replace Text.
Accéder à une ligne spécifique
Pour accéder à une ligne spécifique dans le document en cours, choisissez Edit » Goto Line Number dans les menus principaux. Après le lancement de la commande, la boîte de dialogue Go to Line Number apparaîtra.

La boîte de dialogue Go to Line Number
Au départ, la boîte de dialogue affichera la ligne sur laquelle le curseur de texte est actuellement positionné. Saisissez dans le champ New Line Number le numéro de ligne vers lequel vous souhaitez déplacer le curseur. Si le numéro de ligne est supérieur au nombre de lignes du document, la boîte de dialogue réapparaîtra, prête à recevoir un numéro de ligne valide. Après avoir cliqué sur OK, le curseur se déplacera à la même position sur la ligne spécifiée.
Il peut être très utile d’activer l’affichage des numéros de ligne. Cela peut être fait à l’aide de l’option
Show line numbers (et des sous-options associées), sur la page
Text Editors - Display page de la boîte de dialogue
Preferences.
Ouvrir le document sous le curseur
Un document sur lequel se trouve actuellement le curseur peut être ouvert automatiquement depuis l’éditeur de texte. Placez le curseur de texte dans le texte qui décrit le document à ouvrir, cliquez avec le bouton droit et choisissez Open Document Under Cursor dans le menu contextuel (raccourci : Ctrl+Enter). Le document sera ouvert et deviendra le document actif.
Par exemple, pour ouvrir un document appelé Example_Schematic.SchDoc, assurez-vous d’abord que le texte Example_Schematic.SchDoc est saisi quelque part dans le document texte en cours. Placez ensuite le curseur de texte n’importe où dans cette chaîne et lancez la commande : Example_Schematic.SchDoc s’ouvrira comme document actif.
- La fonctionnalité n’est pas sensible à la casse ; la casse du texte saisi dans le document texte n’a donc pas besoin d’être identique à celle du fichier réel à ouvrir.
- La fonctionnalité n’ouvrira que les documents dont les noms de fichier ne contiennent pas d’espaces. Par exemple, Example_Design_File.SchDoc et ExampleDesignFile.SchDoc s’ouvriront tous deux avec cette fonctionnalité, mais pas Example Design File.SchDoc.
- La fonctionnalité n’ouvrira que les documents stockés au même emplacement sur le disque dur que le document texte à l’origine de l’appel. Si le document ne se trouve pas dans ce répertoire, une boîte de dialogue Open apparaîtra, à partir de laquelle vous pourrez rechercher et ouvrir le document requis.
- Si un document est déjà ouvert lorsqu’un appel est effectué, ce document deviendra le document actif.
Retour à la ligne
Si votre document contient de longues lignes de texte, vous pouvez le rendre plus lisible manuellement en insérant des retours chariot ou en activant le retour à la ligne. Pour gérer le retour à la ligne, utilisez les commandes du menu principal Tools » Word Wrap :
- None – désactive le mode de retour à la ligne dans le document en cours. Après l’exécution de la commande, le texte saisi ne sera plus renvoyé ni à la marge droite ni au bord droit de la fenêtre de la zone d’affichage.
- At Margin (ou le bouton
de la barre d’outils Text Utilities) – les lignes de texte seront renvoyées à la marge dans le document en cours. Après l’exécution de la commande, le texte saisi sera renvoyé à la marge droite, telle que définie par la valeur saisie dans le champ Margin width, sur la page Text Editors - Display page de la boîte de dialogue Preferences.
- At Window (ou le bouton
de la barre d’outils Text Utilities) – les lignes de texte seront renvoyées au bord de la fenêtre d’affichage dans le document en cours. Après l’exécution de la commande, le texte saisi sera renvoyé au bord droit de la fenêtre de la zone d’affichage.
- Vous pouvez changer de mode de retour à la ligne à tout moment – le texte du document sera reformaté pour se conformer au mode choisi.
- Le retour à la ligne peut également être configuré à l’aide de l’option Word wrap (et des sous-options associées) sur la page Text Editors - Display page de la boîte de dialogue Preferences.
Fractionnement de l’affichage du document
Vous pouvez « fractionner » l’affichage du document en cours en deux sections horizontales ou verticales distinctes, ce qui vous permet de parcourir et de modifier deux zones différentes d’un même document. Pour diviser la fenêtre du document en deux sections égales, choisissez l’une des commandes suivantes :
- Window » Split Horizontally – la moitié supérieure affichera une zone commençant au début (en haut) du document. La moitié inférieure affichera une zone commençant au point du document qui se trouvait initialement en haut de la fenêtre d’affichage avant l’exécution de la commande.
- Window » Split Vertically – la moitié gauche affichera une zone commençant au début (en haut) du document, avec la barre de défilement horizontale complètement à gauche. La moitié droite affichera une zone commençant au point du document qui se trouvait initialement en haut de la fenêtre d’affichage avant l’exécution de la commande.
Vous pouvez désormais parcourir et modifier librement différentes zones du document en cours (unique).
Une « barre de fractionnement » sépare les deux sections. Cliquez sur cette barre de séparation et faites-la glisser pour modifier la zone du document visible dans chaque section.
Pour revenir à une fenêtre unique pour le document, utilisez la commande Remove Split, accessible depuis le menu Window. La zone du document qui sera affichée lorsque le fractionnement sera supprimé sera celle actuellement affichée dans la section inférieure (pour un fractionnement horizontal) ou dans la section de droite (pour un fractionnement vertical).
Si vous souhaitez changer le mode de fractionnement d’horizontal à vertical ou de vertical à horizontal, utilisez respectivement la commande Split Vertically ou Split Horizontally, également accessible depuis le menu Window.