arcadia 0.8.1 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (163) hide show
  1. data/README +28 -22
  2. data/bin/arcadia +3 -3
  3. data/conf/arcadia.conf +87 -36
  4. data/conf/arcadia.res.rb +143 -5
  5. data/conf/theme-dark.conf +94 -0
  6. data/conf/theme-dark.res.rb +218 -0
  7. data/ext/ae-breakpoints/ae-breakpoints.rb +1 -0
  8. data/ext/ae-dir-projects/ae-dir-projects.rb +37 -9
  9. data/ext/ae-editor/ae-editor.conf +10 -9
  10. data/ext/ae-editor/ae-editor.rb +306 -127
  11. data/ext/ae-editor/langs/pers.lang.bind +1 -0
  12. data/ext/ae-editor/langs/rb.lang +6 -6
  13. data/ext/ae-editor/langs/tcl.lang +3 -0
  14. data/ext/ae-file-history/ae-file-history.rb +4 -11
  15. data/ext/ae-output/ae-output.rb +57 -38
  16. data/ext/ae-rad/ae-rad-inspector.rb +1 -1
  17. data/ext/ae-rad/ae-rad-palette.rb +2 -2
  18. data/ext/ae-rad/ae-rad.rb +7 -7
  19. data/ext/ae-rad/lib/tk/al-tk.rb +3 -3
  20. data/ext/ae-rad/lib/tk/al-tkcustom.rb +2 -2
  21. data/ext/ae-ruby-debug/ae-ruby-debug.conf +20 -1
  22. data/ext/ae-ruby-debug/ae-ruby-debug.rb +69 -65
  23. data/ext/ae-search-in-files/ae-search-in-files.rb +2 -17
  24. data/ext/ae-shell/ae-shell.conf +7 -6
  25. data/ext/ae-shell/ae-shell.rb +211 -32
  26. data/ext/ae-subprocess-inspector/ae-subprocess-inspector.conf +11 -0
  27. data/ext/ae-subprocess-inspector/ae-subprocess-inspector.rb +109 -0
  28. data/lib/a-commons.rb +74 -16
  29. data/lib/a-contracts.rb +18 -1
  30. data/lib/a-core.rb +410 -77
  31. data/lib/a-tkcommons.rb +338 -138
  32. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/ArrowButton.html +0 -0
  33. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/BWidget.html +2 -2
  34. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/Button.html +0 -0
  35. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/ButtonBox.html +0 -0
  36. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/ComboBox.html +0 -0
  37. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/Dialog.html +0 -0
  38. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/DragSite.html +0 -0
  39. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/DropSite.html +0 -0
  40. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/DynamicHelp.html +0 -0
  41. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/Entry.html +0 -0
  42. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/Label.html +0 -0
  43. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/LabelEntry.html +0 -0
  44. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/LabelFrame.html +0 -0
  45. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/ListBox.html +1 -4
  46. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/MainFrame.html +0 -0
  47. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/MessageDlg.html +0 -0
  48. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/NoteBook.html +0 -0
  49. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/PagesManager.html +0 -0
  50. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/PanedWindow.html +0 -0
  51. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/PanelFrame.html +0 -0
  52. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/PasswdDlg.html +0 -0
  53. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/ProgressBar.html +0 -0
  54. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/ProgressDlg.html +0 -0
  55. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/ScrollView.html +0 -0
  56. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/ScrollableFrame.html +0 -0
  57. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/ScrolledWindow.html +0 -0
  58. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/SelectColor.html +0 -0
  59. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/SelectFont.html +0 -0
  60. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/Separator.html +0 -0
  61. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/SpinBox.html +0 -0
  62. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/StatusBar.html +0 -0
  63. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/TitleFrame.html +0 -0
  64. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/Tree.html +0 -0
  65. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/Widget.html +0 -0
  66. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/contents.html +0 -0
  67. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/index.html +0 -0
  68. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/navtree.html +0 -0
  69. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/BWman/options.htm +0 -0
  70. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/CHANGES.txt +0 -0
  71. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/ChangeLog +70 -0
  72. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/LICENSE.txt +0 -0
  73. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/README.txt +0 -0
  74. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/arrow.tcl +0 -0
  75. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/bitmap.tcl +0 -0
  76. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/button.tcl +0 -0
  77. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/buttonbox.tcl +0 -0
  78. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/color.tcl +0 -0
  79. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/combobox.tcl +4 -4
  80. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/demo/basic.tcl +0 -0
  81. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/demo/bwidget.xbm +0 -0
  82. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/demo/demo.tcl +0 -0
  83. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/demo/dnd.tcl +0 -0
  84. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/demo/manager.tcl +0 -0
  85. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/demo/select.tcl +0 -0
  86. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/demo/tmpldlg.tcl +0 -0
  87. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/demo/tree.tcl +0 -0
  88. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/demo/x1.xbm +0 -0
  89. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/dialog.tcl +0 -0
  90. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/dragsite.tcl +0 -0
  91. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/dropsite.tcl +0 -0
  92. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/dynhelp.tcl +25 -18
  93. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/entry.tcl +0 -0
  94. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/font.tcl +0 -0
  95. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/bold.gif +0 -0
  96. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/copy.gif +0 -0
  97. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/cut.gif +0 -0
  98. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/dragfile.gif +0 -0
  99. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/dragicon.gif +0 -0
  100. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/error.gif +0 -0
  101. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/file.gif +0 -0
  102. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/folder.gif +0 -0
  103. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/hourglass.gif +0 -0
  104. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/info.gif +0 -0
  105. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/italic.gif +0 -0
  106. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/minus.xbm +0 -0
  107. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/new.gif +0 -0
  108. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/opcopy.xbm +0 -0
  109. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/open.gif +0 -0
  110. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/openfold.gif +0 -0
  111. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/oplink.xbm +0 -0
  112. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/opmove.xbm +0 -0
  113. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/overstrike.gif +0 -0
  114. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/palette.gif +0 -0
  115. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/passwd.gif +0 -0
  116. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/paste.gif +0 -0
  117. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/plus.xbm +0 -0
  118. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/print.gif +0 -0
  119. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/question.gif +0 -0
  120. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/redo.gif +0 -0
  121. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/save.gif +0 -0
  122. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/target.xbm +0 -0
  123. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/underline.gif +0 -0
  124. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/undo.gif +0 -0
  125. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/images/warning.gif +0 -0
  126. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/init.tcl +0 -0
  127. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/label.tcl +0 -0
  128. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/labelentry.tcl +0 -0
  129. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/labelframe.tcl +0 -0
  130. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/lang/da.rc +0 -0
  131. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/lang/de.rc +0 -0
  132. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/lang/en.rc +0 -0
  133. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/lang/es.rc +0 -0
  134. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/lang/fr.rc +0 -0
  135. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/lang/hu.rc +0 -0
  136. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/lang/nl.rc +0 -0
  137. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/lang/no.rc +0 -0
  138. data/tcl/BWidget-1.9.2/lang/pl.rc +104 -0
  139. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/listbox.tcl +68 -35
  140. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/mainframe.tcl +0 -0
  141. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/messagedlg.tcl +0 -0
  142. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/notebook.tcl +2 -2
  143. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/pagesmgr.tcl +0 -0
  144. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/panedw.tcl +0 -0
  145. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/panelframe.tcl +0 -0
  146. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/passwddlg.tcl +0 -0
  147. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/pkgIndex.tcl +2 -2
  148. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/progressbar.tcl +0 -0
  149. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/progressdlg.tcl +0 -0
  150. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/scrollframe.tcl +0 -0
  151. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/scrollview.tcl +0 -0
  152. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/scrollw.tcl +0 -0
  153. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/separator.tcl +0 -0
  154. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/spinbox.tcl +0 -0
  155. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/statusbar.tcl +0 -0
  156. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/tests/entry.test +0 -0
  157. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/titleframe.tcl +0 -0
  158. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/tree.tcl +6 -1
  159. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/utils.tcl +27 -7
  160. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/widget.tcl +0 -0
  161. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/wizard.tcl +0 -0
  162. data/tcl/{BWidget-1.9.0 → BWidget-1.9.2}/xpm2image.tcl +0 -0
  163. metadata +162 -153
