You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

LatinRules.xdy 19 kB

5 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607
  1. ;; style file for xindy
  2. ;; filename: LatinRules.xdy
  3. ;;
  4. ;; It is based upon xindy's files lang/general/utf8.xdy and
  5. ;; lang/general/utf8-lang.xdy which implement
  6. ;; "a general sorting order for Western European languages"
  7. ;;
  8. ;; The aim for Sphinx is to be able to index in a Cyrillic document
  9. ;; also terms using the Latin alphabets, inclusive of letters
  10. ;; with diacritics. To this effect the xindy rules from lang/general
  11. ;; got manually re-coded to avoid collisions with the encoding
  12. ;; done by xindy for sorting words in Cyrillic languages, which was
  13. ;; observed not to use bytes with octal encoding 0o266 or higher.
  14. ;;
  15. ;; So here we use only 0o266 or higher bytes.
  16. ;; (Ŋ, ŋ, IJ, and ij are absent from
  17. ;; lang/general/utf8.xdy and not included here)
  18. ;; Contributed by the Sphinx team, 2018.
  19. (define-letter-group "A" :prefixes (""))
  20. (define-letter-group "B" :after "A" :prefixes (""))
  21. (define-letter-group "C" :after "B" :prefixes (""))
  22. (define-letter-group "D" :after "C" :prefixes (""))
  23. (define-letter-group "E" :after "D" :prefixes (""))
  24. (define-letter-group "F" :after "E" :prefixes (""))
  25. (define-letter-group "G" :after "F" :prefixes (""))
  26. (define-letter-group "H" :after "G" :prefixes (""))
  27. (define-letter-group "I" :after "H" :prefixes (""))
  28. (define-letter-group "J" :after "I" :prefixes (""))
  29. (define-letter-group "K" :after "J" :prefixes (""))
  30. (define-letter-group "L" :after "K" :prefixes (""))
  31. (define-letter-group "M" :after "L" :prefixes (""))
  32. (define-letter-group "N" :after "M" :prefixes (""))
  33. (define-letter-group "O" :after "N" :prefixes (""))
  34. (define-letter-group "P" :after "O" :prefixes (""))
  35. (define-letter-group "Q" :after "P" :prefixes (""))
  36. (define-letter-group "R" :after "Q" :prefixes (""))
  37. (define-letter-group "S" :after "R" :prefixes (""))
  38. (define-letter-group "T" :after "S" :prefixes (""))
  39. (define-letter-group "U" :after "T" :prefixes (""))
  40. (define-letter-group "V" :after "U" :prefixes (""))
  41. (define-letter-group "W" :after "V" :prefixes (""))
  42. (define-letter-group "X" :after "W" :prefixes (""))
  43. (define-letter-group "Y" :after "X" :prefixes (""))
  44. (define-letter-group "Z" :after "Y" :prefixes (""))
  45. (define-rule-set "sphinx-xy-alphabetize"
  46. :rules (("À" "" :string)
  47. ("Ă" "" :string)
  48. ("â" "" :string)
  49. ("Ä" "" :string)
  50. ("à" "" :string)
  51. ("Å" "" :string)
  52. ("Ã" "" :string)
  53. ("Á" "" :string)
  54. ("á" "" :string)
  55. ("ã" "" :string)
  56. ("Â" "" :string)
  57. ("ă" "" :string)
  58. ("å" "" :string)
  59. ("ą" "" :string)
  60. ("ä" "" :string)
  61. ("Ą" "" :string)
  62. ("æ" "" :string)
  63. ("Æ" "" :string)
  64. ("ć" "" :string)
  65. ("ĉ" "" :string)
  66. ("ç" "" :string)
  67. ("Č" "" :string)
  68. ("č" "" :string)
  69. ("Ĉ" "" :string)
  70. ("Ç" "" :string)
  71. ("Ć" "" :string)
  72. ("ď" "" :string)
  73. ("Đ" "" :string)
  74. ("Ď" "" :string)
  75. ("đ" "" :string)
  76. ("ê" "" :string)
  77. ("Ę" "" :string)
  78. ("Ě" "" :string)
  79. ("ë" "" :string)
  80. ("ě" "" :string)
  81. ("é" "" :string)
  82. ("È" "" :string)
  83. ("Ë" "" :string)
  84. ("É" "" :string)
  85. ("è" "" :string)
  86. ("Ê" "" :string)
  87. ("ę" "" :string)
  88. ("ĝ" "" :string)
  89. ("ğ" "" :string)
  90. ("Ğ" "" :string)
  91. ("Ĝ" "" :string)
  92. ("ĥ" "" :string)
  93. ("Ĥ" "" :string)
  94. ("Ï" "" :string)
  95. ("Í" "" :string)
  96. ("ï" "" :string)
  97. ("Î" "" :string)
  98. ("î" "" :string)
  99. ("ı" "" :string)
  100. ("İ" "" :string)
  101. ("í" "" :string)
  102. ("Ì" "" :string)
  103. ("ì" "" :string)
  104. ("Ĵ" "" :string)
  105. ("ĵ" "" :string)
  106. ("ł" "" :string)
  107. ("Ł" "" :string)
  108. ("ľ" "" :string)
  109. ("Ľ" "" :string)
  110. ("ń" "" :string)
  111. ("Ń" "" :string)
  112. ("ñ" "" :string)
  113. ("ň" "" :string)
  114. ("Ñ" "" :string)
  115. ("Ň" "" :string)
  116. ("Õ" "" :string)
  117. ("Ő" "" :string)
  118. ("ó" "" :string)
  119. ("ö" "" :string)
  120. ("ô" "" :string)
  121. ("ő" "" :string)
  122. ("Ø" "" :string)
  123. ("Ö" "" :string)
  124. ("õ" "" :string)
  125. ("Ô" "" :string)
  126. ("ø" "" :string)
  127. ("Ó" "" :string)
  128. ("Ò" "" :string)
  129. ("ò" "" :string)
  130. ("œ" "ĺ" :string)
  131. ("Œ" "ĺ" :string)
  132. ("Ř" "" :string)
  133. ("ř" "" :string)
  134. ("Ŕ" "" :string)
  135. ("ŕ" "" :string)
  136. ("ŝ" "" :string)
  137. ("Ś" "" :string)
  138. ("ș" "" :string)
  139. ("ş" "" :string)
  140. ("Ŝ" "" :string)
  141. ("ś" "" :string)
  142. ("Ș" "" :string)
  143. ("š" "" :string)
  144. ("Ş" "" :string)
  145. ("Š" "" :string)
  146. ("ß" "" :string)
  147. ("Ț" "" :string)
  148. ("Ť" "" :string)
  149. ("ț" "" :string)
  150. ("ť" "" :string)
  151. ("û" "" :string)
  152. ("ŭ" "" :string)
  153. ("ů" "" :string)
  154. ("ű" "" :string)
  155. ("ù" "" :string)
  156. ("Ŭ" "" :string)
  157. ("Ù" "" :string)
  158. ("Ű" "" :string)
  159. ("Ü" "" :string)
  160. ("Ů" "" :string)
  161. ("ú" "" :string)
  162. ("Ú" "" :string)
  163. ("Û" "" :string)
  164. ("ü" "" :string)
  165. ("ÿ" "" :string)
  166. ("Ý" "" :string)
  167. ("Ÿ" "" :string)
  168. ("ý" "" :string)
  169. ("Ż" "" :string)
  170. ("Ž" "" :string)
  171. ("Ź" "" :string)
  172. ("ž" "" :string)
  173. ("ż" "" :string)
  174. ("ź" "" :string)
  175. ("a" "" :string)
  176. ("A" "" :string)
  177. ("b" "" :string)
  178. ("B" "" :string)
  179. ("c" "" :string)
  180. ("C" "" :string)
  181. ("d" "" :string)
  182. ("D" "" :string)
  183. ("e" "" :string)
  184. ("E" "" :string)
  185. ("F" "" :string)
  186. ("f" "" :string)
  187. ("G" "" :string)
  188. ("g" "" :string)
  189. ("H" "" :string)
  190. ("h" "" :string)
  191. ("i" "" :string)
  192. ("I" "" :string)
  193. ("J" "" :string)
  194. ("j" "" :string)
  195. ("K" "" :string)
  196. ("k" "" :string)
  197. ("L" "" :string)
  198. ("l" "" :string)
  199. ("M" "" :string)
  200. ("m" "" :string)
  201. ("n" "" :string)
  202. ("N" "" :string)
  203. ("O" "" :string)
  204. ("o" "" :string)
  205. ("p" "" :string)
  206. ("P" "" :string)
  207. ("Q" "" :string)
  208. ("q" "" :string)
  209. ("r" "" :string)
  210. ("R" "" :string)
  211. ("S" "" :string)
  212. ("s" "" :string)
  213. ("t" "" :string)
  214. ("T" "" :string)
  215. ("u" "" :string)
  216. ("U" "" :string)
  217. ("v" "" :string)
  218. ("V" "" :string)
  219. ("W" "" :string)
  220. ("w" "" :string)
  221. ("x" "" :string)
  222. ("X" "" :string)
  223. ("Y" "" :string)
  224. ("y" "" :string)
  225. ("z" "" :string)
  226. ("Z" "" :string)
  227. ))
  228. (define-rule-set "sphinx-xy-resolve-diacritics"
  229. :rules (("Ĥ" "" :string)
  230. ("ó" "" :string)
  231. ("ľ" "" :string)
  232. ("Ř" "" :string)
  233. ("ĝ" "" :string)
  234. ("ď" "" :string)
  235. ("Ě" "" :string)
  236. ("ĥ" "" :string)
  237. ("Č" "" :string)
  238. ("Ĵ" "" :string)
  239. ("ě" "" :string)
  240. ("ž" "" :string)
  241. ("Ď" "" :string)
  242. ("ř" "" :string)
  243. ("Ž" "" :string)
  244. ("ı" "" :string)
  245. ("Ť" "" :string)
  246. ("á" "" :string)
  247. ("č" "" :string)
  248. ("Á" "" :string)
  249. ("ň" "" :string)
  250. ("Š" "" :string)
  251. ("Ň" "" :string)
  252. ("ĵ" "" :string)
  253. ("ť" "" :string)
  254. ("Ó" "" :string)
  255. ("ý" "" :string)
  256. ("Ĝ" "" :string)
  257. ("Ú" "" :string)
  258. ("Ľ" "" :string)
  259. ("š" "" :string)
  260. ("Ý" "" :string)
  261. ("ú" "" :string)
  262. ("Ś" "" :string)
  263. ("ć" "" :string)
  264. ("Ł" "" :string)
  265. ("ł" "" :string)
  266. ("ń" "" :string)
  267. ("À" "" :string)
  268. ("Ź" "" :string)
  269. ("à" "" :string)
  270. ("Ń" "" :string)
  271. ("Đ" "" :string)
  272. ("ÿ" "" :string)
  273. ("ś" "" :string)
  274. ("Ğ" "" :string)
  275. ("ğ" "" :string)
  276. ("Ù" "" :string)
  277. ("İ" "" :string)
  278. ("đ" "" :string)
  279. ("ù" "" :string)
  280. ("Ț" "" :string)
  281. ("é" "" :string)
  282. ("ŕ" "" :string)
  283. ("Ć" "" :string)
  284. ("ț" "" :string)
  285. ("ò" "" :string)
  286. ("ź" "" :string)
  287. ("Ò" "" :string)
  288. ("Ÿ" "" :string)
  289. ("Ŕ" "" :string)
  290. ("É" "" :string)
  291. ("ĉ" "" :string)
  292. ("ô" "" :string)
  293. ("Í" "" :string)
  294. ("ŝ" "" :string)
  295. ("Ż" "" :string)
  296. ("Ă" "" :string)
  297. ("Ŝ" "" :string)
  298. ("ñ" "" :string)
  299. ("ŭ" "" :string)
  300. ("í" "" :string)
  301. ("È" "" :string)
  302. ("Ô" "" :string)
  303. ("Ŭ" "" :string)
  304. ("ż" "" :string)
  305. ("Ñ" "" :string)
  306. ("è" "" :string)
  307. ("Ĉ" "" :string)
  308. ("ă" "" :string)
  309. ("â" "" :string)
  310. ("û" "" :string)
  311. ("ê" "" :string)
  312. ("Õ" "" :string)
  313. ("õ" "" :string)
  314. ("ș" "" :string)
  315. ("ç" "" :string)
  316. ("Â" "" :string)
  317. ("Ê" "" :string)
  318. ("Û" "" :string)
  319. ("Ç" "" :string)
  320. ("ì" "" :string)
  321. ("Ì" "" :string)
  322. ("Ș" "" :string)
  323. ("ö" "" :string)
  324. ("Ö" "" :string)
  325. ("ş" "" :string)
  326. ("ů" "" :string)
  327. ("ë" "" :string)
  328. ("ã" "" :string)
  329. ("î" "" :string)
  330. ("Î" "" :string)
  331. ("Ã" "" :string)
  332. ("Ş" "" :string)
  333. ("Ů" "" :string)
  334. ("Ë" "" :string)
  335. ("ï" "" :string)
  336. ("Ő" "" :string)
  337. ("Ï" "" :string)
  338. ("Ę" "" :string)
  339. ("ő" "" :string)
  340. ("Ü" "" :string)
  341. ("Å" "" :string)
  342. ("ü" "" :string)
  343. ("ę" "" :string)
  344. ("å" "" :string)
  345. ("Ä" "" :string)
  346. ("ű" "" :string)
  347. ("Ø" "" :string)
  348. ("ø" "" :string)
  349. ("Ű" "" :string)
  350. ("ä" "" :string)
  351. ("Ą" "" :string)
  352. ("ą" "" :string)
  353. ("œ" "" :string)
  354. ("ß" "" :string)
  355. ("Æ" "" :string)
  356. ("Œ" "" :string)
  357. ("æ" "" :string)
  358. ("e" "" :string)
  359. ("t" "" :string)
  360. ("L" "" :string)
  361. ("Y" "" :string)
  362. ("J" "" :string)
  363. ("a" "" :string)
  364. ("p" "" :string)
  365. ("u" "" :string)
  366. ("j" "" :string)
  367. ("b" "" :string)
  368. ("G" "" :string)
  369. ("U" "" :string)
  370. ("F" "" :string)
  371. ("H" "" :string)
  372. ("i" "" :string)
  373. ("z" "" :string)
  374. ("c" "" :string)
  375. ("l" "" :string)
  376. ("A" "" :string)
  377. ("Q" "" :string)
  378. ("w" "" :string)
  379. ("D" "" :string)
  380. ("R" "" :string)
  381. ("d" "" :string)
  382. ("s" "" :string)
  383. ("r" "" :string)
  384. ("k" "" :string)
  385. ("v" "" :string)
  386. ("m" "" :string)
  387. ("P" "" :string)
  388. ("y" "" :string)
  389. ("K" "" :string)
  390. ("q" "" :string)
  391. ("S" "" :string)
  392. ("I" "" :string)
  393. ("C" "" :string)
  394. ("M" "" :string)
  395. ("Z" "" :string)
  396. ("T" "" :string)
  397. ("W" "" :string)
  398. ("B" "" :string)
  399. ("h" "" :string)
  400. ("x" "" :string)
  401. ("X" "" :string)
  402. ("f" "" :string)
  403. ("E" "" :string)
  404. ("V" "" :string)
  405. ("N" "" :string)
  406. ("O" "" :string)
  407. ("o" "" :string)
  408. ("g" "" :string)
  409. ("n" "" :string)
  410. ))
  411. (define-rule-set "sphinx-xy-resolve-case"
  412. :rules (("Ú" "8" :string)
  413. ("Ÿ" "8" :string)
  414. ("Ç" "8" :string)
  415. ("Ĉ" "8" :string)
  416. ("Ŕ" "8" :string)
  417. ("Ľ" "8" :string)
  418. ("Ů" "8" :string)
  419. ("Ý" "8" :string)
  420. ("É" "8" :string)
  421. ("Ë" "8" :string)
  422. ("Ș" "8" :string)
  423. ("Ì" "8" :string)
  424. ("Ê" "8" :string)
  425. ("Ň" "8" :string)
  426. ("Ą" "8" :string)
  427. ("Š" "8" :string)
  428. ("Û" "8" :string)
  429. ("Ş" "8" :string)
  430. ("Ć" "8" :string)
  431. ("Ò" "8" :string)
  432. ("Ĝ" "8" :string)
  433. ("Ñ" "8" :string)
  434. ("Ó" "8" :string)
  435. ("Î" "8" :string)
  436. ("Á" "8" :string)
  437. ("Ã" "8" :string)
  438. ("Ț" "8" :string)
  439. ("Å" "8" :string)
  440. ("Ğ" "8" :string)
  441. ("Ü" "8" :string)
  442. ("È" "8" :string)
  443. ("Ô" "8" :string)
  444. ("İ" "8" :string)
  445. ("Ű" "8" :string)
  446. ("Ù" "8" :string)
  447. ("Ŭ" "8" :string)
  448. ("Â" "8" :string)
  449. ("Ť" "8" :string)
  450. ("Ń" "8" :string)
  451. ("Ď" "8" :string)
  452. ("Ź" "8" :string)
  453. ("Ž" "8" :string)
  454. ("Đ" "8" :string)
  455. ("Ŝ" "8" :string)
  456. ("Č" "8" :string)
  457. ("Ĵ" "8" :string)
  458. ("Ö" "8" :string)
  459. ("Ø" "8" :string)
  460. ("Ż" "8" :string)
  461. ("Ł" "8" :string)
  462. ("Ă" "8" :string)
  463. ("Ě" "8" :string)
  464. ("Ő" "8" :string)
  465. ("Õ" "8" :string)
  466. ("Ę" "8" :string)
  467. ("Ï" "8" :string)
  468. ("À" "8" :string)
  469. ("Ĥ" "8" :string)
  470. ("Ä" "8" :string)
  471. ("Ś" "8" :string)
  472. ("Ř" "8" :string)
  473. ("Í" "8" :string)
  474. ("Œ" "89" :string)
  475. ("Æ" "89" :string)
  476. ("ì" "9" :string)
  477. ("è" "9" :string)
  478. ("ą" "9" :string)
  479. ("š" "9" :string)
  480. ("ú" "9" :string)
  481. ("å" "9" :string)
  482. ("ă" "9" :string)
  483. ("ę" "9" :string)
  484. ("ü" "9" :string)
  485. ("ź" "9" :string)
  486. ("ò" "9" :string)
  487. ("ť" "9" :string)
  488. ("ț" "9" :string)
  489. ("ĵ" "9" :string)
  490. ("ŕ" "9" :string)
  491. ("ż" "9" :string)
  492. ("ä" "9" :string)
  493. ("ý" "9" :string)
  494. ("ù" "9" :string)
  495. ("á" "9" :string)
  496. ("é" "9" :string)
  497. ("č" "9" :string)
  498. ("ň" "9" :string)
  499. ("ś" "9" :string)
  500. ("ø" "9" :string)
  501. ("í" "9" :string)
  502. ("đ" "9" :string)
  503. ("ı" "9" :string)
  504. ("ğ" "9" :string)
  505. ("î" "9" :string)
  506. ("ã" "9" :string)
  507. ("à" "9" :string)
  508. ("ř" "9" :string)
  509. ("ő" "9" :string)
  510. ("ů" "9" :string)
  511. ("ș" "9" :string)
  512. ("ÿ" "9" :string)
  513. ("ë" "9" :string)
  514. ("ŭ" "9" :string)
  515. ("ç" "9" :string)
  516. ("ű" "9" :string)
  517. ("ñ" "9" :string)
  518. ("õ" "9" :string)
  519. ("ě" "9" :string)
  520. ("ş" "9" :string)
  521. ("ž" "9" :string)
  522. ("ĝ" "9" :string)
  523. ("ŝ" "9" :string)
  524. ("ń" "9" :string)
  525. ("û" "9" :string)
  526. ("ł" "9" :string)
  527. ("ď" "9" :string)
  528. ("ĥ" "9" :string)
  529. ("ê" "9" :string)
  530. ("ô" "9" :string)
  531. ("ĉ" "9" :string)
  532. ("â" "9" :string)
  533. ("ć" "9" :string)
  534. ("ï" "9" :string)
  535. ("ö" "9" :string)
  536. ("ľ" "9" :string)
  537. ("ó" "9" :string)
  538. ("æ" "99" :string)
  539. ("ß" "99" :string)
  540. ("œ" "99" :string)
  541. ("N" "8" :string)
  542. ("V" "8" :string)
  543. ("O" "8" :string)
  544. ("X" "8" :string)
  545. ("E" "8" :string)
  546. ("P" "8" :string)
  547. ("K" "8" :string)
  548. ("T" "8" :string)
  549. ("Z" "8" :string)
  550. ("M" "8" :string)
  551. ("C" "8" :string)
  552. ("I" "8" :string)
  553. ("S" "8" :string)
  554. ("B" "8" :string)
  555. ("W" "8" :string)
  556. ("D" "8" :string)
  557. ("R" "8" :string)
  558. ("H" "8" :string)
  559. ("F" "8" :string)
  560. ("Q" "8" :string)
  561. ("A" "8" :string)
  562. ("G" "8" :string)
  563. ("U" "8" :string)
  564. ("J" "8" :string)
  565. ("Y" "8" :string)
  566. ("L" "8" :string)
  567. ("o" "9" :string)
  568. ("n" "9" :string)
  569. ("g" "9" :string)
  570. ("x" "9" :string)
  571. ("f" "9" :string)
  572. ("y" "9" :string)
  573. ("q" "9" :string)
  574. ("h" "9" :string)
  575. ("w" "9" :string)
  576. ("s" "9" :string)
  577. ("d" "9" :string)
  578. ("v" "9" :string)
  579. ("k" "9" :string)
  580. ("r" "9" :string)
  581. ("m" "9" :string)
  582. ("z" "9" :string)
  583. ("c" "9" :string)
  584. ("i" "9" :string)
  585. ("l" "9" :string)
  586. ("b" "9" :string)
  587. ("j" "9" :string)
  588. ("a" "9" :string)
  589. ("p" "9" :string)
  590. ("u" "9" :string)
  591. ("t" "9" :string)
  592. ("e" "9" :string)
  593. ))
  594. (use-rule-set :run 0
  595. :rule-set ("sphinx-xy-alphabetize"))
  596. (use-rule-set :run 1
  597. :rule-set ("sphinx-xy-resolve-diacritics"))
  598. (use-rule-set :run 2
  599. :rule-set ("sphinx-xy-resolve-case"))

A Python package for graph kernels, graph edit distances and graph pre-image problem.