redcar 0.3.1dev → 0.3.2dev

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 (316) hide show
  1. data/CHANGES +34 -1
  2. data/README.md +2 -1
  3. data/ROADMAP.md +13 -45
  4. data/Rakefile +15 -14
  5. data/bin/redcar +4 -1
  6. data/lib/plugin_manager/README.md +61 -0
  7. data/lib/plugin_manager/Rakefile +55 -0
  8. data/lib/plugin_manager/bin/plugin_manager +4 -0
  9. data/lib/plugin_manager/lib/plugin_manager.rb +107 -0
  10. data/lib/plugin_manager/lib/plugin_manager/definition_builder.rb +37 -0
  11. data/lib/plugin_manager/lib/plugin_manager/plugin.rb +9 -0
  12. data/lib/plugin_manager/lib/plugin_manager/plugin_definition.rb +50 -0
  13. data/lib/plugin_manager/plugin_manager.gemspec +33 -0
  14. data/lib/plugin_manager/spec/fixtures/error_in_definition/core/plugin.rb +2 -0
  15. data/lib/plugin_manager/spec/fixtures/error_in_plugin/core/core.rb +4 -0
  16. data/lib/plugin_manager/spec/fixtures/error_in_plugin/core/plugin.rb +7 -0
  17. data/lib/plugin_manager/spec/fixtures/example/core/core.rb +20 -0
  18. data/lib/plugin_manager/spec/fixtures/example/core/plugin.rb +7 -0
  19. data/lib/plugin_manager/spec/fixtures/example/debug/debug.rb +6 -0
  20. data/lib/plugin_manager/spec/fixtures/example/debug/plugin.rb +8 -0
  21. data/lib/plugin_manager/spec/fixtures/example/extras/extras.rb +6 -0
  22. data/lib/plugin_manager/spec/fixtures/example/extras/plugin.rb +8 -0
  23. data/lib/plugin_manager/spec/fixtures/two_versions1/core/core.rb +20 -0
  24. data/lib/plugin_manager/spec/fixtures/two_versions1/core/plugin.rb +7 -0
  25. data/lib/plugin_manager/spec/fixtures/two_versions1/core2/core.rb +20 -0
  26. data/lib/plugin_manager/spec/fixtures/two_versions1/core2/plugin.rb +7 -0
  27. data/lib/plugin_manager/spec/fixtures/two_versions2/core/core.rb +20 -0
  28. data/lib/plugin_manager/spec/fixtures/two_versions2/core/plugin.rb +7 -0
  29. data/lib/plugin_manager/spec/fixtures/two_versions2/core2/core.rb +20 -0
  30. data/lib/plugin_manager/spec/fixtures/two_versions2/core2/plugin.rb +8 -0
  31. data/lib/plugin_manager/spec/fixtures/unmet_dependencies1/core/core.rb +10 -0
  32. data/lib/plugin_manager/spec/fixtures/unmet_dependencies1/core/plugin.rb +7 -0
  33. data/lib/plugin_manager/spec/fixtures/unmet_dependencies1/debug/debug.rb +6 -0
  34. data/lib/plugin_manager/spec/fixtures/unmet_dependencies1/debug/plugin.rb +8 -0
  35. data/lib/plugin_manager/spec/fixtures/unmet_dependencies2/core/core.rb +10 -0
  36. data/lib/plugin_manager/spec/fixtures/unmet_dependencies2/core/plugin.rb +7 -0
  37. data/lib/plugin_manager/spec/fixtures/unmet_dependencies2/debug/debug.rb +6 -0
  38. data/lib/plugin_manager/spec/fixtures/unmet_dependencies2/debug/plugin.rb +8 -0
  39. data/lib/plugin_manager/spec/plugin_manager_spec.rb +208 -0
  40. data/lib/plugin_manager/spec/spec_helper.rb +3 -0
  41. data/lib/redcar.rb +8 -3
  42. data/lib/redcar/boot.rb +59 -56
  43. data/lib/redcar/installer.rb +1 -1
  44. data/lib/redcar/instance_exec.rb +25 -0
  45. data/lib/redcar/runner.rb +5 -1
  46. data/lib/redcar/usage.rb +5 -1
  47. data/plugins/application/icons/close.png +0 -0
  48. data/plugins/application/lib/application.rb +61 -28
  49. data/plugins/application/lib/application/clipboard.rb +71 -0
  50. data/plugins/application/lib/application/dialog.rb +63 -0
  51. data/plugins/application/lib/application/menu.rb +32 -1
  52. data/plugins/application/lib/application/menu/builder.rb +10 -4
  53. data/plugins/application/lib/application/menu/item.rb +16 -3
  54. data/plugins/application/lib/application/notebook.rb +5 -0
  55. data/plugins/application/lib/application/speedbar.rb +73 -0
  56. data/plugins/application/lib/application/window.rb +25 -0
  57. data/plugins/application/plugin.rb +8 -0
  58. data/plugins/application/spec/application/clipboard_spec.rb +36 -0
  59. data/plugins/application/spec/application/menu_spec.rb +73 -1
  60. data/plugins/application/spec/application/speedbar_spec.rb +46 -0
  61. data/plugins/application/spec/spec_helper.rb +1 -1
  62. data/plugins/application_swt/lib/application_swt.rb +18 -11
  63. data/plugins/application_swt/lib/application_swt/clipboard.rb +42 -0
  64. data/plugins/application_swt/lib/application_swt/dialog_adapter.rb +68 -0
  65. data/plugins/application_swt/lib/application_swt/dialogs/filter_list_dialog_controller.rb +1 -1
  66. data/plugins/application_swt/lib/application_swt/html_tab.rb +32 -0
  67. data/plugins/application_swt/lib/application_swt/menu.rb +57 -21
  68. data/plugins/application_swt/lib/application_swt/menu/binding_translator.rb +39 -2
  69. data/plugins/application_swt/lib/application_swt/notebook.rb +5 -0
  70. data/plugins/application_swt/lib/application_swt/speedbar.rb +187 -0
  71. data/plugins/application_swt/lib/application_swt/swt_wrapper.rb +24 -1
  72. data/plugins/application_swt/lib/application_swt/window.rb +33 -3
  73. data/plugins/application_swt/plugin.rb +8 -0
  74. data/plugins/application_swt/spec/spec_helper.rb +1 -1
  75. data/plugins/auto_completer/features/auto_complete.feature +65 -0
  76. data/plugins/auto_completer/features/step_definitions/auto_complete_steps.rb +4 -0
  77. data/plugins/auto_completer/features/support/env.rb +4 -0
  78. data/plugins/auto_completer/lib/auto_completer.rb +99 -0
  79. data/plugins/auto_completer/lib/auto_completer/document_controller.rb +52 -0
  80. data/plugins/auto_completer/lib/auto_completer/word_iterator.rb +48 -0
  81. data/plugins/auto_completer/lib/auto_completer/word_list.rb +40 -0
  82. data/plugins/auto_completer/plugin.rb +10 -0
  83. data/plugins/auto_indenter/lib/auto_indenter.rb +1 -1
  84. data/plugins/auto_indenter/lib/auto_indenter/document_controller.rb +1 -1
  85. data/plugins/auto_indenter/plugin.rb +8 -0
  86. data/plugins/core/lib/core.rb +6 -30
  87. data/plugins/core/lib/core/gui.rb +7 -2
  88. data/plugins/core/lib/core/logger.rb +7 -4
  89. data/plugins/core/lib/core/plugin/storage.rb +15 -5
  90. data/plugins/core/plugin.rb +7 -0
  91. data/plugins/core/spec/core/storage_spec.rb +0 -9
  92. data/plugins/edit_view/features/cut_and_paste.feature +45 -0
  93. data/plugins/edit_view/features/step_definitions/editing_steps.rb +22 -0
  94. data/plugins/edit_view/features/step_definitions/key_steps.rb +1 -1
  95. data/plugins/edit_view/features/step_definitions/notebook_steps.rb +1 -1
  96. data/plugins/edit_view/features/step_definitions/tab_steps.rb +2 -0
  97. data/plugins/edit_view/features/step_definitions/window_steps.rb +1 -1
  98. data/plugins/edit_view/features/support/env.rb +2 -2
  99. data/plugins/edit_view/lib/edit_view.rb +24 -13
  100. data/plugins/edit_view/lib/edit_view/document.rb +233 -15
  101. data/plugins/edit_view/lib/edit_view/edit_tab.rb +2 -2
  102. data/plugins/edit_view/plugin.rb +9 -0
  103. data/plugins/edit_view/spec/spec_helper.rb +1 -1
  104. data/plugins/edit_view_swt/lib/edit_view_swt.rb +37 -8
  105. data/plugins/edit_view_swt/lib/edit_view_swt/document.rb +59 -24
  106. data/plugins/edit_view_swt/lib/edit_view_swt/word_movement.rb +66 -0
  107. data/plugins/edit_view_swt/plugin.rb +9 -0
  108. data/plugins/edit_view_swt/spec/edit_view_swt/word_movement_spec.rb +29 -0
  109. data/plugins/edit_view_swt/spec/spec_helper.rb +6 -0
  110. data/plugins/html_view/assets/blueprint/ie.css +35 -0
  111. data/plugins/html_view/assets/blueprint/print.css +29 -0
  112. data/plugins/html_view/assets/blueprint/screen.css +257 -0
  113. data/plugins/html_view/assets/blueprint/src/forms.css +65 -0
  114. data/plugins/html_view/assets/blueprint/src/grid.css +281 -0
  115. data/plugins/html_view/assets/blueprint/src/grid.png +0 -0
  116. data/plugins/html_view/assets/blueprint/src/ie.css +76 -0
  117. data/plugins/html_view/assets/blueprint/src/print.css +85 -0
  118. data/plugins/html_view/assets/blueprint/src/reset.css +38 -0
  119. data/plugins/html_view/assets/blueprint/src/typography.css +106 -0
  120. data/plugins/html_view/assets/jquery-1.4.min.js +151 -0
  121. data/plugins/html_view/assets/redcar.css +12 -0
  122. data/plugins/html_view/lib/html_controller.rb +5 -0
  123. data/plugins/html_view/lib/html_view.rb +47 -0
  124. data/plugins/html_view/lib/html_view/html_tab.rb +16 -0
  125. data/plugins/html_view/plugin.rb +12 -0
  126. data/plugins/my_plugin/lib/my_plugin.rb +55 -0
  127. data/plugins/my_plugin/plugin.rb +8 -0
  128. data/plugins/plugin_manager_ui/lib/plugin_manager_ui.rb +62 -0
  129. data/plugins/plugin_manager_ui/plugin.rb +12 -0
  130. data/plugins/plugin_manager_ui/views/index.html.erb +31 -0
  131. data/plugins/project/lib/project.rb +27 -13
  132. data/plugins/project/lib/project/find_file_dialog.rb +25 -19
  133. data/plugins/project/plugin.rb +8 -0
  134. data/plugins/project/spec/spec_helper.rb +1 -1
  135. data/plugins/redcar/plugin.rb +13 -0
  136. data/plugins/redcar/redcar.rb +249 -8
  137. data/plugins/repl/lib/repl.rb +22 -14
  138. data/plugins/repl/plugin.rb +8 -0
  139. data/plugins/repl/spec/spec_helper.rb +1 -1
  140. data/plugins/tree/plugin.rb +9 -0
  141. data/plugins/tree/spec/spec_helper.rb +1 -1
  142. data/plugins/tree_view_swt/plugin.rb +9 -0
  143. data/textmate/Bundles/Apache.tmbundle/Syntaxes/Apache.plist +544 -0
  144. data/textmate/Bundles/Apache.tmbundle/Syntaxes/mod_perl.tmLanguage +120 -0
  145. data/textmate/Bundles/Blogging.tmbundle/Syntaxes/Blog___HTML__.plist +88 -0
  146. data/textmate/Bundles/Blogging.tmbundle/Syntaxes/Blog___Markdown__.plist +89 -0
  147. data/textmate/Bundles/Blogging.tmbundle/Syntaxes/Blog___Text__.plist +74 -0
  148. data/textmate/Bundles/Blogging.tmbundle/Syntaxes/Blog___Textile__.plist +74 -0
  149. data/textmate/Bundles/Bundle Development.tmbundle/Syntaxes/LanguageGrammar.tmLanguage +1829 -0
  150. data/textmate/Bundles/C Sharp.tmbundle/Syntaxes/Build.tmLanguage +142 -0
  151. data/textmate/Bundles/C Sharp.tmbundle/Syntaxes/C__.tmLanguage +524 -0
  152. data/textmate/Bundles/C++ Qt.tmbundle/Syntaxes/Qt_C____.tmLanguage +62 -0
  153. data/textmate/Bundles/C++ Qt.tmbundle/Syntaxes/qmake_Project.tmLanguage +308 -0
  154. data/textmate/Bundles/C.tmbundle/Syntaxes/C.plist +90 -48
  155. data/textmate/Bundles/Clojure.tmbundle/Syntaxes/Clojure.tmLanguage +427 -0
  156. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/Cucumber_Plain_Text_Feature.tmLanguage +106 -13
  157. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/Cucumber_Steps.tmLanguage +177 -2
  158. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/plaintext_template.erb +109 -17
  159. data/textmate/Bundles/D.tmbundle/Syntaxes/D.tmLanguage +908 -0
  160. data/textmate/Bundles/Diff.tmbundle/Syntaxes/Diff.plist +229 -0
  161. data/textmate/Bundles/DokuWiki.tmbundle/Syntaxes/DokuWiki.tmLanguage +649 -0
  162. data/textmate/Bundles/F-Script.tmbundle/Syntaxes/F__Script.plist +219 -0
  163. data/textmate/Bundles/Haskell.tmbundle/Syntaxes/Haskell.plist +646 -0
  164. data/textmate/Bundles/Haskell.tmbundle/Syntaxes/Literate_Haskell.plist +90 -0
  165. data/textmate/Bundles/Io.tmbundle/Syntaxes/Io.plist +225 -0
  166. data/textmate/Bundles/JSON.tmbundle/Syntaxes/JSON.tmLanguage +285 -0
  167. data/textmate/Bundles/JavaScript Prototype & Script_aculo_us.tmbundle/Syntaxes/JavaScript____Prototype.tmLanguage +193 -0
  168. data/textmate/Bundles/JavaScript Prototype & Script_aculo_us.tmbundle/Syntaxes/JavaScript____Prototype_Bracketed.tmLanguage +394 -0
  169. data/textmate/Bundles/JavaScript jQuery.tmbundle/Syntaxes/jQuery___JavaScript__.tmLanguage +440 -0
  170. data/textmate/Bundles/JavaScript.tmbundle/Syntaxes/JavaScript.plist +712 -0
  171. data/textmate/Bundles/Latex.tmbundle/Syntaxes/Bibtex.plist +406 -0
  172. data/textmate/Bundles/Latex.tmbundle/Syntaxes/LaTeX.plist +1601 -0
  173. data/textmate/Bundles/Latex.tmbundle/Syntaxes/LaTeX_Beamer.plist +106 -0
  174. data/textmate/Bundles/Latex.tmbundle/Syntaxes/LaTeX_Log.plist +141 -0
  175. data/textmate/Bundles/Latex.tmbundle/Syntaxes/LaTeX_Memoir.tmLanguage +165 -0
  176. data/textmate/Bundles/Latex.tmbundle/Syntaxes/TeX.plist +246 -0
  177. data/textmate/Bundles/Latex.tmbundle/Syntaxes/TeX_Math.plist +132 -0
  178. data/textmate/Bundles/Lisp.tmbundle/Syntaxes/Lisp.plist +160 -0
  179. data/textmate/Bundles/Makefile.tmbundle/Syntaxes/Makefile.plist +103 -0
  180. data/textmate/Bundles/Markdown.tmbundle/Syntaxes/Markdown.plist +1192 -0
  181. data/textmate/Bundles/Markdown.tmbundle/Syntaxes/MultiMarkdown.tmLanguage +80 -0
  182. data/textmate/Bundles/PHP.tmbundle/Syntaxes/PHP.plist +3481 -0
  183. data/textmate/Bundles/Perl HTML-Template.tmbundle/Syntaxes/Perl_HTML__Template.tmLanguage +217 -0
  184. data/textmate/Bundles/Perl Template Toolkit.tmbundle/Syntaxes/HTML___Template_Toolkit__.tmLanguage +339 -0
  185. data/textmate/Bundles/Postscript.tmbundle/Syntaxes/Postscript.tmLanguage +321 -0
  186. data/textmate/Bundles/Processing.tmbundle/Syntaxes/Processing.plist +296 -0
  187. data/textmate/Bundles/Property List.tmbundle/Syntaxes/Property_List.tmLanguage +1650 -0
  188. data/textmate/Bundles/Python Django Templates.tmbundle/Syntaxes/HTML___Django__.tmLanguage +104 -0
  189. data/textmate/Bundles/Python Django.tmbundle/Syntaxes/Python_Django.tmLanguage +57 -0
  190. data/textmate/Bundles/Python.tmbundle/Syntaxes/Python.tmLanguage +3016 -0
  191. data/textmate/Bundles/Python.tmbundle/Syntaxes/Regular_Expressions___Python__.tmLanguage +299 -0
  192. data/textmate/Bundles/Rez.tmbundle/Syntaxes/Rez.plist +219 -0
  193. data/textmate/Bundles/Ruby Haml.tmbundle/Syntaxes/Ruby_Haml.tmLanguage +403 -0
  194. data/textmate/Bundles/Ruby RSpec.tmbundle/Syntaxes/RSpec.tmLanguage +142 -0
  195. data/textmate/Bundles/Ruby.tmbundle/Syntaxes/Ruby.plist +139 -49
  196. data/textmate/Bundles/SQL.tmbundle/Syntaxes/SQL.plist +705 -0
  197. data/textmate/Bundles/SSH-Config.tmbundle/Syntaxes/SSH__Config.tmLanguage +88 -0
  198. data/textmate/Bundles/Scala.tmbundle/Syntaxes/Scala.tmLanguage +609 -0
  199. data/textmate/Bundles/Scala.tmbundle/Syntaxes/Scala_Properties.tmLanguage +54 -0
  200. data/textmate/Bundles/ShellScript.tmbundle/Syntaxes/Shell__Unix__Generic.plist +1855 -0
  201. data/textmate/Bundles/Tabular.tmbundle/Syntaxes/CSV.tmLanguage +178 -0
  202. data/textmate/Bundles/Tabular.tmbundle/Syntaxes/TSV.tmLanguage +135 -0
  203. data/textmate/Bundles/TextMate.tmbundle/Syntaxes/Regular_Expressions___Oniguruma__.tmLanguage +295 -0
  204. data/textmate/Bundles/TextMate.tmbundle/Syntaxes/Release_Notes.tmLanguage +126 -0
  205. data/textmate/Bundles/Textile.tmbundle/Syntaxes/Textile.plist +490 -0
  206. data/textmate/Bundles/Thrift.tmbundle/Syntaxes/Thrift.tmLanguage +1024 -0
  207. data/textmate/Bundles/XML.tmbundle/Syntaxes/XML.plist +576 -0
  208. data/textmate/Bundles/XML.tmbundle/Syntaxes/XSL.plist +157 -0
  209. data/textmate/Bundles/YAML.tmbundle/Syntaxes/YAML.plist +466 -0
  210. data/textmate/Themes/Django.tmTheme +436 -0
  211. metadata +371 -325
  212. data/config/default.yaml +0 -15
  213. data/lib/freebase2/README.txt +0 -47
  214. data/lib/freebase2/bin/default.yaml +0 -15
  215. data/lib/freebase2/bin/install.rb +0 -42
  216. data/lib/freebase2/bin/run.rb +0 -48
  217. data/lib/freebase2/lib/freebase/configuration.rb +0 -535
  218. data/lib/freebase2/lib/freebase/core.rb +0 -197
  219. data/lib/freebase2/lib/freebase/databus.rb +0 -1128
  220. data/lib/freebase2/lib/freebase/freebase.rb +0 -60
  221. data/lib/freebase2/lib/freebase/logger.rb +0 -117
  222. data/lib/freebase2/lib/freebase/plugin.rb +0 -384
  223. data/lib/freebase2/lib/freebase/properties.rb +0 -130
  224. data/lib/freebase2/lib/freebase/readers.rb +0 -328
  225. data/lib/freebase2/notes +0 -61
  226. data/lib/freebase2/plugins/raa_webrick/httpd.rb +0 -125
  227. data/lib/freebase2/plugins/raa_webrick/plugin.yaml +0 -7
  228. data/lib/freebase2/plugins/raa_webrick/web_root/test.html +0 -5
  229. data/lib/freebase2/plugins/raa_webrick/webserver.yaml +0 -6
  230. data/lib/freebase2/plugins/raa_xmlrpc4r/plugin.xml +0 -8
  231. data/lib/freebase2/plugins/raa_xmlrpc4r/rpcd.rb +0 -54
  232. data/lib/freebase2/regress/README +0 -1
  233. data/lib/little_plugger/History.txt +0 -20
  234. data/lib/little_plugger/Rakefile +0 -34
  235. data/lib/little_plugger/lib/little-plugger.rb +0 -323
  236. data/lib/little_plugger/spec/little-plugger_spec.rb +0 -26
  237. data/lib/little_plugger/spec/spec_helper.rb +0 -16
  238. data/lib/logging/History.txt +0 -240
  239. data/lib/logging/Rakefile +0 -37
  240. data/lib/logging/data/bad_logging_1.rb +0 -13
  241. data/lib/logging/data/bad_logging_2.rb +0 -21
  242. data/lib/logging/data/logging.rb +0 -42
  243. data/lib/logging/data/logging.yaml +0 -63
  244. data/lib/logging/data/simple_logging.rb +0 -13
  245. data/lib/logging/examples/appenders.rb +0 -47
  246. data/lib/logging/examples/classes.rb +0 -41
  247. data/lib/logging/examples/consolidation.rb +0 -83
  248. data/lib/logging/examples/formatting.rb +0 -51
  249. data/lib/logging/examples/hierarchies.rb +0 -73
  250. data/lib/logging/examples/layouts.rb +0 -48
  251. data/lib/logging/examples/loggers.rb +0 -29
  252. data/lib/logging/examples/names.rb +0 -43
  253. data/lib/logging/examples/simple.rb +0 -17
  254. data/lib/logging/lib/logging.rb +0 -501
  255. data/lib/logging/lib/logging/appender.rb +0 -251
  256. data/lib/logging/lib/logging/appenders.rb +0 -131
  257. data/lib/logging/lib/logging/appenders/buffering.rb +0 -168
  258. data/lib/logging/lib/logging/appenders/console.rb +0 -60
  259. data/lib/logging/lib/logging/appenders/email.rb +0 -75
  260. data/lib/logging/lib/logging/appenders/file.rb +0 -58
  261. data/lib/logging/lib/logging/appenders/growl.rb +0 -197
  262. data/lib/logging/lib/logging/appenders/io.rb +0 -69
  263. data/lib/logging/lib/logging/appenders/rolling_file.rb +0 -293
  264. data/lib/logging/lib/logging/appenders/string_io.rb +0 -68
  265. data/lib/logging/lib/logging/appenders/syslog.rb +0 -194
  266. data/lib/logging/lib/logging/config/configurator.rb +0 -188
  267. data/lib/logging/lib/logging/config/yaml_configurator.rb +0 -191
  268. data/lib/logging/lib/logging/layout.rb +0 -117
  269. data/lib/logging/lib/logging/layouts.rb +0 -47
  270. data/lib/logging/lib/logging/layouts/basic.rb +0 -32
  271. data/lib/logging/lib/logging/layouts/parseable.rb +0 -211
  272. data/lib/logging/lib/logging/layouts/pattern.rb +0 -311
  273. data/lib/logging/lib/logging/log_event.rb +0 -45
  274. data/lib/logging/lib/logging/logger.rb +0 -503
  275. data/lib/logging/lib/logging/repository.rb +0 -232
  276. data/lib/logging/lib/logging/root_logger.rb +0 -61
  277. data/lib/logging/lib/logging/stats.rb +0 -278
  278. data/lib/logging/lib/logging/utils.rb +0 -153
  279. data/lib/logging/lib/spec/logging_helper.rb +0 -34
  280. data/lib/logging/test/appenders/test_buffered_io.rb +0 -176
  281. data/lib/logging/test/appenders/test_console.rb +0 -66
  282. data/lib/logging/test/appenders/test_email.rb +0 -170
  283. data/lib/logging/test/appenders/test_file.rb +0 -95
  284. data/lib/logging/test/appenders/test_growl.rb +0 -127
  285. data/lib/logging/test/appenders/test_io.rb +0 -129
  286. data/lib/logging/test/appenders/test_rolling_file.rb +0 -200
  287. data/lib/logging/test/appenders/test_syslog.rb +0 -194
  288. data/lib/logging/test/benchmark.rb +0 -86
  289. data/lib/logging/test/config/test_configurator.rb +0 -70
  290. data/lib/logging/test/config/test_yaml_configurator.rb +0 -40
  291. data/lib/logging/test/layouts/test_basic.rb +0 -42
  292. data/lib/logging/test/layouts/test_json.rb +0 -112
  293. data/lib/logging/test/layouts/test_pattern.rb +0 -198
  294. data/lib/logging/test/layouts/test_yaml.rb +0 -121
  295. data/lib/logging/test/setup.rb +0 -44
  296. data/lib/logging/test/test_appender.rb +0 -152
  297. data/lib/logging/test/test_consolidate.rb +0 -46
  298. data/lib/logging/test/test_layout.rb +0 -110
  299. data/lib/logging/test/test_log_event.rb +0 -80
  300. data/lib/logging/test/test_logger.rb +0 -699
  301. data/lib/logging/test/test_logging.rb +0 -267
  302. data/lib/logging/test/test_repository.rb +0 -158
  303. data/lib/logging/test/test_root_logger.rb +0 -81
  304. data/lib/logging/test/test_stats.rb +0 -274
  305. data/lib/logging/test/test_utils.rb +0 -116
  306. data/plugins/application/plugin.yaml +0 -11
  307. data/plugins/application_swt/plugin.yaml +0 -11
  308. data/plugins/auto_indenter/plugin.yaml +0 -12
  309. data/plugins/core/plugin.yaml +0 -7
  310. data/plugins/edit_view/plugin.yaml +0 -14
  311. data/plugins/edit_view_swt/plugin.yaml +0 -14
  312. data/plugins/project/plugin.yaml +0 -12
  313. data/plugins/redcar/plugin.yaml +0 -18
  314. data/plugins/repl/plugin.yaml +0 -12
  315. data/plugins/tree/plugin.yaml +0 -14
  316. data/plugins/tree_view_swt/plugin.yaml +0 -14
