Overview
Comment: | [build][misc][fr] antipatterns for token rules, +syntax for SublimeText, +ajustements |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk | fr | build | new_feature | misc |
Files: | files | file ages | folders |
SHA3-256: |
6d63ab4c8731d1b30ca23df347de2ad6 |
User & Date: | olr on 2019-07-19 16:47:11 |
Other Links: | manifest | tags |
Context
2019-07-22
| ||
06:55 | [core] listRules() check-in: 00c946ab84 user: olr tags: trunk, core | |
2019-07-19
| ||
16:47 | [build][misc][fr] antipatterns for token rules, +syntax for SublimeText, +ajustements check-in: 6d63ab4c87 user: olr tags: trunk, fr, build, new_feature, misc | |
13:47 | [build] remove print() check-in: 284ea35ba0 user: olr tags: trunk, build | |
Changes
Modified compile_rules_graph.py from [6934d9eabf] to [f2d0218e09].
︙ | |||
9 10 11 12 13 14 15 16 17 18 19 20 21 22 | 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | + | import compile_rules_js_convert as jsconv dACTIONS = {} dFUNCTIONS = {} dFUNCNAME = {} dDECLENSIONS = {} dANTIPATTERNS = {} def createFunction (sType, sCode, bStartWithEqual=False): "create a function (stored in <dFUNCTIONS>) and return function name" sCode = prepareFunction(sCode) if sType not in dFUNCNAME: dFUNCNAME[sType] = {} |
︙ | |||
152 153 154 155 156 157 158 | 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 | + + + + + - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + | lToken.append(sToken) return lToken def createRule (iLine, sRuleName, sTokenLine, iActionBlock, sActions, nPriority, dOptPriority, dDef, dDecl): "generator: create rule as list" # print(iLine, "//", sRuleName, "//", sTokenLine, "//", sActions, "//", nPriority) if sTokenLine.startswith("!!") and sTokenLine.endswith("¡¡"): # antipattern sTokenLine = sTokenLine[2:-2].strip() if sRuleName not in dANTIPATTERNS: dANTIPATTERNS[sRuleName]= [] |
︙ |
Modified gc_lang/fr/rules.grx from [1af7331c29] to [085272d919].
︙ | |||
6103 6104 6105 6106 6107 6108 6109 | 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 | - - - - - + + | <<- /conf/ not tag_before(\1, "ce_que") -1>> à # Confusion probable : “a” est une forme conjugée de “avoir”. Pour la préposition, écrivez “à”. TEST: travailler {{a}} bonne distance des fourneaux. TEST: Il l’a fait {{a}} cause de toi. __conf_à_cor_et_à_cri__ |
︙ | |||
6158 6159 6160 6161 6162 6163 6164 | 6155 6156 6157 6158 6159 6160 6161 6162 6163 6164 6165 6166 6167 6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183 6184 6185 6186 6187 6188 6189 6190 6191 6192 6193 6194 6195 6196 6197 6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 | - + + + + + - - - + + + - + - - + - + - - - - + + - - - + + | TEST: nous avons l’{{intention}} de la reine TEST: Ils ont l’intention de nous nuire TEST: Elles avaient bien l’intention d’en parler. TEST: J’ai mis ces trésors de côté spécialement à votre intention __conf_à_moindre_cout__ |
︙ | |||
6230 6231 6232 6233 6234 6235 6236 6237 6238 | 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 | + - + | TEST: il gueulait {{à tir larigot}} TEST: Au nom du progrès, les Victoriens en mal de modernisation rasèrent à tire-larigot les églises et les bâtiments jugés trop anciens. __conf_à_vau_l_eau__ !! à vau-l’eau ¡¡ [a|à] [volo|vo-lo] [à|a] [>veau|>vau|vo|vos] l’ [o|os|au|aux|>eau] |
︙ | |||
6725 6726 6727 6728 6729 6730 6731 | 6723 6724 6725 6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 | - - - - - + + + | <<- /conf/ -2>> au temps # Pour reconnaître son erreur, « au temps pour moi » est l’expression recommandée par l’Académie française. TEST: Je me suis trompé. {{Autant}} pour moi. TEST: Je me suis trompé. {{Au tan}} pour moi. __conf_autant_que_faire_se_peut!7__ |
︙ | |||
7031 7032 7033 7034 7035 7036 7037 | 7027 7028 7029 7030 7031 7032 7033 7034 7035 7036 7037 7038 7039 7040 7041 7042 7043 7044 | - - - - + + + + | TEST: Elle a l’impression d’être laissée pour {{comte}}. TEST: C’est un règlement de {{comte}} entre voyous. TEST: on va lui régler son {{conte}}, à cet enculé. TEST: tout {{conte}} fait, ça reste un salopard. __conf_conte_de_fée__ |
︙ | |||
7079 7080 7081 7082 7083 7084 7085 | 7075 7076 7077 7078 7079 7080 7081 7082 7083 7084 7085 7086 7087 7088 7089 | - + | TEST: L’hostie n’est pas le {{cor}} du Christ. TEST: elle détestait son nouveau garde du {{cor}} TEST: Elle souffla puissamment dans le {{corps}} de chasse. # cour / cours / court __conf_cour_cours_court_courre__ |
︙ | |||
7198 7199 7200 7201 7202 7203 7204 | 7194 7195 7196 7197 7198 7199 7200 7201 7202 7203 7204 7205 7206 7207 7208 7209 7210 7211 7212 7213 7214 7215 7216 7217 7218 7219 | - - + + - - - + + - | TEST: tout ce qu’il apporte d’avantages pécuniaires. TEST: un certain nombre d’avantages sociaux. TEST: ils ont tant d’avantages. # de part en part __conf_de_part_en_part__ |
︙ | |||
9484 9485 9486 9487 9488 9489 9490 9491 9492 9493 9494 9495 9496 9497 | 9478 9479 9480 9481 9482 9483 9484 9485 9486 9487 9488 9489 9490 9491 9492 9493 | + + | # Pas de majuscule sur les mois.|http://www.academie-francaise.fr/la-langue-francaise/questions-de-langue#42_strong-em-jours-de-la-semaine-pluriel-et-majuscules-em-strong TEST: 15 {{Septembre}} ->> septembre TEST: 23 {{Messidor}} ->> messidor TEST: ils viendront en {{Mars}}. ->> mars TEST: le comité d’éthique qui statuera dans les meilleurs délais sur la situation de Véronique Avril TEST: VENDREDI 23 NOVEMBRE 2018 À 18:09 TEST: André Juin était un sculpteur français. TODO: La bataille de Monte Cassino révèle le génie militaire du général Juin. # Assemblée __maj_Assemblée_nationale__ assemblée nationale <<- \1 == "assemblée" -1>> Assemblée # Majuscule manquante. |
︙ | |||
12742 12743 12744 12745 12746 12747 12748 12749 12750 12751 12752 12753 12754 12755 | 12738 12739 12740 12741 12742 12743 12744 12745 12746 12747 12748 12749 12750 12751 12752 | + | >compter à rebours >condamner à mort >couler à ?grands¿ flots >demander [assistance|audience|conseil|pardon] [>donner|>redonner] [naissance|sens|suite|vie] [>donner|>redonner] quartier libre >élire domicile >étouffer dans l’ œuf >faire [allusion|assaut|attention|chaud|confiance|connaissance|compliqué|copain-copain|date|débat|défaut|demi-tour|écran|envie|erreur|état|exception|figure|froid|front|grève|halte|honte|illusion|mouche|office|part|peur|polémique|plaisir|preuve|rage|scandale|sens|signe|usage|volte-face] >faire amende honorable >faire bande à part >faire bon accueil >faire bonne figure >faire chou blanc >faire copain copain |
︙ | |||
22212 22213 22214 22215 22216 22217 22218 | 22209 22210 22211 22212 22213 22214 22215 22216 22217 22218 22219 22220 22221 22222 | - - | TODO: Ils sont âgés de 4 et 1 ans. TODO: Mille neuf cent quatre-vingt. (dépend du contexte) TODO: La Mustang est une voiture. TODO: Il faut se bien connaître soi-même. TODO: C’est lui ou moi qui a gagné. TODO: Des copains plus vieux que moi qui fumaient. TODO: Des copains plus vieux que toi qui fumaient. |
︙ |
Modified misc/grammalecte.sublime-color-scheme from [7d086242cb] to [d7042c117d].
1 2 3 4 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | - + - + | { "name": "Grammalecte Color Scheme", "globals": { |
︙ | |||
25 26 27 28 29 30 31 | 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | + - + | { "name": "Options command", "scope": "options.command", "foreground": "#50F0A0", "font_style": "bold", }, { "name": "Options parameter", "scope": "options.parameter", "foreground": "#70B0F0", "font_style": "bold", }, { "name": "Comment", "scope": "comment", "foreground": "hsl(210, 10%, 50%)" }, { "name": "Bookmark", "scope": "bookmark", "foreground": "#A0F0FF", "background": "#0050A0", }, { "name": "Graphline", "scope": "graphline", "foreground": "hsl(0, 100%, 80%)", "background": "hsl(0, 100%, 20%)", "font_style": "bold", }, { "name": "Error message", "scope": "string.message", "foreground": "hsl(0, 50%, 65%)", }, { "name": "Error message esc", "scope": "string.message.esc", "foreground": "hsl(30, 100%, 65%)", "background": "hsl(60, 100%, 12%)", "font_style": "bold" }, |
︙ | |||
51 52 53 54 55 56 57 58 59 60 | 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 | + + - - - - - - - - + + + + + + + + - + | { "name": "Rule options", "scope": "rule.options", "foreground": "#F0A020", "font_style": "bold", }, { "name": "Rule casing", "scope": "rule.casing", "foreground": "#30C0F0", "font_style": "bold", }, { "name": "Rule action option", "scope": "rule.actionoption", "foreground": "hsl(0, 50%, 50%)", "background": "hsl(330, 50%, 20%)", "font_style": "bold", }, { "name": "Rule option name", "scope": "rule.optionname", "foreground": "hsl(330, 80%, 80%)", "background": "hsl(330, 60%, 20%)", "font_style": "bold", }, { "name": "Rule name (regex)", "scope": "rule.rulename_regex", "foreground": "#A0A0A0", "font_style": "italic", }, { "name": "Rule name (graph)", "scope": "rule.rulename_graph", "foreground": "#F0D080", }, { "name": "Rule priority", "scope": "rule.priority", "foreground": "#F06060", }, { "name": "Rule antipattern", "scope": "rule.antipattern", "foreground": "hsl(0, 80%, 60%)", "background": "hsl(0, 50%, 20%)" }, { "name": "Rule antipattern token", "scope": "rule.antipattern.token", "foreground": "hsl(0, 60%, 90%)", }, { "name": "Entity Valid", "scope": "entity.valid", "foreground": "hsl(150, 100%, 80%)", "background": "hsl(150, 100%, 20%)", "font_style": "bold", }, { "name": "Entity Invalid", "scope": "entity.invalid", "foreground": "hsl(0, 100%, 80%)", "background": "hsl(0, 100%, 20%)", "font_style": "bold", }, |
︙ |
Modified misc/grammalecte.sublime-syntax from [b81150a5bf] to [8396844b7b].
︙ | |||
14 15 16 17 18 19 20 | 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | - + + - + - + | #push: double_quoted_string # Comments begin with a '#' and finish at the end of the line - match: '^#.*' scope: comment # Error message |
︙ | |||
85 86 87 88 89 90 91 92 93 94 95 96 97 98 | 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 | + + + + + | 2: rule.priority - match: '/(\w+)/' scope: rule.actionoption captures: 1: rule.optionname - match: '!!(.+)¡¡' scope: rule.antipattern captures: 1: rule.antipattern.token # Definitions and options - match: '^OPT(?:GROUP|LANG|PRIORITY)/|^OPT(?:SOFTWARE|COLORTHEME):|^COLOR/' scope: options.command - match: '^OPT(?:LABEL|COLOR|)/' scope: options.parameter |
︙ |