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.
Files changed (138) hide show
  1. checksums.yaml +7 -0
  2. data/dyndoc/.DS_Store +0 -0
  3. data/dyndoc/Dyn/.postload +1 -0
  4. data/dyndoc/Dyn/.preload +1 -0
  5. data/dyndoc/Dyn/After.dyn +3 -0
  6. data/dyndoc/Dyn/Base.dyn +18 -0
  7. data/dyndoc/Dyn/Minimum.dyn +20 -0
  8. data/dyndoc/Model/Html/DefaultPost_html.dyn +5 -0
  9. data/dyndoc/Model/Html/DefaultPre_html.dyn +15 -0
  10. data/dyndoc/Model/Odt/DefaultPost_content.xml +3 -0
  11. data/dyndoc/Model/Odt/DefaultPost_tmpl_content.xml +3 -0
  12. data/dyndoc/Model/Odt/DefaultPre_content.xml +8 -0
  13. data/dyndoc/Model/Odt/DefaultPre_tmpl_content.xml +8 -0
  14. data/dyndoc/Model/Tex/ContentPost_tmpl.tex +1 -0
  15. data/dyndoc/Model/Tex/ContentPre_tmpl.tex +6 -0
  16. data/dyndoc/Model/Tex/DefaultPost_tmpl.tex +73 -0
  17. data/dyndoc/Model/Tex/DefaultPre_tmpl.tex +16 -0
  18. data/dyndoc/Model/Ttm/DefaultPost_tmpl.ttm +3 -0
  19. data/dyndoc/Model/Ttm/DefaultPre_tmpl.ttm +16 -0
  20. data/dyndoc/Std/Array.dyn +96 -0
  21. data/dyndoc/Std/Composer.dyn +38 -0
  22. data/dyndoc/Std/DevTag.dyn +101 -0
  23. data/dyndoc/Std/DynVar.dyn +23 -0
  24. data/dyndoc/Std/File.dyn +55 -0
  25. data/dyndoc/Std/Git.dyn +34 -0
  26. data/dyndoc/Std/List.dyn +46 -0
  27. data/dyndoc/Std/OOP.dyn +32 -0
  28. data/dyndoc/Std/Signal.dyn +18 -0
  29. data/dyndoc/Std/String.dyn +22 -0
  30. data/dyndoc/Std/Styles.dyn +1 -0
  31. data/dyndoc/Std/Test.dyn +282 -0
  32. data/dyndoc/Std/Utils.dyn +42 -0
  33. data/dyndoc/Std/Verb.dyn +5 -0
  34. data/dyndoc/Style/Notation/Math.dyn +7 -0
  35. data/dyndoc/Style/Notation/Stat/Classic.dyn +8 -0
  36. data/dyndoc/Style/Notation/Stat/Cqls.dyn +44 -0
  37. data/dyndoc/Style/Text/Std.dyn +5 -0
  38. data/dyndoc/Style/Text/StdAlias.dyn +3 -0
  39. data/dyndoc/Style/Text/StdTex.dyn +17 -0
  40. data/dyndoc/Style/Text/Txt.dyn +1 -0
  41. data/dyndoc/Tex/.postload +1 -0
  42. data/dyndoc/Tex/.preload +1 -0
  43. data/dyndoc/Tex/10pt_tmpl.tex +1 -0
  44. data/dyndoc/Tex/11pt_tmpl.tex +1 -0
  45. data/dyndoc/Tex/12pt_tmpl.tex +1 -0
  46. data/dyndoc/Tex/Article_tmpl.tex +1 -0
  47. data/dyndoc/Tex/Beamer.dyn_tex +35 -0
  48. data/dyndoc/Tex/BeamerHandout_tmpl.tex +2 -0
  49. data/dyndoc/Tex/Book_tmpl.tex +1 -0
  50. data/dyndoc/Tex/DefaultFirst_tmpl.tex +1 -0
  51. data/dyndoc/Tex/DefaultLast_tmpl.tex +8 -0
  52. data/dyndoc/Tex/Default_tmpl.tex +9 -0
  53. data/dyndoc/Tex/First_tmpl.tex +8 -0
  54. data/dyndoc/Tex/Fr_tmpl.tex +17 -0
  55. data/dyndoc/Tex/Header_tmpl.tex +3 -0
  56. data/dyndoc/Tex/InclGraph_tmpl.tex +19 -0
  57. data/dyndoc/Tex/InclSpatProc_tmpl.tex +70 -0
  58. data/dyndoc/Tex/InclSumMI_tmpl.tex +4 -0
  59. data/dyndoc/Tex/LargeA4_tmpl.tex +5 -0
  60. data/dyndoc/Tex/Last_tmpl.tex +1 -0
  61. data/dyndoc/Tex/Option_tmpl.tex +8 -0
  62. data/dyndoc/Tex/Png_tmpl.tex +1 -0
  63. data/dyndoc/Tex/RefCite2_tmpl.tex +16 -0
  64. data/dyndoc/Tex/RefCite_tmpl.tex +16 -0
  65. data/dyndoc/Tex/Report_tmpl.tex +1 -0
  66. data/dyndoc/Tex/Theorem_tmpl.tex +14 -0
  67. data/dyndoc/Tools/.DS_Store +0 -0
  68. data/dyndoc/Tools/Atom.dyn/index.dyn +42 -0
  69. data/dyndoc/Tools/AtomDyndocker.dyn/index.dyn +43 -0
  70. data/dyndoc/Tools/R/Fig.dyn +144 -0
  71. data/dyndoc/Tools/R/Tools.dyn +344 -0
  72. data/dyndoc/Tools/Tex/Beamer.dyn +204 -0
  73. data/dyndoc/Tools/Tex/BeamerSlide.dyn_tex +199 -0
  74. data/dyndoc/Tools/Tex/Pgf.dyn +115 -0
  75. data/dyndoc/Tools/Tex/Table.dyn +278 -0
  76. data/dyndoc/Tools/Tex/Tools.dyn +37 -0
  77. data/dyndoc/Tools/Tex/Verb.dyn +77 -0
  78. data/dyndoc/Tools/Web/.DS_Store +0 -0
  79. data/dyndoc/Tools/Web/Ace.dyn +54 -0
  80. data/dyndoc/Tools/Web/Code.dyn +129 -0
  81. data/dyndoc/Tools/Web/DHtmlX.dyn +39 -0
  82. data/dyndoc/Tools/Web/DataTable.dyn_html +354 -0
  83. data/dyndoc/Tools/Web/Html.dyn +286 -0
  84. data/dyndoc/Tools/Web/Html/JQuery.dyn +123 -0
  85. data/dyndoc/Tools/Web/Html/Styles.dyn +4 -0
  86. data/dyndoc/Tools/Web/JQueryTools.dyn +87 -0
  87. data/dyndoc/Tools/Web/Layout.dyn +86 -0
  88. data/dyndoc/Tools/Web/Layout/CQLS.dyn +6 -0
  89. data/dyndoc/Tools/Web/Layout/LJK.dyn +41 -0
  90. data/dyndoc/Tools/Web/TabBar.dyn +37 -0
  91. data/dyndoc/Tools/Web/Ttm.dyn +20 -0
  92. data/dyndoc/Tools/Web/Txtl.dyn +14 -0
  93. data/lib/dyndoc-core.rb +59 -0
  94. data/lib/dyndoc/base/envir.rb +541 -0
  95. data/lib/dyndoc/base/filter/call.rb +127 -0
  96. data/lib/dyndoc/base/filter/filter_mngr.rb +637 -0
  97. data/lib/dyndoc/base/filter/server.rb +882 -0
  98. data/lib/dyndoc/base/filters.rb +3 -0
  99. data/lib/dyndoc/base/helpers.rb +9 -0
  100. data/lib/dyndoc/base/helpers/core.rb +32 -0
  101. data/lib/dyndoc/base/helpers/parser.rb +188 -0
  102. data/lib/dyndoc/base/scanner.rb +886 -0
  103. data/lib/dyndoc/base/tags.rb +4 -0
  104. data/lib/dyndoc/base/tags/keys_mngr.rb +401 -0
  105. data/lib/dyndoc/base/tags/part_tag.rb +194 -0
  106. data/lib/dyndoc/base/tags/tag_mngr.rb +125 -0
  107. data/lib/dyndoc/base/tags/user_tag.rb +216 -0
  108. data/lib/dyndoc/base/tmpl.rb +6 -0
  109. data/lib/dyndoc/base/tmpl/eval.rb +581 -0
  110. data/lib/dyndoc/base/tmpl/extension.rb +337 -0
  111. data/lib/dyndoc/base/tmpl/manager.rb +450 -0
  112. data/lib/dyndoc/base/tmpl/oop.rb +57 -0
  113. data/lib/dyndoc/base/tmpl/parse_do.rb +2446 -0
  114. data/lib/dyndoc/base/tmpl/rbenvir.rb +54 -0
  115. data/lib/dyndoc/base/utils.rb +367 -0
  116. data/lib/dyndoc/common/dynArray.rb +234 -0
  117. data/lib/dyndoc/common/file.rb +52 -0
  118. data/lib/dyndoc/common/init.rb +2 -0
  119. data/lib/dyndoc/common/tilt.rb +149 -0
  120. data/lib/dyndoc/common/utils.rb +61 -0
  121. data/lib/dyndoc/common/uv.rb +163 -0
  122. data/lib/dyndoc/init/config.rb +296 -0
  123. data/lib/dyndoc/init/home.rb +9 -0
  124. data/lib/dyndoc/plugins/tex.rb +4 -0
  125. data/lib/dyndoc/plugins/tex/beamer.rb +208 -0
  126. data/lib/dyndoc/plugins/tex/tex_eval.rb +69 -0
  127. data/lib/dyndoc/plugins/tex/tex_parse_do.rb +25 -0
  128. data/lib/dyndoc/plugins/tex/tex_user_tag.rb +32 -0
  129. data/share/R/dyndocMsys2.R +5 -0
  130. data/share/R/dyndocTools.R +9 -0
  131. data/share/R/test.R +14 -0
  132. data/share/R/tools/dynArray.R +34 -0
  133. data/share/R/tools/dynCapture.R +84 -0
  134. data/share/R/tools/dynMsys2.R +54 -0
  135. data/share/julia/dynArray.jl +93 -0
  136. data/share/julia/dyndoc.jl +110 -0
  137. data/share/julia/ruby.jl +37 -0
  138. 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
+ [#}