@@ -3,78 +3,113 @@ module Redcar
3
3
  class EditViewSWT
4
4
  class Document
5
5
  include Redcar::Observable
6
- attr_reader :swt_document
6
+ attr_reader :jface_document
7
7
 
8
- def initialize(model, swt_document)
9
- @model = model
10
- @swt_document = swt_document
8
+ def initialize(model, swt_mate_document)
9
+ @model = model
10
+ @swt_mate_document = swt_mate_document
11
+ @jface_document = swt_mate_document.mateText.get_document
11
12
  end
12
13
 
13
14
  def attach_modification_listeners
14
- jface.add_document_listener(DocumentListener.new(@model))
15
+ jface_document.add_document_listener(DocumentListener.new(@model))
16
+ styledText.add_selection_listener(SelectionListener.new(@model))
15
17
  end
16
18
 
17
19
  def to_s
18
- @swt_document.get
20
+ jface_document.get
19
21
  end
20
22
 
21
23
  def length
22
- @swt_document.length
24
+ jface_document.length
23
25
  end
24
26
 
25
27
  def line_count
26
- @swt_document.get_number_of_lines
28
+ jface_document.get_number_of_lines
27
29
  end
28
30
 
29
31
  def line_at_offset(offset)
30
- jface.get_line_of_offset(offset)
32
+ jface_document.get_line_of_offset(offset)
31
33
  end
