rwdshell 0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (184) hide show
  1. data/Readme.txt +57 -0
  2. data/bin/rwdshell +19 -0
  3. data/code/ag1core/aa0begin.rb +18 -0
  4. data/code/ag1core/rwdtinkerversion.rb +15 -0
  5. data/code/al5languagefiles/alanguagehashbegin.rb +4 -0
  6. data/code/al5languagefiles/languagehash.rb +4 -0
  7. data/code/al5languagefiles/templangfile.rb +6 -0
  8. data/code/al5languagefiles/zlanguagehashend.rb +6 -0
  9. data/code/cb7rubyeval/cb7rubyeval.rb +23 -0
  10. data/code/dd0shelleval/dd0shelleval.rb +20 -0
  11. data/code/ek0shellscripts/ek0playscript.rb +22 -0
  12. data/code/ek0shellscripts/em0listscripts.rb +12 -0
  13. data/code/ek0shellscripts/em1viewscript.rb +18 -0
  14. data/code/ek0shellscripts/en0createnewscript.rb +18 -0
  15. data/code/gh9calendar/gh9calendar.rb +16 -0
  16. data/code/ii3calculator/ca2multiply.rb +5 -0
  17. data/code/ii3calculator/ca4add.rb +5 -0
  18. data/code/lm1installapplets/ll5listzips.rb +14 -0
  19. data/code/lm1installapplets/lm1installapplet.rb +20 -0
  20. data/code/ssdiagnostictab/diagnostictab.rb +20 -0
  21. data/code/xa5rwdtinkercallable/callable.rb +13 -0
  22. data/code/xb1rwdtinkerbackwindow/05listinstalledfiles.rb +11 -0
  23. data/code/xb1rwdtinkerbackwindow/diagnostictab.rb +20 -0
  24. data/code/xb1rwdtinkerbackwindow/ll1openname.rb +18 -0
  25. data/code/xb1rwdtinkerbackwindow/ll5listzips.rb +14 -0
  26. data/code/xb1rwdtinkerbackwindow/lm1installapplet.rb +20 -0
  27. data/code/xb1rwdtinkerbackwindow/mm1removeapplet.rb +28 -0
  28. data/code/xb1rwdtinkerbackwindow/rwdtinkerwin2version.rb +14 -0
  29. data/code/zz0applicationend/zz0end.rb +4 -0
  30. data/configuration/aa0rwdframework.cnf +11 -0
  31. data/configuration/ab1tinkerwin2.cnf +3 -0
  32. data/configuration/ek0playscripts.cnf +2 -0
  33. data/configuration/gh1rwdcalendar.cnf +26 -0
  34. data/ev/browser.rb +109 -0
  35. data/ev/ftools.rb +170 -0
  36. data/ev/net.rb +750 -0
  37. data/ev/ruby.rb +819 -0
  38. data/ev/rwd.rb +1848 -0
  39. data/ev/sgml.rb +236 -0
  40. data/ev/thread.rb +63 -0
  41. data/ev/tree.rb +343 -0
  42. data/ev/xml.rb +4 -0
  43. data/extras/cal.rb +166 -0
  44. data/gui/en/aa2core/aa0rwdtop.rwd +3 -0
  45. data/gui/en/cb7rubyeval/cb7rwdrubyeval.rwd +18 -0
  46. data/gui/en/dd0rwdshelleval/dd0rwdshelleval.rwd +16 -0
  47. data/gui/en/ek0shellscripts/ek0playscript.rwd +15 -0
  48. data/gui/en/ek0shellscripts/el0listscripts.rwd +25 -0
  49. data/gui/en/ek0shellscripts/en0createscripts.rwd +24 -0
  50. data/gui/en/hl9calendar/hl9calendar.rwd +18 -0
  51. data/gui/en/ii3calculator/ca0rwdcalc.rwd +17 -0
  52. data/gui/en/ll1selectiontabbegin/selectiontabbegin.rwd +15 -0
  53. data/gui/en/ll5rwdtinkerwin2selectiontab/rwdwin2selectiontab.rwd +11 -0
  54. data/gui/en/lz1selectiontabend/endselectiontab.rwd +1 -0
  55. data/gui/en/tt0documentsbegin/tt0documentbegin.rwd +5 -0
  56. data/gui/en/ub7rubyeval/rubyeval.rwd +3 -0
  57. data/gui/en/uk5scriptrunnerdocuments/documents.rwd +3 -0
  58. data/gui/en/uu5rwddocuments/uu5documents.rwd +13 -0
  59. data/gui/en/uu6rwdtinkerwin2documents/uu5documents.rwd +4 -0
  60. data/gui/en/vv1docshellxp/vvdocshellxp.rwd +4 -0
  61. data/gui/en/ww0documentsend/ww0documentend.rwd +6 -0
  62. data/gui/en/wz6finaltabs/xx0rwdfirsttab.rwd +4 -0
  63. data/gui/en/xa1versionwindow/1appname.rwd +17 -0
  64. data/gui/en/xa5rwdtinkercallablewindow/1appname.rwd +15 -0
  65. data/gui/en/xa5rwdtinkercallablewindow/9end.rwd +4 -0
  66. data/gui/en/xb1rwdtinkerbackwindow/1appname.rwd +3 -0
  67. data/gui/en/xb1rwdtinkerbackwindow/2tab1.rwd +9 -0
  68. data/gui/en/xb1rwdtinkerbackwindow/3arwddiagnostics.rwd +31 -0
  69. data/gui/en/xb1rwdtinkerbackwindow/4arwdlistapplets.rwd +42 -0
  70. data/gui/en/xb1rwdtinkerbackwindow/4arwdlistzips.rwd +33 -0
  71. data/gui/en/xb1rwdtinkerbackwindow/9backend.rwd +5 -0
  72. data/gui/en/ya1helpaboutbegin/ya0helpscreenstart.rwd +1 -0
  73. data/gui/en/yg5rwdhelpabout/1appname.rwd +2 -0
  74. data/gui/en/yg5rwdhelpabout/3copyright.rwd +1 -0
  75. data/gui/en/yg5rwdhelpabout/5version.rwd +9 -0
  76. data/gui/en/yg6rwdwin2helpabout/1appname.rwd +2 -0
  77. data/gui/en/yg6rwdwin2helpabout/3copyright.rwd +1 -0
  78. data/gui/en/yg6rwdwin2helpabout/5version.rwd +9 -0
  79. data/gui/en/za1applicationend/yy9rwdend.rwd +2 -0
  80. data/gui/es/aa2core/aa0rwdtop.rwd +3 -0
  81. data/gui/es/cb7rubyeval/cb7rwdrubyeval.rwd +18 -0
  82. data/gui/es/dd0rwdshelleval/dd0rwdshelleval.rwd +16 -0
  83. data/gui/es/ek0shellscripts/ek0playscript.rwd +15 -0
  84. data/gui/es/ek0shellscripts/el0listscripts.rwd +25 -0
  85. data/gui/es/ek0shellscripts/en0createscripts.rwd +24 -0
  86. data/gui/es/hl9calendar/hl9calendar.rwd +18 -0
  87. data/gui/es/ii3calculator/ca0rwdcalc.rwd +17 -0
  88. data/gui/es/ll1selectiontabbegin/selectiontabbegin.rwd +15 -0
  89. data/gui/es/ll5rwdtinkerwin2selectiontab/rwdwin2selectiontab.rwd +11 -0
  90. data/gui/es/lz1selectiontabend/endselectiontab.rwd +1 -0
  91. data/gui/es/tt0documentsbegin/tt0documentbegin.rwd +5 -0
  92. data/gui/es/ub7rubyeval/rubyeval.rwd +3 -0
  93. data/gui/es/uk5scriptrunnerdocuments/documents.rwd +3 -0
  94. data/gui/es/uu5rwddocuments/uu5documents.rwd +13 -0
  95. data/gui/es/uu6rwdtinkerwin2documents/uu5documents.rwd +4 -0
  96. data/gui/es/vv1docshellxp/vvdocshellxp.rwd +4 -0
  97. data/gui/es/ww0documentsend/ww0documentend.rwd +6 -0
  98. data/gui/es/wz6finaltabs/xx0rwdfirsttab.rwd +4 -0
  99. data/gui/es/xa1versionwindow/1appname.rwd +17 -0
  100. data/gui/es/xa5rwdtinkercallablewindow/1appname.rwd +15 -0
  101. data/gui/es/xa5rwdtinkercallablewindow/9end.rwd +4 -0
  102. data/gui/es/xb1rwdtinkerbackwindow/1appname.rwd +3 -0
  103. data/gui/es/xb1rwdtinkerbackwindow/2tab1.rwd +9 -0
  104. data/gui/es/xb1rwdtinkerbackwindow/3arwddiagnostics.rwd +31 -0
  105. data/gui/es/xb1rwdtinkerbackwindow/4arwdlistapplets.rwd +42 -0
  106. data/gui/es/xb1rwdtinkerbackwindow/4arwdlistzips.rwd +33 -0
  107. data/gui/es/xb1rwdtinkerbackwindow/9backend.rwd +5 -0
  108. data/gui/es/ya1helpaboutbegin/ya0helpscreenstart.rwd +1 -0
  109. data/gui/es/yg5rwdhelpabout/1appname.rwd +2 -0
  110. data/gui/es/yg5rwdhelpabout/3copyright.rwd +1 -0
  111. data/gui/es/yg5rwdhelpabout/5version.rwd +9 -0
  112. data/gui/es/yg6rwdwin2helpabout/1appname.rwd +2 -0
  113. data/gui/es/yg6rwdwin2helpabout/3copyright.rwd +1 -0
  114. data/gui/es/yg6rwdwin2helpabout/5version.rwd +9 -0
  115. data/gui/es/za1applicationend/yy9rwdend.rwd +2 -0
  116. data/gui/nl/aa2core/aa0rwdtop.rwd +3 -0
  117. data/gui/nl/cb7rubyeval/cb7rwdrubyeval.rwd +18 -0
  118. data/gui/nl/dd0rwdshelleval/dd0rwdshelleval.rwd +16 -0
  119. data/gui/nl/ek0shellscripts/ek0playscript.rwd +15 -0
  120. data/gui/nl/ek0shellscripts/el0listscripts.rwd +25 -0
  121. data/gui/nl/ek0shellscripts/en0createscripts.rwd +24 -0
  122. data/gui/nl/hl9calendar/hl9calendar.rwd +18 -0
  123. data/gui/nl/ii3calculator/ca0rwdcalc.rwd +17 -0
  124. data/gui/nl/ll1selectiontabbegin/selectiontabbegin.rwd +15 -0
  125. data/gui/nl/ll5rwdtinkerwin2selectiontab/rwdwin2selectiontab.rwd +11 -0
  126. data/gui/nl/lz1selectiontabend/endselectiontab.rwd +1 -0
  127. data/gui/nl/tt0documentsbegin/tt0documentbegin.rwd +5 -0
  128. data/gui/nl/ub7rubyeval/rubyeval.rwd +3 -0
  129. data/gui/nl/uk5scriptrunnerdocuments/documents.rwd +3 -0
  130. data/gui/nl/uu5rwddocuments/uu5documents.rwd +13 -0
  131. data/gui/nl/uu6rwdtinkerwin2documents/uu5documents.rwd +4 -0
  132. data/gui/nl/vv1docshellxp/vvdocshellxp.rwd +4 -0
  133. data/gui/nl/ww0documentsend/ww0documentend.rwd +6 -0
  134. data/gui/nl/wz6finaltabs/xx0rwdfirsttab.rwd +4 -0
  135. data/gui/nl/xa1versionwindow/1appname.rwd +17 -0
  136. data/gui/nl/xa5rwdtinkercallablewindow/1appname.rwd +15 -0
  137. data/gui/nl/xa5rwdtinkercallablewindow/9end.rwd +4 -0
  138. data/gui/nl/xb1rwdtinkerbackwindow/1appname.rwd +3 -0
  139. data/gui/nl/xb1rwdtinkerbackwindow/2tab1.rwd +9 -0
  140. data/gui/nl/xb1rwdtinkerbackwindow/3arwddiagnostics.rwd +31 -0
  141. data/gui/nl/xb1rwdtinkerbackwindow/4arwdlistapplets.rwd +42 -0
  142. data/gui/nl/xb1rwdtinkerbackwindow/4arwdlistzips.rwd +33 -0
  143. data/gui/nl/xb1rwdtinkerbackwindow/9backend.rwd +5 -0
  144. data/gui/nl/ya1helpaboutbegin/ya0helpscreenstart.rwd +1 -0
  145. data/gui/nl/yg5rwdhelpabout/1appname.rwd +2 -0
  146. data/gui/nl/yg5rwdhelpabout/3copyright.rwd +1 -0
  147. data/gui/nl/yg5rwdhelpabout/5version.rwd +9 -0
  148. data/gui/nl/yg6rwdwin2helpabout/1appname.rwd +2 -0
  149. data/gui/nl/yg6rwdwin2helpabout/3copyright.rwd +1 -0
  150. data/gui/nl/yg6rwdwin2helpabout/5version.rwd +9 -0
  151. data/gui/nl/za1applicationend/yy9rwdend.rwd +2 -0
  152. data/init.rb +164 -0
  153. data/installed/rwdcalendar-0.4.inf +6 -0
  154. data/installed/rwdrubyeval-0.3.inf +5 -0
  155. data/installed/rwdscriptrunner-0.3.inf +9 -0
  156. data/installed/rwdshellxp-0.4.inf +5 -0
  157. data/installed/rwdtinkerwin2-0.5.inf +16 -0
  158. data/lang/en/rwdcore/languagefile.rb +6 -0
  159. data/lang/es/rwdcore/languagefile.rb +4 -0
  160. data/lang/nl/rwdcore/languagefile.rb +4 -0
  161. data/lib/temp.rb +1 -0
  162. data/rwd_files/HowTo_RubyEval.html +80 -0
  163. data/rwd_files/HowTo_Scriptrunner.txt +171 -0
  164. data/rwd_files/HowTo_Shell.txt +94 -0
  165. data/rwd_files/HowTo_Tinker.html +370 -0
  166. data/rwd_files/HowTo_Tinker.txt +244 -0
  167. data/rwd_files/HowTo_TinkerWin2.txt +202 -0
  168. data/rwd_files/Readme.txt +57 -0
  169. data/rwd_files/favicon.ico +0 -0
  170. data/rwd_files/rdoc-style.css +175 -0
  171. data/rwd_files/rwdapplications.html +54 -0
  172. data/rwd_files/rwdindex.html +6 -0
  173. data/scripts/date.sh +2 -0
  174. data/scripts/lister.sh +2 -0
  175. data/scripts/uname.sh +2 -0
  176. data/tests/rwdtinkertestEN.rb +87 -0
  177. data/tests/temptest.out +18 -0
  178. data/tests/totranslate.lang +93 -0
  179. data/zips/rwdaviewphoto-0.3.zip +0 -0
  180. data/zips/rwdhelloworld-0.2.zip +0 -0
  181. data/zips/rwdrefreshacpi-0.1.zip +0 -0
  182. data/zips/rwdscriptrunner-0.3.zip +0 -0
  183. data/zips/rwdwtinkerwin2-0.5.zip +0 -0
  184. metadata +227 -0
