deplate 0.8 → 0.8.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (163) hide show
  1. data/AUTHORS.TXT +19 -16
  2. data/CHANGES.TXT +214 -248
  3. data/NEWS.TXT +47 -30
  4. data/README.TXT +0 -1
  5. data/TODO.TXT +93 -20
  6. data/VERSION.TXT +1 -1
  7. data/bin/deplate.exy +192 -0
  8. data/etc/deplate.ini +70 -9
  9. data/lib/action_view/helpers/deplate.rb +33 -33
  10. data/lib/deplate.rb +2 -2
  11. data/lib/deplate/bib.rb +72 -41
  12. data/lib/deplate/builtin.rb +1 -1
  13. data/lib/deplate/cache.rb +1 -1
  14. data/lib/deplate/commands.rb +161 -102
  15. data/lib/deplate/common.rb +93 -7
  16. data/lib/deplate/converter.rb +10 -4
  17. data/lib/deplate/core.rb +215 -108
  18. data/lib/deplate/counters.rb +23 -8
  19. data/lib/deplate/css/article.css +9 -5
  20. data/lib/deplate/css/deplate.css +37 -3
  21. data/lib/deplate/css/heading-navbar.css +1 -1
  22. data/lib/deplate/css/highstep.css +18 -0
  23. data/lib/deplate/css/htmldoc.css +43 -0
  24. data/lib/deplate/css/layout-deplate-print.css +1 -1
  25. data/lib/deplate/css/layout-deplate.css +1 -1
  26. data/lib/deplate/css/play.css +101 -0
  27. data/lib/deplate/css/sans-serif.css +1 -1
  28. data/lib/deplate/css/serif-e.css +1 -1
  29. data/lib/deplate/css/serif-rel.css +1 -1
  30. data/lib/deplate/css/serif.css +1 -1
  31. data/lib/deplate/css/slides.css +1 -1
  32. data/lib/deplate/css/styles.css +4 -0
  33. data/lib/deplate/css/tabbar-right.css +54 -8
  34. data/lib/deplate/css/tabbar-top.css +28 -9
  35. data/lib/deplate/css/text-sans-serif.css +1 -1
  36. data/lib/deplate/css/text-serif.css +1 -1
  37. data/lib/deplate/define.rb +71 -38
  38. data/lib/deplate/deplate-string.rb +3 -3
  39. data/lib/deplate/docbook.rb +9 -9
  40. data/lib/deplate/elements.rb +173 -84
  41. data/lib/deplate/etc.rb +6 -8
  42. data/lib/deplate/external.rb +9 -5
  43. data/lib/deplate/fmt/dbk-article-4.1.2.rb +4 -3
  44. data/lib/deplate/fmt/dbk-article.rb +9 -8
  45. data/lib/deplate/fmt/dbk-book.rb +4 -3
  46. data/lib/deplate/fmt/dbk-ref.rb +5 -4
  47. data/lib/deplate/fmt/dbk-slides.rb +4 -3
  48. data/lib/deplate/fmt/dbk-snippet.rb +4 -3
  49. data/lib/deplate/fmt/html-snippet.rb +1 -1
  50. data/lib/deplate/fmt/html.rb +186 -46
  51. data/lib/deplate/fmt/htmlsite.rb +19 -9
  52. data/lib/deplate/fmt/htmlslides.rb +1 -1
  53. data/lib/deplate/fmt/htmlwebsite.rb +1 -1
  54. data/lib/deplate/fmt/latex-dramatist.rb +175 -0
  55. data/lib/deplate/fmt/latex-snippet.rb +1 -1
  56. data/lib/deplate/fmt/latex.rb +132 -80
  57. data/lib/deplate/fmt/null.rb +1 -1
  58. data/lib/deplate/fmt/php.rb +1 -1
  59. data/lib/deplate/fmt/phpsite.rb +1 -1
  60. data/lib/deplate/fmt/plain.rb +16 -9
  61. data/lib/deplate/fmt/template.rb +1 -1
  62. data/lib/deplate/fmt/xhtml10t.rb +1 -1
  63. data/lib/deplate/formatter-snippet.rb +1 -1
  64. data/lib/deplate/formatter.rb +272 -81
  65. data/lib/deplate/guesslanguage.rb +57 -0
  66. data/lib/deplate/input.rb +205 -50
  67. data/lib/deplate/input/deplate-headings.rb +9 -11
  68. data/lib/deplate/input/deplate-restricted.rb +3 -23
  69. data/lib/deplate/input/deplate.rb +1 -1
  70. data/lib/deplate/input/play.rb +208 -0
  71. data/lib/deplate/input/rdoc.rb +37 -15
  72. data/lib/deplate/input/template.rb +6 -11
  73. data/lib/deplate/lib/Makefile.config +53 -4
  74. data/lib/deplate/lib/html/parbreak +3 -0
  75. data/lib/deplate/lib/javascript/StepwiseNextPage.js +8 -0
  76. data/lib/deplate/lib/javascript/StepwiseNextPage_confirm.js +8 -0
  77. data/lib/deplate/lib/latex/deplate.sty +36 -0
  78. data/lib/deplate/lib/latex/parbreak +6 -0
  79. data/lib/deplate/lib/php/page-comment.inc.php +5 -5
  80. data/lib/deplate/lib/plain/parbreak +6 -0
  81. data/lib/deplate/locale/de.latin1 +87 -15
  82. data/lib/deplate/locale/de.latin1_data +60 -0
  83. data/lib/deplate/locale/en.latin1_data +46 -0
  84. data/lib/deplate/locale/fr.latin1_data +74 -0
  85. data/lib/deplate/locale/ru.koi8-r_data +63 -0
  86. data/lib/deplate/locale/{zh_cn.gb2312 → zh_CN.GB2312} +0 -0
  87. data/lib/deplate/macros.rb +106 -32
  88. data/lib/deplate/messages.rb +22 -8
  89. data/lib/deplate/metadata.rb +1 -1
  90. data/lib/deplate/metadata/marshal.rb +1 -1
  91. data/lib/deplate/metadata/xml.rb +1 -1
  92. data/lib/deplate/metadata/yaml.rb +1 -1
  93. data/lib/deplate/mod/anyword.rb +4 -4
  94. data/lib/deplate/mod/babelfish.rb +1 -1
  95. data/lib/deplate/mod/code-gvim.rb +14 -8
  96. data/lib/deplate/mod/code-gvim71.rb +52 -0
  97. data/lib/deplate/mod/code-highlight.rb +35 -19
  98. data/lib/deplate/mod/colored-log.rb +1 -1
  99. data/lib/deplate/mod/endnotes.rb +1 -1
  100. data/lib/deplate/mod/guesslanguage.rb +75 -0
  101. data/lib/deplate/mod/html-asciimath.rb +1 -1
  102. data/lib/deplate/mod/html-deplate-button.rb +1 -1
  103. data/lib/deplate/mod/html-headings-navbar.rb +1 -1
  104. data/lib/deplate/mod/html-highstep.rb +43 -0
  105. data/lib/deplate/mod/html-jsmath.rb +1 -1
  106. data/lib/deplate/mod/html-obfuscate-email.rb +1 -1
  107. data/lib/deplate/mod/html-sidebar.rb +1 -1
  108. data/lib/deplate/mod/iconv.rb +1 -1
  109. data/lib/deplate/mod/imgurl.rb +1 -1
  110. data/lib/deplate/mod/inlatex-compound.rb +1 -1
  111. data/lib/deplate/mod/koma.rb +4 -4
  112. data/lib/deplate/mod/{de.rb → lang-de.rb} +1 -1
  113. data/lib/deplate/mod/{en.rb → lang-en.rb} +1 -1
  114. data/lib/deplate/mod/{ru_koi8-r.rb → lang-ru-koi8-r.rb} +1 -1
  115. data/lib/deplate/mod/lang-ru.rb +9 -0
  116. data/lib/deplate/mod/{zh-cn-autospace.rb → lang-zh_CN-autospace.rb} +3 -3
  117. data/lib/deplate/mod/{zh-cn.rb → lang-zh_CN.rb} +8 -8
  118. data/lib/deplate/mod/latex-emph-table-head.rb +1 -1
  119. data/lib/deplate/mod/latex-styles.rb +6 -6
  120. data/lib/deplate/mod/latex-verbatim-small.rb +1 -1
  121. data/lib/deplate/mod/linkmap.rb +128 -0
  122. data/lib/deplate/mod/makefile.rb +23 -22
  123. data/lib/deplate/mod/mark-external-urls.rb +13 -7
  124. data/lib/deplate/mod/markup-1-warn.rb +1 -1
  125. data/lib/deplate/mod/markup-1.rb +1 -1
  126. data/lib/deplate/mod/navbar-png.rb +5 -4
  127. data/lib/deplate/mod/noindent.rb +1 -1
  128. data/lib/deplate/mod/numpara.rb +1 -1
  129. data/lib/deplate/mod/particle-math.rb +1 -1
  130. data/lib/deplate/mod/php-extra.rb +1 -1
  131. data/lib/deplate/mod/pstoedit.rb +1 -1
  132. data/lib/deplate/mod/recode.rb +1 -1
  133. data/lib/deplate/mod/smart-dash.rb +1 -1
  134. data/lib/deplate/mod/smiley.rb +1 -1
  135. data/lib/deplate/mod/soffice.rb +1 -1
  136. data/lib/deplate/mod/symbols-latin1.rb +1 -1
  137. data/lib/deplate/mod/symbols-od-utf-8.rb +1 -1
  138. data/lib/deplate/mod/symbols-plain.rb +1 -1
  139. data/lib/deplate/mod/symbols-sgml.rb +1 -1
  140. data/lib/deplate/mod/symbols-utf-8.rb +1 -1
  141. data/lib/deplate/mod/symbols-xml.rb +1 -1
  142. data/lib/deplate/mod/syntax-region-alt.rb +1 -1
  143. data/lib/deplate/mod/utf8.rb +1 -1
  144. data/lib/deplate/mod/validate-html.rb +1 -1
  145. data/lib/deplate/mod/xmlrpc.rb +37 -36
  146. data/lib/deplate/nukumi2.rb +4 -4
  147. data/lib/deplate/once-method.rb +1 -1
  148. data/lib/deplate/output.rb +12 -4
  149. data/lib/deplate/particles.rb +52 -22
  150. data/lib/deplate/regions.rb +160 -90
  151. data/lib/deplate/skeletons.rb +4 -3
  152. data/lib/deplate/structured.rb +19 -13
  153. data/lib/deplate/template.rb +17 -9
  154. data/lib/deplate/templates/html-doc.html +8 -11
  155. data/lib/deplate/templates/html-tabbar-right.html +1 -1
  156. data/lib/deplate/templates/html-tabbar-top.html +3 -3
  157. data/lib/deplate/variables.rb +25 -9
  158. data/lib/deplate/wiki-markup.rb +14 -3
  159. data/lib/deplate/xml.rb +3 -4
  160. data/lib/deplate/{zh-cn.rb → zh_CN.rb} +16 -16
  161. data/man/man1/deplate.1 +80 -65
  162. metadata +72 -48
  163. data/lib/deplate/mod/fr.rb +0 -46