32
34
 
33
35
  def offset_at_line(line_ix)
34
- jface.get_line_offset(line_ix)
36
+ jface_document.get_line_offset(line_ix)
35
37
  end
36
38
 
37
39
  def get_line(line_ix)
38
- line_info = jface.get_line_information(line_ix)
39
- jface.get(line_info.offset, line_info.length)
40
+ line_info = jface_document.get_line_information(line_ix)
41
+ jface_document.get(line_info.offset, line_info.length)
42
+ end
43
+
44
+ def get_range(start, length)
45
+ jface_document.get(start, length)
40
46
  end
41
47
 
42
48
  def replace(offset, length, text)
43
49
  @model.verify_text(offset, offset+length, text)
44
- jface.replace(offset, length, text)
50
+ jface_document.replace(offset, length, text)
51
+ if length > text.length
52
+ @swt_mate_document.mateText.redraw
53
+ end
45
54
  @model.modify_text
46
55
  end
47
56
 
48
57
  def text=(text)
49
58
  @model.verify_text(0, length, text)
50
- jface.set(text)
59
+ jface_document.set(text)
51
60
  @model.modify_text
52
61
  notify_listeners(:set_text)
53
62
  end
54
63
 
55
64
  def cursor_offset
56
- @swt_document.styledText.get_caret_offset
65
+ styledText.get_caret_offset
57
66
  end
