rsyntaxtree 1.2.10 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +2 -0
  3. data/README.md +3 -1
  4. data/bin/rsyntaxtree +3 -1
  5. data/docs/_examples/052.md +58 -0
  6. data/docs/assets/img/000.png +0 -0
  7. data/docs/assets/img/001.png +0 -0
  8. data/docs/assets/img/002.png +0 -0
  9. data/docs/assets/img/003.png +0 -0
  10. data/docs/assets/img/004.png +0 -0
  11. data/docs/assets/img/005.png +0 -0
  12. data/docs/assets/img/006.png +0 -0
  13. data/docs/assets/img/007.png +0 -0
  14. data/docs/assets/img/008.png +0 -0
  15. data/docs/assets/img/009.png +0 -0
  16. data/docs/assets/img/010.png +0 -0
  17. data/docs/assets/img/011.png +0 -0
  18. data/docs/assets/img/012.png +0 -0
  19. data/docs/assets/img/013.png +0 -0
  20. data/docs/assets/img/014.png +0 -0
  21. data/docs/assets/img/015.png +0 -0
  22. data/docs/assets/img/016.png +0 -0
  23. data/docs/assets/img/017.png +0 -0
  24. data/docs/assets/img/018.png +0 -0
  25. data/docs/assets/img/019.png +0 -0
  26. data/docs/assets/img/020.png +0 -0
  27. data/docs/assets/img/021.png +0 -0
  28. data/docs/assets/img/022.png +0 -0
  29. data/docs/assets/img/023.png +0 -0
  30. data/docs/assets/img/024.png +0 -0
  31. data/docs/assets/img/025.png +0 -0
  32. data/docs/assets/img/026.png +0 -0
  33. data/docs/assets/img/027.png +0 -0
  34. data/docs/assets/img/028.png +0 -0
  35. data/docs/assets/img/029.png +0 -0
  36. data/docs/assets/img/030.png +0 -0
  37. data/docs/assets/img/031.png +0 -0
  38. data/docs/assets/img/032.png +0 -0
  39. data/docs/assets/img/033.png +0 -0
  40. data/docs/assets/img/034.png +0 -0
  41. data/docs/assets/img/035.png +0 -0
  42. data/docs/assets/img/036.png +0 -0
  43. data/docs/assets/img/037.png +0 -0
  44. data/docs/assets/img/038.png +0 -0
  45. data/docs/assets/img/039.png +0 -0
  46. data/docs/assets/img/040.png +0 -0
  47. data/docs/assets/img/041.png +0 -0
  48. data/docs/assets/img/042.png +0 -0
  49. data/docs/assets/img/043.png +0 -0
  50. data/docs/assets/img/044.png +0 -0
  51. data/docs/assets/img/045.png +0 -0
  52. data/docs/assets/img/046.png +0 -0
  53. data/docs/assets/img/048.png +0 -0
  54. data/docs/assets/img/049.png +0 -0
  55. data/docs/assets/img/050.png +0 -0
  56. data/docs/assets/img/051.png +0 -0
  57. data/docs/assets/img/052.png +0 -0
  58. data/docs/assets/svg/005.svg +17 -17
  59. data/docs/assets/svg/013.svg +76 -76
  60. data/docs/assets/svg/026.svg +15 -15
  61. data/docs/assets/svg/027.svg +46 -46
  62. data/docs/assets/svg/040.svg +63 -63
  63. data/docs/assets/svg/052.svg +96 -0
  64. data/lib/rsyntaxtree/version.rb +1 -1
  65. data/lib/rsyntaxtree.rb +2 -0
  66. data/rsyntaxtree.gemspec +3 -2
  67. data/test/example_verify_test.rb +5 -5
  68. metadata +22 -17
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" standalone="no"?>
2
2
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
- <svg width="1519.2" height="1010.25" viewBox="-14.4, 0, 1533.6000000000001, 1021.5" version="1.1" xmlns="http://www.w3.org/2000/svg">
3
+ <svg width="1344.2" height="1049.25" viewBox="-14.4, 0, 1358.6000000000001, 1060.5" version="1.1" xmlns="http://www.w3.org/2000/svg">
4
4
  <defs>
5
5
  <marker id="arrow" markerUnits="userSpaceOnUse" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="14.4" markerHeight="14.4" orient="auto">
6
6
  <path d="M 0 0 L 10 5 L 0 10" fill="black"/>
@@ -24,97 +24,97 @@
24
24
  <line x1="0" y="0" x2="0" y2="10" stroke="black" stroke-width="4"></line>