@@ -1,5 +1,5 @@
1
1
  # textstyles-warn-single.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 03-Okt-2004.
@@ -1,5 +1,5 @@
1
1
  # textstyles1.rb -- Re-enable text styles markup prior to version 0.6
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 03-Okt-2004.
@@ -1,10 +1,10 @@
1
1
  # mod-navbar1.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 14-Aug-2004.
6
- # @Last Change: 04-Jun-2006.
7
- # @Revision: 0.73
6
+ # @Last Change: 2007-04-04.
7
+ # @Revision: 0.78
8
8
  #
9
9
  # Description:
10
10
  #
@@ -39,7 +39,8 @@ class Deplate::Formatter::HTML_Site
39
39
  hiimg = hi ? "hi-#{img}" : nil
40
40
  alt = button.capitalize
41
41
  @deplate.variables["#{button}Button"] = include_image(nil,
42
- img_url(img),
42
+ # img_url(img),
43
+ img,
43
44
  {'hi' => hiimg, 'alt' => alt, 'id' => btn, :raw => true},
44
45
  true
45
46
  )
@@ -1,5 +1,5 @@
1
1
  # noindent.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 29-Aug-2004.
@@ -1,5 +1,5 @@
1
1
  # numpara.rb -- add numbers to paragraphs
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 20-Aug-2004.
@@ -1,5 +1,5 @@
1
1
  # particle-math.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 25-M�r-2005.