58
67
 
59
68
  def cursor_offset=(offset)
60
- @swt_document.styledText.set_caret_offset(offset)
69
+ styledText.set_caret_offset(offset)
61
70
  end
62
71
 
63
- # Returns the offset range selected in the document. The start of the range is always
64
- # before the end of the range, even if the selection is right-to-left
65
- #
66
- # @return [Range<Integer>] offset range
67
72
  def selection_range
68
- range = @swt_document.styledText.get_selection_range
73
+ range = styledText.get_selection_range
69
74
  range.x...(range.x + range.y)
70
75
  end
71
76
 
77
+ def selection_ranges
78
+ ranges = styledText.get_selection_ranges
79
+ ranges.to_a.each_slice(2).map do |from, length|
80
+ from...(from + length)
81
+ end
82
+ end
83
+
72
84
  def set_selection_range(start, _end)
73
- @swt_document.styledText.set_selection(start, _end)
85
+ styledText.set_selection(start, _end)
86
+ @model.selection_range_changed(start, _end)
87
+ end
88
+
89
+ def block_selection_mode?
90
+ styledText.get_block_selection
91
+ end
92
+
93
+ def block_selection_mode=(bool)
94
+ styledText.set_block_selection(bool)
95
+ end
96
+
97
+ def styledText
98
+ @swt_mate_document.mateText.getControl
74
99
  end
