deplate 0.8 → 0.8.1
Sign up to get free protection for your applications and to get access to all the features.
- data/AUTHORS.TXT +19 -16
- data/CHANGES.TXT +214 -248
- data/NEWS.TXT +47 -30
- data/README.TXT +0 -1
- data/TODO.TXT +93 -20
- data/VERSION.TXT +1 -1
- data/bin/deplate.exy +192 -0
- data/etc/deplate.ini +70 -9
- data/lib/action_view/helpers/deplate.rb +33 -33
- data/lib/deplate.rb +2 -2
- data/lib/deplate/bib.rb +72 -41
- data/lib/deplate/builtin.rb +1 -1
- data/lib/deplate/cache.rb +1 -1
- data/lib/deplate/commands.rb +161 -102
- data/lib/deplate/common.rb +93 -7
- data/lib/deplate/converter.rb +10 -4
- data/lib/deplate/core.rb +215 -108
- data/lib/deplate/counters.rb +23 -8
- data/lib/deplate/css/article.css +9 -5
- data/lib/deplate/css/deplate.css +37 -3
- data/lib/deplate/css/heading-navbar.css +1 -1
- data/lib/deplate/css/highstep.css +18 -0
- data/lib/deplate/css/htmldoc.css +43 -0
- data/lib/deplate/css/layout-deplate-print.css +1 -1
- data/lib/deplate/css/layout-deplate.css +1 -1
- data/lib/deplate/css/play.css +101 -0
- data/lib/deplate/css/sans-serif.css +1 -1
- data/lib/deplate/css/serif-e.css +1 -1
- data/lib/deplate/css/serif-rel.css +1 -1
- data/lib/deplate/css/serif.css +1 -1
- data/lib/deplate/css/slides.css +1 -1
- data/lib/deplate/css/styles.css +4 -0
- data/lib/deplate/css/tabbar-right.css +54 -8
- data/lib/deplate/css/tabbar-top.css +28 -9
- data/lib/deplate/css/text-sans-serif.css +1 -1
- data/lib/deplate/css/text-serif.css +1 -1
- data/lib/deplate/define.rb +71 -38
- data/lib/deplate/deplate-string.rb +3 -3
- data/lib/deplate/docbook.rb +9 -9
- data/lib/deplate/elements.rb +173 -84
- data/lib/deplate/etc.rb +6 -8
- data/lib/deplate/external.rb +9 -5
- data/lib/deplate/fmt/dbk-article-4.1.2.rb +4 -3
- data/lib/deplate/fmt/dbk-article.rb +9 -8
- data/lib/deplate/fmt/dbk-book.rb +4 -3
- data/lib/deplate/fmt/dbk-ref.rb +5 -4
- data/lib/deplate/fmt/dbk-slides.rb +4 -3
- data/lib/deplate/fmt/dbk-snippet.rb +4 -3
- data/lib/deplate/fmt/html-snippet.rb +1 -1
- data/lib/deplate/fmt/html.rb +186 -46
- data/lib/deplate/fmt/htmlsite.rb +19 -9
- data/lib/deplate/fmt/htmlslides.rb +1 -1
- data/lib/deplate/fmt/htmlwebsite.rb +1 -1
- data/lib/deplate/fmt/latex-dramatist.rb +175 -0
- data/lib/deplate/fmt/latex-snippet.rb +1 -1
- data/lib/deplate/fmt/latex.rb +132 -80
- data/lib/deplate/fmt/null.rb +1 -1
- data/lib/deplate/fmt/php.rb +1 -1
- data/lib/deplate/fmt/phpsite.rb +1 -1
- data/lib/deplate/fmt/plain.rb +16 -9
- data/lib/deplate/fmt/template.rb +1 -1
- data/lib/deplate/fmt/xhtml10t.rb +1 -1
- data/lib/deplate/formatter-snippet.rb +1 -1
- data/lib/deplate/formatter.rb +272 -81
- data/lib/deplate/guesslanguage.rb +57 -0
- data/lib/deplate/input.rb +205 -50
- data/lib/deplate/input/deplate-headings.rb +9 -11
- data/lib/deplate/input/deplate-restricted.rb +3 -23
- data/lib/deplate/input/deplate.rb +1 -1
- data/lib/deplate/input/play.rb +208 -0
- data/lib/deplate/input/rdoc.rb +37 -15
- data/lib/deplate/input/template.rb +6 -11
- data/lib/deplate/lib/Makefile.config +53 -4
- data/lib/deplate/lib/html/parbreak +3 -0
- data/lib/deplate/lib/javascript/StepwiseNextPage.js +8 -0
- data/lib/deplate/lib/javascript/StepwiseNextPage_confirm.js +8 -0
- data/lib/deplate/lib/latex/deplate.sty +36 -0
- data/lib/deplate/lib/latex/parbreak +6 -0
- data/lib/deplate/lib/php/page-comment.inc.php +5 -5
- data/lib/deplate/lib/plain/parbreak +6 -0
- data/lib/deplate/locale/de.latin1 +87 -15
- data/lib/deplate/locale/de.latin1_data +60 -0
- data/lib/deplate/locale/en.latin1_data +46 -0
- data/lib/deplate/locale/fr.latin1_data +74 -0
- data/lib/deplate/locale/ru.koi8-r_data +63 -0
- data/lib/deplate/locale/{zh_cn.gb2312 → zh_CN.GB2312} +0 -0
- data/lib/deplate/macros.rb +106 -32
- data/lib/deplate/messages.rb +22 -8
- data/lib/deplate/metadata.rb +1 -1
- data/lib/deplate/metadata/marshal.rb +1 -1
- data/lib/deplate/metadata/xml.rb +1 -1
- data/lib/deplate/metadata/yaml.rb +1 -1
- data/lib/deplate/mod/anyword.rb +4 -4
- data/lib/deplate/mod/babelfish.rb +1 -1
- data/lib/deplate/mod/code-gvim.rb +14 -8
- data/lib/deplate/mod/code-gvim71.rb +52 -0
- data/lib/deplate/mod/code-highlight.rb +35 -19
- data/lib/deplate/mod/colored-log.rb +1 -1
- data/lib/deplate/mod/endnotes.rb +1 -1
- data/lib/deplate/mod/guesslanguage.rb +75 -0
- data/lib/deplate/mod/html-asciimath.rb +1 -1
- data/lib/deplate/mod/html-deplate-button.rb +1 -1
- data/lib/deplate/mod/html-headings-navbar.rb +1 -1
- data/lib/deplate/mod/html-highstep.rb +43 -0
- data/lib/deplate/mod/html-jsmath.rb +1 -1
- data/lib/deplate/mod/html-obfuscate-email.rb +1 -1
- data/lib/deplate/mod/html-sidebar.rb +1 -1
- data/lib/deplate/mod/iconv.rb +1 -1
- data/lib/deplate/mod/imgurl.rb +1 -1
- data/lib/deplate/mod/inlatex-compound.rb +1 -1
- data/lib/deplate/mod/koma.rb +4 -4
- data/lib/deplate/mod/{de.rb → lang-de.rb} +1 -1
- data/lib/deplate/mod/{en.rb → lang-en.rb} +1 -1
- data/lib/deplate/mod/{ru_koi8-r.rb → lang-ru-koi8-r.rb} +1 -1
- data/lib/deplate/mod/lang-ru.rb +9 -0
- data/lib/deplate/mod/{zh-cn-autospace.rb → lang-zh_CN-autospace.rb} +3 -3
- data/lib/deplate/mod/{zh-cn.rb → lang-zh_CN.rb} +8 -8
- data/lib/deplate/mod/latex-emph-table-head.rb +1 -1
- data/lib/deplate/mod/latex-styles.rb +6 -6
- data/lib/deplate/mod/latex-verbatim-small.rb +1 -1
- data/lib/deplate/mod/linkmap.rb +128 -0
- data/lib/deplate/mod/makefile.rb +23 -22
- data/lib/deplate/mod/mark-external-urls.rb +13 -7
- data/lib/deplate/mod/markup-1-warn.rb +1 -1
- data/lib/deplate/mod/markup-1.rb +1 -1
- data/lib/deplate/mod/navbar-png.rb +5 -4
- data/lib/deplate/mod/noindent.rb +1 -1
- data/lib/deplate/mod/numpara.rb +1 -1
- data/lib/deplate/mod/particle-math.rb +1 -1
- data/lib/deplate/mod/php-extra.rb +1 -1
- data/lib/deplate/mod/pstoedit.rb +1 -1
- data/lib/deplate/mod/recode.rb +1 -1
- data/lib/deplate/mod/smart-dash.rb +1 -1
- data/lib/deplate/mod/smiley.rb +1 -1
- data/lib/deplate/mod/soffice.rb +1 -1
- data/lib/deplate/mod/symbols-latin1.rb +1 -1
- data/lib/deplate/mod/symbols-od-utf-8.rb +1 -1
- data/lib/deplate/mod/symbols-plain.rb +1 -1
- data/lib/deplate/mod/symbols-sgml.rb +1 -1
- data/lib/deplate/mod/symbols-utf-8.rb +1 -1
- data/lib/deplate/mod/symbols-xml.rb +1 -1
- data/lib/deplate/mod/syntax-region-alt.rb +1 -1
- data/lib/deplate/mod/utf8.rb +1 -1
- data/lib/deplate/mod/validate-html.rb +1 -1
- data/lib/deplate/mod/xmlrpc.rb +37 -36
- data/lib/deplate/nukumi2.rb +4 -4
- data/lib/deplate/once-method.rb +1 -1
- data/lib/deplate/output.rb +12 -4
- data/lib/deplate/particles.rb +52 -22
- data/lib/deplate/regions.rb +160 -90
- data/lib/deplate/skeletons.rb +4 -3
- data/lib/deplate/structured.rb +19 -13
- data/lib/deplate/template.rb +17 -9
- data/lib/deplate/templates/html-doc.html +8 -11
- data/lib/deplate/templates/html-tabbar-right.html +1 -1
- data/lib/deplate/templates/html-tabbar-top.html +3 -3
- data/lib/deplate/variables.rb +25 -9
- data/lib/deplate/wiki-markup.rb +14 -3
- data/lib/deplate/xml.rb +3 -4
- data/lib/deplate/{zh-cn.rb → zh_CN.rb} +16 -16
- data/man/man1/deplate.1 +80 -65
- metadata +72 -48
- data/lib/deplate/mod/fr.rb +0 -46
data/lib/deplate/skeletons.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
# skeletons.rb
|
2
|
-
# @Author: Thomas Link (
|
2
|
+
# @Author: Thomas Link (micathom AT gmail com)
|
3
3
|
# @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
|
4
4
|
# @Created: 28-Apr-2006.
|
5
|
-
# @Last Change:
|
6
|
-
# @Revision: 0.
|
5
|
+
# @Last Change: 2007-02-24.
|
6
|
+
# @Revision: 0.149
|
7
7
|
|
8
8
|
# Skeletons:
|
9
9
|
class Deplate::SkeletonExpander < Deplate::CommonObject
|
@@ -24,6 +24,7 @@ class Deplate::SkeletonExpander < Deplate::CommonObject
|
|
24
24
|
def require_skeleton(name, source=nil)
|
25
25
|
skels = @skeletons_tmpl[@formatter_name] ||= {}
|
26
26
|
# names = @deplate.formatter_family_members.collect {|f| "#{name}.#{f}"}
|
27
|
+
# names = @deplate.formatter.formatter_family_members.collect {|f| "#{name}.#{f}"}
|
27
28
|
# names << name
|
28
29
|
# names.each do |name|
|
29
30
|
t = skels[name] ||= load_skeleton(name)
|
data/lib/deplate/structured.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
# structured.rb
|
2
|
-
# @Author: Thomas Link (
|
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: 17-M�r-2004.
|
6
|
-
# @Last Change:
|
7
|
-
# @Revision: 0.
|
6
|
+
# @Last Change: 2007-07-01.
|
7
|
+
# @Revision: 0.2740
|
8
8
|
#
|
9
9
|
# TODO:
|
10
10
|
# - am Ende des Dokuments muss ein Stapel mit offenen tags abgearbeitet werden
|
@@ -502,8 +502,7 @@ class Deplate::Formatter::Structured < Deplate::Formatter
|
|
502
502
|
cc = bib_entry(c)
|
503
503
|
if cc
|
504
504
|
e = {}
|
505
|
-
yr = cc
|
506
|
-
yr = if yr then yr[1] else '' end
|
505
|
+
yr = cc['year'] || ''
|
507
506
|
e[:year] = yr
|
508
507
|
if n
|
509
508
|
e[:note] = @deplate.parse_and_format(container, n)
|
@@ -513,10 +512,14 @@ class Deplate::Formatter::Structured < Deplate::Formatter
|
|
513
512
|
p = @deplate.parse_and_format(container, "#{@deplate.msg("p.\\ ")}#{p}")
|
514
513
|
e[:pages] = p
|
515
514
|
end
|
516
|
-
nm = cc
|
515
|
+
nm = cc['author'] || cc['editor']
|
517
516
|
if nm
|
518
|
-
|
519
|
-
|
517
|
+
if nm =~ /^\{(.*?)\}$/
|
518
|
+
nm = [[$1]]
|
519
|
+
else
|
520
|
+
nm = nm.gsub(/\s+/, ' ').split(/ +and +/).collect do |a|
|
521
|
+
a.scan(/\w+$/)
|
522
|
+
end
|
520
523
|
end
|
521
524
|
e[:name] = nm
|
522
525
|
else
|
@@ -599,7 +602,8 @@ class Deplate::Formatter::Structured < Deplate::Formatter
|
|
599
602
|
alias :format_bib_entry_re_structured :format_bib_entry
|
600
603
|
def format_bib_entry(invoker, key, bibdef)
|
601
604
|
args = invoker.args
|
602
|
-
bib = Hash[*bibdef.flatten]
|
605
|
+
# bib = Hash[*bibdef.flatten]
|
606
|
+
bib = bibdef
|
603
607
|
be = ["author", "title", "pages"]
|
604
608
|
entry = {}
|
605
609
|
process_bib_entry_part(invoker, args, entry, bib, be)
|
@@ -618,7 +622,7 @@ class Deplate::Formatter::Structured < Deplate::Formatter
|
|
618
622
|
# ee = bib[e]
|
619
623
|
# container[e] = self.send("get_bib_%s" % e, args, simple_latex_reformat(ee)) if ee
|
620
624
|
# end
|
621
|
-
return get_bib_relation(args, bib['
|
625
|
+
return get_bib_relation(args, bib['_type'], entry, container)
|
622
626
|
end
|
623
627
|
|
624
628
|
def process_bib_entry_part(invoker, args, accum, bibdef, parts)
|
@@ -627,9 +631,11 @@ class Deplate::Formatter::Structured < Deplate::Formatter
|
|
627
631
|
if ee
|
628
632
|
ee = simple_latex_reformat(ee)
|
629
633
|
ee = @deplate.parse_and_format(invoker, ee, false, [
|
630
|
-
|
631
|
-
|
632
|
-
|
634
|
+
Deplate::Particle::Macro,
|
635
|
+
Deplate::Particle::CurlyBrace,
|
636
|
+
Deplate::HyperLink::Extended,
|
637
|
+
Deplate::HyperLink::Simple,
|
638
|
+
Deplate::HyperLink::Url,
|
633
639
|
])
|
634
640
|
accum[e] = self.send("get_bib_#{e}", args, ee)
|
635
641
|
end
|
data/lib/deplate/template.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
# template.rb -- simple templates for deplate
|
2
|
-
# @Author: Thomas Link (
|
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-Aug-2004.
|
6
|
-
# @Last Change:
|
7
|
-
# @Revision: 0.
|
6
|
+
# @Last Change: 2007-09-28.
|
7
|
+
# @Revision: 0.550
|
8
8
|
#
|
9
9
|
# Description:
|
10
10
|
#
|
@@ -105,6 +105,7 @@ class Deplate::Template
|
|
105
105
|
:onthefly_particles => false,
|
106
106
|
:vanilla => true,
|
107
107
|
:inherit_options => true,
|
108
|
+
:paragraph_class => Deplate::Element::Paragraph,
|
108
109
|
|
109
110
|
:elements => [
|
110
111
|
Deplate::Element::Region,
|
@@ -133,8 +134,8 @@ class Deplate::Template
|
|
133
134
|
'Mingle' => Deplate::Regions::Mingle,
|
134
135
|
'Native' => Deplate::Regions::Native,
|
135
136
|
'Ruby' => Deplate::Regions::Ruby,
|
136
|
-
'Doc' => Deplate::Regions::
|
137
|
-
'Var' => Deplate::Regions::
|
137
|
+
'Doc' => Deplate::Regions::Var,
|
138
|
+
'Var' => Deplate::Regions::Var,
|
138
139
|
},
|
139
140
|
|
140
141
|
:particles => [
|
@@ -188,10 +189,14 @@ class Deplate::Template
|
|
188
189
|
@template = args[:template]
|
189
190
|
@container = args[:container]
|
190
191
|
@master = args[:master]
|
192
|
+
# @deplate_options = @@deplate_options.dup
|
193
|
+
@deplate_options = @@deplate_options
|
191
194
|
if @master
|
192
|
-
|
195
|
+
@deplate_options[:options] = @master.options.dup
|
196
|
+
@deplate_options[:options].input_def = nil
|
197
|
+
@deplate_options[:options].input_class = nil
|
193
198
|
else
|
194
|
-
|
199
|
+
@deplate_options[:options] = OpenStruct.new
|
195
200
|
end
|
196
201
|
|
197
202
|
if @template
|
@@ -229,7 +234,8 @@ class Deplate::Template
|
|
229
234
|
:post => [],
|
230
235
|
}
|
231
236
|
@keep_whitespace = args.has_key?(:keep_whitespace) ? args[:keep_whitespace] : true
|
232
|
-
|
237
|
+
case deplate.variables['template_version']
|
238
|
+
when '1'
|
233
239
|
fill_in_1
|
234
240
|
else
|
235
241
|
fill_in_2
|
@@ -240,7 +246,9 @@ class Deplate::Template
|
|
240
246
|
if @@deplate_for_template
|
241
247
|
d = @@deplate_for_template
|
242
248
|
else
|
243
|
-
d = @@deplate_for_template = Deplate::DeplateForTemplates.new('',
|
249
|
+
d = @@deplate_for_template = Deplate::DeplateForTemplates.new('', @deplate_options)
|
250
|
+
d.reset(true)
|
251
|
+
d.push_input_format('template')
|
244
252
|
end
|
245
253
|
keep_whitespace = d.options.keep_whitespace
|
246
254
|
master = d.options.master
|
@@ -1,24 +1,21 @@
|
|
1
1
|
#Mingle type=pre slot=css:
|
2
|
+
<!--[if IE]>
|
2
3
|
<style type="text/css">
|
3
|
-
<!--
|
4
4
|
@media screen {
|
5
|
-
table.
|
6
|
-
border-
|
7
|
-
background-color: #fff0c0;
|
8
|
-
}
|
9
|
-
body {
|
10
|
-
background-color: #dfdfff;
|
5
|
+
table.tabBarTop {
|
6
|
+
border-collapse: collapse;
|
11
7
|
}
|
12
8
|
}
|
13
|
-
-->
|
14
9
|
</style>
|
10
|
+
<![endif]-->
|
15
11
|
#End
|
12
|
+
|
16
13
|
#PREMATTER
|
17
14
|
|
18
15
|
<div id="tabFrame">
|
19
|
-
<div
|
20
|
-
<div class="tabBody">
|
21
|
-
#BODY
|
16
|
+
<div id="tabBodyFrame" class="tabBodyFrame">
|
17
|
+
<div id="tabBody" class="tabBody">
|
18
|
+
#BODY
|
22
19
|
</div>
|
23
20
|
#POSTMATTER: html_pageicons_beg..html_pageicons_end
|
24
21
|
</div>
|
@@ -16,11 +16,11 @@
|
|
16
16
|
<div id="tabBodyFrame" class="tabBodyFrame">
|
17
17
|
<div id="tabBar" class="tabBar">
|
18
18
|
#IF: tabBarPos==top
|
19
|
-
#
|
19
|
+
#XARG: tabBarTop()
|
20
20
|
#ELSEIF: tabBarPos==right
|
21
|
-
#
|
21
|
+
#XARG: tabBarRight(progressBar! nextKey! depth=2 depthInactive=1)
|
22
22
|
#ELSE
|
23
|
-
#
|
23
|
+
#XARG: tabBarLeft(progressBar! nextKey! depth=2 depthInactive=1)
|
24
24
|
#ENDIF
|
25
25
|
</div>
|
26
26
|
<div id="tabBody" class="tabBody">
|
data/lib/deplate/variables.rb
CHANGED
@@ -1,16 +1,17 @@
|
|
1
1
|
# variables.rb
|
2
|
-
# @Author: Thomas Link (
|
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:
|
6
|
-
# @Revision: 0.
|
5
|
+
# @Last Change: 2007-05-22.
|
6
|
+
# @Revision: 0.75
|
7
7
|
|
8
8
|
class Deplate::Variables < Hash
|
9
9
|
attr_accessor :deplate
|
10
10
|
|
11
11
|
def initialize(deplate=nil)
|
12
12
|
super()
|
13
|
-
@deplate
|
13
|
+
@deplate = deplate
|
14
|
+
@priority = false
|
14
15
|
end
|
15
16
|
|
16
17
|
def log(*args)
|
@@ -22,8 +23,21 @@ class Deplate::Variables < Hash
|
|
22
23
|
self[key] = val
|
23
24
|
end
|
24
25
|
end
|
25
|
-
|
26
|
+
|
27
|
+
def set_value(name, value)
|
28
|
+
begin
|
29
|
+
@priority = true
|
30
|
+
self[name] = value
|
31
|
+
ensure
|
32
|
+
@priority = false
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
26
36
|
def []=(name, value)
|
37
|
+
if name =~ /^[[:upper:]]+?([@\[]|$)/ and !@priority
|
38
|
+
Deplate::Core.log(['No permisson', name, value], :error)
|
39
|
+
return
|
40
|
+
end
|
27
41
|
if name.kind_of?(String) and (m = /^(\S+)\[(\S+)?\]$/.match(name))
|
28
42
|
key = m[1]
|
29
43
|
field = m[2]
|
@@ -48,16 +62,16 @@ class Deplate::Variables < Hash
|
|
48
62
|
field = field.to_i
|
49
63
|
var[field] = value
|
50
64
|
else
|
51
|
-
Deplate::Core.log([
|
65
|
+
Deplate::Core.log(['Wrong index', field, name, var.class], :error)
|
52
66
|
end
|
53
67
|
elsif var
|
54
|
-
Deplate::Core.log([
|
68
|
+
Deplate::Core.log(['Doc variable has wrong type', key, var.class], :error)
|
55
69
|
end
|
56
70
|
else
|
57
|
-
super
|
71
|
+
super(name, value)
|
58
72
|
end
|
59
73
|
end
|
60
|
-
|
74
|
+
|
61
75
|
def [](name)
|
62
76
|
begin
|
63
77
|
if !name.kind_of?(String) or keys.include?(name)
|
@@ -119,6 +133,8 @@ class Deplate::Variables < Hash
|
|
119
133
|
else
|
120
134
|
Deplate::Core.log(['Wrong index', field, name, val.class], :error)
|
121
135
|
end
|
136
|
+
elsif val.respond_to?('[]')
|
137
|
+
return val[field]
|
122
138
|
else
|
123
139
|
Deplate::Core.log(['Variable has wrong type', key, val.class], :warning)
|
124
140
|
end
|
data/lib/deplate/wiki-markup.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
# wiki-markup.rb
|
2
|
-
# @Author: Thomas Link (
|
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-M�r-2005.
|
6
|
-
# @Last Change:
|
7
|
-
# @Revision: 0.
|
6
|
+
# @Last Change: 2007-09-01.
|
7
|
+
# @Revision: 0.284
|
8
8
|
#
|
9
9
|
# = Description
|
10
10
|
# Various elements for defining input filters
|
@@ -108,6 +108,7 @@ end
|
|
108
108
|
class Deplate::Input::Wiki::ParagraphIndentedVerbatim < Deplate::Element::Paragraph
|
109
109
|
set_rx(/^([ \t]*)(.+)[ \t]*$/)
|
110
110
|
set_formatter nil
|
111
|
+
attr_reader :regNote
|
111
112
|
|
112
113
|
def get_text
|
113
114
|
@leading_whitespace = @match[1]
|
@@ -129,6 +130,7 @@ class Deplate::Input::Wiki::ParagraphIndentedVerbatim < Deplate::Element::Paragr
|
|
129
130
|
format_as_paragraph
|
130
131
|
else
|
131
132
|
@elt = @leading_whitespace + @accum.join("\n")
|
133
|
+
# p "DBG format_special", @deplate.input.class, @deplate.input.elements, @elt
|
132
134
|
format_as_verbatim
|
133
135
|
end
|
134
136
|
end
|
@@ -138,11 +140,20 @@ class Deplate::Input::Wiki::ParagraphIndentedVerbatim < Deplate::Element::Paragr
|
|
138
140
|
end
|
139
141
|
|
140
142
|
def format_as_verbatim
|
143
|
+
# <+TBD+> Register a code region in rdoc
|
144
|
+
# if @deplate.variables['codeSyntax']
|
145
|
+
# r = Deplate::Element::Region.new(@deplate, @source, @accum, @match, 'Code', @args)
|
146
|
+
# r = r.finish
|
147
|
+
# r = r.process
|
148
|
+
# r = r.format_compound
|
149
|
+
# r
|
150
|
+
# else
|
141
151
|
margin = @args["wrap"]
|
142
152
|
if margin
|
143
153
|
@elt = @deplate.formatter.wrap_text(@elt, :margin => margin.to_i)
|
144
154
|
end
|
145
155
|
format_element(:format_verbatim, self)
|
156
|
+
# end
|
146
157
|
end
|
147
158
|
end
|
148
159
|
|
data/lib/deplate/xml.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
# xml.rb
|
2
|
-
# @Author: Thomas Link (
|
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: 17-M�r-2004.
|
6
|
-
# @Last Change:
|
7
|
-
# @Revision: 0.
|
6
|
+
# @Last Change: 2007-07-21.
|
7
|
+
# @Revision: 0.2318
|
8
8
|
#
|
9
9
|
# TODO:
|
10
10
|
# -
|
@@ -17,7 +17,6 @@ class Deplate::Formatter::XML < Deplate::Formatter::Structured
|
|
17
17
|
self.suffix = ".xml"
|
18
18
|
|
19
19
|
def initialize(deplate, args)
|
20
|
-
@consumed_ids = []
|
21
20
|
deplate.options.indentation_level = [0]
|
22
21
|
super
|
23
22
|
@special_symbols = {
|
@@ -1,10 +1,10 @@
|
|
1
1
|
# zh-cn.rb -- Simplified Chinese messages
|
2
|
-
# @Author: Thomas Link; localization by Jjgod Jiang (gzjjgod
|
2
|
+
# @Author: Thomas Link; localization by Jjgod Jiang (gzjjgod AT 21cn com)
|
3
3
|
# @Website: http://deplate.sf.net/
|
4
4
|
# @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
|
5
5
|
# @Created: 01-Aug-2004.
|
6
|
-
# @Last Change:
|
7
|
-
# @Revision: 0.
|
6
|
+
# @Last Change: 2007-09-02.
|
7
|
+
# @Revision: 0.217
|
8
8
|
|
9
9
|
require 'deplate/messages'
|
10
10
|
|
@@ -12,21 +12,21 @@ class Deplate::Formatter
|
|
12
12
|
attr_reader :cjk_smart_blanks
|
13
13
|
|
14
14
|
def hook_pre_setup_zh_cn
|
15
|
-
# @deplate.variables[
|
16
|
-
@cjk_smart_blanks = !(@deplate.variables[
|
15
|
+
# @deplate.variables['encoding'] = 'GB2312'
|
16
|
+
@cjk_smart_blanks = !(@deplate.variables['noSmartBlanks'] || false)
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
20
20
|
class Deplate::Formatter::LaTeX
|
21
21
|
def prepare_zh_cn
|
22
|
-
family = @deplate.variables[
|
23
|
-
encoding = @deplate.variables[
|
24
|
-
union_at(:pre, :mod_packages,
|
25
|
-
union_at(:pre, :mod_packages,
|
26
|
-
union_at(:pre, :mod_packages,
|
22
|
+
family = @deplate.variables['cjk_family'] || 'gbsn'
|
23
|
+
encoding = @deplate.variables['cjk_encoding'] || 'GB'
|
24
|
+
union_at(:pre, :mod_packages, '\\usepackage{CJK}')
|
25
|
+
union_at(:pre, :mod_packages, '\\usepackage{CJKnumb}')
|
26
|
+
union_at(:pre, :mod_packages, '\\usepackage{indentfirst}')
|
27
27
|
output_at(:pre, :body_beg, "\\begin{CJK*}{#{encoding}}{#{family}}",
|
28
|
-
|
29
|
-
output_at(:post, :prepend_body_end,
|
28
|
+
'\\CJKtilde{}', '\\CJKcaption{GB}', '\\CJKindent{}')
|
29
|
+
output_at(:post, :prepend_body_end, '\\end{CJK*}')
|
30
30
|
end
|
31
31
|
|
32
32
|
def set_document_encoding
|
@@ -50,10 +50,10 @@ class Deplate::Formatter
|
|
50
50
|
end
|
51
51
|
|
52
52
|
class Deplate::Messages::ZhCnGb2312 < Deplate::Messages
|
53
|
-
setup '
|
54
|
-
def_prop 'lang', '
|
55
|
-
def_prop 'encoding', '
|
53
|
+
setup 'zh_CN'
|
54
|
+
def_prop 'lang', 'zh_CN'
|
55
|
+
def_prop 'encoding', 'GB2312'
|
56
56
|
def_prop 'latex_encoding', nil
|
57
|
-
load_catalog '
|
57
|
+
load_catalog 'zh_CN.GB2312'
|
58
58
|
end
|
59
59
|
|
data/man/man1/deplate.1
CHANGED
@@ -2,13 +2,13 @@
|
|
2
2
|
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
3
3
|
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
4
4
|
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
5
|
-
.TH "DEPLATE" "1" "
|
5
|
+
.TH "DEPLATE" "1" "25. Sep 2007" "" ""
|
6
6
|
.\" disable hyphenation
|
7
7
|
.nh
|
8
8
|
.\" disable justification (adjust text to left margin only)
|
9
9
|
.ad l
|
10
10
|
.SH "NAME"
|
11
|
-
deplate \- Deplate 0.8 \-\- convert wiki\-like markup to latex, docbook, html, or "html\-slides"
|
11
|
+
deplate \- Deplate 0.8.1 \-\- convert wiki\-like markup to latex, docbook, html, or "html\-slides"
|
12
12
|
.SH "USAGE"
|
13
13
|
.PP
|
14
14
|
The command\-line options:
|
@@ -22,35 +22,35 @@ the terms of the GNU General Public License version 2.
|
|
22
22
|
|
23
23
|
|
24
24
|
General Options:
|
25
|
-
\-a, \-\-[no\-]ask On certain actions, query
|
25
|
+
\-a, \-\-[no\-]ask On certain actions, query
|
26
26
|
user before overwriting files
|
27
|
-
\-A, \-\-allow ALLOW Allow certain things: l,
|
27
|
+
\-A, \-\-allow ALLOW Allow certain things: l,
|
28
28
|
r, t, w, W, x, X, $
|
29
29
|
\-c, \-\-config FILE Alternative user cfg file
|
30
30
|
\-\-[no\-]clean Clean up temporary files
|
31
31
|
\-\-color Colored output
|
32
|
-
\-\-css NAME Copy NAME.css to the destination
|
32
|
+
\-\-css NAME Copy NAME.css to the destination
|
33
33
|
directory, if inexistent
|
34
|
-
\-\-copy\-css NAME Copy NAME.css to the destination
|
34
|
+
\-\-copy\-css NAME Copy NAME.css to the destination
|
35
35
|
directory
|
36
36
|
\-d, \-\-dir DIR Output directory
|
37
37
|
\-D, \-\-define NAME=VALUE Define a document option
|
38
38
|
\-e, \-\-[no\-]each Handle each file separately
|
39
39
|
\-\-[no\-]force Force output
|
40
|
-
\-f, \-\-format FORMAT Output format (default:
|
40
|
+
\-f, \-\-format FORMAT Output format (default:
|
41
41
|
html)
|
42
42
|
\-\-[no\-]included Output body only
|
43
43
|
\-i, \-\-input NAME Input definition
|
44
|
-
\-\-list FILE A file that contains a list
|
44
|
+
\-\-list FILE A file that contains a list
|
45
45
|
of input files
|
46
|
-
\-\-log FILE A file (or \- for stdout)
|
46
|
+
\-\-log FILE A file (or \- for stdout)
|
47
47
|
where to put the log
|
48
|
-
\-\-[no\-]loop Read from stdin forever
|
48
|
+
\-\-[no\-]loop Read from stdin forever
|
49
49
|
and ever
|
50
|
-
\-\-metadata [NAME] Save metadata in this format
|
50
|
+
\-\-metadata [NAME] Save metadata in this format
|
51
51
|
(default: yaml)
|
52
52
|
\-m, \-\-module MODULE Load a module
|
53
|
-
\-o, \-\-out FILE Output to file or stdout
|
53
|
+
\-o, \-\-out FILE Output to file or stdout
|
54
54
|
('\-')
|
55
55
|
\-p, \-\-pattern GLOBPATTERN File name pattern
|
56
56
|
\-P, \-\-exclude GLOBPATTERN Excluded file name pattern
|
@@ -63,9 +63,9 @@ General Options:
|
|
63
63
|
\-\-suffix SUFFIX Suffix for output files
|
64
64
|
\-t, \-\-template NAME Template to use
|
65
65
|
\-\-[no\-]vanilla Ignore user configuration
|
66
|
-
\-x, \-\-allow\-ruby [RUBY SAFE] Allow the execution of ruby
|
66
|
+
\-x, \-\-allow\-ruby [RUBY SAFE] Allow the execution of ruby
|
67
67
|
code
|
68
|
-
\-X, \-\-[no\-]allow\-exec Allow the execution of helper
|
68
|
+
\-X, \-\-[no\-]allow\-exec Allow the execution of helper
|
69
69
|
applications
|
70
70
|
\-\-[no\-]external
|
71
71
|
|
@@ -75,13 +75,14 @@ LaTeX Formatter:
|
|
75
75
|
|
76
76
|
|
77
77
|
Available input defintions:
|
78
|
-
deplate, deplate\-headings, deplate\-restricted, rdoc, template
|
78
|
+
deplate, deplate\-headings, deplate\-restricted, play, rdoc, template
|
79
79
|
|
80
80
|
|
81
81
|
Available formatters:
|
82
|
-
dbk\-article, dbk\-article\-4.1.2, dbk\-book, dbk\-ref, dbk\-slides,
|
83
|
-
dbk\-snippet, html, html\-snippet, htmlsite, htmlslides, htmlwebsite,
|
84
|
-
latex, latex\-snippet, null, php, phpsite, plain,
|
82
|
+
dbk\-article, dbk\-article\-4.1.2, dbk\-book, dbk\-ref, dbk\-slides,
|
83
|
+
dbk\-snippet, html, html\-snippet, htmlsite, htmlslides, htmlwebsite,
|
84
|
+
latex, latex\-dramatist, latex\-snippet, null, php, phpsite, plain,
|
85
|
+
template, xhtml10t
|
85
86
|
|
86
87
|
|
87
88
|
Available metadata formats:
|
@@ -89,28 +90,30 @@ marshal, xml, yaml
|
|
89
90
|
|
90
91
|
|
91
92
|
Available modules:
|
92
|
-
anyword, babelfish, code\-gvim, code\-highlight, colored\-log,
|
93
|
-
|
94
|
-
html\-
|
95
|
-
iconv, imgurl, inlatex\-compound,
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
93
|
+
anyword, babelfish, code\-gvim, code\-gvim71, code\-highlight, colored\-log,
|
94
|
+
endnotes, guesslanguage, html\-asciimath, html\-deplate\-button,
|
95
|
+
html\-headings\-navbar, html\-highstep, html\-jsmath, html\-obfuscate\-email,
|
96
|
+
html\-sidebar, htmlslides\-navbar\-fh, iconv, imgurl, inlatex\-compound,
|
97
|
+
koma, lang\-de, lang\-en, lang\-ru, lang\-ru\-koi8\-r, lang\-zh_CN,
|
98
|
+
lang\-zh_CN\-autospace, latex\-emph\-table\-head, latex\-styles, latex\-verbatim\-small,
|
99
|
+
makefile, mark\-external\-urls, markup\-1, markup\-1\-warn, navbar\-png,
|
100
|
+
noindent, numpara, particle\-math, php\-extra, pstoedit, quiz,
|
101
|
+
recode, smart\-dash, smiley, soffice, symbols\-latin1, symbols\-od\-utf\-8,
|
102
|
+
symbols\-plain, symbols\-sgml, symbols\-utf\-8, symbols\-xml, syntax\-region\-alt,
|
103
|
+
utf8, validate\-html, xmlrpc
|
102
104
|
|
103
105
|
|
104
106
|
Available css files:
|
105
|
-
article, deplate, heading\-navbar,
|
106
|
-
sans\-serif, serif, serif\-e, serif\-rel,
|
107
|
-
tabbar
|
107
|
+
article, deplate, heading\-navbar, highstep, htmldoc, layout\-deplate,
|
108
|
+
layout\-deplate\-print, play, sans\-serif, serif, serif\-e, serif\-rel,
|
109
|
+
slides, styles, tabbar, tabbar\-left, tabbar\-right, tabbar\-right\-ie,
|
110
|
+
tabbar\-top, text\-sans\-serif, text\-serif
|
108
111
|
|
109
112
|
|
110
113
|
Available templates:
|
111
|
-
html\-doc.html, html\-left\-tabbar\-js.html, html\-left\-tabbar.html,
|
112
|
-
html\-tabbar\-right\-pcomments.php, html\-tabbar\-right\-step.html,
|
113
|
-
html\-tabbar\-right\-table.html, html\-tabbar\-right.html, html\-tabbar\-top.html,
|
114
|
+
html\-doc.html, html\-left\-tabbar\-js.html, html\-left\-tabbar.html,
|
115
|
+
html\-tabbar\-right\-pcomments.php, html\-tabbar\-right\-step.html,
|
116
|
+
html\-tabbar\-right\-table.html, html\-tabbar\-right.html, html\-tabbar\-top.html,
|
114
117
|
html\-tabbar.html
|
115
118
|
|
116
119
|
|
@@ -120,9 +123,9 @@ Other Options:
|
|
120
123
|
\-\-[no\-]quiet Be quiet
|
121
124
|
\-v, \-\-[no\-]verbose Run verbosely
|
122
125
|
\-h, \-\-help Show this message
|
123
|
-
\-\-list\-modules [REGEXP] List modules matching a
|
126
|
+
\-\-list\-modules [REGEXP] List modules matching a
|
124
127
|
pattern
|
125
|
-
\-\-list\-css [REGEXP] List css files matching
|
128
|
+
\-\-list\-css [REGEXP] List css files matching
|
126
129
|
a pattern
|
127
130
|
\-\-version Show version
|
128
131
|
\-\-microversion Show version
|
@@ -160,7 +163,6 @@ Notes:
|
|
160
163
|
.TP
|
161
164
|
\-D VAR, \-D VAR=VALUE
|
162
165
|
You can define document variables via the command line; if no value is provided the variable is set to "1".
|
163
|
-
.sp
|
164
166
|
The option parser library, which
|
165
167
|
deplate
|
166
168
|
uses, doesn't deal well with spaces in command line arguments. This is why spaces have to be replaced with tildes; a tilde and backslashes have to be preceded with backslashes. Example:
|
@@ -203,7 +205,7 @@ Flags is a list of comma separated letters which may contain:
|
|
203
205
|
l
|
204
206
|
Allow the
|
205
207
|
#LANG
|
206
|
-
command to automatically load a module of the language's name
|
208
|
+
command to automatically load a module of the language's name (this would make it possible for a malicious user to load any module as deplate cannot distinguish localization modules from other modules)
|
207
209
|
.TP
|
208
210
|
r
|
209
211
|
Check files in $PWD/deplate.rc in some cases (e.g. check for a local config.rb); templates, css files, and library snippets are always searched in the
|
@@ -297,7 +299,13 @@ Configuration requires some knowledge of the ruby language. If you don't already
|
|
297
299
|
\fIfully\fR
|
298
300
|
object\-oriented interpreted language in the spirit of Smalltalk (but with a rather modern syntax) plus some features from Perl and Lisp/Scheme (e.g. continuations).
|
299
301
|
.PP
|
300
|
-
The configuration files are regular ruby files and are loaded after requiring all the libraries necessary. Theses files reside in the directory "$HOME/.deplate/" or "$USERPROFILE/deplate.rc/".
|
302
|
+
The configuration files are regular ruby files and are loaded after requiring all the libraries necessary. Theses files reside in the directory "$HOME/.deplate/" or "$USERPROFILE/deplate.rc/". If these directories are not found, the files are searched in
|
303
|
+
$WINDIR/deplate.rc/
|
304
|
+
or
|
305
|
+
/etc/deplate.rc/. Some files are also looked for in the "datadir" (usually something like
|
306
|
+
/usr/share/deplate/).
|
307
|
+
.PP
|
308
|
+
This directory may also contain custom modules or css files etc. On Win 2000/XP etc., $USERPROFILE is usually set to "C:\\Documents and Settings\\USERNAME\\".
|
301
309
|
.PP
|
302
310
|
The user configuration directory should look like this:
|
303
311
|
.TP 3
|
@@ -730,53 +738,60 @@ mixes up your template, you should prefix these curly braces that cause problems
|
|
730
738
|
.PP
|
731
739
|
Backslashes have always to be doubled.
|
732
740
|
.PP
|
733
|
-
A
|
741
|
+
Example 2.2: A letter template
|
742
|
+
.PP
|
743
|
+
In this example, we use get for the author's name because the corresponding clip is automatically defined by the standard #AU(THOR) command. For other data we use variables.
|
744
|
+
.PP
|
745
|
+
Template: tmpl_letter.tex
|
734
746
|
.sp
|
735
747
|
.nf
|
736
|
-
|
737
|
-
% #DATE commands
|
738
|
-
% (c) {get: date}, {get: author}
|
739
|
-
|
740
|
-
\\\\documentclass[12pt,a4paper]{letter}
|
741
|
-
|
742
|
-
% Insert all the prematter stuff except the documentclass definition,
|
743
|
-
% which is provided by this template
|
748
|
+
\\\\documentclass[12pt,a4paper,english]{letter}
|
744
749
|
#PREMATTER: \-doc_def
|
745
|
-
|
746
750
|
\\\\address{{get: author}\\\\\\\\
|
747
|
-
|
751
|
+
{val escapebackslash!: address}}
|
748
752
|
\\\\signature{{get: author}}
|
749
753
|
|
750
|
-
|
751
|
-
|
752
|
-
\\\\
|
753
|
-
|
754
|
-
\\\\opening{Dear {get: addresseeName},}
|
754
|
+
\\\\begin{letter}{{val: addresseeName}\\\\\\\\
|
755
|
+
{val escapebackslash!: addresseeAddress}}
|
756
|
+
\\\\opening{Dear {val: addresseeName},}
|
755
757
|
|
756
|
-
% Insert the body
|
757
758
|
#BODY
|
758
759
|
|
759
760
|
\\\\closing{Sincerly,}
|
760
|
-
|
761
761
|
\\\\vfill{}
|
762
|
-
% "enclosure" refers to a clip define by the #PUT command
|
763
762
|
\\\\encl{{val: enclosure}}
|
764
|
-
|
765
763
|
\\\\end{letter}
|
766
|
-
|
767
|
-
% Insert post\-body stuff
|
768
764
|
#POSTMATTER
|
769
765
|
.fi
|
770
766
|
.PP
|
771
|
-
|
772
|
-
deplate
|
773
|
-
as:
|
767
|
+
Input file: example\-letter.txt
|
774
768
|
.sp
|
775
769
|
.nf
|
776
|
-
|
770
|
+
#AU: John Smith
|
771
|
+
#DATE: today
|
772
|
+
#VAR id=address: Cool Place 1{nl inline!}Hiptown 10000
|
773
|
+
#VAR id=enclosure: Important Document
|
774
|
+
#VAR: addresseeName=Max Mustermann
|
775
|
+
#VAR: addresseeAddress=Tolle Straße 2{nl}Neustadt 20000
|
776
|
+
|
777
|
+
I would like to say thanks for your last letter which I read with much joy. I
|
778
|
+
hope to be hearing from you soon.
|
777
779
|
.fi
|
780
|
+
.PP
|
781
|
+
Command line:
|
782
|
+
.sp
|
783
|
+
.nf
|
784
|
+
deplate \-t tmpl_letter.tex \-f latex example\-letter.txt
|
785
|
+
pdflatex example\-letter.tex
|
786
|
+
.fi
|
787
|
+
.PP
|
788
|
+
Result:
|
789
|
+
[2]\&\fIexample\-letter.pdf\fR
|
778
790
|
.RE
|
779
791
|
.SH "REFERENCES"
|
780
792
|
.TP 3
|
781
793
|
1.\ Vim viki plugin
|
782
794
|
\%http://www.vim.org/scripts/script.php?script_id=861
|
795
|
+
.TP 3
|
796
|
+
2.\ example\-letter.pdf
|
797
|
+
\%example\-letter.pdf
|