data/README CHANGED
@@ -1,39 +1,37 @@
1
- = Arcadia Ruby Ide
2
- version 0.8.1
1
+ = Arcadia Ide
2
+ version 0.9.0
3
3
 
4
4
  by Antonio Galeone
5
- on Apr 10, 2010
5
+ on Sep 19, 2010
6
6
 
7
7
 
8
8
  == About
9
9
 
10
10
  Arcadia is a Light Integrated Development Environment (IDE) for Ruby language
11
- written in Ruby using the classic tcl/tk GUI toolkit.
11
+ written in classic Ruby using the classic tcl/tk GUI toolkit.
12
12
 
13
- Some of Arcadia ruby ide project features include:
13
+ Some of Arcadia ide project features include:
14
14
  * Editor with source browsing, syntax highlighting, code completion
15
15
  * Debugging support
16
16
  * Working on any platform where ruby and tcl-tk work.
17
17
  * Highly extensibility architecture.
18
18
 
19
- == In this release 0.8.1
19
+ == In this release 0.9.0
20
20
 
21
21
  [Improvements]
22
22
  commons:
23
- - bug-fixing
24
- - hide splash on gems wizard
25
- - added keybinding configurazion support
26
- - added new event : RedoTextEvent, SelectAllTextEvent, InvertSelectionTextEvent, UpperCaseTextEvent, LowerCaseTextEvent
27
- and Edit menu items : 'Redo','Select all','Invert selection','Uppercase', 'Lowercase'
28
-
29
- editor:
30
- - added dynamic resizing of line numbers frame
23
+ - a lot of bug-fixing
24
+ - new default theme = dark
25
+ - auto-hide scrollbar and auto post menu
26
+ new features:
27
+ - added process monitor (possibility to kill running sub process)
28
+ - added first release of a configurable runners management (possibility to choose runner for current file)
31
29
 
32
30
  == Dependencies
33
31
  - rubygems
34
32
  - ruby-tk
35
33
  - tcl/tk
36
- - ack
34
+ - ack (optional)
37
35
  - gem coderay
38
36
  - gem ruby-debug (ruby-debug19 on ruby 1.9)
39
37
  - gem whichr
@@ -65,10 +63,11 @@ The toolbar button are in order:
65
63
  (relatively to edit operation)
66
64
  - run current, run last
67
65
  (for execute the raised file in the editor or the last runned file)
68
- - debug current, debug last, quit debug panel
69
- (for debug need)
66
+ after "run current" there is a menubutton to choose a configurated runner to apply at current file
70
67
  - show rad palette
71
68
  (for tk rad need)