data/ev/ftools.rb ADDED
@@ -0,0 +1,170 @@
1
+ require "ftools"
2
+
3
+ class Dir
4
+ def self.mkdirrec(dir)
5
+ pdir = File.dirname(dir)
6
+
7
+ if not pdir.empty? and not File.directory?(pdir)
8
+ Dir.mkdirrec(pdir)
9
+ end
10
+
11
+ Dir.mkdir(dir) rescue nil
12
+ end
13
+
14
+ def self.copy(from, to)
15
+ if File.directory?(from)
16
+ pdir = Dir.pwd
17
+ todir = File.expand_path(to)
18
+
19
+ mkdirrec(todir)
20
+
21
+ Dir.chdir(from)
22
+ Dir.new(".").each do |e|
23
+ Dir.copy(e, todir+"/"+e) if not [".", ".."].include?(e)
24
+ end
25
+ Dir.chdir(pdir)
26
+ else
27
+ todir = File.dirname(File.expand_path(to))
28
+
29
+ mkdirrec(todir)
30
+
31
+ File.copy(from, to)
32
+ end
33
+ end
34
+
35
+ def self.move(from, to)
36
+ Dir.copy(from, to)
37
+ Dir.rm_rf(from)
38
+ end
39
+
40
+ def self.rm_rf(entry)
41
+ if File.ftype(entry) == "directory"
42
+ pdir = Dir.pwd
43
+
44
+ Dir.chdir(entry)
45
+ Dir.new(".").each do |e|
46
+ Dir.rm_rf(e) if not [".", ".."].include?(e)
47
+ end
48
+ Dir.chdir(pdir)
49
+
50
+ Dir.delete(entry)
51
+ else
52
+ File.delete(entry)
53
+ end
54
+ end
55
+
56
+ def self.find(entry=nil, mask=nil)
57
+ entry = "." if entry.nil?
58
+
59
+ entry = entry.gsub!(/[\/\\]*$/, "") unless entry.nil?
60
+
61
+ mask = /^#{mask}$/i if mask.kind_of?(String)
62
+
63
+ res = []
64
+
65
+ if File.directory?(entry)
66
+ pdir = Dir.pwd
67
+
68
+ res += ["%s/" % entry] if mask.nil? or entry =~ mask
69
+
70
+ begin
71
+ Dir.chdir(entry)
72
+
73
+ begin
74
+ Dir.new(".").each do |e|
75
+ res += Dir.find(e, mask).collect{|e| entry+"/"+e} unless [".", ".."].include?(e)
76
+ end
77
+ ensure
78
+ Dir.chdir(pdir)
79
+ end
80
+ rescue Errno::EACCES => error
81
+ puts error
82
+ end
83
+ else
84
+ res += [entry] if mask.nil? or entry =~ mask
85
+ end
86
+
87
+ res
88
+ end
89
+ end
90
+
91
+ class File
92
+ def self.rollbackup(file, mode=nil)
93
+ backupfile = file + ".RB.BACKUP"
94
+ controlfile = file + ".RB.CONTROL"
95
+ res = nil
96
+
97
+ File.touch(file) unless File.file?(file)
98
+
99
+ # Rollback
100
+
101
+ if File.file?(backupfile) and File.file?(controlfile)
102
+ $stdout.puts "Restoring #{file}..."
103
+
104
+ File.copy(backupfile, file) # Rollback from phase 3
105
+ end
106
+
107
+ # Reset
108
+
109
+ File.delete(backupfile) if File.file?(backupfile) # Reset from phase 2 or 3
110
+ File.delete(controlfile) if File.file?(controlfile) # Reset from phase 3 or 4
111
+
112
+ # Backup
113
+
114
+ File.copy(file, backupfile) # Enter phase 2
115
+ File.touch(controlfile) # Enter phase 3
116
+
117
+ # The real thing
118
+
119
+ if block_given?
120
+ if mode.nil?
121
+ res = yield
122
+ else
123
+ File.open(file, mode) do |f|
124
+ res = yield(f)
125
+ end
126
+ end
127
+ end
128
+
129
+ # Cleanup
130
+
131
+ File.delete(backupfile) # Enter phase 4
132
+ File.delete(controlfile) # Enter phase 5
133
+
134
+ # Return, like File.open
135
+
136
+ res = File.open(file, (mode or "r")) unless block_given?
137
+
138
+ res
139
+ end
140
+
141
+ def self.touch(file)
142
+ File.open(file, "a"){|f|}
143
+ end
144
+
145
+ def self.which(file)
146
+ res = nil
147
+
148
+ if windows?
149
+ file = file.gsub(/\.exe$/i, "") + ".exe"
150
+ sep = ";"
151
+ else
152
+ sep = ":"
153
+ end
154
+
155
+ catch :stop do
156
+ ENV["PATH"].split(/#{sep}/).reverse.each do |d|
157
+ if File.directory?(d)
158
+ Dir.new(d).each do |e|
159
+ if e.downcase == file.downcase
160
+ res = File.expand_path(e, d)
161
+ throw :stop
162
+ end
163
+ end
164
+ end
165
+ end
166
+ end
167
+
168
+ res
169
+ end
170
+ end