@@ -1,5 +1,5 @@
1
1
  # php-extra.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 05-Mai-2005.
@@ -1,5 +1,5 @@
1
1
  # pstoedit.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 13-Apr-2005.
@@ -1,5 +1,5 @@
1
1
  # recode.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 11-Apr-2005.
@@ -1,5 +1,5 @@
1
1
  # smart-dash.rb
2
- # @Author: Thomas Link (samul AT web de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
4
4
  # @Created: 15-Apr-2006.
5
5
  # @Last Change: 15-Apr-2006.
@@ -1,5 +1,5 @@
1
1
  # smiley.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 16-Nov-2004.
@@ -1,5 +1,5 @@
1
1
  # mod-soffice.rb - Some OpenOffice specific modifications to the html output
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 27-Jun-2004.
@@ -1,5 +1,5 @@
1
1
  # symbols-latin1.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 27-Aug-2004.
@@ -1,5 +1,5 @@
1
1
  # symbols-od-utf-8.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 27-Aug-2004.
@@ -1,5 +1,5 @@
1
1
  # symbols-plain.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 27-Aug-2004.
@@ -1,5 +1,5 @@
1
1
  # symbols-sgml.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 27-Aug-2004.
@@ -1,5 +1,5 @@
1
1
  # symbols-sgml.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 27-Aug-2004.
