Vous pouvez personnaliser la complétion du nom de fichier pour n'importe quelle commande interne ou externe ou pour n'importe quel alias. Cela permet TCC d'afficher les noms de fichiers de manière intelligente en fonction de la commande que vous saisissez. Par exemple, vous pouvez souhaiter n'afficher que les fichiers .TXT lorsque vous utilisez la complétion de nom de fichier dans la commande EDIT. Lorsque vous appuyez sur la touche Tab (ou F9), TCC affichera un argument correspondant.
La complétion programmable du nom de fichier ("tabulation") est possible en utilisant n'importe quel langage de script pris en charge par TCC (c'est-à-dire BTM/CMD, Lua, Python, REXX, Tcl, etc.). Voir TABCOMPLETE pour plus de détails.
Pour personnaliser la complétion de nom de fichier, vous pouvez utiliser les options de configuration de la complétion de nom de fichier. Vous pouvez également utiliser la variable d'environnement FILECOMPLETION. Si vous utilisez les deux, la variable d'environnement remplacera l'option de configuration. Il peut être utile d'utiliser la variable d'environnement pour expérimenter, puis de créer des paramètres permanents à l'aide de la boîte de dialogue de configuration.
Le format de la variable d'environnement et de la directive est le suivant :
cmd1 [cmd2 ...]:[!]ext1 ext2...; cmd2: ...
où
cmd1 etc. sont des noms de commandes
ext1 etc. sont des extensions de fichiers (qui peuvent inclure des caractères génériques) ou l'un des types de fichiers suivants :
| DIRS | Répertoires |
| RDONLY | Fichiers en lecture seule |
| HIDDEN | Fichiers cachés |
| SYSTEM | Fichiers système |
| ARCHIVE | Fichiers modifiés depuis la dernière sauvegarde |
| FILES | Tout ce qui n'est pas un répertoire |
| NORMAL | Aucun attribut n'est défini |
Quatre types peuvent être utilisés à la place d'une extension :
| aliases | Alias |
| variables | Variables d'environnement |
| functions | Fonctions de variables définies par l'utilisateur |
| libraries | Noms de fonctions de bibliothèque |
La complétion de nom de fichier prend également en charge une syntaxe de position :
[n] Ne correspondre qu'aux extensions suivantes si le nombre d'arguments est égal à n
[*n] Les extensions suivantes ne sont prises en compte que si le nombre d'arguments est inférieur ou égal à n
[n*] Ne correspond qu'aux extensions suivantes si le numéro de l'argument est supérieur ou égal à n
[/x] Ne correspondre qu'à l'interrupteur spécifié. Un argument de commutateur correspondant n'augmentera pas la valeur de l'argument .
Par exemple, la complétion du nom de fichier ZIP par défaut ressemble à ceci :
zip :[1] dirs zip [2*] *
Cela signifie que le premier argument d'une commande ZIP ne correspondra qu'aux sous-répertoires ou aux fichiers portant l'extension .zip . Les arguments suivants correspondront à n'importe quel fichier ou dossier. Les arguments suivants correspondent à n'importe quel fichier ou répertoire.
Notez que si un fichier utilise l'un des noms de types de fichiers réservés indiqués ci-dessus comme extension (par exemple xyz.hidden), ce fichier sera traité comme s'il était de ce type.
La complétion des noms de fichiers se fera dans l'ordre où les extensions sont spécifiées. Par exemple :
set filecompletion=myeditor:htm html css
tentera d'abord de compléter les fichiers .htm, puis .html, et enfin .css.
La définition d'options dans OPTION / Filename Completion, ou avec la variable d'environnement FILECOMPLETION, remplacera les paramètres de complétion de nom de fichier par défaut, tels que les options "complete hidden files / directories" (compléter les fichiers/répertoires cachés) pour cette commande. Si vous souhaitez personnaliser la complétion de nom de fichier et rechercher les fichiers cachés / système, vous devrez ajouter les extensions HIDDEN et/ou SYSTEM aux options de complétion de nom de fichier de cette commande.
Vouspouvez exclure une extension en la faisant précéder d'un !
Le nom de la commande est la commande interne, l'alias ou le nom du fichier exécutable (sans le chemin d'accès). Par exemple, pourque la complétion de fichier ne renvoie que les répertoires pour les commandes CD, CDD et RD et que les fichiers .C et .ASM pour un éditeurWindows appelé WinEdit, vous devez utiliser ce paramètre pour la complétion de nom de fichier dans la boîte de dialogue de configuration :
cd cdd rd:dirs ; winedit:c asm
Pour obtenir les mêmes résultats en utilisant la variable d'environnement FILECOMPLETION, procédez comme suit
set filecompletion=cd cdd rd:dirs ; winedit:c asm
Avec ce paramètre en vigueur, si vous tapez "CD " et que vous appuyez ensuite sur Tab, TCC ne renvoie que les répertoires, pas les fichiers. Si vous tapez WINEDIT et appuyez sur Tab, vous ne verrez que les noms des fichiers.C et .ASM de .
Lors du test de correspondance des noms de fichiers personnalisés, TCC vérifie la ligne de commande que vous tapez (mais sans développant ni alias). Par exemple, si vous utilisez la définition ci-dessus et que "W" est aliasé à "WINEDIT" et que vous entrez ensuite une commande "W", la complétion de nom de fichier -- qui se réfère uniquement à "WINEDIT" -- sera ignorée. Pour utiliser la complétion de nom de fichier personnalisée pour les alias, vous devez saisir le nom de l'alias :
FileCompletion=cd cdd rd:dirs ; winedit:c asm ; w:c asm