<commit_before>[
 ;; <generation rules>: turn lexicon-derived strings into surface strings.
 ;; il -> lo
 {:g [#"\bil ((gn)|(io)|(jo)|(pn)|(s[^aeiou])|([xyz]))"            "lo $1"]}

 ;; il -> l'
 {:g [ #"\bil ([aeiou])"                                           "l'$1"]}
 
 ;; i -> gli
 {:g [ #"\bi (([aeiou])|(gn)|(io)|(jo)|(pn)|(s[^aeiou])|([xyz]))"  "gli $1"]}
 
 ;; la -> l'
 {:g [ #"\bla ([aeiou])"                                           "l'$1"]}
 
 ;; un -> uno
 {:g [ #"\bun ((gn)|(io)|(jo)|(pn)|(s[^aeiou])|([xyz]))"           "uno $1"]}
 
 ;; una -> un'
 {:g [ #"\bun ([aeiou])"                                           "un'$1"]}
 ;; </generation rules>
 
  ;; dell' -> del
 {:p [#"^dell$" "del"]
  :u {:cat :det
      :agr {:number :sing
              :gender :masc}}}

 ;; dell' -> della
 {:p [#"^dell$" "della"]
  :u {:cat :det
      :agr {:number :sing
            :gender :fem}}}
 
 ;; gli -> i
 {:p [#"^gli$" "i"] ;; "gli" -> "i"
  :u {:synsem {:cat :det
               :agr {:number :plur
                     :gender :masc}}}}
 ;; l' -> la
 {:p [#"^l$" "la"] ;; "l'" -> "la"
  :u {:synsem {:cat :det
               :agr {:number :sing
                     :gender :fem}}}}
 
 ;; l' -> il
 {:p [#"^l$" "il"] ;; "l'" -> "il"
  :u {:synsem {:cat :det
               :agr {:number :sing<commit_msg>replace ^ with \b to make rules more general<commit_after>[
 ;; <generation rules>: turn lexicon-derived strings into surface strings.
 ;; di lo -> dello
 {:g [#"\bdi lo\b"
      "dello"]}

 ;; il -> lo before gn,io,jo,pn,s+nonvowel,x,y,z.
 {:g [#"\bil ((gn)|(io)|(jo)|(pn)|(s[^aeiou])|([xyz]))"
      "lo $1"]}

 ;; il -> l'
 {:g [ #"\bil ([aeiou])"
      "l'$1"]}
 
 ;; i -> gli
 {:g [ #"\bi (([aeiou])|(gn)|(io)|(jo)|(pn)|(s[^aeiou])|([xyz]))"
      "gli $1"]}
 
 ;; la -> l'
 {:g [ #"\bla ([aeiou])"
      "l'$1"]}
 
 ;; un -> uno
 {:g [ #"\bun ((gn)|(io)|(jo)|(pn)|(s[^aeiou])|([xyz]))"
      "uno $1"]}
 
 ;; una -> un'
 {:g [ #"\bun ([aeiou])"
      "un'$1"]}
 ;; </generation rules>
 
  ;; dell' -> del
 {:p [#"\bdell$" "del"]
  :u {:cat :det
      :agr {:number :sing
              :gender :masc}}}

 ;; dell' -> della
 {:p [#"\bdell$" "della"]
  :u {:cat :det
      :agr {:number :sing
            :gender :fem}}}
 
 ;; gli -> i
 {:p [#"\bgli$" "i"] ;; "gli" -> "i"
  :u {:synsem {:cat :det
               :agr {:number :plur
                     :gender :masc}}}}
 ;; l' -> la
 {:p [#"\bl$" "la"] ;; "l'" -> "la"
  :u {:synsem {:cat :det
               :agr {:number :sing
                     :gender :fem}}}}
 
 ;; l' -> il
 {:p [#"\bl$" "il"] ;; "l'" -> "il"
  :u {:synsem {:cat :det
               :agr {:number :sing
{'fraction_non_alphanumeric': 0.29720543806646527, 'fraction_numerical': 0.004531722054380665, 'mean_word_length': 1.8392282958199357, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 36, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 6, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1451263', 'n_tokens_mistral': 1191, 'n_tokens_neox': 1038, 'n_words': 259}