@@ -1,5 +1,5 @@
1
1
  # symbols-sgml.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 27-Aug-2004.
@@ -1,5 +1,5 @@
1
1
  # syntax-alt-region.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 27-Aug-2004.
@@ -1,5 +1,5 @@
1
1
  # utf8.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 10-Apr-2005.
@@ -1,5 +1,5 @@
1
1
  # validate-html.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 05-Sep-2004.
@@ -1,10 +1,10 @@
1
1
  # xmlrpc.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 27-J�n-2005.
6
- # @Last Change: 23-Okt-2005.
7
- # @Revision: 0.240
6
+ # @Last Change: 2007-06-30.
7
+ # @Revision: 0.247
8
8
  #
9
9
  # = Description
10
10
  #
@@ -34,9 +34,9 @@ require 'xmlrpc/server'
34
34
 
35
35
  class Deplate::Core
36
36
  def go_now
37
- @variables["xmlrpcID"] ||= "deplate"
37
+ @variables['xmlrpcID'] ||= 'deplate'
38
38
  @xmlrpc_converters = {}
39
- @xmlrpc_timeout = @variables["xmlrpcTimeout"]
39
+ @xmlrpc_timeout = @variables['xmlrpcTimeout']
40
40
  if @xmlrpc_timeout
41
41
  @xmlrpc_timeout = @xmlrpc_timeout.to_i
42
42
  else
@@ -44,22 +44,22 @@ class Deplate::Core
44
44
  end
45
45
 
46
46
  xml_servlet = XMLRPC::WEBrickServlet.new
47
- xml_servlet.add_handler("convert") do |format, text|
47
+ xml_servlet.add_handler('convert') do |format, text|
48
48
  xmlrpc_convert_string(format, text)
49
49
  end
50
- xml_servlet.add_handler("shutdown") do |code|
50
+ xml_servlet.add_handler('shutdown') do |code|
51
51
  xmlrpc_shutdown(code)
52
52
  end
53
- xml_servlet.add_handler("convert_string") do |format, text|
53
+ xml_servlet.add_handler('convert_string') do |format, text|
54
54
  xmlrpc_convert_string(format, text)
55
55
  end
56
- xml_servlet.add_handler("convert_file") do |format, filename|
56
+ xml_servlet.add_handler('convert_file') do |format, filename|
57
57
  xmlrpc_convert_file(format, filename)
58
58
  end
59
- xml_servlet.add_handler("string_to_fileset") do |format, filename, text|
59
+ xml_servlet.add_handler('string_to_fileset') do |format, filename, text|
60
60
  xmlrpc_string_to_fileset(format, filename, text)
61
61
  end
62
- xml_servlet.add_handler("fileset_to_fileset") do |format, filename, fileset|
62
+ xml_servlet.add_handler('fileset_to_fileset') do |format, filename, fileset|
63
63
  xmlrpc_fileset_to_fileset(format, filename, fileset)
64
64
  end
65
65
  xml_servlet.add_multicall
@@ -67,18 +67,18 @@ class Deplate::Core
67
67
  uri = URI.parse(@sources.first) || OpenStruct.new