69
+ - debug current, debug last, quit debug panel
70
+ (for debug need)
72
71
  - quit (to exit from arcadia)
73
72
 
74
73
  ==== Editor
@@ -82,14 +81,20 @@ These are same editor short-cut:
82
81
  - Ctrl-g => show go to line dialog
83
82
  - Ctrl-o => shoe open file dialog
84
83
  - Ctrl-z => undo
84
+ - Ctrl-r => redo
85
85
  - Ctrl-f => copy the selected text on input combobox of find dialog and moves focus
86
86
  - Ctrl-s => save
87
87
  - Ctrl-space or esc => completion code
88
- - Ctrl-shift-i => indent the selected block
89
- - Ctrl-shift-u => unindent the selected block
88
+ - Ctrl-shift-i or Tab => indent the selected block
89
+ - Ctrl-shift-u or Shift-Tab => unindent the selected block
90
90
  - Ctrl-shift-c => comment/uncomment the selected code block
91
- - F5 => execute the file
91
+ - Alt-shift-a => select all
92
+ - Alt-shift-i => invert selection
93
+ - Alt-shift-u => selected to uppercase
94
+ - Alt-shift-l => selected to lowercase
95
+ - F5 => execute the current file
92
96
  - F3 => find/ find next
97
+ - Ctrl-F3 => Search in files
93
98
 
94
99
  - Double-Click on line number set or unset a debug breakpoint
95
100
 
@@ -130,7 +135,7 @@ under ~/.arcadia directory. The format of property definition are:
130
135
  <OPERATING SYSTEM IDENTIFY::>PROPERTY_NAME=PROPERTY_VALUE
131
136
 
132
137
 
133
- I have tested arcadia with ruby 1.8.4, 1.8.5, 1.8.6, 1.8.7, 1.9.1 on
138
+ I have tested arcadia with ruby 1.8.4, 1.8.5, 1.8.6, 1.8.7, 1.9.1, 1.9.2 on
134
139
 
135
140
  * Archlinux
136
141
  * Ubuntu
@@ -155,4 +160,5 @@ antonio-galeone@rubyforge.org
155
160
 
156
161
  For bugs, support request, features request:
157
162
  http://groups.google.it/group/arcadia-ruby-ide
158
- http://rubyforge.org/projects/arcadia
163
+ Repository at:
164
+ http://github.com/angal/arcadia/tree/master
@@ -6,7 +6,7 @@
6
6
  $pwd = Dir.pwd
7
7
  Dir.chdir("#{File.dirname(__FILE__)}/..")
8
8
  if FileTest.exist?('conf/arcadia.init.rb')
9
- require 'conf/arcadia.init'
9
+ require "#{Dir.pwd}/conf/arcadia.init"
10
10
  end
11
- require "lib/a-core"
12
- Arcadia.new.run
11
+ require "#{Dir.pwd}/lib/a-core"
12
+ Arcadia.new.run
@@ -49,6 +49,8 @@ highlightbackground=>>>background
49
49
  relief=flat
50
50
  borderwidth=0
51
51
 
52
+ tile.theme=alt
53
+
52
54
  menu.background=>>>background
53
55
  menu.foreground=>>>foreground
54
56
  menu.activebackground=>>>activebackground
@@ -69,6 +71,7 @@ scrollbar.activebackground=>>>activebackground
69
71
  scrollbar.relief=flat
70
72
  scrollbar.borderwidth=1
71
73
  scrollbar.elementborderwidth=1
74
+ scrollbar.width=15
72
75
 
73
76
  titlelabel.background=#303b50
74
77
  titlelabel.foreground=#e8e651
@@ -90,11 +93,6 @@ titlemenu.tearoff=0
90
93
  titlemenu.borderwidth=1
91
94
  titlemenu.relief=groove
92
95
 
93
- linepanel.background=#dbe1cb
94
- linepanel.foreground=>>>foreground
95
- linepanel.highlightbackground=>>>background
96
- linepanel.relief=>>>relief
97
- linepanel.borderwidth=0
98
96
 
99
97
  splitter.background=>>>background
100
98
  splitter.highlightbackground=>>>foreground
@@ -182,11 +180,29 @@ text.insertborderwidth=0
182
180
  text.insertofftime=0
183
181
  text.insertontime=0
184
182
  text.insertwidth=3
183
+ text.spacing1=0
184
+
185
+
186
+ textline.background=#dbe1cb
187
+ textline.foreground=>>>foreground
188
+ textline.highlightbackground=>>>background
189
+ textline.relief=>>>relief
190
+ textline.borderwidth=0
191
+ textline.spacing1=>>>text.spacing1
192
+
185
193
 
186
194
  combobox.=>>>edit
187
195
  combobox.background=>>>panel.background
188
196
  combobox.entrybg=>>>edit.background
189
197
 
198
+ progress.background=white
199
+ progress.troughcolor=white
200
+ progress.foreground=blue
201
+ progress.borderwidth=2
202
+ progress.width=2
203
+ progress.height=18
204
+ progress.relief=flat
205
+
190
206
 
191
207
  #hightlight.sel
192
208
  hightlight.1.foreground=black
@@ -254,9 +270,34 @@ hightlight.instance_variable.foreground=#7F7F7F
254
270
  hightlight.global_variable.foreground=#db66ca
255
271
  hightlight.constant.foreground=#bdc175
256
272
  hightlight.tag.foreground=#69a8d9