25
25
  </pattern>
26
26
  </defs>
27
- <rect x="-14.4" y="0" width="1533.6000000000001" height="1021.5" stroke="none" fill="white" />"
28
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='600.3000000000002' y='67.5'><tspan x='780.3000000000002' y='67.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">root</tspan>
29
- <tspan x='690.3000000000002' y='112.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[cons]<tspan style='fill:none;'>■</tspan>[sonor]</tspan>
30
- <tspan x='735.3000000000002' y='157.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">stricture</tspan>
31
- <tspan x='600.3000000000002' y='202.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[later]<tspan style='fill:none;'>■</tspan>[strid]<tspan style='fill:none;'>■</tspan>[contin]</tspan>
27
+ <rect x="-14.4" y="0" width="1358.6000000000001" height="1060.5" stroke="none" fill="white" />"
28
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='471.17499999999995' y='67.5'><tspan x='668.675' y='67.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">root</tspan>
29
+ <tspan x='550.175' y='115.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[cons]<tspan style='fill:none;'>■</tspan>[sonor]</tspan>
30
+ <tspan x='637.175' y='163.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">stricture</tspan>
31
+ <tspan x='471.17499999999995' y='211.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[later]<tspan style='fill:none;'>■</tspan>[strid]<tspan style='fill:none;'>■</tspan>[contin]</tspan>
32
32
  </text>
33
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='315.00000000000006' y='373.5'><tspan x='315.00000000000006' y='373.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">cavity</tspan>
34
- <tspan x='333.00000000000006' y='418.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Oral</tspan>
33
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='264.99999999999994' y='385.5'><tspan x='264.99999999999994' y='385.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">cavity</tspan>
34
+ <tspan x='277.99999999999994' y='433.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Oral</tspan>
35
35
  </text>
36
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='14.399999999999977' y='589.5'><tspan x='14.399999999999977' y='589.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
37
- <tspan x='59.39999999999998' y='634.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Labial</tspan>
36
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='14.399999999999977' y='607.5'><tspan x='14.399999999999977' y='607.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
37
+ <tspan x='47.39999999999998' y='655.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Labial</tspan>
38
38
  </text>
39
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='41.40000000000009' y='805.5'><tspan x='41.40000000000009' y='805.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
40
- <tspan x='41.40000000000009' y='850.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
41
- <tspan x='50.40000000000009' y='895.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[round]</tspan>
39
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='15.899999999999977' y='829.5'><tspan x='28.899999999999977' y='829.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
40
+ <tspan x='31.899999999999977' y='877.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
41
+ <tspan x='15.899999999999977' y='925.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[round]</tspan>
42
42
  </text>
43
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='270.0000000000001' y='589.5'><tspan x='270.0000000000001' y='589.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
44
- <tspan x='306.0000000000001' y='634.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Coronal</tspan>
43
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='230.9999999999999' y='607.5'><tspan x='230.9999999999999' y='607.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
44
+ <tspan x='250.9999999999999' y='655.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Coronal</tspan>
45
45
  </text>
46
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='288.0000000000001' y='805.5'><tspan x='297.0000000000001' y='805.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
47
- <tspan x='297.0000000000001' y='850.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
48
- <tspan x='306.0000000000001' y='895.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[anter]</tspan>
49
- <tspan x='288.0000000000001' y='940.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[distrib]</tspan>
46
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='228.9999999999999' y='829.5'><tspan x='245.4999999999999' y='829.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
47
+ <tspan x='248.4999999999999' y='877.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
48
+ <tspan x='237.4999999999999' y='925.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[anter]</tspan>
49
+ <tspan x='228.9999999999999' y='973.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[distrib]</tspan>
50
50
  </text>
51
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='525.6000000000001' y='589.5'><tspan x='525.6000000000001' y='589.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
52
- <tspan x='570.6000000000001' y='634.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Dorsal</tspan>
51
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='447.5999999999999' y='607.5'><tspan x='447.5999999999999' y='607.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
52
+ <tspan x='478.5999999999999' y='655.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Dorsal</tspan>
53
53
  </text>
