pour avoir le tab (\t), tu passes par un CTRL+V puis tab
pour avoir le tab (\t), tu passes par un CTRL+V puis tab
Vu, merci !
Et bon dimanche aprème,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 XX="a b c d" # avec ctrl v puis TAB entre a et b puis pareil entre b et c puis pareil entre c et d : ça roule ! echo "$XX" a b c d echo $XX a b c d
Bonsoir,
une petite image juste pour vous montrer ce que je vis au quotidien depuis au moins, oh..., 30 ans ?
(oui, la typographie m'a pris dans ses bras vers 1994 et ne m'a plus lâché).
Bref, vous le voyez le trou au milieu ? 3 champs non remplis ! Et ça me fait ça pour 17 fontes (sur 935).
L'idée est donc, lors du remplissage de cette liste, que si un champ est vide alors j'utilise l'autre outil, celui qui m'a fait misérer avec les quotes, pour récupérer la(es) valeur(s) manquante(s) (ou je l'utiliserai directement, faut que je revois mes notes, que je retrouve mes marques).
Le gag c'est que dans ma liste de fontes mal fichues, il y en a quand même 5 qui viennent de chez KroSoft, hé ouais : même les cadors se prennent des gamelles...
Par contre aucun problème avec Arial, même avec la toute dernière version, ArialNova de 2019.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Problème avec /usr/share/fonts/AutresFontes/Machine/Linedraw.ttf /usr/share/fonts/AutresFontes/Ornements/webdings.ttf /usr/share/fonts/AutresFontes/Ornements/wingding.ttf /usr/share/fonts/AutresFontes/Ornements/WINGDNG2.TTF /usr/share/fonts/AutresFontes/Ornements/WINGDNG3.TTF
C'est comme ça, c'est le bronx...
EDIT : ah, j'allais oublier, un peu de code, le cœur de l'outil de listage :
Ça s'appuie donc sur du FreePascal animé par Lazarus.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 var i: Integer; slError: TStringList; begin slError:= TStringList.Create; with CacheList do // created in FormActivate //for i:= 0 to 2 do begin // fast test for i:= 0 to Count-1 do begin // full job try CacheItem := TFPFontCacheItem.Create(Items[i].FileName); if CacheItem <> nil then begin with CacheItem.FontData do begin MemoVisu.Lines.Add('FileName '+ FileName); MemoVisu.Lines.Add('FamilyName '+ FamilyName); MemoVisu.Lines.Add('HumanFriendlyName '+ HumanFriendlyName); MemoVisu.Lines.Add('PostScriptName '+ PostScriptName); if (FamilyName='') or (HumanFriendlyName='') or (PostScriptName='') then slError.Add(FileName); end; CacheItem.Free; end; except on E: Exception do ShowMessage(Format('Error with font, index [%d]:'+sLineBreak+'%s'+sLineBreak+'%s', [i, ExtractFileName(Items[i].FileName), E.Message])); end;
Allez, je vous ai assez embêté avec tout ça, bonne semaine.
plus de 1000 ttf sur ma machine (merci noto )
1009 infos ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 pacman -Qql | grep 'ttf$' | wc -l 1009
EDIT moins dépendant de l'os
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84 fc-scan -b $(pacman -Qql | grep 'ttf$' ) Pattern has 26 elts (size 32) family: "Noto Emoji"(s) "Noto Emoji SemiBold"(s) familylang: "en"(s) "en"(s) style: "SemiBold"(s) "Regular"(s) stylelang: "en"(s) "en"(s) fullname: "Noto Emoji"(s) "Noto Emoji SemiBold"(s) fullnamelang: "en"(s) "en"(s) slant: 0(i)(s) weight: 180(f)(s) width: 100(f)(s) foundry: "GOOG"(s) file: "/usr/share/fonts/TTF/NotoEmoji-SemiBold.ttf"(s) index: 0(i)(s) outline: True(s) scalable: True(s) fontversion: 131138(i)(s) capability: "otlayout:DFLT"(s) fontformat: "TrueType"(s) decorative: False(s) postscriptname: "NotoEmoji-SemiBold"(s) color: False(s) symbol: False(s) variable: False(s) fonthashint: False(s) order: 0(i)(s) namedinstance: False(s) fontwrapper: "SFNT"(s) Pattern has 25 elts (size 32) family: "FreeSans"(s) familylang: "en"(s) style: "Medium"(s) "渀愀瘀愀搀渀漀"(s) stylelang: "en"(s) "sl"(s) fullname: "Free Sans"(s) fullnamelang: "en"(s) slant: 0(i)(s) weight: 80(f)(s) width: 100(f)(s) foundry: "PfEd"(s) file: "/usr/share/vlc/skins2/fonts/FreeSans.ttf"(s) index: 0(i)(s) outline: True(s) scalable: True(s) fontversion: 79953(i)(s) fontformat: "TrueType"(s) decorative: False(s) postscriptname: "FreeSans"(s) color: False(s) symbol: False(s) variable: False(s) fonthashint: False(s) order: 0(i)(s) namedinstance: False(s) fontwrapper: "SFNT"(s) Pattern has 25 elts (size 32) family: "FreeSans"(s) familylang: "en"(s) style: "Bold"(s) "polkrepko"(s) stylelang: "en"(s) "sl"(s) fullname: "Free Sans Bold"(s) fullnamelang: "en"(s) slant: 0(i)(s) weight: 200(f)(s) width: 100(f)(s) foundry: "PfEd"(s) file: "/usr/share/vlc/skins2/fonts/FreeSansBold.ttf"(s) index: 0(i)(s) outline: True(s) scalable: True(s) fontversion: 117964(i)(s) fontformat: "TrueType"(s) decorative: False(s) postscriptname: "FreeSansBold"(s) color: False(s) symbol: False(s) variable: False(s) fonthashint: False(s) order: 0(i)(s) namedinstance: False(s) fontwrapper: "SFNT"(s) ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part fc-scan -b $(find "/usr/share/fonts/" -iname "*.ttf") # | awk '/postscriptname/ {print $2}' | sort
L'enfer, quand il faut en trouver une...
Et c'est bien pour ça que très vite (début 2000) j'ai commencé à tout trier dans une douzaine de dossiers précis (sérif, sans-sérif, fantaisie, machine, etc.) et avant de jouer avec l'ascenseur du traitement de texte, j'étudie mon classeur papier où elles sont (presque) toutes répertoriées.
Tellement plus agréable pour comparer et choisir, on peut mettre plusieurs pages papier côte à côte, que du bonheur, et quelle efficacité !
Et rapidité aussi.
Merci, car pacman je ne connais pas.
Et du coup j'ai joué comme toi :
Ce qui est curieux, c'est que 22 + 833 + 53 = 908, alors qu'un autre outil m'en donne 935. Si j'enlève les 17 en erreur, il m'en resterait 918.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 fc-scan -b $(find "/usr/share/fonts/" -iname "*.ttf") | grep 'Pattern' | wc -l # famille DéjaVu, celles qui font fonctionner le système 22 fc-scan -b $(find "/usr/share/fonts/AutresFontes/" -iname "*.ttf") | grep 'Pattern' | wc -l # toutes les autres 833 fc-scan -b $(find "/usr/share/fonts/AutresFontes/" -iname "*.otf") | grep 'Pattern' | wc -l # à trier... 53
Une erreur de 10 quelque part...
Ah, je n'ai pas testé ton ajout awk, je le découvre après avoir posté ma réponse.
Je vais regarder ça.
Partager