68
68
  port = uri.port
69
69
  unless port
70
- port = @variables["xmlrpcPort"]
70
+ port = @variables['xmlrpcPort']
71
71
  port = port ? port.to_i : 2000
72
72
  end
73
73
 
74
74
  path = uri.path
75
- if !path or path == "-"
76
- path = @variables["xmlrpcPath"] || "/deplate"
75
+ if !path or path == '-'
76
+ path = @variables['xmlrpcPath'] || '/deplate'
77
77
  end
78
78
 
79
- valid_ips = @variables["xmlrpcAllow"]
79
+ valid_ips = @variables['xmlrpcAllow']
80
80
  if valid_ips
81
- valid_ips = valid_ips.split(/\s+/)
81
+ valid_ips = Deplate::Core.split_list(valid_ips, ',', ' ')
82
82
  valid_ips.collect! do |s|
83
83
  if s =~ /^\d+\.\d+\.\d+\.\d+\$/
84
84
  s = Regexp.escape(s)
@@ -88,13 +88,13 @@ class Deplate::Core
88
88
  set_valid_ip(valid_ips)
89
89
  end
90
90
 
91
- log("XMLRPC: Starting server", :anyway)
91
+ log('XMLRPC: Starting server', :anyway)
92
92
  # @@log_destination = File.open(@variables["logFile"] || "deplate.log", "w")
93
93
  begin
94
94
  @xmlrpc_server = WEBrick::HTTPServer.new(:Port => port)
95
95
  @xmlrpc_server.mount(path, xml_servlet)
96
96
  @xmlrpc_server.logger.level = 1
97
- trap("INT") { @xmlrpc_server.shutdown }
97
+ trap('INT') { @xmlrpc_server.shutdown }
98
98
  @xmlrpc_server.start
99
99
  ensure
100
100
  # @@log_destination.close
@@ -138,7 +138,7 @@ class Deplate::Core
138
138
  def xmlrpc_fileset_to_fileset(format, filename, fileset)
139
139
  convert_to_fileset(filename) do
140
140
  definition = fileset.delete(filename)
141
- text = definition["contents"]
141
+ text = definition['contents']
142
142
  convert_and_collect(format, filename, text) do
143
143
  write_fileset(fileset)
144
144
  end
@@ -148,17 +148,17 @@ class Deplate::Core
148
148
  private
149
149
  def convert_to_fileset(fileset_id, &block)
150
150
  unless defined?(@tmpdir)
151
- @tmpdir = @variables["tmpDir"]
151
+ @tmpdir = @variables['tmpDir']
152
152
  unless @tmpdir
153
153
  if Dir.tmpdir
154
- @tmpdir = File.join(Dir.tmpdir, @variables["xmlrpcID"], fileset_id)
154
+ @tmpdir = File.join(Dir.tmpdir, @variables['xmlrpcID'], fileset_id)
155
155
  end
156
156
  end
157
- @lockdir = File.join(Dir.tmpdir,"deplate_locks")
157
+ @lockdir = File.join(Dir.tmpdir,'deplate_locks')
158
158
  end
159
159
  if @tmpdir
160
160
  if File.exists?(@tmpdir)
161
- FileUtils.rm(Dir[File.join(@tmpdir, "*")])
161
+ FileUtils.rm(Dir[File.join(@tmpdir, '*')])
162
162
  else
163
163
  FileUtils.mkdir(@tmpdir)
164
164
  end
@@ -169,11 +169,11 @@ class Deplate::Core
169
169
  if File.exists?(lockfile)
170
170
  timeout = File.mtime(lockfile) + @xmlrpc_timeout
171
171
  if timeout > Time.now
172
- log(["XMLRPC: Fileset is locked", fileset_id, timeout], :error)
172
+ log(['XMLRPC: Fileset is locked', fileset_id, timeout], :error)
173
173
  raise FaultException
174
174
  end
175
175
  end
176
- File.open(lockfile, "w") {|io|}
176
+ File.open(lockfile, 'w') {|io|}
177
177
  begin
178
178
  Dir.chdir(@tmpdir)
179
179
  return block.call
@@ -182,7 +182,7 @@ class Deplate::Core
182
182
  FileUtils.rm(lockfile)
183
183
  end
184
184
  else
185
- log("XMLRPC: No writable temporary directory", :error)
185
+ log('XMLRPC: No writable temporary directory', :error)
186
186
  raise FaultException