54
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='552.6000000000001' y='805.5'><tspan x='552.6000000000001' y='805.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
55
- <tspan x='552.6000000000001' y='850.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
56
- <tspan x='570.6000000000001' y='895.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[back]</tspan>
57
- <tspan x='570.6000000000001' y='940.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[high]</tspan>
58
- <tspan x='579.6000000000001' y='985.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[low]</tspan>
54
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='458.0999999999999' y='829.5'><tspan x='462.0999999999999' y='829.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
55
+ <tspan x='465.0999999999999' y='877.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
56
+ <tspan x='458.0999999999999' y='925.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[back]</tspan>
57
+ <tspan x='461.5999999999999' y='973.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[high]</tspan>
58
+ <tspan x='467.0999999999999' y='1021.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[low]</tspan>
59
59
  </text>
60
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='826.2' y='373.5'><tspan x='826.2' y='373.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">cavity</tspan>
61
- <tspan x='835.2' y='418.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Nasal</tspan>
60
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='703.1999999999999' y='385.5'><tspan x='703.1999999999999' y='385.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">cavity</tspan>
61
+ <tspan x='706.1999999999999' y='433.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Nasal</tspan>
62
62
  </text>
63
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='781.2' y='589.5'><tspan x='781.2' y='589.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
64
- <tspan x='781.2' y='634.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Soft<tspan style='fill:none;'>■</tspan>Palate</tspan>
63
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='662.1999999999999' y='607.5'><tspan x='669.1999999999999' y='607.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
64
+ <tspan x='662.1999999999999' y='655.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Soft<tspan style='fill:none;'>■</tspan>Palate</tspan>
65
65
  </text>
66
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='808.2' y='805.5'><tspan x='808.2' y='805.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
67
- <tspan x='808.2' y='850.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
68
- <tspan x='817.2' y='895.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[nasal]</tspan>
66
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='675.6999999999999' y='829.5'><tspan x='683.6999999999999' y='829.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
67
+ <tspan x='686.6999999999999' y='877.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
68
+ <tspan x='675.6999999999999' y='925.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[nasal]</tspan>
69
69
  </text>
70
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1173.6' y='373.5'><tspan x='1209.6' y='373.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">cavity</tspan>
71
- <tspan x='1173.6' y='418.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Pharyngeal</tspan>
70
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1005.3499999999999' y='385.5'><tspan x='1045.35' y='385.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">cavity</tspan>
71
+ <tspan x='1005.3499999999999' y='433.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Pharyngeal</tspan>
72
72
  </text>
73
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1036.8000000000002' y='589.5'><tspan x='1036.8000000000002' y='589.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
74
- <tspan x='1072.8000000000002' y='634.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Radical</tspan>
73
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='890.8' y='607.5'><tspan x='890.8' y='607.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
74
+ <tspan x='914.3' y='655.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Radical</tspan>
75
75
  </text>
76
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1063.8000000000002' y='805.5'><tspan x='1063.8000000000002' y='805.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
77
- <tspan x='1063.8000000000002' y='850.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
78
- <tspan x='1090.8000000000002' y='895.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[ATR]</tspan>
79
- <tspan x='1090.8000000000002' y='940.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[RTR]</tspan>
76
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='905.3' y='829.5'><tspan x='905.3' y='829.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
77
+ <tspan x='908.3' y='877.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
78
+ <tspan x='908.3' y='925.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[ATR]</tspan>
79
+ <tspan x='907.8' y='973.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[RTR]</tspan>
80
80
  </text>
81
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1292.4' y='589.5'><tspan x='1292.4' y='589.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
82
- <tspan x='1328.4' y='634.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Glottal</tspan>
81
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1131.8999999999999' y='607.5'><tspan x='1131.8999999999999' y='607.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">articulator</tspan>
82
+ <tspan x='1159.8999999999999' y='655.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">Glottal</tspan>
83
83
  </text>
84
- <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1292.4' y='805.5'><tspan x='1319.4' y='805.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
85
- <tspan x='1319.4' y='850.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
86
- <tspan x='1292.4' y='895.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[spread<tspan style='fill:none;'>■</tspan>gl]</tspan>
87
- <tspan x='1292.4' y='940.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[constr<tspan style='fill:none;'>■</tspan>gl]</tspan>
88
- <tspan x='1319.4' y='985.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[voiced]</tspan>
84
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1105.3999999999999' y='829.5'><tspan x='1146.3999999999999' y='829.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">terminal</tspan>
85
+ <tspan x='1149.3999999999999' y='877.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">features</tspan>
86
+ <tspan x='1105.3999999999999' y='925.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[spread<tspan style='fill:none;'>■</tspan>gl]</tspan>
87
+ <tspan x='1109.8999999999999' y='973.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[constr<tspan style='fill:none;'>■</tspan>gl]</tspan>
88
+ <tspan x='1128.8999999999999' y='1021.5' style="" text-decoration="" font-family="'Noto Sans Mono SemiCondensed', 'Noto Sans JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', sans-serif">[voiced]</tspan>
89
89
  </text>