75
100
 
76
- def jface
77
- @swt_document.getJFaceDocument
101
+ class SelectionListener
102
+ def initialize(model)
103
+ @model = model
104
+ end
105
+
106
+ def widget_default_selected(e)
107
+ @model.selection_range_changed(e.x, e.y)
108
+ end
109
+
110
+ def widget_selected(e)
111
+ @model.selection_range_changed(e.x, e.y)
112
+ end
78
113
  end
79
114
 
80
115
  class DocumentListener
@@ -0,0 +1,66 @@
1
+
2
+ module Redcar
3
+ class EditViewSWT
4
+ class WordMoveListener
5
+ MOVE_FORWARD_RE = /\s{3,}|[^\w]{2,}|(\s|[^\w])?\w+/
6
+
7
+ def initialize(controller)
8
+ @controller = controller
9
+ end
10
+
11
+ def get_next_offset(e)
12
+ if e.movement == Swt::SWT::MOVEMENT_WORD
13
+ e.newOffset = next_offset(e.offset, e.lineOffset, e.lineText)
14
+ # SWT gets pissy without this:
15
+ if e.newOffset == e.lineOffset + e.lineText.length + 1
16
+ e.newOffset += 1
17
+ end
18
+ end
19
+ end
20
+
21
+ def next_offset(offset, line_offset, line_text)
22
+ if offset == line_offset + line_text.length
23
+ offset + 1
24
+ else
25
+ future_text = line_text[(offset - line_offset)..-1]
26
+ if future_text == nil or future_text == ""
27
+ line_offset + line_text.length
28
+ else
29
+ if md = future_text.match(MOVE_FORWARD_RE)
30
+ offset + md.end(0)
31
+ else
32
+ line_offset + line_text.length
33
+ end
34
+ end
35
+ end
36
+ end
37
+
38
+ def get_previous_offset(e)
39
+ if e.movement == Swt::SWT::MOVEMENT_WORD
40
+ e.newOffset = previous_offset(e.offset, e.lineOffset, e.lineText)
41
+ # SWT gets pissy without this:
42
+ if e.newOffset == e.lineOffset - 1
43
+ e.newOffset -= 1
44
+ end
45
+ end
46
+ end
47
+
48
+ def previous_offset(offset, line_offset, line_text)
49
+ if offset == line_offset
50
+ offset - 1
51
+ else
52
+ future_text = line_text[0..(offset - line_offset - 1)].reverse
53
+ if future_text == nil or future_text == ""
54
+ line_offset
55
+ else
56
+ if md = future_text.match(MOVE_FORWARD_RE)
57
+ offset - md.end(0)
58
+ else
59
+ line_offset
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,9 @@
1
+
2
+ Plugin.define do
3
+ name "edit_view_swt"
4
+ version "1.0"
5
+ file "lib", "edit_view_swt"
6
+ object "Redcar::EditViewSWT"
7
+ dependencies "core", ">0",
8
+ "application_swt", ">0"
9
+ end
@@ -0,0 +1,29 @@
1
+ require File.join(File.dirname(__FILE__), "..", "spec_helper")
2
+
3
+ describe Redcar::EditViewSWT::WordMoveListener do
4
+ before do
5
+ @word = Redcar::EditViewSWT::WordMoveListener.new(nil)
6
+ end
7
+
8
+ describe "moving forwards" do
9
+ it "should move over a word to the next non-word char" do
10
+ @word.next_offset(0, 0, "foo.bar").should == 3
11
+ end
12
+
13
+ it "should move over a symbol and a word to the next non-word char" do
14
+ @word.next_offset(0, 0, ".foo.bar").should == 4
15
+ end
16
+
17
+ it "should move over multiple symbols to the next word" do
18
+ @word.next_offset(0, 0, "..foo.bar").should == 2
19
+ end
20
+
21
+ it "should move over a space and the next word " do
22
+ @word.next_offset(0, 0, " foo.bar").should == 4
23
+ end
24
+
25
+ it "should move over multiple spaces to the next word " do
26
+ @word.next_offset(0, 0, " foo.bar").should == 2
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,6 @@
1
+ $:.push File.join(File.dirname(__FILE__), '..', '..', '..', 'lib')
2
+
3
+ require 'redcar'
4
+
5
+ Redcar.boot
6
+ Redcar.load
@@ -0,0 +1,35 @@
1
+ /* -----------------------------------------------------------------------
2
+
3
+
4
+ Blueprint CSS Framework 0.9
5
+ http://blueprintcss.org
6
+
7
+ * Copyright (c) 2007-Present. See LICENSE for more info.
8
+ * See README for instructions on how to use Blueprint.
9
+ * For credits and origins, see AUTHORS.
10
+ * This is a compressed file. See the sources in the 'src' directory.
11
+
12
+ ----------------------------------------------------------------------- */
13
+
14
+ /* ie.css */
15
+ body {text-align:center;}
16
+ .container {text-align:left;}
17
+ * html .column, * html div.span-1, * html div.span-2, * html div.span-3, * html div.span-4, * html div.span-5, * html div.span-6, * html div.span-7, * html div.span-8, * html div.span-9, * html div.span-10, * html div.span-11, * html div.span-12, * html div.span-13, * html div.span-14, * html div.span-15, * html div.span-16, * html div.span-17, * html div.span-18, * html div.span-19, * html div.span-20, * html div.span-21, * html div.span-22, * html div.span-23, * html div.span-24 {display:inline;overflow-x:hidden;}
18
+ * html legend {margin:0px -8px 16px 0;padding:0;}
19
+ sup {vertical-align:text-top;}
20
+ sub {vertical-align:text-bottom;}
21
+ html>body p code {*white-space:normal;}
22
+ hr {margin:-8px auto 11px;}
23
+ img {-ms-interpolation-mode:bicubic;}
24
+ .clearfix, .container {display:inline-block;}
25
+ * html .clearfix, * html .container {height:1%;}
26
+ fieldset {padding-top:0;}
27
+ textarea {overflow:auto;}
28
+ input.text, input.title, textarea {background-color:#fff;border:1px solid #bbb;}
29
+ input.text:focus, input.title:focus {border-color:#666;}
30
+ input.text, input.title, textarea, select {margin:0.5em 0;}
31
+ input.checkbox, input.radio {position:relative;top:.25em;}
32
+ form.inline div, form.inline p {vertical-align:middle;}
33
+ form.inline label {position:relative;top:-0.25em;}
34
+ form.inline input.checkbox, form.inline input.radio, form.inline input.button, form.inline button {margin:0.5em 0;}
35
+ button, input.button {position:relative;top:0.25em;}
@@ -0,0 +1,29 @@
1
+ /* -----------------------------------------------------------------------
2
+
3
+
4
+ Blueprint CSS Framework 0.9
5
+ http://blueprintcss.org
6
+
7
+ * Copyright (c) 2007-Present. See LICENSE for more info.
8
+ * See README for instructions on how to use Blueprint.
9
+ * For credits and origins, see AUTHORS.
10
+ * This is a compressed file. See the sources in the 'src' directory.
11
+
12
+ ----------------------------------------------------------------------- */
13
+
14
+ /* print.css */
15
+ body {line-height:1.5;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;color:#000;background:none;font-size:10pt;}
16
+ .container {background:none;}
17
+ hr {background:#ccc;color:#ccc;width:100%;height:2px;margin:2em 0;padding:0;border:none;}
18
+ hr.space {background:#fff;color:#fff;visibility:hidden;}
19
+ h1, h2, h3, h4, h5, h6 {font-family:"Helvetica Neue", Arial, "Lucida Grande", sans-serif;}
20
+ code {font:.9em "Courier New", Monaco, Courier, monospace;}
21
+ a img {border:none;}
22
+ p img.top {margin-top:0;}
23
+ blockquote {margin:1.5em;padding:1em;font-style:italic;font-size:.9em;}
24
+ .small {font-size:.9em;}
25
+ .large {font-size:1.1em;}
26
+ .quiet {color:#999;}
27
+ .hide {display:none;}
28
+ a:link, a:visited {background:transparent;font-weight:700;text-decoration:underline;}
29
+ a:link:after, a:visited:after {content:" (" attr(href) ")";font-size:90%;}
@@ -0,0 +1,257 @@
1
+ /* -----------------------------------------------------------------------
2
+
3
+
4
+ Blueprint CSS Framework 0.9
5
+ http://blueprintcss.org
6
+
7
+ * Copyright (c) 2007-Present. See LICENSE for more info.
8
+ * See README for instructions on how to use Blueprint.
9
+ * For credits and origins, see AUTHORS.
10
+ * This is a compressed file. See the sources in the 'src' directory.
11
+
12
+ ----------------------------------------------------------------------- */
13
+
14
+ /* reset.css */
15
+ html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
16
+ body {line-height:1.5;}
17
+ table {border-collapse:separate;border-spacing:0;}
18
+ caption, th, td {text-align:left;font-weight:normal;}
19
+ table, td, th {vertical-align:middle;}
20
+ blockquote:before, blockquote:after, q:before, q:after {content:"";}
21
+ blockquote, q {quotes:"" "";}
22
+ a img {border:none;}
23
+
24
+ /* typography.css */
25
+ html {font-size:100.01%;}
26
+ body {font-size:75%;color:#222;background:#fff;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;}
27
+ h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111;}
28
+ h1 {font-size:3em;line-height:1;margin-bottom:0.5em;}
29
+ h2 {font-size:2em;margin-bottom:0.75em;}
30
+ h3 {font-size:1.5em;line-height:1;margin-bottom:1em;}
31
+ h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;}
32
+ h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
33
+ h6 {font-size:1em;font-weight:bold;}
34
+ h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
35
+ p {margin:0 0 1.5em;}
36
+ p img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
37
+ p img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
38
+ a:focus, a:hover {color:#000;}
39
+ a {color:#009;text-decoration:underline;}
40
+ blockquote {margin:1.5em;color:#666;font-style:italic;}
41
+ strong {font-weight:bold;}
42
+ em, dfn {font-style:italic;}
43
+ dfn {font-weight:bold;}
44
+ sup, sub {line-height:0;}
45
+ abbr, acronym {border-bottom:1px dotted #666;}
46
+ address {margin:0 0 1.5em;font-style:italic;}
47
+ del {color:#666;}
48
+ pre {margin:1.5em 0;white-space:pre;}
49
+ pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
50
+ li ul, li ol {margin:0;}
51
+ ul, ol {margin:0 1.5em 1.5em 0;padding-left:3.333em;}
52
+ ul {list-style-type:disc;}
53
+ ol {list-style-type:decimal;}
54
+ dl {margin:0 0 1.5em 0;}
55
+ dl dt {font-weight:bold;}
56
+ dd {margin-left:1.5em;}
57
+ table {margin-bottom:1.4em;width:100%;}
58
+ th {font-weight:bold;}
59
+ thead th {background:#c3d9ff;}
60
+ th, td, caption {padding:4px 10px 4px 5px;}
61
+ tr.even td {background:#e5ecf9;}
62
+ tfoot {font-style:italic;}
63
+ caption {background:#eee;}
64
+ .small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
65
+ .large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
66
+ .hide {display:none;}
67
+ .quiet {color:#666;}
68
+ .loud {color:#000;}
69
+ .highlight {background:#ff0;}
70
+ .added {background:#060;color:#fff;}
71
+ .removed {background:#900;color:#fff;}
72
+ .first {margin-left:0;padding-left:0;}
73
+ .last {margin-right:0;padding-right:0;}
74
+ .top {margin-top:0;padding-top:0;}
75
+ .bottom {margin-bottom:0;padding-bottom:0;}
76
+
77
+ /* forms.css */
78
+ label {font-weight:bold;}
79
+ fieldset {padding:1.4em;margin:0 0 1.5em 0;border:1px solid #ccc;}
80
+ legend {font-weight:bold;font-size:1.2em;}
81
+ input[type=text], input[type=password], input.text, input.title, textarea, select {background-color:#fff;border:1px solid #bbb;}
82
+ input[type=text]:focus, input[type=password]:focus, input.text:focus, input.title:focus, textarea:focus, select:focus {border-color:#666;}
83
+ input[type=text], input[type=password], input.text, input.title, textarea, select {margin:0.5em 0;}
84
+ input.text, input.title {width:300px;padding:5px;}
85
+ input.title {font-size:1.5em;}
86
+ textarea {width:390px;height:250px;padding:5px;}
87
+ input[type=checkbox], input[type=radio], input.checkbox, input.radio {position:relative;top:.25em;}
88
+ form.inline {line-height:3;}
89
+ form.inline p {margin-bottom:0;}
90
+ .error, .notice, .success {padding:.8em;margin-bottom:1em;border:2px solid #ddd;}
91
+ .error {background:#FBE3E4;color:#8a1f11;border-color:#FBC2C4;}
92
+ .notice {background:#FFF6BF;color:#514721;border-color:#FFD324;}
93
+ .success {background:#E6EFC2;color:#264409;border-color:#C6D880;}
94
+ .error a {color:#8a1f11;}
95
+ .notice a {color:#514721;}
96
+ .success a {color:#264409;}
97
+
98
+ /* grid.css */
99
+ .container {width:950px;margin:0 auto;}
100
+ .showgrid {background:url(src/grid.png);}
101
+ .column, div.span-1, div.span-2, div.span-3, div.span-4, div.span-5, div.span-6, div.span-7, div.span-8, div.span-9, div.span-10, div.span-11, div.span-12, div.span-13, div.span-14, div.span-15, div.span-16, div.span-17, div.span-18, div.span-19, div.span-20, div.span-21, div.span-22, div.span-23, div.span-24 {float:left;margin-right:10px;}
102
+ .last, div.last {margin-right:0;}
103
+ .span-1 {width:30px;}
104
+ .span-2 {width:70px;}
105
+ .span-3 {width:110px;}
106
+ .span-4 {width:150px;}
107
+ .span-5 {width:190px;}
108
+ .span-6 {width:230px;}
109
+ .span-7 {width:270px;}
110
+ .span-8 {width:310px;}
111
+ .span-9 {width:350px;}
112
+ .span-10 {width:390px;}
113
+ .span-11 {width:430px;}
114
+ .span-12 {width:470px;}
115
+ .span-13 {width:510px;}
116
+ .span-14 {width:550px;}
117
+ .span-15 {width:590px;}
118
+ .span-16 {width:630px;}
119
+ .span-17 {width:670px;}
120
+ .span-18 {width:710px;}
121
+ .span-19 {width:750px;}
122
+ .span-20 {width:790px;}
123
+ .span-21 {width:830px;}
124
+ .span-22 {width:870px;}
125
+ .span-23 {width:910px;}
126
+ .span-24, div.span-24 {width:950px;margin-right:0;}
127
+ input.span-1, textarea.span-1, input.span-2, textarea.span-2, input.span-3, textarea.span-3, input.span-4, textarea.span-4, input.span-5, textarea.span-5, input.span-6, textarea.span-6, input.span-7, textarea.span-7, input.span-8, textarea.span-8, input.span-9, textarea.span-9, input.span-10, textarea.span-10, input.span-11, textarea.span-11, input.span-12, textarea.span-12, input.span-13, textarea.span-13, input.span-14, textarea.span-14, input.span-15, textarea.span-15, input.span-16, textarea.span-16, input.span-17, textarea.span-17, input.span-18, textarea.span-18, input.span-19, textarea.span-19, input.span-20, textarea.span-20, input.span-21, textarea.span-21, input.span-22, textarea.span-22, input.span-23, textarea.span-23, input.span-24, textarea.span-24 {border-left-width:1px!important;border-right-width:1px!important;padding-left:5px!important;padding-right:5px!important;}
128
+ input.span-1, textarea.span-1 {width:18px!important;}
129
+ input.span-2, textarea.span-2 {width:58px!important;}
130
+ input.span-3, textarea.span-3 {width:98px!important;}
131
+ input.span-4, textarea.span-4 {width:138px!important;}
132
+ input.span-5, textarea.span-5 {width:178px!important;}
133
+ input.span-6, textarea.span-6 {width:218px!important;}
134
+ input.span-7, textarea.span-7 {width:258px!important;}
135
+ input.span-8, textarea.span-8 {width:298px!important;}
136
+ input.span-9, textarea.span-9 {width:338px!important;}
137
+ input.span-10, textarea.span-10 {width:378px!important;}
138
+ input.span-11, textarea.span-11 {width:418px!important;}
139
+ input.span-12, textarea.span-12 {width:458px!important;}
140
+ input.span-13, textarea.span-13 {width:498px!important;}
141
+ input.span-14, textarea.span-14 {width:538px!important;}
142
+ input.span-15, textarea.span-15 {width:578px!important;}
143
+ input.span-16, textarea.span-16 {width:618px!important;}
144
+ input.span-17, textarea.span-17 {width:658px!important;}
145
+ input.span-18, textarea.span-18 {width:698px!important;}
146
+ input.span-19, textarea.span-19 {width:738px!important;}
147
+ input.span-20, textarea.span-20 {width:778px!important;}
148
+ input.span-21, textarea.span-21 {width:818px!important;}
149
+ input.span-22, textarea.span-22 {width:858px!important;}
150
+ input.span-23, textarea.span-23 {width:898px!important;}
151
+ input.span-24, textarea.span-24 {width:938px!important;}
152
+ .append-1 {padding-right:40px;}
153
+ .append-2 {padding-right:80px;}
154
+ .append-3 {padding-right:120px;}
155
+ .append-4 {padding-right:160px;}
156
+ .append-5 {padding-right:200px;}
157
+ .append-6 {padding-right:240px;}
158
+ .append-7 {padding-right:280px;}
159
+ .append-8 {padding-right:320px;}
160
+ .append-9 {padding-right:360px;}
161
+ .append-10 {padding-right:400px;}
162
+ .append-11 {padding-right:440px;}
163
+ .append-12 {padding-right:480px;}
164
+ .append-13 {padding-right:520px;}
165
+ .append-14 {padding-right:560px;}
166
+ .append-15 {padding-right:600px;}
167
+ .append-16 {padding-right:640px;}
168
+ .append-17 {padding-right:680px;}
169
+ .append-18 {padding-right:720px;}
170
+ .append-19 {padding-right:760px;}
171
+ .append-20 {padding-right:800px;}
172
+ .append-21 {padding-right:840px;}
173
+ .append-22 {padding-right:880px;}
174
+ .append-23 {padding-right:920px;}
175
+ .prepend-1 {padding-left:40px;}
176
+ .prepend-2 {padding-left:80px;}
177
+ .prepend-3 {padding-left:120px;}
178
+ .prepend-4 {padding-left:160px;}
179
+ .prepend-5 {padding-left:200px;}
180
+ .prepend-6 {padding-left:240px;}
181
+ .prepend-7 {padding-left:280px;}
182
+ .prepend-8 {padding-left:320px;}
183
+ .prepend-9 {padding-left:360px;}
184
+ .prepend-10 {padding-left:400px;}
185
+ .prepend-11 {padding-left:440px;}
186
+ .prepend-12 {padding-left:480px;}
187
+ .prepend-13 {padding-left:520px;}
188
+ .prepend-14 {padding-left:560px;}
189
+ .prepend-15 {padding-left:600px;}
190
+ .prepend-16 {padding-left:640px;}
191
+ .prepend-17 {padding-left:680px;}
192
+ .prepend-18 {padding-left:720px;}
193
+ .prepend-19 {padding-left:760px;}
194
+ .prepend-20 {padding-left:800px;}
195
+ .prepend-21 {padding-left:840px;}
196
+ .prepend-22 {padding-left:880px;}
197
+ .prepend-23 {padding-left:920px;}
198
+ div.border {padding-right:4px;margin-right:5px;border-right:1px solid #eee;}
199
+ div.colborder {padding-right:24px;margin-right:25px;border-right:1px solid #eee;}
200
+ .pull-1 {margin-left:-40px;}
201
+ .pull-2 {margin-left:-80px;}
202
+ .pull-3 {margin-left:-120px;}
203
+ .pull-4 {margin-left:-160px;}
204
+ .pull-5 {margin-left:-200px;}
205
+ .pull-6 {margin-left:-240px;}
206
+ .pull-7 {margin-left:-280px;}
207
+ .pull-8 {margin-left:-320px;}
208
+ .pull-9 {margin-left:-360px;}
209
+ .pull-10 {margin-left:-400px;}
210
+ .pull-11 {margin-left:-440px;}
211
+ .pull-12 {margin-left:-480px;}
212
+ .pull-13 {margin-left:-520px;}
213
+ .pull-14 {margin-left:-560px;}
214
+ .pull-15 {margin-left:-600px;}
215
+ .pull-16 {margin-left:-640px;}
216
+ .pull-17 {margin-left:-680px;}
217
+ .pull-18 {margin-left:-720px;}
218
+ .pull-19 {margin-left:-760px;}
219
+ .pull-20 {margin-left:-800px;}
220
+ .pull-21 {margin-left:-840px;}
221
+ .pull-22 {margin-left:-880px;}
222
+ .pull-23 {margin-left:-920px;}
223
+ .pull-24 {margin-left:-960px;}
224
+ .pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-13, .pull-14, .pull-15, .pull-16, .pull-17, .pull-18, .pull-19, .pull-20, .pull-21, .pull-22, .pull-23, .pull-24 {float:left;position:relative;}
225
+ .push-1 {margin:0 -40px 1.5em 40px;}
226
+ .push-2 {margin:0 -80px 1.5em 80px;}
227
+ .push-3 {margin:0 -120px 1.5em 120px;}
228
+ .push-4 {margin:0 -160px 1.5em 160px;}
229
+ .push-5 {margin:0 -200px 1.5em 200px;}
230
+ .push-6 {margin:0 -240px 1.5em 240px;}
231
+ .push-7 {margin:0 -280px 1.5em 280px;}
232
+ .push-8 {margin:0 -320px 1.5em 320px;}
233
+ .push-9 {margin:0 -360px 1.5em 360px;}
234
+ .push-10 {margin:0 -400px 1.5em 400px;}
235
+ .push-11 {margin:0 -440px 1.5em 440px;}
236
+ .push-12 {margin:0 -480px 1.5em 480px;}
237
+ .push-13 {margin:0 -520px 1.5em 520px;}
238
+ .push-14 {margin:0 -560px 1.5em 560px;}
239
+ .push-15 {margin:0 -600px 1.5em 600px;}
240
+ .push-16 {margin:0 -640px 1.5em 640px;}
241
+ .push-17 {margin:0 -680px 1.5em 680px;}
242
+ .push-18 {margin:0 -720px 1.5em 720px;}
243
+ .push-19 {margin:0 -760px 1.5em 760px;}
244
+ .push-20 {margin:0 -800px 1.5em 800px;}
245
+ .push-21 {margin:0 -840px 1.5em 840px;}
246
+ .push-22 {margin:0 -880px 1.5em 880px;}
247
+ .push-23 {margin:0 -920px 1.5em 920px;}
248
+ .push-24 {margin:0 -960px 1.5em 960px;}
249
+ .push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-13, .push-14, .push-15, .push-16, .push-17, .push-18, .push-19, .push-20, .push-21, .push-22, .push-23, .push-24 {float:right;position:relative;}
250
+ .prepend-top {margin-top:1.5em;}
251
+ .append-bottom {margin-bottom:1.5em;}
252
+ .box {padding:1.5em;margin-bottom:1.5em;background:#E5ECF9;}
253
+ hr {background:#ddd;color:#ddd;clear:both;float:none;width:100%;height:.1em;margin:0 0 1.45em;border:none;}
254
+ hr.space {background:#fff;color:#fff;visibility:hidden;}
255
+ .clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;overflow:hidden;}
256
+ .clearfix, .container {display:block;}
257
+ .clear {clear:both;}