273
+ hightlight.sel.foreground=black
274
+ hightlight.sel.background=#abc9fc
275
+ hightlight.sel.borderwidth=1
276
+ hightlight.sel.relief=raised
277
+ #hightlight.selected.foreground=red
278
+ hightlight.selected.background=yellow
279
+ hightlight.link.foreground=red
280
+
281
+ hightlight.debug.foreground=#d95ed9
282
+ hightlight.debug.background=#b3c1d9
283
+ hightlight.debug.borderwidth=2
284
+ hightlight.debug.relief=groove
285
+
257
286
 
258
287
  #:::::::::::::::::::::::::::::::::::::::::::::::::<end>
259
288
  #:::::::::::::::::::: menu ::::::::::::::::::::::<begin>
289
+ user_menu.contexts=menubutton_run
290
+ user_menu.menubutton_run.rif=runcurr
291
+ user_menu.menubutton_run.context_path=/
292
+ user_menu.menubutton_run=manage_runner
293
+ #
294
+ user_menu.menubutton_run.manage_runner.hint=Manage runner ..
295
+ user_menu.menubutton_run.manage_runner.caption= Manage runner ..
296
+ user_menu.menubutton_run.manage_runner.image_data=!MANAGE_GIF
297
+ user_menu.menubutton_run.manage_runner.action=ActionEvent.new(self,'action'=>manage_runners)
298
+
299
+
300
+
260
301
  #user_menu.contexts=File2
261
302
  #user_menu.File2.context_path=/
262
303
  #user_menu.File2=open,new,save,-,quit
@@ -286,7 +327,8 @@ hightlight.tag.foreground=#69a8d9
286
327
  #user_menu.File2.quit.event_class=!QuitEvent
287
328
  #:::::::::::::::::::::::::::::::::::::::::::::::::<end>
288
329
  #:::::::::::::::: toolbar ::::::::::::::::::::::<begin>
289
- user_toolbar.contexts=file,run,debug
330
+ user_toolbar.contexts=file,run
331
+ #,debug
290
332
  #,sys
291
333
  user_toolbar.file=new,open,save,find
292
334
  user_toolbar.file.new.name=new
@@ -305,42 +347,43 @@ user_toolbar.file.save.image_data=!BACKUP_GIF
305
347
  user_toolbar.file.save.event_class=!SaveBufferEvent
306
348
 
307
349
  user_toolbar.file.find.name=find
308
- user_toolbar.file.find.hint=Search on current file
350
+ user_toolbar.file.find.hint=Search into current file
309
351
  user_toolbar.file.find.image_data=!LARGE_FIND_GIF
310
352
  user_toolbar.file.find.event_class=!SearchBufferEvent
311
353
 
312
354
 
313
355
  user_toolbar.run=runcurr,runlast
314
356
 
315
- user_toolbar.run.runcurr.name=run_current
357
+ #user_toolbar.run.runcurr.name=run_current
316
358
  user_toolbar.run.runcurr.hint=Run current
317
359
  user_toolbar.run.runcurr.image_data=!RUN_CURRENT_GIF
318
- user_toolbar.run.runcurr.event_class=!RunRubyFileEvent
360
+ user_toolbar.run.runcurr.event_class=!RunCmdEvent
361
+ user_toolbar.run.runcurr.menu_button=yes
319
362
 
320
363
  user_toolbar.run.runlast.name=run_last
321
364
  user_toolbar.run.runlast.hint=Run last
322
365
  user_toolbar.run.runlast.image_data=!RUN_LAST_GIF
323
- user_toolbar.run.runlast.event_class=!RunRubyFileEvent
366
+ user_toolbar.run.runlast.event_class=!RunCmdEvent
324
367
  user_toolbar.run.runlast.event_args=!{'file'=>"*LAST"}
325
368
 
326
369
 
327
- user_toolbar.debug=debugcurr,debuglast,debugquit
328
-
329
- user_toolbar.debug.debugcurr.name=debug
330
- user_toolbar.debug.debugcurr.hint=Debug current
331
- user_toolbar.debug.debugcurr.image_data=!DEBUG_CURRENT_GIF
332
- user_toolbar.debug.debugcurr.event_class=!StartDebugEvent
333
-
334
- user_toolbar.debug.debuglast.name=debug
335
- user_toolbar.debug.debuglast.hint=Debug last
336
- user_toolbar.debug.debuglast.image_data=!DEBUG_LAST_GIF
337
- user_toolbar.debug.debuglast.event_class=!StartDebugEvent
338
- user_toolbar.debug.debuglast.event_args=!{'file'=>"*LAST"}
339
-
340
- user_toolbar.debug.debugquit.name=debugquit
341
- user_toolbar.debug.debugquit.hint=Quit debug
342
- user_toolbar.debug.debugquit.image_data=!DEBUG_QUIT_GIF
343
- user_toolbar.debug.debugquit.event_class=!StopDebugEvent
370
+ #user_toolbar.debug=debugcurr,debuglast,debugquit
371
+ #
372
+ #user_toolbar.debug.debugcurr.name=debug
373
+ #user_toolbar.debug.debugcurr.hint=Debug current
374
+ #user_toolbar.debug.debugcurr.image_data=!DEBUG_CURRENT_GIF
375
+ #user_toolbar.debug.debugcurr.event_class=!StartDebugEvent
376
+ #
377
+ #user_toolbar.debug.debuglast.name=debug
378
+ #user_toolbar.debug.debuglast.hint=Debug last
379
+ #user_toolbar.debug.debuglast.image_data=!DEBUG_LAST_GIF
380
+ #user_toolbar.debug.debuglast.event_class=!StartDebugEvent
381
+ #user_toolbar.debug.debuglast.event_args=!{'file'=>"*LAST"}
382
+ #
383
+ #user_toolbar.debug.debugquit.name=debugquit
384
+ #user_toolbar.debug.debugquit.hint=Quit debug
385
+ #user_toolbar.debug.debugquit.image_data=!DEBUG_QUIT_GIF
386
+ #user_toolbar.debug.debugquit.event_class=!StopDebugEvent
344
387
 