90
90
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
91
- points='369.00000000000006 317.25 369.00000000000006 273.9375 816.3000000000001 273.9375 816.3000000000001 230.625' />
91
+ points='309.49999999999994 329.25 309.49999999999994 284.4375 699.675 284.4375 699.675 239.625' />
92
92
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
93
- points='880.2 317.25 880.2 273.9375 816.3000000000001 273.9375 816.3000000000001 230.625' />
93
+ points='747.6999999999999 329.25 747.6999999999999 284.4375 699.675 284.4375 699.675 239.625' />
94
94
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
95
- points='1263.6 317.25 1263.6 273.9375 816.3000000000001 273.9375 816.3000000000001 230.625' />
95
+ points='1089.85 329.25 1089.85 284.4375 699.675 284.4375 699.675 239.625' />
96
96
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
97
- points='113.39999999999998 533.25 113.39999999999998 489.9375 369.00000000000006 489.9375 369.00000000000006 446.625' />
97
+ points='92.89999999999998 551.25 92.89999999999998 506.4375 309.49999999999994 506.4375 309.49999999999994 461.625' />
98
98
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
99
- points='369.0000000000001 533.25 369.0000000000001 489.9375 369.00000000000006 489.9375 369.00000000000006 446.625' />
99
+ points='309.4999999999999 551.25 309.4999999999999 506.4375 309.49999999999994 506.4375 309.49999999999994 461.625' />
100
100
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
101
- points='624.6000000000001 533.25 624.6000000000001 489.9375 369.00000000000006 489.9375 369.00000000000006 446.625' />
101
+ points='526.0999999999999 551.25 526.0999999999999 506.4375 309.49999999999994 506.4375 309.49999999999994 461.625' />
102
102
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
103
- points='113.40000000000009 749.25 113.40000000000009 705.9375 113.39999999999998 705.9375 113.39999999999998 662.625' />
103
+ points='92.89999999999998 773.25 92.89999999999998 728.4375 92.89999999999998 728.4375 92.89999999999998 683.625' />
104
104
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
105
- points='369.0000000000001 749.25 369.0000000000001 705.9375 369.0000000000001 705.9375 369.0000000000001 662.625' />
105
+ points='309.4999999999999 773.25 309.4999999999999 728.4375 309.4999999999999 728.4375 309.4999999999999 683.625' />
106
106
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
107
- points='624.6000000000001 749.25 624.6000000000001 705.9375 624.6000000000001 705.9375 624.6000000000001 662.625' />
107
+ points='526.0999999999999 773.25 526.0999999999999 728.4375 526.0999999999999 728.4375 526.0999999999999 683.625' />
108
108
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
109
- points='880.2 533.25 880.2 489.9375 880.2 489.9375 880.2 446.625' />
109
+ points='747.6999999999999 551.25 747.6999999999999 506.4375 747.6999999999999 506.4375 747.6999999999999 461.625' />
110
110
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
111
- points='880.2 749.25 880.2 705.9375 880.2 705.9375 880.2 662.625' />
111
+ points='747.6999999999999 773.25 747.6999999999999 728.4375 747.6999999999999 728.4375 747.6999999999999 683.625' />
112
112
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
113
- points='1135.8000000000002 533.25 1135.8000000000002 489.9375 1263.6 489.9375 1263.6 446.625' />
113
+ points='969.3 551.25 969.3 506.4375 1089.85 506.4375 1089.85 461.625' />
114
114
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
115
- points='1391.4 533.25 1391.4 489.9375 1263.6 489.9375 1263.6 446.625' />
115
+ points='1210.3999999999999 551.25 1210.3999999999999 506.4375 1089.85 506.4375 1089.85 461.625' />
116
116
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
117
- points='1135.8000000000002 749.25 1135.8000000000002 705.9375 1135.8000000000002 705.9375 1135.8000000000002 662.625' />
117
+ points='969.3 773.25 969.3 728.4375 969.3 728.4375 969.3 683.625' />
118
118
  <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
119
- points='1391.4 749.25 1391.4 705.9375 1391.4 705.9375 1391.4 662.625' />
119
+ points='1210.3999999999999 773.25 1210.3999999999999 728.4375 1210.3999999999999 728.4375 1210.3999999999999 683.625' />
120
120
  </svg>
