J'ai planché sans succès si ce n'est d'avoir colorisé les lien mort à la bonne couleur, l'entendant comme ma distribution l'entend, soit cyan.
Pour les liens sur des exécutable, pas de réponse pour le moment.
J'ai ajouté une condition pour l'extention "txt" colorisé en Black, et placé un else colorisé en yellow pour les périphériques alors que la condition correspondante est celle en reponse à la fonction Normalize_Pathname.
Je n'ai pas trouvé de solution pour les liens sur les programmes.
Code :
Black : constant String := Character'Val(27) & "[01;30m";
|
Code :
elsif Directories.Extension(File_Name.all) = "txt" then Set(File_Index+1) := new String ' (black & Directories.base_Name(File_Name.all) & '.' & Directories.Extension(File_Name.all)); File_Index := File_Index + 1; elsif Os_Lib.Is_Regular_File(File_Name.all) then Set(File_Index+1) := new String ' (white & Directories.simple_Name(File_Name.all)); File_Index := File_Index + 1; elsif Os_Lib.Is_Symbolic_Link(File_Name.all) then if Os_Lib.Normalize_Pathname(File_Name.all, Directories.Containing_Directory(File_Name.all))'Length = 0 then Set(File_Index+1) := new String ' (Red & Directories.base_Name(File_Name.all)); File_Index := File_Index + 1; else Set(File_Index+1) := new String ' (yellow & Directories.base_Name(File_Name.all)); File_Index := File_Index + 1; end if; else Set(File_Index+1) := new String ' (Yellow & Directories.simple_Name(File_Name.all)); File_Index := File_Index + 1;
|
Ce bout de sources occure deux fois.
J'avais aussi oublié d'affecter Lib.Shared.Line_Cur avec zéro pour la saise de Ctrl+L (Wide_Character'Val(12)) dans la tache None_Process.
Et il est nécessaire de décommenter les deux lignes de traitement des arguments dans la procedure xls se trouvant dans emerge-life.adb aussi.
Bizarement la commande interne "xls" donne le bon résultat pour /dev alors que le programme "xls" échoue.
---------------
jovalise (C) 2002 Manuel De Girardi ; web site