345
388
 
346
389
  e.user_toolbar.contexts=sys
@@ -348,7 +391,8 @@ e.user_toolbar.sys=exit
348
391
  e.user_toolbar.sys.exit.name=exit
349
392
  e.user_toolbar.sys.exit.hint=Exit from Arcadia
350
393
  e.user_toolbar.sys.exit.image_data=!EXIT_STORY_GIF
351
- e.user_toolbar.sys.exit.event_class=!QuitEvent
394
+ e.user_toolbar.sys.exit.action=QuitEvent.new(self)
395
+ #e.user_toolbar.sys.exit.event_class=!QuitEvent
352
396
 
353
397
  user_toolbar_show=yes
354
398
  #:::::::::::::::: toolbar ::::::::::::::::::::::<end>
@@ -363,10 +407,11 @@ keybinding.Control-KeyPress[c]=CopyTextEvent.new(self)
363
407
  keybinding.Control-KeyPress[v]=PasteTextEvent.new(self)
364
408
  keybinding.Control-KeyPress[z]=UndoTextEvent.new(self)
365
409
  keybinding.Control-KeyPress[r]=RedoTextEvent.new(self)
366
- keybinding.Control-Shift-KeyPress[A]=SelectAllTextEvent.new(self)
367
- keybinding.Control-Shift-KeyPress[I]=InvertSelectionTextEvent.new(self)
368
- keybinding.Control-Shift-KeyPress[U]=UpperCaseTextEvent.new(self)
369
- keybinding.Control-Shift-KeyPress[L]=LowerCaseTextEvent.new(self)
410
+ keybinding.Control-KeyPress[F3]=SearchInFilesEvent.new(self)
411
+ keybinding.Alt-Shift-KeyPress[A]=SelectAllTextEvent.new(self)
412
+ keybinding.Alt-Shift-KeyPress[I]=InvertSelectionTextEvent.new(self)
413
+ keybinding.Alt-Shift-KeyPress[U]=UpperCaseTextEvent.new(self)
414
+ keybinding.Alt-Shift-KeyPress[L]=LowerCaseTextEvent.new(self)
370
415
  #:::::::::::::::: keybinding ::::::::::::::::::::::<end>
371
416
 
372
417
  #:::::::::::::::: splash group ::::::::::::::::::::::<begin>
@@ -425,7 +470,7 @@ win::inspectors.debug.tabs.font=courier 8
425
470
  win::inspectors.debug.tabs.font.bold=courier 8 bold
426
471
  #:::::::::::::::: inspector group ::::::::::::::::::::::<end>
427
472
 
428
- #:::::::::::::::: all ::::::::::::::::::::::<begin>
473
+ #:::::::::::::::: all ::::::::::::::::::::::<begin>
429
474
  all.frame.title.font=courier 11
430
475
  all.frame.title.font.bold=courier 11 bold
431
476
  all.frame.title.font.italic=courier 11 italic
@@ -437,6 +482,12 @@ win::all.frame.title.font.bold=courier 9 bold
437
482
  win::all.frame.title.font.italic=courier 9 italic
438
483
  #:::::::::::::::: all ::::::::::::::::::::::<end>
439
484
 
440
- #theme=default
441
- #theme=dark
442
- #theme=harlock
485
+ #theme=light
486
+ theme=dark
487
+
488
+ # runners keywords related the current file => FILE, DIR, FILE_BASENAME, FILE_BASENAME_WITHOUT_EXT
489
+ runners_instance_history=3
490
+ runners.ruby_file = {:cmd=>"ruby -C<<DIR>> <<FILE>>",:file=>"*CURR",:title=>"Run selected as ruby file",:file_exts=>".rb,.rbw"}
491
+ win::runners.ruby_file = {:cmd=>"rubyw -C<<DIR>> <<FILE>>",:file=>"*CURR",:title=>"Run selected as ruby file",:file_exts=>".rb,.rbw"}
492
+ runners.java_file = {:cmd=>"javac -g <<FILE>> && java -classpath <<DIR>> <<FILE_BASENAME_WITHOUT_EXT>>",:file=>"*CURR",:title=>"Compile and Run selected as java file",:file_exts=>".java"}
493
+ runners.generic_file = {:cmd=>"<<FILE>>",:file=>"*CURR",:title=>"Run selected as generic file",:file_exts=>""}
@@ -1586,13 +1586,30 @@ FILE_ICON_RB=RUBY_DOCUMENT_GIF
1586
1586
  FILE_ICON_RBW=FILE_ICON_RB
1587
1587
 
1588
1588
 