@@ -0,0 +1,96 @@
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg width="4251.800000000001" height="875.25" viewBox="-16.8, 0, 4268.600000000001, 886.5" version="1.1" xmlns="http://www.w3.org/2000/svg">
4
+ <defs>
5
+ <marker id="arrow" markerUnits="userSpaceOnUse" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="16.8" markerHeight="16.8" orient="auto">
6
+ <path d="M 0 0 L 10 5 L 0 10" fill="black"/>
7
+ </marker>
8
+ <marker id="arrowBackward" markerUnits="userSpaceOnUse" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="16.8" markerHeight="16.8" orient="auto">
9
+ <path d="M 0 0 L 10 5 L 0 10 z" fill="black"/>
10
+ </marker>
11
+ <marker id="arrowForward" markerUnits="userSpaceOnUse" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="16.8" markerHeight="16.8" orient="auto">
12
+ <path d="M 10 0 L 0 5 L 10 10 z" fill="black"/>
13
+ </marker>
14
+ <marker id="arrowBothways" markerUnits="userSpaceOnUse" viewBox="0 0 30 10" refX="15" refY="5" markerWidth="50.400000000000006" markerHeight="16.8" orient="auto">
15
+ <path d="M 0 5 L 10 0 L 10 5 L 20 5 L 20 0 L 30 5 L 20 10 L 20 5 L 10 5 L 10 10 z" fill="black"/>
16
+ </marker>
17
+ <pattern id="hatchBlack" x="10" y="10" width="10" height="10" patternUnits="userSpaceOnUse" patternTransform="rotate(45)">
18
+ <line x1="0" y="0" x2="0" y2="10" stroke="black" stroke-width="4"></line>
19
+ </pattern>
20
+ <pattern id="hatchForNode" x="10" y="10" width="10" height="10" patternUnits="userSpaceOnUse" patternTransform="rotate(45)">
21
+ <line x1="0" y="0" x2="0" y2="10" stroke="black" stroke-width="4"></line>
22
+ </pattern>
23
+ <pattern id="hatchForLeaf" x="10" y="10" width="10" height="10" patternUnits="userSpaceOnUse" patternTransform="rotate(45)">
24
+ <line x1="0" y="0" x2="0" y2="10" stroke="black" stroke-width="4"></line>
25
+ </pattern>
26
+ </defs>
27
+ <rect x="-16.8" y="0" width="4268.600000000001" height="886.5" stroke="none" fill="white" />"
28
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1639.6999999999998' y='67.5'><tspan x='1639.6999999999998' y='67.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Major<tspan style='fill:none;'>■</tspan>clause<tspan style='fill:none;'>■</tspan>construction</tspan>
29
+ </text>
30
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='16.799999999999955' y='283.5'><tspan x='16.799999999999955' y='283.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Declarative<tspan style='fill:none;'>■</tspan>clause<tspan style='fill:none;'>■</tspan>cxn</tspan>
31
+ <tspan x='88.79999999999995' y='373.5' style="font-style: italic; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">He<tspan style='fill:none;'>■</tspan>was<tspan style='fill:none;'>■</tspan>tired.</tspan>
32
+ <tspan x='46.299999999999955' y='418.5' style="font-style: italic; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">He<tspan style='fill:none;'>■</tspan>made<tspan style='fill:none;'>■</tspan>mistakes.</tspan>
33
+ </text>
34
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='884.6500000000001' y='283.5'><tspan x='884.6500000000001' y='283.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Interrogative<tspan style='fill:none;'>■</tspan>cxn</tspan>
35
+ </text>
36
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='584.5' y='499.5'><tspan x='584.5' y='499.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Yes/No</tspan>
37
+ </text>
38
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='447.0' y='715.5'><tspan x='498.5' y='715.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">interrogative<tspan style='fill:none;'>■</tspan>cxn</tspan>
39
+ <tspan x='521.0' y='805.5' style="font-style: italic; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Was<tspan style='fill:none;'>■</tspan>he<tspan style='fill:none;'>■</tspan>tired?</tspan>
40
+ <tspan x='447.0' y='850.5' style="font-style: italic; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Did<tspan style='fill:none;'>■</tspan>he<tspan style='fill:none;'>■</tspan>make<tspan style='fill:none;'>■</tspan>mistakes?</tspan>
41
+ </text>
42
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1238.3000000000002' y='499.5'><tspan x='1238.3000000000002' y='499.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">WH-interrogative<tspan style='fill:none;'>■</tspan>cxn</tspan>
43
+ </text>
44
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='891.2000000000003' y='715.5'><tspan x='891.2000000000003' y='715.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">WH-subject<tspan style='fill:none;'>■</tspan>interrogative<tspan style='fill:none;'>■</tspan>cxn</tspan>
45
+ <tspan x='997.7000000000003' y='805.5' style="font-style: italic; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Who<tspan style='fill:none;'>■</tspan>was<tspan style='fill:none;'>■</tspan>tired?</tspan>
46
+ </text>
47
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='1428.4' y='715.5'><tspan x='1428.4' y='715.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">WH-nonsubject<tspan style='fill:none;'>■</tspan>interrogative<tspan style='fill:none;'>■</tspan>cxn</tspan>
48
+ <tspan x='1576.9' y='805.5' style="font-style: italic; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">What<tspan style='fill:none;'>■</tspan>was<tspan style='fill:none;'>■</tspan>he?</tspan>
49
+ <tspan x='1532.4' y='850.5' style="font-style: italic; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">What<tspan style='fill:none;'>■</tspan>did<tspan style='fill:none;'>■</tspan>he<tspan style='fill:none;'>■</tspan>make?</tspan>
50
+ </text>
51
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='2025.6000000000004' y='283.5'><tspan x='2062.6000000000004' y='283.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">WH-exclamative<tspan style='fill:none;'>■</tspan>cxn</tspan>
52
+ <tspan x='2075.1000000000004' y='373.5' style="font-style: italic; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">How<tspan style='fill:none;'>■</tspan>tired<tspan style='fill:none;'>■</tspan>he<tspan style='fill:none;'>■</tspan>was!</tspan>
53
+ <tspan x='2025.6000000000004' y='418.5' style="font-style: italic; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">What<tspan style='fill:none;'>■</tspan>mistakes<tspan style='fill:none;'>■</tspan>he<tspan style='fill:none;'>■</tspan>made!</tspan>
54
+ </text>
55
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='2495.8' y='283.5'><tspan x='2495.8' y='283.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Imperative<tspan style='fill:none;'>■</tspan>cxn</tspan>
56
+ </text>
57
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='3340.1000000000004' y='283.5'><tspan x='3340.1000000000004' y='283.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Relative<tspan style='fill:none;'>■</tspan>clause<tspan style='fill:none;'>■</tspan>cxn</tspan>
58
+ </text>
59
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='2807.0' y='499.5'><tspan x='2875.5' y='499.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">WH-subject<tspan style='fill:none;'>■</tspan>relative<tspan style='fill:none;'>■</tspan>clause<tspan style='fill:none;'>■</tspan>cxn</tspan>
60
+ <tspan x='2807.0' y='589.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">The<tspan style='fill:none;'>■</tspan>emails,<tspan style='fill:none;'>■</tspan>which<tspan style='fill:none;'>■</tspan>arrived<tspan style='fill:none;'>■</tspan>overnight<tspan style='fill:none;'>■</tspan>...</tspan>
61
+ </text>
62
+ <text white-space='pre' alignment-baseline='text-top' style='fill: black; storoke-width: 0; font-size: 32px;' x='3513.2000000000007' y='499.5'><tspan x='3584.7000000000007' y='499.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">WH-nonsubject<tspan style='fill:none;'>■</tspan>relative<tspan style='fill:none;'>■</tspan>clause<tspan style='fill:none;'>■</tspan>cxn</tspan>
63
+ <tspan x='3513.2000000000007' y='589.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">A<tspan style='fill:none;'>■</tspan>pilot<tspan style='fill:none;'>■</tspan>shouldn't<tspan style='fill:none;'>■</tspan>be<tspan style='fill:none;'>■</tspan>tired,<tspan style='fill:none;'>■</tspan>which<tspan style='fill:none;'>■</tspan>Ben<tspan style='fill:none;'>■</tspan>was.</tspan>
64
+ <tspan x='3615.2000000000007' y='634.5' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">The<tspan style='fill:none;'>■</tspan>mistalkes<tspan style='fill:none;'>■</tspan>that<tspan style='fill:none;'>■</tspan>he<tspan style='fill:none;'>■</tspan>made<tspan style='fill:none;'>■</tspan>...</tspan>
65
+ </text>
66
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
67
+ points='198.29999999999995 227.25 198.29999999999995 161.4375 1847.2 161.4375 1847.2 95.625' />
68
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
69
+ points='1022.6500000000001 227.25 1022.6500000000001 161.4375 1847.2 161.4375 1847.2 95.625' />
70
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
71
+ points='2227.1000000000004 227.25 2227.1000000000004 161.4375 1847.2 161.4375 1847.2 95.625' />
72
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
73
+ points='2617.8 227.25 2617.8 161.4375 1847.2 161.4375 1847.2 95.625' />
74
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
75
+ points='3496.1000000000004 227.25 3496.1000000000004 161.4375 1847.2 161.4375 1847.2 95.625' />
76
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
77
+ points='635.5 443.25 635.5 377.4375 1022.6500000000001 377.4375 1022.6500000000001 311.625' />
78
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
79
+ points='1409.8000000000002 443.25 1409.8000000000002 377.4375 1022.6500000000001 377.4375 1022.6500000000001 311.625' />
80
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
81
+ points='635.5 659.25 635.5 593.4375 635.5 593.4375 635.5 527.625' />
82
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
83
+ points='1126.2000000000003 659.25 1126.2000000000003 593.4375 1409.8000000000002 593.4375 1409.8000000000002 527.625' />
84
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
85
+ points='1693.4 659.25 1693.4 593.4375 1409.8000000000002 593.4375 1409.8000000000002 527.625' />
86
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
87
+ points='3126.5 443.25 3126.5 377.4375 3496.1000000000004 377.4375 3496.1000000000004 311.625' />
88
+ <polyline style='stroke:black; stroke-width:2; fill:none; stroke-linejoin:round; stroke-linecap:round;'
89
+ points='3865.7000000000007 443.25 3865.7000000000007 377.4375 3496.1000000000004 377.4375 3496.1000000000004 311.625' />
90
+ <line style="stroke:black; fill:none; stroke-linecap:round; stroke-width:2; " x1="16.799999999999955" y1="317.25" x2="379.79999999999995" y2="317.25"></line>
91
+ <line style="stroke:black; fill:none; stroke-linecap:round; stroke-width:2; " x1="447.0" y1="749.25" x2="824.0" y2="749.25"></line>
92
+ <line style="stroke:black; fill:none; stroke-linecap:round; stroke-width:2; " x1="891.2000000000003" y1="749.25" x2="1361.2000000000003" y2="749.25"></line>
93
+ <line style="stroke:black; fill:none; stroke-linecap:round; stroke-width:2; " x1="1428.4" y1="749.25" x2="1958.4" y2="749.25"></line>
94
+ <line style="stroke:black; fill:none; stroke-linecap:round; stroke-width:2; " x1="2025.6000000000004" y1="317.25" x2="2428.6000000000004" y2="317.25"></line>
95
+ <line style="stroke:black; fill:none; stroke-linecap:round; stroke-width:2; " x1="2807.0" y1="533.25" x2="3446.0" y2="533.25"></line>
96
+ <line style="stroke:black; fill:none; stroke-linecap:round; stroke-width:2; " x1="3513.2000000000007" y1="533.25" x2="4218.200000000001" y2="533.25"></line></svg>
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RSyntaxTree
4
- VERSION = "1.2.10"
4
+ VERSION = "1.3.0"
5
5
  end