187
187
  end
188
188
  end
@@ -197,33 +197,34 @@ class Deplate::Core
197
197
  def write_fileset(fileset)
198
198
  for fname, definition in fileset
199
199
  if File.exists?(fname)
200
- changed = definition["changed"]
201
- mtime = definition["mtime"]
202
- size = definition["size"]
200
+ changed = definition['changed']
201
+ mtime = definition['mtime']
202
+ size = definition['size']
203
203
  if !changed and mtime and size and mtime == File.mtime(fname) and size == File.size(fname)
204
204
  next
205
205
  end
206
206
  end
207
207
  fname = @formatter.encode_id(fname)
208
- contents = definition["contents"]
209
- File.open(fname, "w") {|io| io.puts(contents)}
208
+ contents = definition['contents']
209
+ File.open(fname, 'w') {|io| io.puts(contents)}
210
210
  end
211
211
  end
212
212
 
213
213
  def collect_fileset(hash)
214
- for f in Dir["*"]
214
+ for f in Dir['*']
215
215
  f = @formatter.encode_id(f)
216
216
  definition = {}
217
- definition["mtime"] = File.mtime(f)
218
- definition["size"] = File.size(f)
219
- definition["contents"] = File.open(f) {|io| io.read}
217
+ definition['mtime'] = File.mtime(f)
218
+ definition['size'] = File.size(f)
219
+ definition['contents'] = File.open(f) {|io| io.read}
220
220
  hash[f] = definition
221
221
  end
222
222
  end
223
223
 
224
224
  def get_converter(format)
225
- if @variables["xmlrpcReuseInterpreter"]
225
+ if @variables['xmlrpcReuseInterpreter']
226
226
  cvt = @xmlrpc_converters[format] ||= Deplate::Converter.new(format, :master => self)
227
+ # p "DBG deplate=#{cvt.object_id} #{@xmlrpc_converters[format].object_id}"
227
228
  else
228
229
  cvt = Deplate::Converter.new(format, :master => self)
229
230
  end
@@ -1,9 +1,9 @@
1
1
  # nukumi2.rb
2
- # @Author: Thomas Link (samul AT web de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
4
4
  # @Created: 31-Dez-2005.
5
- # @Last Change: 31-Dez-2005.
6
- # @Revision: 0.33
5
+ # @Last Change: 2007-06-30.
6
+ # @Revision: 0.34
7
7
  #
8
8
  # = Usage
9
9
  # Add require 'deplate/nukumi2' to your nukumi2 config.rb.
@@ -50,7 +50,7 @@ class FileBackend
50
50
  if value
51
51
  case field
52
52
  when 'keywords'
53
- entry.categories.concat value.split(/\s*[,;]\s*/)
53
+ entry.categories.concat Deplate::Core.split_list(value, ';', ',')
54
54
  when 'encoding'
55
55
  else
56
56
  if entry.respond_to? field + "="
@@ -1,5 +1,5 @@
1
1
  # once-method.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 25-M�r-2005.
@@ -1,10 +1,10 @@
1
1
  # output.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 04-Dez-2004.
6
- # @Last Change: 28-Apr-2006.
7
- # @Revision: 0.257
6
+ # @Last Change: 2007-09-01.
7
+ # @Revision: 0.265
8
8
 
9
9
  require 'forwardable'
10
10
  require 'deplate/metadata'
@@ -72,8 +72,16 @@ class Deplate::Output
72
72
  end
73
73
  @top_heading = nil
74
74
  @body_empty_done = false
75
+ reset
75
76
  end
76
77
 
78
+ def reset
79
+ @attributes[:stepwiseIdx] = 0
80
+ @attributes[:consumed_labels] = []
81
+ @attributes[:consumed_ids] = []
82
+ end
83
+ alias :simulate_reset :reset
84
+
77
85
  def body_flush
78
86
  call_methods_matching(@formatter, /^hook_pre_body_flush_/)
79
87
  save!
@@ -149,7 +157,7 @@ class Deplate::Output
149
157
 
150
158
  def fill_in_template(template_file)
151
159
  unless do_i_feel_empty?
