dyndoc-ruby-core 1.0.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.
- checksums.yaml +7 -0
- data/dyndoc/.DS_Store +0 -0
- data/dyndoc/Dyn/.postload +1 -0
- data/dyndoc/Dyn/.preload +1 -0
- data/dyndoc/Dyn/After.dyn +3 -0
- data/dyndoc/Dyn/Base.dyn +18 -0
- data/dyndoc/Dyn/Minimum.dyn +20 -0
- data/dyndoc/Model/Html/DefaultPost_html.dyn +5 -0
- data/dyndoc/Model/Html/DefaultPre_html.dyn +15 -0
- data/dyndoc/Model/Odt/DefaultPost_content.xml +3 -0
- data/dyndoc/Model/Odt/DefaultPost_tmpl_content.xml +3 -0
- data/dyndoc/Model/Odt/DefaultPre_content.xml +8 -0
- data/dyndoc/Model/Odt/DefaultPre_tmpl_content.xml +8 -0
- data/dyndoc/Model/Tex/ContentPost_tmpl.tex +1 -0
- data/dyndoc/Model/Tex/ContentPre_tmpl.tex +6 -0
- data/dyndoc/Model/Tex/DefaultPost_tmpl.tex +73 -0
- data/dyndoc/Model/Tex/DefaultPre_tmpl.tex +16 -0
- data/dyndoc/Model/Ttm/DefaultPost_tmpl.ttm +3 -0
- data/dyndoc/Model/Ttm/DefaultPre_tmpl.ttm +16 -0
- data/dyndoc/Std/Array.dyn +96 -0
- data/dyndoc/Std/Composer.dyn +38 -0
- data/dyndoc/Std/DevTag.dyn +101 -0
- data/dyndoc/Std/DynVar.dyn +23 -0
- data/dyndoc/Std/File.dyn +55 -0
- data/dyndoc/Std/Git.dyn +34 -0
- data/dyndoc/Std/List.dyn +46 -0
- data/dyndoc/Std/OOP.dyn +32 -0
- data/dyndoc/Std/Signal.dyn +18 -0
- data/dyndoc/Std/String.dyn +22 -0
- data/dyndoc/Std/Styles.dyn +1 -0
- data/dyndoc/Std/Test.dyn +282 -0
- data/dyndoc/Std/Utils.dyn +42 -0
- data/dyndoc/Std/Verb.dyn +5 -0
- data/dyndoc/Style/Notation/Math.dyn +7 -0
- data/dyndoc/Style/Notation/Stat/Classic.dyn +8 -0
- data/dyndoc/Style/Notation/Stat/Cqls.dyn +44 -0
- data/dyndoc/Style/Text/Std.dyn +5 -0
- data/dyndoc/Style/Text/StdAlias.dyn +3 -0
- data/dyndoc/Style/Text/StdTex.dyn +17 -0
- data/dyndoc/Style/Text/Txt.dyn +1 -0
- data/dyndoc/Tex/.postload +1 -0
- data/dyndoc/Tex/.preload +1 -0
- data/dyndoc/Tex/10pt_tmpl.tex +1 -0
- data/dyndoc/Tex/11pt_tmpl.tex +1 -0
- data/dyndoc/Tex/12pt_tmpl.tex +1 -0
- data/dyndoc/Tex/Article_tmpl.tex +1 -0
- data/dyndoc/Tex/Beamer.dyn_tex +35 -0
- data/dyndoc/Tex/BeamerHandout_tmpl.tex +2 -0
- data/dyndoc/Tex/Book_tmpl.tex +1 -0
- data/dyndoc/Tex/DefaultFirst_tmpl.tex +1 -0
- data/dyndoc/Tex/DefaultLast_tmpl.tex +8 -0
- data/dyndoc/Tex/Default_tmpl.tex +9 -0
- data/dyndoc/Tex/First_tmpl.tex +8 -0
- data/dyndoc/Tex/Fr_tmpl.tex +17 -0
- data/dyndoc/Tex/Header_tmpl.tex +3 -0
- data/dyndoc/Tex/InclGraph_tmpl.tex +19 -0
- data/dyndoc/Tex/InclSpatProc_tmpl.tex +70 -0
- data/dyndoc/Tex/InclSumMI_tmpl.tex +4 -0
- data/dyndoc/Tex/LargeA4_tmpl.tex +5 -0
- data/dyndoc/Tex/Last_tmpl.tex +1 -0
- data/dyndoc/Tex/Option_tmpl.tex +8 -0
- data/dyndoc/Tex/Png_tmpl.tex +1 -0
- data/dyndoc/Tex/RefCite2_tmpl.tex +16 -0
- data/dyndoc/Tex/RefCite_tmpl.tex +16 -0
- data/dyndoc/Tex/Report_tmpl.tex +1 -0
- data/dyndoc/Tex/Theorem_tmpl.tex +14 -0
- data/dyndoc/Tools/.DS_Store +0 -0
- data/dyndoc/Tools/Atom.dyn/index.dyn +42 -0
- data/dyndoc/Tools/AtomDyndocker.dyn/index.dyn +43 -0
- data/dyndoc/Tools/R/Fig.dyn +144 -0
- data/dyndoc/Tools/R/Tools.dyn +344 -0
- data/dyndoc/Tools/Tex/Beamer.dyn +204 -0
- data/dyndoc/Tools/Tex/BeamerSlide.dyn_tex +199 -0
- data/dyndoc/Tools/Tex/Pgf.dyn +115 -0
- data/dyndoc/Tools/Tex/Table.dyn +278 -0
- data/dyndoc/Tools/Tex/Tools.dyn +37 -0
- data/dyndoc/Tools/Tex/Verb.dyn +77 -0
- data/dyndoc/Tools/Web/.DS_Store +0 -0
- data/dyndoc/Tools/Web/Ace.dyn +54 -0
- data/dyndoc/Tools/Web/Code.dyn +129 -0
- data/dyndoc/Tools/Web/DHtmlX.dyn +39 -0
- data/dyndoc/Tools/Web/DataTable.dyn_html +354 -0
- data/dyndoc/Tools/Web/Html.dyn +286 -0
- data/dyndoc/Tools/Web/Html/JQuery.dyn +123 -0
- data/dyndoc/Tools/Web/Html/Styles.dyn +4 -0
- data/dyndoc/Tools/Web/JQueryTools.dyn +87 -0
- data/dyndoc/Tools/Web/Layout.dyn +86 -0
- data/dyndoc/Tools/Web/Layout/CQLS.dyn +6 -0
- data/dyndoc/Tools/Web/Layout/LJK.dyn +41 -0
- data/dyndoc/Tools/Web/TabBar.dyn +37 -0
- data/dyndoc/Tools/Web/Ttm.dyn +20 -0
- data/dyndoc/Tools/Web/Txtl.dyn +14 -0
- data/lib/dyndoc-core.rb +59 -0
- data/lib/dyndoc/base/envir.rb +541 -0
- data/lib/dyndoc/base/filter/call.rb +127 -0
- data/lib/dyndoc/base/filter/filter_mngr.rb +637 -0
- data/lib/dyndoc/base/filter/server.rb +882 -0
- data/lib/dyndoc/base/filters.rb +3 -0
- data/lib/dyndoc/base/helpers.rb +9 -0
- data/lib/dyndoc/base/helpers/core.rb +32 -0
- data/lib/dyndoc/base/helpers/parser.rb +188 -0
- data/lib/dyndoc/base/scanner.rb +886 -0
- data/lib/dyndoc/base/tags.rb +4 -0
- data/lib/dyndoc/base/tags/keys_mngr.rb +401 -0
- data/lib/dyndoc/base/tags/part_tag.rb +194 -0
- data/lib/dyndoc/base/tags/tag_mngr.rb +125 -0
- data/lib/dyndoc/base/tags/user_tag.rb +216 -0
- data/lib/dyndoc/base/tmpl.rb +6 -0
- data/lib/dyndoc/base/tmpl/eval.rb +581 -0
- data/lib/dyndoc/base/tmpl/extension.rb +337 -0
- data/lib/dyndoc/base/tmpl/manager.rb +450 -0
- data/lib/dyndoc/base/tmpl/oop.rb +57 -0
- data/lib/dyndoc/base/tmpl/parse_do.rb +2446 -0
- data/lib/dyndoc/base/tmpl/rbenvir.rb +54 -0
- data/lib/dyndoc/base/utils.rb +367 -0
- data/lib/dyndoc/common/dynArray.rb +234 -0
- data/lib/dyndoc/common/file.rb +52 -0
- data/lib/dyndoc/common/init.rb +2 -0
- data/lib/dyndoc/common/tilt.rb +149 -0
- data/lib/dyndoc/common/utils.rb +61 -0
- data/lib/dyndoc/common/uv.rb +163 -0
- data/lib/dyndoc/init/config.rb +296 -0
- data/lib/dyndoc/init/home.rb +9 -0
- data/lib/dyndoc/plugins/tex.rb +4 -0
- data/lib/dyndoc/plugins/tex/beamer.rb +208 -0
- data/lib/dyndoc/plugins/tex/tex_eval.rb +69 -0
- data/lib/dyndoc/plugins/tex/tex_parse_do.rb +25 -0
- data/lib/dyndoc/plugins/tex/tex_user_tag.rb +32 -0
- data/share/R/dyndocMsys2.R +5 -0
- data/share/R/dyndocTools.R +9 -0
- data/share/R/test.R +14 -0
- data/share/R/tools/dynArray.R +34 -0
- data/share/R/tools/dynCapture.R +84 -0
- data/share/R/tools/dynMsys2.R +54 -0
- data/share/julia/dynArray.jl +93 -0
- data/share/julia/dyndoc.jl +110 -0
- data/share/julia/ruby.jl +37 -0
- metadata +202 -0
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
{#document]
|
|
2
|
+
[#main][#rb<]require "dyndoc/plugins/tex/beamer"
|
|
3
|
+
[#>] lastscene[] [#>] lastfrom [1]
|
|
4
|
+
[#}
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
{#def]Scene[#,]scene[] [#,] size[]
|
|
8
|
+
[#,] cpt[] [#,] framed[false] [#,] rounded[false]
|
|
9
|
+
[#,] fg[black] [#,] bg[cyan]
|
|
10
|
+
[#rb<]
|
|
11
|
+
#{scene}View=CqlsBeamer::Scene.new('#{scene}',[#{size}])
|
|
12
|
+
#{scene}View.bg,#{scene}View.fg='#{bg}','#{fg}'
|
|
13
|
+
#{scene}View.framed = #{framed}
|
|
14
|
+
#{scene}View.rounded = #{rounded}
|
|
15
|
+
#{scene}View.cpt=( (["true","ok","default"].include? "#{cpt}") ? CqlsBeamer.defCpt : eval("#{cpt}") ) unless "#{cpt}".empty?
|
|
16
|
+
[#>] lastscene! [#{scene}]
|
|
17
|
+
[#}
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
{#def]beginScene[#,] scene[#{lastscene}] [#>] [:{#{scene}View.first}] [#}
|
|
21
|
+
|
|
22
|
+
{#def]endScene[#,] scene[#{lastscene}] [#>] [:{#{scene}View.last}] [#}
|
|
23
|
+
|
|
24
|
+
{#def]writeScene [#,] scene[#{lastscene}] [#>] [:{#{scene}View.output}] [#}
|
|
25
|
+
|
|
26
|
+
{#def]actor[#,] name [] [#,] when[] [#,] where[] [#,] what[]
|
|
27
|
+
[#,] mode[:only] [#,] align[left,top] [#,] isR[false]
|
|
28
|
+
[#rb<]
|
|
29
|
+
quoi=@vars[:what]
|
|
30
|
+
CqlsBeamer::Actor.new("#{name}",quoi,'#{when}','@{xy(#{where}|from=#{lastscene})}','#{align}',#{mode})
|
|
31
|
+
CqlsBeamer::Actor["#{name}"].isR=#{isR}
|
|
32
|
+
[#}
|
|
33
|
+
|
|
34
|
+
{#def]xy[#,]where[] [#,] from[#{lastscene}]
|
|
35
|
+
[#>]#Rb{CqlsBeamer.where("#{where}","#{from}")}[#}
|
|
36
|
+
|
|
37
|
+
{#def]When[#,]dec[][#,]from[#{lastfrom}][#>]#Rb{When("#{from}","#{dec}")}[#}
|
|
38
|
+
|
|
39
|
+
{#def]Only[#,]dec[#,]from[#{lastfrom}][#>]\only<#Rb{When("#{from}","#{dec}")}>[#}
|
|
40
|
+
|
|
41
|
+
{#def]Color[#,]dec[#,]color[#,] from[#{lastfrom}] [#>]\color<#Rb{When("#{from}","#{dec}")}>{#{color}}[#}
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
{#def]Show[#,]args[][#rb<]
|
|
45
|
+
args=#{=args}.split("|").map{|e| e.split(":")}
|
|
46
|
+
#p args
|
|
47
|
+
color=args.map{|dec,col| '\color<'+dec+'>{'+col+'}'}.join("")
|
|
48
|
+
#p color
|
|
49
|
+
only='\only<'+args.map{|dec,col| dec}.join(",")+'>'
|
|
50
|
+
#p only
|
|
51
|
+
[#>][{:{color+only}{\bm}{][#def}
|
|
52
|
+
|
|
53
|
+
{#def]shoW[#>][}}][#def}
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
{#def]setArgScene[#rb<]
|
|
57
|
+
vname=File.basename("#{img}",".*")
|
|
58
|
+
fname=File.join(File.dirname("#{img}"),vname)
|
|
59
|
+
size=[#{size}]
|
|
60
|
+
[#}
|
|
61
|
+
|
|
62
|
+
%%% New Direction: each object is by default inserted to the scene. In order to not break old work, new modified func is renamed!
|
|
63
|
+
|
|
64
|
+
{#def]initCpt[#,]cpt[CqlsBeamer.defCpt] [#rb<]#{cpt}=[1][#}
|
|
65
|
+
|
|
66
|
+
{#def]incCpt[#,]val[1] [#,]cpt[CqlsBeamer.defCpt] [#rb<] #{cpt}[0] = #{cpt}[0] + (#{val})[#}
|
|
67
|
+
|
|
68
|
+
{#def]initScene[#,]scene[#rb<]#{scene}View.init[#}
|
|
69
|
+
|
|
70
|
+
{#def]VIEW[#,]quand[#>]\visible<#Rb{CqlsBeamer.when("#{quand}")}>[#}
|
|
71
|
+
|
|
72
|
+
{#def]ALERT[#,]quand[#>]\alert<#Rb{CqlsBeamer.when("#{quand}")}>[#}
|
|
73
|
+
|
|
74
|
+
{#def]UNCOVER[#,]quand[#>]\uncover<#Rb{CqlsBeamer.when("#{quand}")}>[#}
|
|
75
|
+
|
|
76
|
+
{#def]ONLY[#,]quand[#>]\only<#Rb{CqlsBeamer.when("#{quand}")}>[#}
|
|
77
|
+
|
|
78
|
+
{#def]COLOR[#,]quand[#,]color[#>]\color<#Rb{CqlsBeamer.when("#{quand}")}>{#{color}}[#}
|
|
79
|
+
|
|
80
|
+
{#def]Actor[#,]name[][#,]when[][#,]where[][#,]what[]
|
|
81
|
+
[#,] minipage[] [#,] align[] [#,] scene[#{lastscene}] [#,] mode[:only]
|
|
82
|
+
[#rb<]
|
|
83
|
+
sceneName,name="#{name}".split(":")
|
|
84
|
+
if name
|
|
85
|
+
scene=CqlsBeamer::Scene[sceneName]
|
|
86
|
+
else
|
|
87
|
+
name,scene,sceneName=sceneName,#{scene}View,"#{scene}"
|
|
88
|
+
end
|
|
89
|
+
minipage=@vars[:minipage].dup
|
|
90
|
+
if minipage.empty?
|
|
91
|
+
minipage=scene.minipage
|
|
92
|
+
else
|
|
93
|
+
minipage="" if ["none","nil"].include? minipage
|
|
94
|
+
scene.minipage=minipage.dup #becomes the default value
|
|
95
|
+
end
|
|
96
|
+
align=@vars[:align].dup
|
|
97
|
+
if align.empty?
|
|
98
|
+
align=scene.align
|
|
99
|
+
else
|
|
100
|
+
scene.align=align.dup #becomes the default value
|
|
101
|
+
end
|
|
102
|
+
quoi=@vars[:what]
|
|
103
|
+
quand=CqlsBeamer.when(@vars[:when],scene)
|
|
104
|
+
ou=@vars[:where]
|
|
105
|
+
if ou=="nil" or ou.strip.empty?
|
|
106
|
+
ou = nil
|
|
107
|
+
else
|
|
108
|
+
ou.gsub!(/\{[^\{]*\}/){|elt| CqlsBeamer::Actor[elt[1...-1]].where}
|
|
109
|
+
ou=CqlsBeamer.where(ou,sceneName)
|
|
110
|
+
end
|
|
111
|
+
CqlsBeamer::Actor.new(name,quoi,quand,ou,align,#{mode})
|
|
112
|
+
CqlsBeamer::Actor[name].minipage=minipage.dup
|
|
113
|
+
scene << name if scene
|
|
114
|
+
[#}
|
|
115
|
+
|
|
116
|
+
{#var] lastwhere[0,1] [#,] lastwidth[5.5cm] [#,] lastheight[5.5cm] [#}
|
|
117
|
+
|
|
118
|
+
%%%width et height sont
|
|
119
|
+
{#def]Image[#,]name[][#,]when[]
|
|
120
|
+
[#,] width[#{lastwidth}] [#,] height[#{lastheight}] [#,]where[#{lastwhere}] [#,] scene[#{lastscene}] [#,] mode[:only] [#,] align[left,top]
|
|
121
|
+
[#rb<]
|
|
122
|
+
sceneName,name="#{name}".split(":")
|
|
123
|
+
if name
|
|
124
|
+
scene=CqlsBeamer::Scene[sceneName]
|
|
125
|
+
else
|
|
126
|
+
name,scene,sceneName=sceneName,#{scene}View,"#{scene}"
|
|
127
|
+
end
|
|
128
|
+
vname=File.basename(name,".*")
|
|
129
|
+
fname=File.join(File.dirname(name),vname)
|
|
130
|
+
quoi=["\\pgfimage[interpolate=true,width=#{width},height=#{height}]{"+fname+"}"]
|
|
131
|
+
quand=CqlsBeamer.when(@vars[:when],scene)
|
|
132
|
+
ou=@vars[:where]
|
|
133
|
+
CqlsBeamer::Actor.new(vname,quoi,quand,ou,"#{align}")
|
|
134
|
+
scene << vname if scene
|
|
135
|
+
{#hide][#=] lastwhere![#{where}] [#=]lastwidth![#{width}] [#=]lastheight![#{height}][#}
|
|
136
|
+
[#}
|
|
137
|
+
|
|
138
|
+
{#def]ImageR[#,]name[][#,]size[][#,]when[][#,]where[][#,]rcode[][#,]scene[#{lastscene}] [#,]optR[]
|
|
139
|
+
[#rb<]
|
|
140
|
+
sceneName,name="#{name}".split(":")
|
|
141
|
+
if name
|
|
142
|
+
scene=CqlsBeamer::Scene[sceneName]
|
|
143
|
+
else
|
|
144
|
+
name,scene,sceneName=sceneName,#{scene}View,"#{scene}"
|
|
145
|
+
end
|
|
146
|
+
vname=File.basename(name,".*")
|
|
147
|
+
fname=File.join(File.dirname(name),vname)
|
|
148
|
+
size=[#{size}]
|
|
149
|
+
quoi=["\\pgfuseimage{#{vname}}"]
|
|
150
|
+
quand=CqlsBeamer.when(@vars[:when],scene)
|
|
151
|
+
ou=@vars[:where]
|
|
152
|
+
if ou=="nil" or ou.strip.empty?
|
|
153
|
+
ou = nil
|
|
154
|
+
else
|
|
155
|
+
ou.gsub!(/\{[^\{]*\}/){|elt| CqlsBeamer::Actor[elt[1...-1]].where}
|
|
156
|
+
ou=CqlsBeamer.where(ou,sceneName)
|
|
157
|
+
end
|
|
158
|
+
CqlsBeamer::Actor.new(vname,quoi,quand,ou,"left,bottom")
|
|
159
|
+
CqlsBeamer::Actor[vname].isR=#{size}
|
|
160
|
+
scene << vname if scene
|
|
161
|
+
[#<]{#RFig]#Rb{name}[#,]new[TRUE][#width]480*#Rb{size[0]}/#Rb{size[1]}[#xyKey]#Rb{vname}[#optR]#{optR}[#}
|
|
162
|
+
[#>]\pgfdeclareimage[width=#Rb{size[0]}cm,height=#Rb{size[1]}cm,interpolate=true]{#Rb{vname}}{#Rb{fname}}
|
|
163
|
+
[#}
|
|
164
|
+
|
|
165
|
+
{#def]ActorWhen[#,]actor[][#,]when[][#rb<]
|
|
166
|
+
quand=CqlsBeamer.when(@vars[:when])
|
|
167
|
+
CqlsBeamer::Actor[@vars[:actor]].when += ","+quand
|
|
168
|
+
[#}
|
|
169
|
+
|
|
170
|
+
{#def]ActorWhat[#,]actor[][#,]when[][#,]what[] [#,]eol[true] [#rb<]
|
|
171
|
+
p @vars[:what]
|
|
172
|
+
CqlsBeamer::Actor[@vars[:actor]].what += ( #{eol} ? "\n" : "")+@vars[:what]
|
|
173
|
+
unless @vars[:when].empty?
|
|
174
|
+
quand=CqlsBeamer.when(@vars[:when])
|
|
175
|
+
CqlsBeamer::Actor[@vars[:actor]].when += ","+quand
|
|
176
|
+
end
|
|
177
|
+
[#}
|
|
178
|
+
|
|
179
|
+
{#def]ActorLast[#,]name[#,] :scene[#{lastscene}]
|
|
180
|
+
[#rb<]
|
|
181
|
+
sceneName,name="#{name}".split(":")
|
|
182
|
+
if name
|
|
183
|
+
scene=CqlsBeamer::Scene[sceneName]
|
|
184
|
+
else
|
|
185
|
+
name,scene,sceneName=sceneName,#{scene}View,"#{scene}"
|
|
186
|
+
end
|
|
187
|
+
scene.scene.move_last(name)
|
|
188
|
+
[#}
|
|
189
|
+
|
|
190
|
+
%%Modifier pour changer les autres arguments!
|
|
191
|
+
{#def]ActorClone[#,]name,when[#,] scene[#{lastscene}]
|
|
192
|
+
[#rb<]
|
|
193
|
+
sceneName,name="#{name}".split(":")
|
|
194
|
+
if name
|
|
195
|
+
scene=CqlsBeamer::Scene[sceneName]
|
|
196
|
+
else
|
|
197
|
+
name,scene,sceneName=sceneName,#{scene}View,"#{scene}"
|
|
198
|
+
end
|
|
199
|
+
quand=CqlsBeamer.when(@vars[:when])
|
|
200
|
+
scene << [name,{:when=> quand}]
|
|
201
|
+
[#}
|
|
202
|
+
|
|
203
|
+
{#hide]
|
|
204
|
+
[#hide}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
Macro pour générer un Slide simple
|
|
2
|
+
Elle permet notamment de na pas gérer le compteur
|
|
3
|
+
{#def]Slide[#,]pb[][#,]nb[1][#,]titre[][#,]haut[][#,]bas[][#<]
|
|
4
|
+
{#Actor]head:tit_#{pb}[#,]:1-#{nb}[#,]0.5,0.5[#align]center,center[#what]\textbf{\large :{"#{titre}".strip}}[#}
|
|
5
|
+
{#Actor]def:def_#{pb}[#,]:1-#{nb}[#,]0.5,0.5[#align]center,center[#minipage]11cm[#what]#{haut}{#blck][#yield]haut[#}[#}
|
|
6
|
+
{#Actor]ex:ex_#{pb}[#,]:1-#{nb}[#,]0.5,1.0[#align]center,top[#minipage]11cm[#what]#{bas}{#blck][#yield]bas[#}[#}
|
|
7
|
+
{#incCpt]#{nb}[#}
|
|
8
|
+
[#def}
|
|
9
|
+
|
|
10
|
+
{#def]when[#,]when[][#>]:{CqlsBeamer.when(#{=when})}[#}
|
|
11
|
+
{#def]only[#,]where[][#,]texte[][#>]{#ONLY]#{where}[#}{#{texte}[#yield]default[#>]}[#}
|
|
12
|
+
{#def]view[#,]where[][#,]texte[][#>]{#VIEW]#{where}[#}{#{texte}[#yield]default[#>]}[#}
|
|
13
|
+
{#def]uncover[#,]where[][#,]texte[][#>]{#UNCOVER]#{where}[#}{#{texte}[#yield]default[#>]}[#}
|
|
14
|
+
{#def]invisible[#,]where[#>]\invisible<:{CqlsBeamer.when(#{=where})}>{[#yield]default[#>]}[#}
|
|
15
|
+
{#def]color[#,]where[][#,]color[blue][#,]texte[][#>]{{#COLOR]#{where}[#,]#{color}[#} #{texte}[#yield]default[#>]}[#}
|
|
16
|
+
{#def]item[#,]where[][#,]alert[][#>]\item<:{CqlsBeamer.when(#{=where})}[#?]#{+?alert}[#>]|alert@:{CqlsBeamer.when(#{=alert})}[#?]end[#>]>[#def}
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
{#def]altcol[#,]where[][#,]col1[purple][#,]col2[gray]
|
|
20
|
+
[#>]\alt<:{CqlsBeamer.when(#{=where})}>{\color{#{col1}}[#yield]default[#>]}{\color{#{col2}}[#yield]default[#>][}]
|
|
21
|
+
[#def}
|
|
22
|
+
|
|
23
|
+
{#def]SlideSFE[#,]pb[][#,]titre[][#,]desc[][#,]exp[][#,]va[][#,]ev[][#,]prob[][#<]
|
|
24
|
+
{#Slide]#{pb}SFE[#nb]5[#titre]:{"#{titre}".strip} (SFE)
|
|
25
|
+
[#haut]Décrivons le Schéma de Formalisation pour :{"#{desc}".strip}.\\
|
|
26
|
+
\centerline{{#only]:2-3[#,]\textbf{Expérience et Variable d'intérêt ?}[#}
|
|
27
|
+
{#only]:4-5[#,]\textbf{Evénement d'intérêt et ses chances de réalisations~?}[#}}
|
|
28
|
+
[#bas]
|
|
29
|
+
{#only]:2-3[#,]\begin{itemize}
|
|
30
|
+
{#view]:2-3[#,]\item\textbf{Expérience $\mathcal{E}$~:}[#}
|
|
31
|
+
{#view]:3[#,]#{exp}.[#}
|
|
32
|
+
{#view]:2-3[#,]\item\textbf{Variable d'intérêt~:}[#}
|
|
33
|
+
{#view]:3[#,]#{va}.[#}
|
|
34
|
+
\end{itemize}[#only}
|
|
35
|
+
{#only]:4-5[#,]\begin{itemize}
|
|
36
|
+
{#view]:4-5[#,]\item\textbf{Evénement d'intérêt~:} [#}
|
|
37
|
+
{#view]:5[#,]#{ev}.[#}
|
|
38
|
+
{#view]:4-5[#,]\item\textbf{Probabilité de réalisation~:} [#}
|
|
39
|
+
{#view]:5[#,]#{prob}.[#}
|
|
40
|
+
\end{itemize}[#only}
|
|
41
|
+
|
|
42
|
+
[#}
|
|
43
|
+
[#def}
|
|
44
|
+
|
|
45
|
+
{#hide]A copier coller pour appeler!
|
|
46
|
+
{#SlideSFE][#pb][#titre][#desc][#exp][#va][#ev][#prob][#}
|
|
47
|
+
[#hide}
|
|
48
|
+
|
|
49
|
+
{#def]InitStyle[#,]style[un]
|
|
50
|
+
[#>]{#case]#{style}
|
|
51
|
+
[#when]un[#>]{#document]
|
|
52
|
+
[#package]
|
|
53
|
+
\usepackage{xkeyval,calc,listings,tikz}
|
|
54
|
+
[#preamble]
|
|
55
|
+
\usetikzlibrary{arrows,%
|
|
56
|
+
calc,%
|
|
57
|
+
fit,%
|
|
58
|
+
patterns,%
|
|
59
|
+
plotmarks,%
|
|
60
|
+
shapes.geometric,%
|
|
61
|
+
shapes.misc,%
|
|
62
|
+
shapes.symbols,%
|
|
63
|
+
shapes.arrows,%
|
|
64
|
+
shapes.callouts,%
|
|
65
|
+
shapes.multipart,%
|
|
66
|
+
shapes.gates.logic.US,%
|
|
67
|
+
shapes.gates.logic.IEC,%
|
|
68
|
+
er,%
|
|
69
|
+
automata,%
|
|
70
|
+
backgrounds,%
|
|
71
|
+
chains,%
|
|
72
|
+
topaths,%
|
|
73
|
+
trees,%
|
|
74
|
+
petri,%
|
|
75
|
+
mindmap,%
|
|
76
|
+
matrix,%
|
|
77
|
+
calendar,%
|
|
78
|
+
folding,%
|
|
79
|
+
fadings,%
|
|
80
|
+
through,%
|
|
81
|
+
positioning,%
|
|
82
|
+
scopes,%
|
|
83
|
+
decorations.fractals,%
|
|
84
|
+
decorations.shapes,%
|
|
85
|
+
decorations.text,%
|
|
86
|
+
decorations.pathmorphing,%
|
|
87
|
+
decorations.pathreplacing,%
|
|
88
|
+
decorations.footprints,%
|
|
89
|
+
decorations.markings,%
|
|
90
|
+
shadows}
|
|
91
|
+
\tikzset{
|
|
92
|
+
every plot/.style={prefix=plots/pgf-},
|
|
93
|
+
shape example/.style={
|
|
94
|
+
color=black!30,
|
|
95
|
+
draw,
|
|
96
|
+
fill=yellow!30,
|
|
97
|
+
line width=.5cm,
|
|
98
|
+
inner xsep=2.5cm,
|
|
99
|
+
inner ysep=0.5cm}
|
|
100
|
+
}
|
|
101
|
+
[#document}
|
|
102
|
+
[#case}
|
|
103
|
+
[#}
|
|
104
|
+
|
|
105
|
+
{#def]InitScene[#>]{#initScene]head[#}{#initScene]def[#}{#initScene]ex[#}[#def}
|
|
106
|
+
|
|
107
|
+
{#def]PutScene[#,]style[un]
|
|
108
|
+
[#>]{#case]#{style}
|
|
109
|
+
[#when]un[#>]
|
|
110
|
+
%\beamertemplateshadingbackground{green!50}{yellow!50}
|
|
111
|
+
\begin{frame}<1->
|
|
112
|
+
\setbeamercolor{header}{fg=black,bg=blue!40!white}
|
|
113
|
+
\hspace*{2.5cm}\begin{beamerboxesrounded}[width=6cm,shadow=true,lower=header]{}
|
|
114
|
+
@{beginScene(head)}
|
|
115
|
+
@{writeScene(head)}
|
|
116
|
+
@{endScene(head)}
|
|
117
|
+
\end{beamerboxesrounded}
|
|
118
|
+
|
|
119
|
+
\setbeamercolor{postit}{fg=black,bg=green!40!white}
|
|
120
|
+
%\begin{beamercolorbox}[sep=1em,wd=12cm]{postit}
|
|
121
|
+
\begin{beamerboxesrounded}[shadow=true,lower=postit]{}
|
|
122
|
+
@{beginScene(def)}
|
|
123
|
+
@{writeScene(def)}
|
|
124
|
+
@{endScene(def)}
|
|
125
|
+
\end{beamerboxesrounded}
|
|
126
|
+
%\end{beamercolorbox}
|
|
127
|
+
|
|
128
|
+
\setbeamercolor{postex}{fg=black,bg=yellow!50!white}
|
|
129
|
+
%\begin{beamercolorbox}[sep=1em,wd=12cm]{postex}
|
|
130
|
+
\begin{beamerboxesrounded}[shadow=true,lower=postex]{}
|
|
131
|
+
@{beginScene(ex)}
|
|
132
|
+
@{writeScene(ex)}
|
|
133
|
+
@{endScene(ex)}
|
|
134
|
+
\end{beamerboxesrounded}
|
|
135
|
+
%\end{beamercolorbox}
|
|
136
|
+
\begin{tikzpicture}[remember picture,overlay]
|
|
137
|
+
\node [rotate=30,scale=10,text opacity=0.05]
|
|
138
|
+
at (current page.center) {CQLS};
|
|
139
|
+
\end{tikzpicture}
|
|
140
|
+
\end{frame}
|
|
141
|
+
[#when]deux[#>]
|
|
142
|
+
\begin{frame}<1->
|
|
143
|
+
\setbeamercolor{header}{fg=black,bg=blue!40!white}
|
|
144
|
+
\hspace*{2.5cm}\begin{beamerboxesrounded}[width=6cm,shaded=true,lower=header]{}
|
|
145
|
+
@{beginScene(head)}
|
|
146
|
+
@{writeScene(head)}
|
|
147
|
+
@{endScene(head)}
|
|
148
|
+
\end{beamerboxesrounded}
|
|
149
|
+
|
|
150
|
+
\setbeamercolor{postit}{fg=black,bg=magenta!40!white}
|
|
151
|
+
\begin{beamercolorbox}[sep=1em,wd=12cm]{postit}
|
|
152
|
+
@{beginScene(def)}
|
|
153
|
+
@{writeScene(def)}
|
|
154
|
+
@{endScene(def)}
|
|
155
|
+
\end{beamercolorbox}
|
|
156
|
+
|
|
157
|
+
\setbeamercolor{postex}{fg=black,bg=cyan!40!white}
|
|
158
|
+
\begin{beamercolorbox}[sep=1em,wd=12cm]{postex}
|
|
159
|
+
@{beginScene(ex)}
|
|
160
|
+
@{writeScene(ex)}
|
|
161
|
+
@{endScene(ex)}
|
|
162
|
+
\end{beamercolorbox}
|
|
163
|
+
\end{frame}
|
|
164
|
+
[#case}
|
|
165
|
+
[#}
|
|
166
|
+
|
|
167
|
+
{#def]BeamerFrame[#,]title[][#,]style[cqls]
|
|
168
|
+
[#>]\begin{frame}
|
|
169
|
+
\frametitle{:{#{=title}.strip}}
|
|
170
|
+
[#yield]default
|
|
171
|
+
[#?]#{=style}=="cqls"
|
|
172
|
+
[#>]\begin{tikzpicture}[remember picture,overlay]
|
|
173
|
+
\node [rotate=30,scale=10,text opacity=0.05]
|
|
174
|
+
at (current page.center) {CQLS};
|
|
175
|
+
\end{tikzpicture}[#?]end
|
|
176
|
+
[#>]\end{frame}
|
|
177
|
+
[#def}
|
|
178
|
+
|
|
179
|
+
{#def]VerbFrame[#,]title[][#,]style[cqls]
|
|
180
|
+
[#>]\begin{frame}[containsverbatim]
|
|
181
|
+
\frametitle{:{#{=title}.strip}}
|
|
182
|
+
[#yield]default
|
|
183
|
+
[#?]#{=style}=="cqls"
|
|
184
|
+
[#>]\begin{tikzpicture}[remember picture,overlay]
|
|
185
|
+
\node [rotate=30,scale=10,text opacity=0.05]
|
|
186
|
+
at (current page.center) {CQLS};
|
|
187
|
+
\end{tikzpicture}[#?]end
|
|
188
|
+
[#>]\end{frame}
|
|
189
|
+
[#def}
|
|
190
|
+
|
|
191
|
+
{#def]MultiImages[#,]imgs.path[][#,]imgs.start[0][#,]imgs.end[10][#,]opt[width=8cm,height=8cm][#,]center[true]
|
|
192
|
+
[#?]#{center}[#>]\begin{center}
|
|
193
|
+
[#?]end[#rb>]
|
|
194
|
+
for img in #{imgs.start}..#{imgs.end} do
|
|
195
|
+
{#>]\pgfimage<:{img+1}>[interpolate=true,#{opt}]{#{imgs.path}:{img}.pdf}[#}
|
|
196
|
+
end
|
|
197
|
+
[#>]
|
|
198
|
+
[#?]#{center}[#>]\end{center}
|
|
199
|
+
[#}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
[#preamble]\usepackage{tikz}
|
|
2
|
+
[#main][#%]
|
|
3
|
+
each object has to know its parent (where purpose) and if the parent is the scene then the field is created.
|
|
4
|
+
each object has to fill the field scene and this is done because each parent is created before.
|
|
5
|
+
Pb: many objects may have many
|
|
6
|
+
Is it necessary to save this piece of information?
|
|
7
|
+
[#rb<]
|
|
8
|
+
$dyn_pgf_scene=0
|
|
9
|
+
$dyn_pgf_rfig=0
|
|
10
|
+
[#<]
|
|
11
|
+
{#meth]new.PGFScene[#,].size[<<[0]<<[0]<<[10]<<[10]][#,].key[][#,].unit[cm]
|
|
12
|
+
[#>].Class[#{.Class}]
|
|
13
|
+
[#rb<]$dyn_pgf_actor=-1
|
|
14
|
+
[#?]#{0?.key}[#>].key[scene:{$dyn_pgf_scene+=1}]
|
|
15
|
+
[#<]
|
|
16
|
+
{#new].content[#of]PGFGroup
|
|
17
|
+
[#,][\begin{pgfpicture}{#{.size.0}#{.unit}}{#{.size.1}#{.unit}}{#{.size.2}#{.unit}}{#{.size.3}#{.unit}}]
|
|
18
|
+
[#,][\end{pgfpicture}]
|
|
19
|
+
[#}
|
|
20
|
+
[#>].content.scene[#{.ObjectName}] [#%]ONLY THE NAME BECAUSE OF BUG OTHERWISE!
|
|
21
|
+
[#}
|
|
22
|
+
|
|
23
|
+
{#meth]add.PGFScene[#,]_actor[][#,]_where[0.0,0.0][#,]_align[left,bottom][#<]{#add].content[#}[#}
|
|
24
|
+
|
|
25
|
+
{#meth]print.PGFScene[#>]{#print]:.content[#}[#}
|
|
26
|
+
|
|
27
|
+
{#meth]where.PGFScene[#,]where[]
|
|
28
|
+
[#rb<]
|
|
29
|
+
from,ou=#{=where}.split(":")
|
|
30
|
+
ou,from=from,ou unless ou
|
|
31
|
+
#p ou;p from
|
|
32
|
+
[#?]ou[#r<]ou<-c(:{ou})[#?]else[#r<]ou<-c(0.0,0.0)[#?]end
|
|
33
|
+
[#<]
|
|
34
|
+
{#if]from
|
|
35
|
+
[#r<]orig<-c(#{#{.keys.:{from}}.where})
|
|
36
|
+
[#<]
|
|
37
|
+
{#if] #{=:{from}.type}=="imgR"[#r<]
|
|
38
|
+
ou<-xyFromInfo(ou,":{from}")
|
|
39
|
+
zoom<-as.numeric(#{=:{from}.size})
|
|
40
|
+
[#else][#r<]zoom<-c(1,1)
|
|
41
|
+
[#}
|
|
42
|
+
[#r<]
|
|
43
|
+
ou<-orig+ou*zoom
|
|
44
|
+
[#}
|
|
45
|
+
[#>][:r{=ou}]
|
|
46
|
+
[#}
|
|
47
|
+
|
|
48
|
+
{#meth]new.PGFGroup[#,].first[][#,].last[][#<][#}
|
|
49
|
+
|
|
50
|
+
{#meth]print.PGFGroup[#>]scene[#{.scene}] [#%]declare the scene name to be used inside the apply loop!
|
|
51
|
+
[#>]
|
|
52
|
+
[#{.first}
|
|
53
|
+
%print here the actors
|
|
54
|
+
{#apply].actors[#,]actor
|
|
55
|
+
[#?]#{=actor.where}.split(":").length>1[#>]actor.where[{#where]#{scene}[#,]#{actor.where}[#}][#?]end
|
|
56
|
+
[#>][\pgfputat{\pgfxy(#{actor.where})}{\pgfbox[#{actor.align}]{{#print]actor.elt[#}}}<\n>]
|
|
57
|
+
[#}
|
|
58
|
+
#{.last}]
|
|
59
|
+
[#}
|
|
60
|
+
|
|
61
|
+
{#meth]add.PGFGroup[#,]_actor[][#,]_where[0.0,0.0][#,]_align[left,bottom]
|
|
62
|
+
[#rb<]$dyn_pgf_actor +=1
|
|
63
|
+
[#>]actor[.actors.:{$dyn_pgf_actor}]
|
|
64
|
+
[#%]To remember where is the _actor in the list of actors
|
|
65
|
+
[#=].keys.#{_actor.ObjectName}[.actors.:{$dyn_pgf_actor}]
|
|
66
|
+
[#=]#{actor}.elt[:_actor]
|
|
67
|
+
[#>]_actor.scene[{#objname]self[#}]
|
|
68
|
+
[#>]#{actor}.where[#{_where}]
|
|
69
|
+
[#>]#{actor}.align[#{_align}]
|
|
70
|
+
[#}
|
|
71
|
+
|
|
72
|
+
{#meth]new.PGFImg[#,].size[<<[10]]<<[10]][#,].img[]
|
|
73
|
+
[#,]rcode[][#,]deviceR[png][#,] widthR[#{.size.0}*1.5] [#,] heightR[#{.size.1}*1.5] [#,] optR[][#,] newR[TRUE] [#,]Renvir[Global]
|
|
74
|
+
[#,].type[img]
|
|
75
|
+
[#>].Class[#{.Class}]
|
|
76
|
+
[#%]If rcode provided => this is a imgR
|
|
77
|
+
[#?]#{+?rcode}[#>].type[imgR]
|
|
78
|
+
[#?]#{0?.img}[#>].img[rfig-#{.ObjectName}.#{deviceR}][#?]end
|
|
79
|
+
[#?]#{=.type}=="imgR"[#<]
|
|
80
|
+
{#rfig][#{rcode}
|
|
81
|
+
par.save<-par()
|
|
82
|
+
assign("info",list(xyInch=c(par.save[["pin"]][1]/diff(par.save[["usr"]][1:2]),par.save[["pin"]][2]/diff(par.save[["usr"]][3:4])),
|
|
83
|
+
xyOrig=par.save[["usr"]][c(1,3)],
|
|
84
|
+
xyFig=par.save[["din"]],
|
|
85
|
+
xyMarg=par.save[["mai"]][2:1]),envir=.GlobalEnv)
|
|
86
|
+
local({
|
|
87
|
+
if(!exists("infoXY")) infoXY<-list()
|
|
88
|
+
infoXY[["#{.ObjectName}"]] <-info
|
|
89
|
+
xyFromInfo<-function(xy,key) {
|
|
90
|
+
info<-infoXY[[key]]
|
|
91
|
+
((xy-info[["xyOrig"]])*info[["xyInch"]]+info[["xyMarg"]])/info[["xyFig"]]
|
|
92
|
+
}
|
|
93
|
+
},envir=.GlobalEnv)]
|
|
94
|
+
[#,]img[:.img][#Renvir]#{Renvir}[#}
|
|
95
|
+
[#?]end
|
|
96
|
+
[#%]common treatments
|
|
97
|
+
[#rb>].fname[File.join(File.dirname(#{=.img}),#{=.ObjectName})]
|
|
98
|
+
[#>][\pgfdeclareimage[width=#{.size.0}cm,height=#{.size.1}cm,interpolate=true]{#{.ObjectName}}{#{.img}}]
|
|
99
|
+
[#}
|
|
100
|
+
|
|
101
|
+
{#meth]print.PGFImg[#>]\pgfuseimage{#{.ObjectName}}[#}
|
|
102
|
+
|
|
103
|
+
{#meth]new.PGFMiniPage[#,].content[][#,].size[10cm][#<][#}
|
|
104
|
+
|
|
105
|
+
{#meth]print.PGFMiniPage[#>]
|
|
106
|
+
[\begin{minipage}{#{.size}}
|
|
107
|
+
#{.content}
|
|
108
|
+
\end{minipage}]
|
|
109
|
+
[#}
|
|
110
|
+
|
|
111
|
+
{#meth]new.PGFRaw[#,].content[][#<][#}
|
|
112
|
+
|
|
113
|
+
{#meth]print.PGFRaw[#>]
|
|
114
|
+
[ #{.content}]
|
|
115
|
+
[#}
|