data/lib/rsyntaxtree.rb CHANGED
@@ -66,6 +66,8 @@ module RSyntaxTree
66
66
  .gsub('-CABRACKET-', '>')
67
67
  .gsub('¥¥', '\¥')
68
68
  .gsub(/(?<!\\)¥/, "\\")
69
+ .gsub(/\\\[/, "[")
70
+ .gsub(/\\\]/, "]")
69
71
  new_params[key] = data
70
72
 
71
73
  when :symmetrize, :transparent, :polyline, :hide_default_connectors
data/rsyntaxtree.gemspec CHANGED
@@ -17,10 +17,11 @@ Gem::Specification.new do |s|
17
17
  s.require_paths = ["lib"]
18
18
 
19
19
  # specify any dependencies here; for example:
20
- s.add_runtime_dependency "optimist", "~> 3.0", ">= 3.0.1"
20
+ s.add_runtime_dependency "optimist", ">= 3.0.1"
21
21
  s.add_runtime_dependency "parslet"
22
- s.add_runtime_dependency "rmagick", "~> 4.2", ">= 4.2.3"
22
+ s.add_runtime_dependency "rmagick", ">= 4.3"
23
23
  s.add_runtime_dependency "rsvg2"
24
24
 
25
+ s.add_development_dependency "nokogiri"
25
26
  s.add_development_dependency "yaml"