152
- t = Deplate::Template.new(:file => template_file)
160
+ t = Deplate::Template.new(:file => template_file, :master => @deplate)
153
161
  @output = t.fill_in(@deplate,
154
162
  :pre => @pre_matter,
155
163
  :body => @body,
@@ -1,10 +1,10 @@
1
1
  # particles.rb
2
- # @Author: Thomas Link (samul AT web.de)
2
+ # @Author: Thomas Link (micathom AT gmail com)
3
3
  # @Website: http://deplate.sf.net/
4
4
  # @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
5
5
  # @Created: 24-M�r-2004.
6
- # @Last Change: 05-Jun-2006.
7
- # @Revision: 0.1847
6
+ # @Last Change: 2007-09-29.
7
+ # @Revision: 0.1922
8
8
 
9
9
  require "uri"
10
10
  require "deplate/common"
@@ -47,6 +47,15 @@ class Deplate::Particle < Deplate::BaseParticle
47
47
  @@particles << c
48
48
  end
49
49
 
50
+ def replace_particle(other, c=self)
51
+ i = @@particles.index(other)
52
+ if i
53
+ @@particles[i] = c
54
+ else
55
+ register_particle c
56
+ end
57
+ end
58
+
50
59
  def disable_particle(*particles)
51
60
  particles.each {|p| @@particles.delete(p)}
52
61
  end
@@ -171,9 +180,11 @@ class Deplate::Particle::Text < Deplate::Particle
171
180
  [text]
172
181
  end
173
182
  end
183
+
174
184
  def process
175
185
  @elt = plain_text(get_text)
176
186
  end
187
+
177
188
  def get_text
178
189
  @match[0]
179
190
  end
@@ -433,8 +444,13 @@ class Deplate::HyperLink < Deplate::Particle
433
444
  #
434
445
  # +++ the heuristic is fragile and sometimes gives wrong results
435
446
  def complete_wiki_ref(inter, name, dest, anchor)
447
+ src = @container.source.file || ''
436
448
  sfx = @deplate.variables['suffix']
437
- sfx = '.%s' % sfx if sfx
449
+ if sfx
450
+ sfx = '.%s' % sfx
451
+ elsif @deplate.variables['useParentSuffix']
452
+ sfx = File.extname(src)
453
+ end
438
454
  if dest.empty?
439
455
  label = guess_label(dest, anchor)
440
456
  if label
@@ -472,7 +488,6 @@ class Deplate::HyperLink < Deplate::Particle
472
488
  return :wiki, name, dest, label
473
489
  end
474
490
  # Fallback heuristic
475
- src = @container.source.file || ''
476
491
  dest_sfx = File.extname(dest)
477
492
  dest_abs = File.expand_path(dest, File.basename(src))
478
493
  dest_is_dir = (File.exist?(dest_abs) and File.stat(dest_abs).directory?)
@@ -488,35 +503,31 @@ class Deplate::HyperLink < Deplate::Particle
488
503
  def indexing(idx)
489
504
  idx = idx.compact
490
505
  unless @deplate.variables['indexwiki'] == 'no' or idx.empty?
491
- auto = @deplate.variables['autoindex']
492
- for i in idx
493
- Deplate::Particle.auto_indexing(@deplate, i) if auto
506
+ if @deplate.variables['autoindex']
507
+ for i in idx
508
+ Deplate::Particle.auto_indexing(@deplate, i)
509
+ end
494
510
  end
495
511
  @idx = idx
496
512
  else
497
513
  @idx = nil
498
514
  end
499
515
  end
500
-
516
+
501
517
  def process
502
518
  type, name, dest, anchor = complete_wiki_ref(@inter, *@elt)
503
519
  if type
504
520
  dest.gsub!(/\\/, '/')
505
521
  dest = encode_dest(dest)
506
522
  anchor = encode_anchor(anchor)
507
- if dest =~ Deplate::HyperLink::Url.rx
508
- if dest =~ /^mailto:/
509
- @styles << 'mailto'
510
- else
511
- @styles << 'remote'
512
- end
513
- end
523
+ set_style(dest)
514
524
  case type
515
525
  when :wiki
516
526
  @elt = format_particle(:format_wiki, self, name, dest, anchor)
517
527
  when :url
518
528
  @elt = format_particle(:format_url, self, name, dest, anchor)
519
529
  end
530
+ # p "DBG", dest, type, @styles, @elt
520
531
  if @idx
521
532
  @idx.collect! do |idx|
522
533
  format_particle(:format_index, self, idx)
@@ -527,6 +538,16 @@ class Deplate::HyperLink < Deplate::Particle
527
538
  end
528
539
 
529
540
  protected
541
+ def set_style(dest)
542
+ if dest =~ Deplate::HyperLink::Url.rx
543
+ if dest =~ /^mailto:/
544
+ @styles << 'mailto'
545
+ else
546
+ @styles << 'remote'
547
+ end
548
+ end
549
+ end
550
+
530
551
  # Escape special characters from path
531
552
  def encode_path(path)
532
553
  path = path.split(Regexp.new(Regexp.escape(File::SEPARATOR)))
@@ -569,7 +590,7 @@ class Deplate::HyperLink::Extended < Deplate::HyperLink
569
590
  def setup
570
591
  # @rx = /^\[\[([^\]#]*)(#(#{@@bc}))?\](\[(.+?)\])?([-!~*]*)\]/
571
592
  # @rx = /^\[\[([^\]#]*)(#([^\]]*))?\](\[(.+?)\])?([-!~*]*)\]/
572
- set_rx(/^\[\[(([#{@@uc}]+?)::)?([^\]#]*)(#([^\]]*))?\](\[(.+?)\])?([-!~*]*)\]/)
593
+ set_rx(/^\[\[(([#{@@uc}]+?)::)?([^\]#]*)(#([^\]]*))?\](\[(.+?)\])?([-!~*$]*)\]/)
573
594
  end
574
595
  end
575
596
 
@@ -590,14 +611,18 @@ class Deplate::HyperLink::Extended < Deplate::HyperLink
590
611
  id = @name
591
612
  else
592
613
  if !@dest or @dest.empty?
593
- @name = @anchor
594
- id = @anchor
614
+ @name = @anchor || @inter
615
+ id = @anchor || @inter
595
616
  else
596
617
  @name = @dest
597
618
  id = File.basename(@dest)
598
619
  end
599
620
  end
600
- idx = [@deplate.add_index(self, id)]
621
+ if id
622
+ idx = [@deplate.add_index(self, id)]
623
+ else
624
+ idx = []
625
+ end
601
626
  else
602
627
  idx = []
603
628
  end
@@ -609,6 +634,9 @@ class Deplate::HyperLink::Extended < Deplate::HyperLink
609
634
  if @modifier.include?('*')
610
635
  @args['target'] = '_blank'
611
636
  end
637
+ if @modifier.include?('$')
638
+ @args['rel'] = 'nofollow'
639
+ end
612
640
  end
613
641
 
614
642
  def process
@@ -733,6 +761,7 @@ class Deplate::HyperLink::Url < Deplate::HyperLink
733
761
 
734
762
  def process
735
763
  @name = plain_text(@name)
764
+ set_style(@dest)
736
765
  @elt = format_particle(:format_url, self, @name, @dest, @anchor)
737
766
  end
738
767
  end
@@ -763,6 +792,7 @@ class Deplate::Particle::Macro < Deplate::Particle
763
792
  @elt = plain_text(@match[0], false)
764
793
  else
765
794
  @macro, args, text = split_name_args(macro)
795
+ args = args.merge(deplate.variables["args@#{@macro}"] || {})
766
796
  # args[:macro] = macro
767
797
  if @macro
768
798
  @elt = Deplate::Macro.exec(@deplate, @container, @context, @macro, args, @alt, text)
@@ -803,7 +833,7 @@ class Deplate::Particle::Macro < Deplate::Particle
803
833
  nil
804
834
  end
805
835
  end
806
-
836
+
807
837
  def process
808
838
  @elt = case @elt
809
839
  when String
@@ -825,7 +855,7 @@ class Deplate::Particle::CurlyBrace < Deplate::Particle
825
855
  def process
826
856
  sample_pre = @last[-10..-1]
827
857
  sample_post = @rest[0..9]
828
- Deplate::Core.log(["Curly brace should be preceded by a backslash", "%s>>%s<<%s" % [sample_pre, @match[0], sample_post]], :error, @container.source)
858
+ Deplate::Core.log(["Character should be preceded by a backslash", "%s>>%s<<%s" % [sample_pre, @match[0], sample_post]], :error, @container.source)
829
859
  @elt = plain_text(@match[0], false)
830
860
  end
831
861
  end