1589
+ #FILE_ICON_JAVA=<<EOS
1590
+ #R0lGODlhEAAQAOMKAAAAAAAAQAAAVQAAgAAAqn8AAKoAAL8AAL9AAKpVAP//
1591
+ #/////////////////////yH+EUNyZWF0ZWQgd2l0aCBHSU1QACH5BAEAAA8A
1592
+ #LAAAAAAQABAAAARM8Mn5Er244C215ZN2gGFlkI9XfKSGgIQwIatEPEMgBTdG
1593
+ #BDKBLkcMEAGDSfIh8+mYPaO0mBw0d5fY4zfpCYreLrBH+QnIMaqUsHxEAAA7
1594
+ #EOS
1595
+
1589
1596
  FILE_ICON_JAVA=<<EOS
1590
- R0lGODlhEAAQAOMKAAAAAAAAQAAAVQAAgAAAqn8AAKoAAL8AAL9AAKpVAP//
1591
- /////////////////////yH+EUNyZWF0ZWQgd2l0aCBHSU1QACH5BAEAAA8A
1592
- LAAAAAAQABAAAARM8Mn5Er244C215ZN2gGFlkI9XfKSGgIQwIatEPEMgBTdG
1593
- BDKBLkcMEAGDSfIh8+mYPaO0mBw0d5fY4zfpCYreLrBH+QnIMaqUsHxEAAA7
1597
+ R0lGODlhEAAQAMZlAAAAAAcFAwoGAhIHABkLAA4OHRAQHRMTEyERAzUZAR4e
1598
+ NzccBU0aAEQkCFgqBE4uETU1TmoxAzo6U3I8D0ZGRnVFGk1NY4xFClBQUFRU
1599
+ Z1paaVtba2Jid2JifGRkcmVldmZmdGZmgH9nUGtra2xsfWxsg4ZuVnNze3Nz
1600
+ hXNzh3d3i3h4kYGBjYeHhpKHf4mJh4mJiYuLi5KNh5GRoaSTgpaWoZiYl6KX
1601
+ jKeajJycmpycq6Cgpqenp6mnpKqpqaqqqKmqvKysrKyst7CwsK+vvbGxwLKy
1602
+ u7W1srO2xLi3t7u3s7i4wrm7u7y8w729wL++vb+/yb7AzsTExsXI1dHRzs/R
1603
+ 2NHS29HT3dbW2tra29ra4Nrb29fb5N3d3ODg4+bm5Ovn4ejp5/P29/f39/7+
1604
+ /v//////////////////////////////////////////////////////////
1605
+ /////////////////////////////////////////////////yH+EUNyZWF0
1606
+ ZWQgd2l0aCBHSU1QACH5BAEKAH8ALAAAAAAQABAAAAeEgH+Cg4SFhoeIf1CJ
1607
+ hV47jIRORpCHKR2UgiUWiUVRU0hAOhqIVUk4NC4yT1kzhlc3FRcTDQQBFEcb
1608
+ hVwmDBEOCQMAACNSSyuDVmAiDwsIAgcYMCxCWgaCRGRiXUo9PkM8LSA1IYRY
1609
+ YWNbTEE2LyckEoUqTV9UPzkxHgqJHCgfGRAFDAUCADs=
1594
1610
  EOS
1595
1611
 
1612
+
1596
1613
  FILE_ICON_RHTML=<<EOS
1597
1614
  R0lGODlhDwAOAMZOALQzPK0qMbVqepwfM68xN7U7PrhKR/r076UcJsh0Wffq
1598
1615
  55QiOOS2sakkK9uqrLxUScNqVezNytyhmchyZ5EhNsJdTsp/Xr10gMNiUL5U
@@ -1631,4 +1648,125 @@ R0lGODlhDQANALMAAP////f39+/v7+fn59/f38bGxr6+vra2tmVlZQAAAAAA
1631
1648
  AAAAAAAAAAAAAAAAAAAAACH5BAAHAP8ALAAAAAANAA0AAAREEJhZpp2SgM13
1632
1649
  IFgnSkZgBkh6AhVgqmpAuieKmGQg7ELKzzzf73AIDI5IJEmATCVZhgFhmppO
1633
1650
  SQOOTCswSCqGAtgCiAAAOw==