26
27
  end
@@ -3,6 +3,8 @@
3
3
  require "minitest/autorun"
4
4
  require "minitest/pride"
5
5
  require "yaml"
6
+ require "nokogiri"
7
+
6
8
  require_relative '../lib/rsyntaxtree'
7
9
  require_relative '../lib/rsyntaxtree/utils'
8
10
 
@@ -65,13 +67,11 @@ class ExampleParserTest < Minitest::Test
65
67
  # To test SVG, run the code below
66
68
  #################################
67
69
  svg = rsg.draw_svg
68
- opts[:svg] = svg
69
- svg_path = File.join(svg_dir, "#{name}.svg")
70
- svg_code = File.read(svg_path)
71
- puts "Creating example SVG test case: #{name}"
70
+
71
+ document = Nokogiri::XML(svg)
72
72
 
73
73
  define_method "test_#{name}" do
74
- assert_equal svg_code, opts[:svg]
74
+ assert_equal document.errors.empty?, true
75
75
  end
76
76
  end
77
77
  end
metadata CHANGED
@@ -1,22 +1,19 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rsyntaxtree
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.10
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yoichiro Hasebe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-17 00:00:00.000000000 Z
11
+ date: 2024-08-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: optimist
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '3.0'
20
17
  - - ">="
21
18
  - !ruby/object:Gem::Version
