redefine_texinfo_macro.pl 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. use vars qw(%result_texis %result_texts %result_trees %result_errors
  2. %result_indices %result_sectioning %result_nodes %result_menus
  3. %result_floats %result_converted %result_converted_errors
  4. %result_elements %result_directions_text);
  5. use utf8;
  6. $result_trees{'redefine_texinfo_macro'} = {
  7. 'contents' => [
  8. {
  9. 'args' => [
  10. {
  11. 'parent' => {},
  12. 'text' => 'code',
  13. 'type' => 'macro_name'
  14. },
  15. {
  16. 'parent' => {},
  17. 'text' => 'arg',
  18. 'type' => 'macro_arg'
  19. }
  20. ],
  21. 'cmdname' => 'macro',
  22. 'contents' => [
  23. {
  24. 'parent' => {},
  25. 'text' => '@emph{\\arg\\}',
  26. 'type' => 'raw'
  27. },
  28. {
  29. 'parent' => {},
  30. 'text' => '
  31. ',
  32. 'type' => 'last_raw_newline'
  33. }
  34. ],
  35. 'extra' => {
  36. 'arg_line' => ' code{arg}
  37. '
  38. },
  39. 'line_nr' => {
  40. 'file_name' => '',
  41. 'line_nr' => 1,
  42. 'macro' => ''
  43. },
  44. 'parent' => {}
  45. },
  46. {
  47. 'extra' => {
  48. 'command' => {}
  49. },
  50. 'parent' => {},
  51. 'text' => '
  52. ',
  53. 'type' => 'empty_line_after_command'
  54. },
  55. {
  56. 'parent' => {},
  57. 'text' => '
  58. ',
  59. 'type' => 'empty_line'
  60. },
  61. {
  62. 'contents' => [
  63. {
  64. 'args' => [
  65. {
  66. 'contents' => [
  67. {
  68. 'parent' => {},
  69. 'text' => 'code'
  70. }
  71. ],
  72. 'parent' => {},
  73. 'type' => 'brace_command_arg'
  74. }
  75. ],
  76. 'cmdname' => 'emph',
  77. 'contents' => [],
  78. 'line_nr' => {
  79. 'file_name' => '',
  80. 'line_nr' => 5,
  81. 'macro' => 'code'
  82. },
  83. 'parent' => {}
  84. },
  85. {
  86. 'parent' => {},
  87. 'text' => '
  88. '
  89. }
  90. ],
  91. 'parent' => {},
  92. 'type' => 'paragraph'
  93. }
  94. ],
  95. 'type' => 'text_root'
  96. };
  97. $result_trees{'redefine_texinfo_macro'}{'contents'}[0]{'args'}[0]{'parent'} = $result_trees{'redefine_texinfo_macro'}{'contents'}[0];
  98. $result_trees{'redefine_texinfo_macro'}{'contents'}[0]{'args'}[1]{'parent'} = $result_trees{'redefine_texinfo_macro'}{'contents'}[0];
  99. $result_trees{'redefine_texinfo_macro'}{'contents'}[0]{'contents'}[0]{'parent'} = $result_trees{'redefine_texinfo_macro'}{'contents'}[0];
  100. $result_trees{'redefine_texinfo_macro'}{'contents'}[0]{'contents'}[1]{'parent'} = $result_trees{'redefine_texinfo_macro'}{'contents'}[0];
  101. $result_trees{'redefine_texinfo_macro'}{'contents'}[0]{'parent'} = $result_trees{'redefine_texinfo_macro'};
  102. $result_trees{'redefine_texinfo_macro'}{'contents'}[1]{'extra'}{'command'} = $result_trees{'redefine_texinfo_macro'}{'contents'}[0];
  103. $result_trees{'redefine_texinfo_macro'}{'contents'}[1]{'parent'} = $result_trees{'redefine_texinfo_macro'};
  104. $result_trees{'redefine_texinfo_macro'}{'contents'}[2]{'parent'} = $result_trees{'redefine_texinfo_macro'};
  105. $result_trees{'redefine_texinfo_macro'}{'contents'}[3]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'} = $result_trees{'redefine_texinfo_macro'}{'contents'}[3]{'contents'}[0]{'args'}[0];
  106. $result_trees{'redefine_texinfo_macro'}{'contents'}[3]{'contents'}[0]{'args'}[0]{'parent'} = $result_trees{'redefine_texinfo_macro'}{'contents'}[3]{'contents'}[0];
  107. $result_trees{'redefine_texinfo_macro'}{'contents'}[3]{'contents'}[0]{'parent'} = $result_trees{'redefine_texinfo_macro'}{'contents'}[3];
  108. $result_trees{'redefine_texinfo_macro'}{'contents'}[3]{'contents'}[1]{'parent'} = $result_trees{'redefine_texinfo_macro'}{'contents'}[3];
  109. $result_trees{'redefine_texinfo_macro'}{'contents'}[3]{'parent'} = $result_trees{'redefine_texinfo_macro'};
  110. $result_texis{'redefine_texinfo_macro'} = '@macro code{arg}
  111. @emph{\\arg\\}
  112. @end macro
  113. @emph{code}
  114. ';
  115. $result_texts{'redefine_texinfo_macro'} = '
  116. code
  117. ';
  118. $result_errors{'redefine_texinfo_macro'} = [
  119. {
  120. 'error_line' => ':1: warning: redefining Texinfo language command: @code
  121. ',
  122. 'file_name' => '',
  123. 'line_nr' => 1,
  124. 'macro' => '',
  125. 'text' => 'redefining Texinfo language command: @code',
  126. 'type' => 'warning'
  127. }
  128. ];
  129. 1;