1634
- EOS
1651
+ EOS
1652
+
1653
+
1654
+ PROCESS_KILL_GIF=<<EOS
1655
+ R0lGODlhEgASAPcAABcWFygnKF5dXhoYGhgXGOjo6BkYGR0bHSIhIl9eXxUU
1656
+ FhUUFWJhYxgXGTo5OhcWGBgWGBwaHMHBwRYVFhQTFE5MTnNyczMxMo2NjSko
1657
+ KlJSUkdHSOnp6WZlZmxrbJOSk1taW62trUNCQ0FAQtTT1Lq6usPDwxsaG8LC
1658
+ w0NBQxcVFz8+P0xLTWdnaFxbXTw7PWhnaDUzNYeHiGVkZUZFR1JRU8TExD08
1659
+ PX18fri3uFdXWC0rLW1rbbm5uZSUlFNSVFtaXBsZGx4cHjIxMiAfIUdGSBYU
1660
+ FhYVFyQjJCQiJOrq6jQzNCMhIxoZGj48P2JgY7CwsFlZWlFQUaysrbu6uxQT
1661
+ FR4dHj09PoWEhS0sLmhoaCcnKC8tMEhHSGBgYLKyspKSkk5NT6qpqiAfICUj
1662
+ JYiHiFBQURwbHdDQ0BUTFVVTVXl4euXl5XNzc76+v729vVFRUmppaiooKjEw
1663
+ MoODg11cXYmIiXp6ekhHSbCwsRMSFHBvcFRUVEdGRxMSE7i4uO3t7QAAAAAA
1664
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
1665
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
1666
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
1667
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
1668
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
1669
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
1670
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
1671
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
1672
+ AAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAASABIAAAjjAAEJHEiwoMGD
1673
+ CAuiESMjzpM2PkwgVPJlTQsGQKQUubIBTAGDUzowEBAFDp4VSzKMwVLQBgwX
1674
+ On6EofFizpYzfoiEIPihhhkWfUY44EKmSRoKengQnNEFBwoJFrIgSPDnT50F
1675
+ DgiKcCJB4BsEBP4IzDHhBEE1MdwILAEBglhAfwjcIHgngBYqPQQAACCgaoIB
1676
+ ewjmCfCgigIVRwAQaGAgiBwoBelQWGBkAgDGAyIcKGOwgJ0dCh4QyHzgAoaP
1677
+ B70ACMBESAUQQxIC8mAAUIoDbPggka1hAKAAVjgISEJCtnFAAQEAOw==
1678
+ EOS
1679
+
1680
+ ARCADIA_JAP_GIF=<<EOS
1681
+ R0lGODlhcQAXAIABAHAFAP///yH5BAEKAAEALAAAAABxABcAAAKwjI+py+0P
1682
+ o5y02ouz3rz7zwCaKIImVErpRZ4TAMeyrKwr+sx6p/c3Bashfg6iKxNUDYm2
1683
+ nC92fC2Bh6SwSh1GA0atwarkdptS7/cJfXWxYsua/U2Mb+93A3wfRcjnvDzn
1684
+ hueHYcdlJmgGFwKEOBiIQtbY93dXSFM4ybL3Jxknt4ZJuUloh5dWeRUSmli0
1685
+ OuVUU8eEqgnJ0rlherrkyhrbuxUMKExcbHyMnKy8zNwMUgAAOw==
1686
+ EOS
1687
+
1688
+ MENUBUTTON_ARROW_DOWN_GIF=<<EOS
1689
+ R0lGODlhCQAKAIABADOi1P///yH5BAEAAAEALAAAAAAJAAoAAAIUDBB5uofs
1690
+ koxyVvMwxNmtSl1ZUAAAOw==
1691
+ EOS
1692
+
1693
+ #MENUBUTTON_ARROW_DOWN_GIF=<<EOS
1694
+ #R0lGODlhCwAXAMIHALl3Gbl4Grp5GLp5Grt5Gbt5Grt6G////yH+EUNyZWF0
1695
+ #ZWQgd2l0aCBHSU1QACH5BAEKAAcALAAAAAALABcAAAM/eLrcvkQsQVoxwpRG
1696
+ #wjFHUDHEYAzjdAAGcEiTEciYYw6PAuYf3/O7XPAxZARmx8bMwJQ1TEyco5nL
1697
+ #wIi+rCMBADs=
1698
+ #EOS
1699
+
1700
+ PARENTFOLDER_GIF=<<EOS
1701
+ R0lGODlhEAAQAPcAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwMDcwKbK8EAg
1702
+ AGAgAIAgAKAgAMAgAOAgAABAACBAAEBAAGBAAIBAAKBAAMBAAOBAAABgACBg
1703
+ AEBgAGBgAIBgAKBgAMBgAOBgAACAACCAAECAAGCAAICAAKCAAMCAAOCAAACg
1704
+ ACCgAECgAGCgAICgAKCgAMCgAOCgAADAACDAAEDAAGDAAIDAAKDAAMDAAODA
1705
+ AADgACDgAEDgAGDgAIDgAKDgAMDgAODgAAAAQCAAQEAAQGAAQIAAQKAAQMAA
1706
+ QOAAQAAgQCAgQEAgQGAgQIAgQKAgQMAgQOAgQABAQCBAQEBAQGBAQIBAQKBA
1707
+ QMBAQOBAQABgQCBgQEBgQGBgQIBgQKBgQMBgQOBgQACAQCCAQECAQGCAQICA
1708
+ QKCAQMCAQOCAQACgQCCgQECgQGCgQICgQKCgQMCgQOCgQADAQCDAQEDAQGDA
1709
+ QIDAQKDAQMDAQODAQADgQCDgQEDgQGDgQIDgQKDgQMDgQODgQAAAgCAAgEAA
1710
+ gGAAgIAAgKAAgMAAgOAAgAAggCAggEAggGAggIAggKAggMAggOAggABAgCBA
1711
+ gEBAgGBAgIBAgKBAgMBAgOBAgABggCBggEBggGBggIBggKBggMBggOBggACA
1712
+ gCCAgECAgGCAgICAgKCAgMCAgOCAgACggCCggECggGCggICggKCggMCggOCg
1713
+ gADAgCDAgEDAgGDAgIDAgKDAgMDAgODAgADggCDggEDggGDggIDggKDggMDg
1714
+ gODggAAAwCAAwP///2AAwIAAwKAAwMAAwOAAwAAgwCAgwEAgwGAgwIAgwKAg
1715
+ wMAgwOAgwABAwCBAwEBAwGBAwIBAwKBAwMBAwOBAwABgwCBgwEBgwGBgwIBg
1716
+ wKBgwMBgwOBgwACAwCCAwECAwGCAwICAwKCAwMCAwOCAwACgwCCgwECgwGCg
1717
+ wICgwKCgwMCgwOCgwADAwCDAwEDAwGDAwIDAwKDAwP/78KCgpICAgP8AAAD/
1718
+ AP//AAAA//8A/wD//////yH5BAEAAMIALAAAAAAQABAAQAh7AIUJHEiwoLAN
1719
+ v27YuwGg4Y2HD124AHDw3w1bF2+0oFgQ4Y2EDBs2dHHDRSuOBzeo3GBQIMJf
1720
+ MGPKjAnA48JfAECWLDnRo06SQFuZRNmy6IZ/MW0RHbiyqdOVNX8tXAjgI8SI
1721
+ UamKrBqxZFarXHcCjaqza9CJW9OqBRAQADs=
1722
+ EOS
1723
+
1724
+ MANAGE_GIF=<<EOS
1725
+ R0lGODlhEAAQALMAAAAAAISElK2ttd7e5///////////////////////////
1726
+ /////////////////////yH5BAEAAA8ALAAAAAAQABAAAAQ/8Mk5gaVY2jFA
1727
+ pgAneJ8mkuUTCiOImmyrytUQj4AQvPC9Z6tALPAD2XZEIi/osVwqzFToyMOE
1728
+ AEWpLit9ph4RADs=
1729
+ EOS
1730
+
1731
+ ITEM_START_LOG_GIF=<<EOS
1732
+ R0lGODlhCQAJAJECANs3EP///////wAAACH5BAEAAAIALAAAAAAJAAkAAAIU
1733
+ FI5gwR3HYARNyvkozpu7aCSHUAAAOw==
1734
+ EOS
1735
+
1736
+ ITEM_LOG_GIF=<<EOS
1737
+ R0lGODlhCQAJAJECAGZmZv///////wAAACH5BAEAAAIALAAAAAAJAAkAAAIU
1738
+ FI5gwcBxnmsTyopgfZpf3xjJIRQAOw==
1739
+ EOS
1740
+
1741
+ ERROR_9X9_GIF=<<EOS
1742
+ R0lGODlhCQAJAJEAAP////8AAP///wAAACH5BAUUAAIALAAAAAAJAAkAAAIW
1743
+ lIJpFwC4kINGvhDbzQlXTTGTx3RCAQA7
1744
+ EOS
1745
+
1746
+ TRASH_GIF=<<EOS
1747
+ R0lGODlhEAAQAOeIAAAAAAMDAwYGBggICAoKCgwMDBcXFxkZGRoaGhsbGx4e
1748
+ Hh8fHyUlJSkpKSsrKy4uLi8vLzAwMDExMTMzMzQ0NDU1NTY2Njg4ODo6Ojw8
1749
+ PD4+Pj8/P0FBQUJCQkNDQ0VFRUhISElJSUtLS0xMTE9PT1BQUFNTU1RUVFVV
1750
+ VVdXV1hYWFlZWVpaWltbW1xcXGJiYmdnZ21tbW5ubnFxcXJycnNzc3R0dHV1
1751
+ dXd3d3l5eXt7e3x8fH19fX5+foGBgYKCgoSEhIWFhYaGhomJiYqKiouLi4yM
1752
+ jI2NjY6OjpCQkJGRkZKSkpSUlJaWlpiYmJubm5ycnJ6enqCgoKGhoaOjo6Sk
1753
+ pKWlpaioqKmpqaqqqqurq62tra6urq+vr7GxsbKysrS0tLW1tba2tri4uLm5
1754
+ ubq6ur+/v8DAwMHBwcvLy87OztDQ0NHR0dTU1NXV1dbW1tjY2NnZ2eHh4eLi
1755
+ 4uPj4+jo6Orq6uzs7O3t7e7u7vDw8PHx8fLy8vT09PX19fb29vf39/j4+Pn5
1756
+ +fr6+vv7+/z8/P39/f7+/v//////////////////////////////////////
1757
+ ////////////////////////////////////////////////////////////
1758
+ ////////////////////////////////////////////////////////////
1759
+ ////////////////////////////////////////////////////////////
1760
+ ////////////////////////////////////////////////////////////
1761
+ ////////////////////////////////////////////////////////////
1762
+ ////////////////////////////////////////////////////////////
1763
+ ////////////////////////////////////////////////////////////
1764
+ /////////////////////yH+EUNyZWF0ZWQgd2l0aCBHSU1QACwAAAAAEAAQ
1765
+ AAAI/gARBUJUqM8fJw2k4KEzpxAiRIL+IDLjxYgLABYIrDAxJEuah4io4NDS
1766
+ hk2LHULGBCEBAQWiQ4UuxEH0ZhCiNXCmFGnR4EAdgk6SQFFDBsyWIy9UGABQ
1767
+ BJFEQBea+OAAQoKCAgs4CNADMw8iBnfEiPlSZIiSGicAEHTYBwOfE1W2tHhi
1768
+ owSIBIP2gGyQ5wSUKySY9PgQYgAhRIQM/dkAKEWQMCWKzDgBA8GhQw8FVSDE
1769
+ YskZFVJ0uDABwI8gRH0OOShk4kkWG0R2TC7w8BAgRBkAdZGTJYaUJT9GBFhT
1770
+ 57CdBzOUnEGzpcsRGhoAyOCCGFGZKDlEeNDQYUIFChFGFQR583AQoDZorCAB
1771
+ ouMGDyxZ3CAKCAA7
1772
+ EOS