22
19
  version: 3.0.1
@@ -24,9 +21,6 @@ dependencies:
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
- - - "~>"
28
- - !ruby/object:Gem::Version
29
- version: '3.0'
30
24
  - - ">="
31
25
  - !ruby/object:Gem::Version
32
26
  version: 3.0.1
@@ -48,22 +42,16 @@ dependencies:
48
42
  name: rmagick
49
43
  requirement: !ruby/object:Gem::Requirement
50
44
  requirements:
51
- - - "~>"
52
- - !ruby/object:Gem::Version
53
- version: '4.2'
54
45
  - - ">="
55
46
  - !ruby/object:Gem::Version
56
- version: 4.2.3
47
+ version: '4.3'
57
48
  type: :runtime
58
49
  prerelease: false
59
50
  version_requirements: !ruby/object:Gem::Requirement
60
51
  requirements:
61
- - - "~>"
62
- - !ruby/object:Gem::Version
63
- version: '4.2'
64
52
  - - ">="
65
53
  - !ruby/object:Gem::Version
66
- version: 4.2.3
54
+ version: '4.3'
67
55
  - !ruby/object:Gem::Dependency
68
56
  name: rsvg2
69
57
  requirement: !ruby/object:Gem::Requirement
@@ -78,6 +66,20 @@ dependencies:
78
66
  - - ">="
79
67
  - !ruby/object:Gem::Version
80
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: nokogiri
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
81
83
  - !ruby/object:Gem::Dependency
82
84
  name: yaml
83
85
  requirement: !ruby/object:Gem::Requirement
@@ -163,6 +165,7 @@ files:
163
165
  - docs/_examples/049.md
164
166
  - docs/_examples/050.md
165
167
  - docs/_examples/051.md
168
+ - docs/_examples/052.md
166
169
  - docs/_includes/box_and_circle_table.html
167
170
  - docs/_includes/escape_char_table.html
168
171
  - docs/_includes/social_media_links.html
@@ -220,6 +223,7 @@ files:
220
223
  - docs/assets/img/049.png
221
224
  - docs/assets/img/050.png
222
225
  - docs/assets/img/051.png
226
+ - docs/assets/img/052.png
223
227
  - docs/assets/img/elements/arrow_both.png
224
228
  - docs/assets/img/elements/arrow_both_bold.png
225
229
  - docs/assets/img/elements/arrow_left.png
@@ -294,6 +298,7 @@ files:
294
298
  - docs/assets/svg/049.svg
295
299
  - docs/assets/svg/050.svg
296
300
  - docs/assets/svg/051.svg
301
+ - docs/assets/svg/052.svg
297
302
  - docs/documentation.md
298
303
  - docs/documentation_ja.md
299
304
  - docs/examples.html
@@ -350,7 +355,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
350
355
  - !ruby/object:Gem::Version
351
356
  version: '0'
352
357
  requirements: []
353
- rubygems_version: 3.4.12
358
+ rubygems_version: 3.5.9
354
359
  signing_key:
355
360
  specification_version: 4
356
361
  summary: RSyntaxTree is a graphical syntax tree generator written in Ruby