redcar 0.3.10.1dev → 0.4

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 (460) hide show
  1. data/CHANGES +12 -2
  2. data/README.md +1 -2
  3. data/Rakefile +1 -1
  4. data/bin/redcar +4 -4
  5. data/lib/redcar.rb +3 -3
  6. data/lib/redcar/installer.rb +3 -3
  7. data/lib/redcar/runner.rb +5 -1
  8. data/lib/redcar/usage.rb +2 -1
  9. data/plugins/application/features/step_definitions/tree_steps.rb +20 -9
  10. data/plugins/application/features/support/env.rb +27 -8
  11. data/plugins/application/lib/application/command/executor.rb +5 -1
  12. data/plugins/application/lib/application/menu/builder/group.rb +4 -0
  13. data/plugins/application/lib/application/menu/item.rb +17 -2
  14. data/plugins/application/spec/application/command/executor_spec.rb +5 -0
  15. data/plugins/application_swt/lib/application_swt/event_loop.rb +10 -5
  16. data/plugins/application_swt/lib/application_swt/menu.rb +30 -19
  17. data/plugins/application_swt/lib/application_swt/swt_wrapper.rb +2 -0
  18. data/plugins/application_swt/lib/application_swt/window.rb +43 -43
  19. data/plugins/core/lib/core/gui.rb +6 -1
  20. data/plugins/core/lib/core/observable.rb +1 -1
  21. data/plugins/core/spec/core/task_queue_spec.rb +2 -5
  22. data/plugins/declarations/lib/declarations.rb +5 -1
  23. data/plugins/declarations/lib/declarations/file.rb +1 -1
  24. data/plugins/declarations/lib/declarations/parser.rb +60 -16
  25. data/plugins/edit_view/features/step_definitions/tab_steps.rb +4 -0
  26. data/plugins/edit_view/features/step_definitions/window_steps.rb +1 -1
  27. data/plugins/edit_view/features/support/env.rb +5 -0
  28. data/plugins/edit_view/lib/edit_view.rb +3 -1
  29. data/plugins/edit_view/lib/edit_view/document.rb +10 -0
  30. data/plugins/edit_view/lib/edit_view/document/mirror.rb +1 -1
  31. data/plugins/edit_view_swt/lib/edit_view_swt.rb +3 -0
  32. data/plugins/find-in-project/README.md +9 -0
  33. data/plugins/find-in-project/TODO.md +8 -0
  34. data/plugins/find-in-project/lib/find_in_project.rb +58 -0
  35. data/plugins/find-in-project/lib/find_in_project/commands.rb +43 -0
  36. data/plugins/find-in-project/lib/find_in_project/controllers.rb +108 -0
  37. data/plugins/find-in-project/lib/find_in_project/engines/ack.rb +42 -0
  38. data/plugins/find-in-project/lib/find_in_project/engines/grep.rb +52 -0
  39. data/plugins/find-in-project/lib/find_in_project/images/collapsed.png +0 -0
  40. data/plugins/find-in-project/lib/find_in_project/images/expanded.png +0 -0
  41. data/plugins/find-in-project/lib/find_in_project/stylesheets/style.css +205 -0
  42. data/plugins/find-in-project/lib/find_in_project/views/_results.html.erb +50 -0
  43. data/plugins/find-in-project/lib/find_in_project/views/index.html.erb +120 -0
  44. data/plugins/find-in-project/plugin.rb +10 -0
  45. data/plugins/html_view/features/step_definitions/html_view_steps.rb +20 -0
  46. data/plugins/html_view/features/support/env.rb +0 -0
  47. data/plugins/html_view/lib/html_view.rb +3 -1
  48. data/plugins/outline_view/lib/outline_view.rb +64 -0
  49. data/plugins/outline_view/lib/outline_view/commands.rb +13 -0
  50. data/plugins/outline_view/plugin.rb +10 -0
  51. data/plugins/outline_view_swt/lib/icons/alias.png +0 -0
  52. data/plugins/outline_view_swt/lib/icons/assignment.png +0 -0
  53. data/plugins/outline_view_swt/lib/icons/attribute.png +0 -0
  54. data/plugins/outline_view_swt/lib/icons/class.png +0 -0
  55. data/plugins/outline_view_swt/lib/icons/interface.png +0 -0
  56. data/plugins/outline_view_swt/lib/icons/method.png +0 -0
  57. data/plugins/outline_view_swt/lib/outline_view_swt.rb +81 -0
  58. data/plugins/outline_view_swt/plugin.rb +7 -0
  59. data/plugins/pair_highlighter/lib/pair_highlighter.rb +34 -0
  60. data/plugins/pair_highlighter/lib/pair_highlighter/document_controller.rb +185 -0
  61. data/plugins/pair_highlighter/plugin.rb +9 -0
  62. data/plugins/project/features/open_directory_tree.feature +1 -1
  63. data/plugins/project/features/refresh_directory_tree.feature +8 -8
  64. data/plugins/project/features/step_definitions/file_steps.rb +2 -2
  65. data/plugins/project/lib/project.rb +8 -4
  66. data/plugins/project/lib/project/adapters/remote_protocols/ftp.rb +0 -4
  67. data/plugins/project/lib/project/adapters/remote_protocols/protocol.rb +0 -4
  68. data/plugins/project/lib/project/adapters/remote_protocols/sftp.rb +0 -1
  69. data/plugins/project/lib/project/manager.rb +0 -2
  70. data/plugins/project/spec/project/adapters/remote_protocols/ftp_spec.rb +4 -0
  71. data/plugins/project/spec/project/adapters/remote_protocols/sftp_spec.rb +3 -0
  72. data/plugins/redcar/plugin.rb +2 -1
  73. data/plugins/redcar/redcar.rb +149 -138
  74. data/plugins/redcar_debug/lib/redcar_debug.rb +7 -0
  75. data/plugins/runnables/features/command_tree.feature +25 -0
  76. data/plugins/runnables/features/run_command_tab.feature +46 -0
  77. data/plugins/runnables/features/step_definitions/runnable_steps.rb +22 -0
  78. data/plugins/runnables/features/support/env.rb +67 -0
  79. data/plugins/runnables/lib/runnables.rb +55 -18
  80. data/plugins/runnables/lib/runnables/command_output_controller.rb +82 -28
  81. data/plugins/runnables/views/command_output.html.erb +16 -37
  82. data/plugins/runnables/views/default.css +68 -0
  83. data/plugins/runnables/views/indicator.gif +0 -0
  84. data/plugins/runnables/views/redcar_small_icon.png +0 -0
  85. data/plugins/runnables/views/reset.css +53 -0
  86. data/plugins/runnables/views/running_test.html +41 -0
  87. data/plugins/runnables/views/wedgeDown.png +0 -0
  88. data/plugins/runnables/views/wedgeRight.png +0 -0
  89. data/plugins/scm/icons/ATTRIBUTION +5 -0
  90. data/plugins/scm/icons/folder--arrow.png +0 -0
  91. data/plugins/scm/icons/folder--exclamation.png +0 -0
  92. data/plugins/scm/icons/folder--minus.png +0 -0
  93. data/plugins/scm/icons/folder--pencil.png +0 -0
  94. data/plugins/scm/icons/folder--plus.png +0 -0
  95. data/plugins/scm/icons/notebook--arrow.png +0 -0
  96. data/plugins/scm/icons/notebook--exclamation.png +0 -0
  97. data/plugins/scm/icons/notebook--minus.png +0 -0
  98. data/plugins/scm/icons/notebook--pencil.png +0 -0
  99. data/plugins/scm/icons/notebook--plus.png +0 -0
  100. data/plugins/scm/lib/scm.rb +278 -0
  101. data/plugins/scm/lib/scm/commit_mirror.rb +72 -0
  102. data/plugins/scm/lib/scm/diff_mirror.rb +31 -0
  103. data/plugins/scm/lib/scm/errors.rb +8 -0
  104. data/plugins/scm/lib/scm/model.rb +254 -0
  105. data/plugins/scm/lib/scm/scm_changes_controller.rb +94 -0
  106. data/plugins/scm/lib/scm/scm_changes_mirror.rb +51 -0
  107. data/plugins/scm/lib/scm/scm_changes_mirror/change.rb +61 -0
  108. data/plugins/scm/lib/scm/scm_changes_mirror/changes_node.rb +47 -0
  109. data/plugins/scm/lib/scm/scm_changes_mirror/drag_controller.rb +78 -0
  110. data/plugins/scm/lib/scm/scm_commits_controller.rb +49 -0
  111. data/plugins/scm/lib/scm/scm_commits_mirror.rb +36 -0
  112. data/plugins/scm/lib/scm/scm_commits_mirror/commit.rb +26 -0
  113. data/plugins/scm/lib/scm/scm_commits_mirror/commits_node.rb +38 -0
  114. data/plugins/scm/plugin.rb +8 -0
  115. data/plugins/scm/spec/spec_helper.rb +5 -0
  116. data/plugins/scm/vendor/ruby-blockcache/LICENSE +21 -0
  117. data/plugins/scm/vendor/ruby-blockcache/README.md +44 -0
  118. data/plugins/scm/vendor/ruby-blockcache/lib/blockcache.rb +120 -0
  119. data/plugins/scm_git/lib/scm_git.rb +478 -0
  120. data/plugins/scm_git/lib/scm_git/change.rb +127 -0
  121. data/plugins/scm_git/lib/scm_git/commit.rb +18 -0
  122. data/plugins/scm_git/lib/scm_git/config_file.rb +31 -0
  123. data/plugins/scm_git/plugin.rb +7 -0
  124. data/plugins/scm_git/vendor/ruby-git/History.txt +21 -0
  125. data/plugins/scm_git/vendor/ruby-git/LICENSE +21 -0
  126. data/plugins/scm_git/vendor/ruby-git/README +240 -0
  127. data/plugins/scm_git/vendor/ruby-git/Rakefile +51 -0
  128. data/plugins/scm_git/vendor/ruby-git/TODO +27 -0
  129. data/plugins/scm_git/vendor/ruby-git/VERSION +1 -0
  130. data/plugins/scm_git/vendor/ruby-git/benchmark.rb +157 -0
  131. data/plugins/scm_git/vendor/ruby-git/camping/gitweb.rb +555 -0
  132. data/plugins/scm_git/vendor/ruby-git/git.gemspec +53 -0
  133. data/plugins/scm_git/vendor/ruby-git/lib/git.rb +156 -0
  134. data/plugins/scm_git/vendor/ruby-git/lib/git/author.rb +14 -0
  135. data/plugins/scm_git/vendor/ruby-git/lib/git/base.rb +479 -0
  136. data/plugins/scm_git/vendor/ruby-git/lib/git/branch.rb +104 -0
  137. data/plugins/scm_git/vendor/ruby-git/lib/git/branches.rb +48 -0
  138. data/plugins/scm_git/vendor/ruby-git/lib/git/diff.rb +146 -0
  139. data/plugins/scm_git/vendor/ruby-git/lib/git/index.rb +5 -0
  140. data/plugins/scm_git/vendor/ruby-git/lib/git/lib.rb +730 -0
  141. data/plugins/scm_git/vendor/ruby-git/lib/git/log.rb +117 -0
  142. data/plugins/scm_git/vendor/ruby-git/lib/git/object.rb +273 -0
  143. data/plugins/scm_git/vendor/ruby-git/lib/git/path.rb +27 -0
  144. data/plugins/scm_git/vendor/ruby-git/lib/git/remote.rb +40 -0
  145. data/plugins/scm_git/vendor/ruby-git/lib/git/repository.rb +4 -0
  146. data/plugins/scm_git/vendor/ruby-git/lib/git/stash.rb +27 -0
  147. data/plugins/scm_git/vendor/ruby-git/lib/git/stashes.rb +44 -0
  148. data/plugins/scm_git/vendor/ruby-git/lib/git/status.rb +127 -0
  149. data/plugins/scm_git/vendor/ruby-git/lib/git/working_directory.rb +4 -0
  150. data/plugins/scm_git/vendor/ruby-git/ruby-git.gemspec +15 -0
  151. data/plugins/scm_git/vendor/ruby-git/tests/all_tests.rb +4 -0
  152. data/plugins/scm_git/vendor/ruby-git/tests/files/index +0 -0
  153. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/FETCH_HEAD +1 -0
  154. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/HEAD +1 -0
  155. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/config +13 -0
  156. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/description +1 -0
  157. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/applypatch-msg +15 -0
  158. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/commit-msg +21 -0
  159. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/post-commit +8 -0
  160. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/post-receive +16 -0
  161. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/post-update +8 -0
  162. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/pre-applypatch +14 -0
  163. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/pre-commit +70 -0
  164. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/pre-rebase +150 -0
  165. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/update +78 -0
  166. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/index +0 -0
  167. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/info/exclude +6 -0
  168. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/HEAD +75 -0
  169. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/git_grep +5 -0
  170. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/master +64 -0
  171. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/test +3 -0
  172. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/test_branches +1 -0
  173. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/test_object +2 -0
  174. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/remotes/working/master +1 -0
  175. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/00/62cdf4c1e63069eececf54325535e91fd57c42 +0 -0
  176. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/00/ea60e1331b184386392037a7267dfb4a7c7d86 +0 -0
  177. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/01/0b7b79019cb510d8c5849704fd10541655916d +0 -0
  178. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/01/dd46ebe07fc30c10c85c2e926c70f2d7058a6b +0 -0
  179. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/02/b2a02844d00574c234d17bec6294e832f3c4c1 +0 -0
  180. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/06/f4e8a840d23fc0ab94895a5d16827a19f75fb7 +0 -0
  181. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0b/2fe00801b62b7760c23d554796b05abc16af92 +0 -0
  182. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0b/5262f6ee3552a99b7081a317e8289d6a4d8e72 +0 -0
  183. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0b/c0d846cf80b079e763e35c3af273171bf01fca +0 -0
  184. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0d/2c47f07277b3ea30b0884f8e3acd68440507c8 +0 -0
  185. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0d/519ca9c2eddc44431efe135d0fc8df00e0b975 +0 -0
  186. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0f/845a0a981bc2f61354fcdd2b6eafe2b2c55c2d +3 -0
  187. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0f/f4a0357c3d7221a2ef1e4c6b7d5c46d97fe250 +0 -0
  188. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/12/eb889f49f1464b32a51424d7724fb16f6c3a31 +0 -0
  189. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/15/34a65657edf4e5caaa5ce35652dca5e4c7d316 +0 -0
  190. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/15/378a1f3eafe4c5ab4f890883356df917ee5539 +2 -0
  191. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/16/9e6db43d4c09cd610179a7b9826483b4d94123 +0 -0
  192. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/16/d1f96acfd92d09c4f1f56d3441ac55dd30500e +0 -0
  193. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/16/ee5335538f11b4ffcc17b051f8d5db7570a055 +0 -0
  194. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/17/9ef0e0209e90af00f544ff414e0674dfb5f5c7 +0 -0
  195. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/19/9d2f8e60fddd1bb2a1b0bddedde35e5aa8b03f +0 -0
  196. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1c/c8667014381e2788a94777532a788307f38d26 +1 -0
  197. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1c/fcfba04eb4e461e9f930d22f528023ab1ddefc +0 -0
  198. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1d/7be4117ded4534789d85c42ab579644cd3fa12 +0 -0
  199. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1d/9e4767a95047ca5e395714985afaedb186f4cd +1 -0
  200. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1f/09f2edb9c0d9275d15960771b363ca6940fbe3 +0 -0
  201. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1f/691b879df15cf6742502ffc59833b4a40e7aef +0 -0
  202. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/23/751ef6c1fed1304ae1d07020aa73da6f2b93b0 +1 -0
  203. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/24/5582a71306d7360e40c07cd7d849a1aa14a31e +0 -0
  204. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/26/3e3c527004e7b742ed1f747c1bfb7e11825d7a +0 -0
  205. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/27/c0c003dda3e59ba236f53f6661faaf74432b5c +0 -0
  206. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/29/1b6be488d6abc586d3ee03ca61238766625a75 +0 -0
  207. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2a/f6f7d51b7afdd404a871581ebb3b6ac07fb8cc +0 -0
  208. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2c/ef51480d44dcc262d16be2812c692d940d5f29 +0 -0
  209. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2e/20132e8fd40cb3e82248919a10900d31f1816a +0 -0
  210. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2e/939fd37bbd2da971faa27c3e3de7d5aad40507 +0 -0
  211. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2f/53e667d1d88e75b3fa300f9ab6e2d8ffd32a15 +0 -0
  212. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/32/4968b9dc40253f2c52a8e3856398c761dea856 +0 -0
  213. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/33/8ecb0183d507498aedb669b796b4f9e8880f00 +0 -0
  214. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/33/edabb4334cbe849a477a0d2893cdb768fa3091 +0 -0
  215. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/34/a566d193dc4702f03149969a2aad1443231560 +1 -0
  216. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/36/fe213c328fd280f33abe00069c4b92eb5a88d1 +0 -0
  217. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/39/66e9fa0e0b9fe9d3ef2fdaa6933f3d0bb82bc3 +0 -0
  218. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3a/9f195756f5bd26b67c5e1fffd92d68d61be14e +2 -0
  219. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3a/ac4b445017a8fc07502670ec2dbf744213dd48 +0 -0
  220. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3b/6eeed9ce43ea893cf48d263da93448edae9f1c +0 -0
  221. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3c/644f22b9b8edb06e7e298ecac8e71b133061f1 +0 -0
  222. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3c/c71b13d906e445da52785ddeff40dad1163d49 +2 -0
  223. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3c/f35bd14cf5f2dd08bbeef8698d700f3a038e5c +0 -0
  224. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3d/331db92a8ead0565679efb76f328ae69ed1b77 +0 -0
  225. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/44/88516c3c936db58ea485ec2213dab9d13e6628 +0 -0
  226. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/44/987dd95c338fb573726541f270f1a7b55c9d51 +0 -0
  227. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/45/20c29b885e9db9b0df3c7bab7870157e1d00c3 +0 -0
  228. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/45/b983be36b73c0788dc9cbcb76cbb80fc7bb057 +0 -0
  229. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/46/00557506be20eb1501a4f15a52e684d4b9ee61 +0 -0
  230. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/46/a60232117527e7b57ac0dd5ea4af2cd3fdb696 +0 -0
  231. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/47/0f6a87fa51dd25f6db0f4725ae37791d449356 +0 -0
  232. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/47/2650d42fa9454e2e61e3da9f5c158b8af6d298 +0 -0
  233. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/47/8e5ee111572790b248eaa99140c5a8f728abc7 +0 -0
  234. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/48/bbf0db7e813affab7d8dd2842b8455ff9876be +0 -0
  235. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/49/b352299735fda3a333c69c6273178b0c3dfa08 +0 -0
  236. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4a/1e3e4500962c3631a479726bf2e40469594cba +0 -0
  237. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4a/2bee50944e9285e8f82216c9b0b8a7d3cdd315 +0 -0
  238. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4a/4e676afe275afecf23130390fe96d0e6d00057 +0 -0
  239. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4a/de99433ac3e4bcc874cd7de488de29399e9096 +1 -0
  240. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4b/7c90536eaa830d8c1f6ff49a7885b581d6acef +1 -0
  241. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4c/411dc8e6ea6fcba0ed56e84aa7707f881d24c7 +0 -0
  242. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4c/ce9432b2f80461324a61611f6143f8544cd80f +1 -0
  243. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4c/e44a75510cbfe200b131fdbcc56a86f1b2dc08 +0 -0
  244. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4d/35ba97a858072c240d327e3ce30c28b333a1b0 +0 -0
  245. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4d/ff9ef38ef09cbf0e36031bbee22b7cf0c7a8fc +1 -0
  246. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4e/aafb1d843aec4f8f1612d03de46a08c2143ea9 +0 -0
  247. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4e/ebc1b62c53241b7fbf7fb33b5230362595bfdd +0 -0
  248. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4f/4065121cb78fe6116ae7e3075f5c5a446bd08b +0 -0
  249. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/50/3d77289b054742f507d8a8ce7cc51d3841d5b9 +0 -0
  250. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/52/4038b20b297f40d78e7d83e04e38049457312b +0 -0
  251. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/53/a72df554e585e239e41cb1fc498d5aee9bb164 +0 -0
  252. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/0200385c3b0b299c7a87ecf59ca94c32fbbe99 +0 -0
  253. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/5c81a2e8d1112d5f7356f840a22e8f6abcef8f +2 -0
  254. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/5ffc79786f268524c35e1e05b1770c7c74faf1 +3 -0
  255. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/6bec6f8872efa41d5d97a369f669165ecda0de +0 -0
  256. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/7a4bae347658f0d9eed0d35d31b4561aea7cf8 +2 -0
  257. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/56/195ef83e9e20ca75dddef0630633fc8060ed11 +0 -0
  258. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/57/7ddd894033c46a5fcf2c6f3c4e71cc72f86909 +0 -0
  259. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/58/501cbd0fc5ce832f6b34d37243a520dc19a6cc +1 -0
  260. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/58/73a650a91eb238005444d2c637b451f687951b +0 -0
  261. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5a/28efd2fcf55b7b58eb7cc66b5db836155bc2bb +0 -0
  262. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5b/0be7da7cc9ecdb6c2de5f818c30a42fbd2c9fa +1 -0
  263. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5c/16fb8b958b51f6008f9722b279b1fde0defb76 +3 -0
  264. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5d/4606820736043f9eed2a6336661d6892c820a5 +0 -0
  265. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5e/392652a881999392c2757cf9b783c5d47b67f7 +0 -0
  266. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5e/53019b3238362144c2766f02a2c00d91fcc023 +2 -0
  267. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/62/70c7f48ca41e6fb41b745ddc1bffe521d83194 +2 -0
  268. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/62/7e1097cda3b2e3ad6ba4d3772c0985e1ff349c +0 -0
  269. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/62/bb94c53efae4d53fd0649d129baef4aca87af7 +3 -0
  270. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/62/c9331ffe97bb6388fb7968662b4e97d121e2da +0 -0
  271. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/63/1446ec50808846e31fff786c065e69da2c673b +0 -0
  272. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/64/d0c52ac4c061cf1705e3005dfd86fb70374a14 +0 -0
  273. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/66/80a909b0e02b297bedbe143ef789d297235358 +0 -0
  274. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/6b/790ddc5eab30f18cabdd0513e8f8dac0d2d3ed +0 -0
  275. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/6c/2d312ebd67eed4c7e97e3923b3667764e7360e +0 -0
  276. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/6d/e8fb35c2e4a69addd030f2dbb4f73fd4742b5b +0 -0
  277. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/6e/d281c757a969ffe22f3dcfa5830c532479c726 +0 -0
  278. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/70/714b02913c1a249a5ab05021742f0bc7065df7 +0 -0
  279. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/71/894b736711ea0a5def4f536009364d07ee4db3 +2 -0
  280. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/71/c9a23879ff0ac8c49b92d107f3f89c6d1b2d92 +1 -0
  281. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/73/b171450704ea4350f9f884426389fe04c6cd51 +0 -0
  282. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/74/32b657191a10587335e74ae6f0966a7eed2976 +0 -0
  283. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/79/e5b9e6ee5a1e6c52676a6332fe9163adaa92cb +0 -0
  284. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7c/076f209839d7f910e8c84e41cc94898287ef45 +0 -0
  285. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7c/60c6ab64c74d52f973d18cd1933318a8d9ae2e +0 -0
  286. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7c/ac4f8d519d524ed025732ee220f6451665a770 +0 -0
  287. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7f/5625f6b3c7213287a12c89017361248ed88936 +0 -0
  288. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7f/86d16e0254f64f784198c6a55ef9bf7adbe7ce +0 -0
  289. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7f/bfee9f8882ada1ec45c4925baf5649d96c4a16 +0 -0
  290. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/81/25fbe8605d2884e732a185c9a24abcc0d12a1f +0 -0
  291. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/81/d4d5e9b6db474d0f432aa31d44bf690d841e94 +0 -0
  292. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/81/f545324202466d44115656ea463a5bb114345f +0 -0
  293. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/82/d331cf4d3d4ee537c4f866cab2633b46a8d090 +0 -0
  294. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/83/c6a1f0d7d8df18a9d9bfe917707aec37868418 +0 -0
  295. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/85/8f46dd7496faf7af72102ca15cccff832b5377 +0 -0
  296. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/87/c56502c73149f006631129f85dff697e000356 +0 -0
  297. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/88/cf23d06f519bec7b824acd52b87a729555f2e7 +0 -0
  298. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8a/3fb747983bf2a7f4ef136af4bfcf7993a19307 +0 -0
  299. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8b/00d915a0ee5aeb32e0b166e1054c2901338c9d +0 -0
  300. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8c/e3ee48a7e7ec697a99ee33700ec624548ad9e8 +0 -0
  301. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8d/ae07ab9d98b5fe04d4d7ed804cc36441b68dab +0 -0
  302. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8d/c79ae7616abf1e2d4d5d97d566f2b2f6cee043 +0 -0
  303. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/92/4dec9203af851c3b3e564697ab3004b35b3c2f +0 -0
  304. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/93/06c056ba3ef9dca6f6365af38148c71196533a +0 -0
  305. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/93/5badc874edd62a8629aaf103418092c73f0a56 +1 -0
  306. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/94/c827875e2cadb8bc8d4cdd900f19aa9e8634c7 +0 -0
  307. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/95/ef665df6ebd69842c5e74a24cb8a12225dee3e +0 -0
  308. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/98/fb6a686563963b8f7e552d747158adbc1c2bd6 +0 -0
  309. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/99/3dd9b1cdeab53e305886c91dbcbc8929eff22e +1 -0
  310. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9a/e1fbd7636c99d34fdd395cf9bb21ad51417ce7 +1 -0
  311. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9b/5149aa4ace4ef69461803b0ccbb21139e12626 +0 -0
  312. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9d/3ad2f09cb7a1d4f4c91182c96f2be537fbc4ff +0 -0
  313. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9d/6f937544dc3b936d6ee1466d6e216ba18d5686 +0 -0
  314. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9f/a43bcd45af28e109e6f7b9a6ccd26e8e193a63 +0 -0
  315. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a0/b3f35b3c39cfb12c4cc819bffe1cf54efb3642 +2 -0
  316. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a1/15413501949f4f09811fd1aaecf136c012c7d7 +0 -0
  317. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a1/a3069efcc64330fb6c66004e69b870da3d6186 +0 -0
  318. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a3/62d30d5fe1021cabc4c90f073ba2511d5a43a1 +0 -0
  319. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a3/c1f067074cdc9aa998cb5f3cad46a6f17aab2d +0 -0
  320. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a3/db7143944dcfa006fefe7fb49c48793cb29ade +2 -0
  321. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a4/4a5e945176ff31be83ffca3e7c68a8b6a45ea5 +1 -0
  322. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a5/1546fabf88ddef5a9fd91b3989dd8ccae2edf3 +0 -0
  323. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a6/b25c4b27ee99f93fd611154202af5f9e3c99de +2 -0
  324. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a7/88a1cba299638a2c898fcfaae1f69a1549853d +0 -0
  325. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a8/98e8a6b143188022863bc1cab0b5f7514624ba +0 -0
  326. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a8/b607b221454c4cd7bc7831b2d19712bb4ff888 +0 -0
  327. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a9/e2d9b71b616531f04a65ae5b972ba5d1f2cb93 +0 -0
  328. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a9/e2f17562ae78a75dc855bb3dc9e87364195dcf +0 -0
  329. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ab/16bc1812fd6226780a841300a2432dfd0c6719 +0 -0
  330. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ac/8f48bbb7b31c945ba6a4fbe6950d009a5d8373 +0 -0
  331. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ae/21cabd23aee99a719fc828977c0df9e8b19363 +0 -0
  332. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b0/3003311ad3fa368b475df58390353868e13c91 +2 -0
  333. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b0/ee249c5e5cc9464f3bc0034ab05632dcb87a23 +0 -0
  334. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b1/288f8beeaa6cf048c3a9f578d4e266fab8820e +0 -0
  335. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b1/5336206c9040f4c52660b3f3c76ee02ccece56 +0 -0
  336. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b1/b18f5bea24648a1b08e5bba88728c15ec3cb50 +2 -0
  337. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b4/5724ee906d2561901208ba924add09ab95ccb3 +0 -0
  338. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b5/d8fc3cb740eb643c66eb5f4a97345fdb806259 +0 -0
  339. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b6/153b8fe540288d66b974ae05113338ab1a61f0 +0 -0
  340. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b6/987bc1201ad19774c43c0ea8078f6f51d76bcb +0 -0
  341. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b6/9e6acd87e5f9114ce6580b095ef1057a8fe5bb +0 -0
  342. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b9/8f4909807c8c84a1dc1b62b4a339ae1777f369 +3 -0
  343. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ba/492c62b6227d7f3507b4dcc6e6d5f13790eabf +0 -0
  344. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ba/c335cb9dc058a477d04cde34c07d1f70d16fb9 +0 -0
  345. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/bb/0850568bb43049031a38b01ddb60e4a487f823 +0 -0
  346. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/be/b14380ef26540efcad06bedcd0e302b6bce70e +0 -0
  347. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/c1/3142dd26a1f6f38403a17f6c411cb621b9a1cd +0 -0
  348. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/c1/8b4e9b0829411705d7fa9a1570a20d88780817 +0 -0
  349. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/c5/a3fdb33f052b8f17dac83c533b62244226f4ba +0 -0
  350. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/c6/567e2feccce3893ae0aaac2bf97807338aa8d4 +0 -0
  351. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cb/45eef6fa1ad913137d91c6b81d2b42d69094a6 +0 -0
  352. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cd/0d59357b36a447ff27a7c176b46e0a319b42df +0 -0
  353. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cd/4291452a61ff8b57cf5510addc8ddc5630748e +0 -0
  354. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cf/7135368cc3bf4920ceeaeebd083e098cfad355 +4 -0
  355. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cf/b9952c3a28831144a0fac7ea5a2d8517f466c4 +0 -0
  356. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d0/0491fd7e5bb6fa28c517a0bb32b8b506539d4d +0 -0
  357. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d1/4cbc09cc34fb6450b2e96432102be51c8292b8 +0 -0
  358. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d3/d171221e87a30e059d638f155f899595d96b71 +0 -0
  359. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d5/b9587b65731e25216743b0caca72051a760211 +2 -0
  360. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d6/a3aab3e38bc16688b4e636a91e462434210878 +0 -0
  361. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d6/f31c35d7e010e50568c0d605227028aa7bac66 +0 -0
  362. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d7/875788aeafdd8e317880c00e3372f683cad91e +0 -0
  363. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d7/d8a71a719e2a4ca501991a66dab47df804f6ad +0 -0
  364. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d7/e844eec32d74a3d37c4ce02d7138658e1035d6 +0 -0
  365. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/da/597fb7fba247a5b59d917e90342cf4b9695905 +0 -0
  366. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/da/7b788b1575936a4381050610a37737c70b55a0 +1 -0
  367. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/de/996da0ef3dcee1a28aef9243aa3e255eb825b5 +0 -0
  368. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/de/d54b45e4d49816f6d4256e74d45ba2bb351357 +0 -0
  369. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e3/6f723934fd1d67c7d21538751f0b1e941141db +0 -0
  370. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e3/ebef76525fe9e6e8dc739934a08512dff777c0 +0 -0
  371. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e5/0fa6835cb99747346f19fea5f1ba939da4205f +2 -0
  372. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e5/650a5c9c4b5a4415195bfb01d4d8dccbc8221b +0 -0
  373. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e5/76bdfc9ed4627ac954f9390cf7a6151ad2a73e +0 -0
  374. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
  375. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e7/ea5938f9c009d32235050bca991d0b9533e440 +0 -0
  376. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e8/183f05f5db68b3934e93f4bf6bed2bb664e0b5 +0 -0
  377. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e8/bd03b163f82fba4560c11839d49361a78dec85 +0 -0
  378. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e9/0de8268373e4fd5ab13310b7745d47ec16813c +0 -0
  379. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ec/16a327a6a98367d03369b4e998baf3db379313 +0 -0
  380. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ec/1e3d44e160e18dbfbaa80b5b0780ccc03e678e +0 -0
  381. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ed/551aa66cf0c6f1a078832f80899faff0ae88dc +0 -0
  382. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f1/25480ee106989ec4d86554c0d5a1487ad4336a +1 -0
  383. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f1/410f8735f6f73d3599eb9b5cdd2fb70373335c +3 -0
  384. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f2/02cb755135d4263589602783b04fb32a079d88 +0 -0
  385. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f2/ff401fb3fc81f8abb3ca15247aadc1e22b6288 +0 -0
  386. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f5/501de98279c6454f510188873476f3ead0cee6 +4 -0
  387. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f7/5f313ca30e534aa9c42463e85108e682d3a14a +0 -0
  388. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f8/e9c6748331411c0d3511f90bd4e0a1a30acff0 +0 -0
  389. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f9/bce8995109cfab475d043a7dd9156d5e574ed3 +0 -0
  390. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/fa/6312f71abb153ada6a0399ad710d21bb61e4d8 +0 -0
  391. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/fb/8e78840d79085abf50edebf5b9d6b73ee0fb4c +0 -0
  392. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/fc/b49fa99454f804799a12095292edbca48779ab +0 -0
  393. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/fe/b2ccf88397c2d93f381176067be2727eba330b +0 -0
  394. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/git_grep +1 -0
  395. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/master +1 -0
  396. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/test +1 -0
  397. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/test_branches +1 -0
  398. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/test_object +1 -0
  399. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/remotes/working/master +1 -0
  400. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/gitsearch1 +1 -0
  401. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/v2.5 +1 -0
  402. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/v2.6 +1 -0
  403. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/v2.7 +1 -0
  404. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/v2.8 +1 -0
  405. data/plugins/scm_git/vendor/ruby-git/tests/files/working/ex_dir/ex.txt +0 -0
  406. data/plugins/scm_git/vendor/ruby-git/tests/files/working/example.txt +1 -0
  407. data/plugins/scm_git/vendor/ruby-git/tests/files/working/scott/newfile +1 -0
  408. data/plugins/scm_git/vendor/ruby-git/tests/files/working/scott/text.txt +8 -0
  409. data/plugins/scm_git/vendor/ruby-git/tests/test_helper.rb +67 -0
  410. data/plugins/scm_git/vendor/ruby-git/tests/units/test_archive.rb +55 -0
  411. data/plugins/scm_git/vendor/ruby-git/tests/units/test_bare.rb +41 -0
  412. data/plugins/scm_git/vendor/ruby-git/tests/units/test_branch.rb +92 -0
  413. data/plugins/scm_git/vendor/ruby-git/tests/units/test_config.rb +31 -0
  414. data/plugins/scm_git/vendor/ruby-git/tests/units/test_diff.rb +88 -0
  415. data/plugins/scm_git/vendor/ruby-git/tests/units/test_each_conflict.rb +49 -0
  416. data/plugins/scm_git/vendor/ruby-git/tests/units/test_git_path.rb +45 -0
  417. data/plugins/scm_git/vendor/ruby-git/tests/units/test_index_ops.rb +94 -0
  418. data/plugins/scm_git/vendor/ruby-git/tests/units/test_init.rb +75 -0
  419. data/plugins/scm_git/vendor/ruby-git/tests/units/test_lib.rb +168 -0
  420. data/plugins/scm_git/vendor/ruby-git/tests/units/test_log.rb +69 -0
  421. data/plugins/scm_git/vendor/ruby-git/tests/units/test_logger.rb +38 -0
  422. data/plugins/scm_git/vendor/ruby-git/tests/units/test_merge.rb +104 -0
  423. data/plugins/scm_git/vendor/ruby-git/tests/units/test_object.rb +138 -0
  424. data/plugins/scm_git/vendor/ruby-git/tests/units/test_remotes.rb +85 -0
  425. data/plugins/scm_git/vendor/ruby-git/tests/units/test_repack.rb +30 -0
  426. data/plugins/scm_git/vendor/ruby-git/tests/units/test_stashes.rb +36 -0
  427. data/plugins/scm_git/vendor/ruby-git/tests/units/test_tags.rb +35 -0
  428. data/plugins/scm_git/vendor/ruby-git/tests/units/test_tree_ops.rb +121 -0
  429. data/plugins/scm_hg/lib/scm_hg.rb +30 -0
  430. data/plugins/scm_hg/plugin.rb +7 -0
  431. data/plugins/scm_svn/lib/scm_svn.rb +30 -0
  432. data/plugins/scm_svn/plugin.rb +7 -0
  433. data/plugins/strip_trailing_spaces/lib/strip_trailing_spaces.rb +10 -5
  434. data/plugins/textmate/ATTRIBUTION +4 -0
  435. data/plugins/textmate/features/bundle_tree.feature +23 -0
  436. data/plugins/textmate/features/step_definitions/tree_steps.rb +57 -0
  437. data/plugins/textmate/features/support/env.rb +19 -0
  438. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/If.tmSnippet +18 -0
  439. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/If__Else.tmSnippet +20 -0
  440. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Include.tmSnippet +16 -0
  441. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Loop.tmSnippet +18 -0
  442. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Unless.tmSnippet +18 -0
  443. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Var.tmSnippet +16 -0
  444. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/next_If__Else.tmSnippet +20 -0
  445. data/plugins/textmate/features/support/test_bundle.tmbundle/info.plist +26 -0
  446. data/plugins/textmate/icons/document-snippet.png +0 -0
  447. data/plugins/textmate/icons/tree_mode.gif +0 -0
  448. data/plugins/textmate/icons/ui-menu-blue.png +0 -0
  449. data/plugins/textmate/lib/textmate.rb +82 -27
  450. data/plugins/textmate/lib/textmate/bundle.rb +32 -28
  451. data/plugins/textmate/lib/textmate/commands.rb +79 -0
  452. data/plugins/textmate/lib/textmate/tree_mirror.rb +205 -0
  453. data/plugins/todo_list/README.md +22 -0
  454. data/plugins/todo_list/lib/todo_list.rb +41 -0
  455. data/plugins/todo_list/lib/todo_list/file_parser.rb +54 -0
  456. data/plugins/todo_list/lib/todo_list/todo_controller.rb +137 -0
  457. data/plugins/todo_list/plugin.rb +11 -0
  458. data/plugins/todo_list/views/index.html.erb +22 -0
  459. data/plugins/tree_view_swt/lib/tree_view_swt.rb +3 -1
  460. metadata +4595 -4174
@@ -0,0 +1,185 @@
1
+
2
+ module Redcar
3
+ class PairHighlighter
4
+ class DocumentController
5
+
6
+ attr_accessor :gc, :styledText, :document, :mate_text, :theme_name
7
+ attr_accessor :height, :width, :highlighted
8
+
9
+ include Redcar::Document::Controller
10
+ include Redcar::Document::Controller::ModificationCallbacks
11
+ include Redcar::Document::Controller::CursorCallbacks
12
+
13
+ def set_highlight_colour
14
+ if @theme_name == EditView.theme
15
+ return @colour if @colour
16
+ end
17
+
18
+ @theme_name = EditView.theme
19
+ @theme = @mate_text.colourer.getTheme()
20
+ @colour = @theme.globalSettings.get("pairHighlight")
21
+ if @colour
22
+ @colour = JavaMateView::SwtColourer.getColour(@colour)
23
+ else
24
+ @colour = ApplicationSWT.display.system_color Swt::SWT::COLOR_GRAY
25
+ end
26
+ @colour
27
+ end
28
+
29
+ def before_modify(start_offset, end_offset, text)
30
+ @wait = @wait + 1
31
+ end
32
+
33
+ def after_modify
34
+ @wait = @wait - 1
35
+ end
36
+
37
+ def initialize
38
+ @i = 0
39
+ @wait = 0
40
+ @theme_name = nil
41
+ @highlight = Highlighted.new
42
+ @open_pair_chars = ["{", "(", "["]
43
+ @close_pair_chars = ["}", ")", "]"]
44
+ @pair_chars = @open_pair_chars + @close_pair_chars
45
+ end
46
+
47
+ def highlight_pair(current, pair)
48
+ if current == nil or pair == nil
49
+ clear
50
+ return
51
+ elsif current == @highlight.current || current == @highlight.pair || pair == @highlight.current || pair == @highlight.pair
52
+ return
53
+ end
54
+
55
+ #puts "Highligh on offset " + current.to_s() + " and its pair at " + pair.to_s()
56
+ if document.length > 0
57
+ clear
58
+ #puts "Highligh on offset " + current.to_s() + " and its pair at " + pair.to_s()
59
+ gc = Swt::Graphics::GC.new(@styledText)
60
+ gc.setBackground(set_highlight_colour)
61
+ gc.setAlpha(98)
62
+ gc.fill_rectangle(styledText.getTextBounds(current, current))
63
+ gc.fill_rectangle(styledText.getTextBounds(pair, pair))
64
+ @highlight.set_on(current, pair)
65
+ gc.dispose() if gc
66
+ end
67
+ end
68
+
69
+ def clear
70
+ if @highlight.on?
71
+ styledText.redrawRange(@highlight.current, 1, false) if @highlight.current < document.length
72
+ styledText.redrawRange(@highlight.pair, 1, false) # if on the same line
73
+ @highlight.clear
74
+ end
75
+ end
76
+
77
+ def find_pair(step, offset, search_char, current_char)
78
+ if offset == 0
79
+ return nil
80
+ end
81
+ state = 1;
82
+ quotes = false
83
+ doublequotes = false
84
+
85
+ while offset > 0 and offset < document.length - 1
86
+ offset = offset + step;
87
+ @newchar = styledText.getTextRange(offset, 1)
88
+ if @newchar == search_char and !quotes and !doublequotes
89
+ state = state - 1
90
+ elsif @newchar == current_char and !quotes and !doublequotes
91
+ state = state + 1
92
+ elsif @newchar == '"'
93
+ doublequotes = !doublequotes
94
+ elsif @newchar == "'"
95
+ quotes = !quotes
96
+ end
97
+ if state == 0
98
+ return offset
99
+ end
100
+ end
101
+
102
+ if state != 0
103
+ return nil
104
+ end
105
+ end
106
+
107
+ def pair_of_offset(offset)
108
+ @char = document.get_range(offset, 1)
109
+ @index = @open_pair_chars.index(@char)
110
+ @newoffset = nil
111
+
112
+ if @index
113
+ @newoffset = find_pair(1, offset, @close_pair_chars[@index], @open_pair_chars[@index])
114
+ else
115
+ @index = @close_pair_chars.index(@char)
116
+ if @index
117
+ @newoffset = find_pair(-1, offset, @open_pair_chars[@index], @close_pair_chars[@index])
118
+ end
119
+ end
120
+ return @newoffset
121
+ end
122
+
123
+ def cursor_moved(offset)
124
+ if @wait > 0
125
+ return
126
+ end
127
+
128
+ pair = nil
129
+
130
+ if offset >= document.length
131
+ @char_next = nil
132
+ else
133
+ @char_next = document.get_range(offset, 1)
134
+ end
135
+
136
+ if offset > 0
137
+ @char_prev = document.get_range(offset-1, 1)
138
+ else
139
+ @char_prev = nil
140
+ end
141
+
142
+ if @char_next and @pair_chars.include?(@char_next)
143
+ pair = pair_of_offset(offset)
144
+ elsif @char_prev and @pair_chars.include?(@char_prev)
145
+ offset = offset - 1
146
+ pair = pair_of_offset(offset)
147
+ else
148
+ clear
149
+ end
150
+
151
+ highlight_pair(offset, pair)
152
+ end
153
+ end
154
+
155
+ class Highlighted
156
+ attr_accessor :on, :current, :pair
157
+
158
+ def initialize
159
+ clear
160
+ end
161
+
162
+ def clear
163
+ @on = false
164
+ @current = nil
165
+ @pair = nil
166
+ end
167
+
168
+ def on?
169
+ if @on
170
+ true
171
+ else
172
+ false
173
+ end
174
+ end
175
+
176
+ def set_on(current, pair)
177
+ if current and pair
178
+ @on = true
179
+ @current = current
180
+ @pair = pair
181
+ end
182
+ end
183
+ end
184
+ end
185
+ end
@@ -0,0 +1,9 @@
1
+
2
+ Plugin.define do
3
+ name "pair_highlighter"
4
+ version "1.0"
5
+ file "lib", "pair_highlighter"
6
+ object "Redcar::PairHighlighter"
7
+ dependencies "edit_view", ">0",
8
+ "textmate", ">0"
9
+ end
@@ -3,7 +3,7 @@ Feature: Open directory tree
3
3
  Scenario: Open directory
4
4
  Given I will choose "." from the "open_directory" dialog
5
5
  When I open a directory
6
- Then I should see "bin,config,lib,plugins" in the tree
6
+ Then I should see "bin,lib,plugins" in the tree
7
7
 
8
8
  Scenario: Open directory then another directory
9
9
  Given I will choose "." from the "open_directory" dialog
@@ -3,7 +3,7 @@ Feature: Refresh directory tree
3
3
  Scenario: Does not refresh instantly
4
4
  Given I will choose "." from the "open_directory" dialog
5
5
  When I open a directory
6
- Then I should see "bin,config,lib,plugins" in the tree
6
+ Then I should see "bin,lib,plugins" in the tree
7
7
  And I should not see "testyfile.txt" in the tree
8
8
  When I touch the file "./testyfile.txt"
9
9
  Then I should not see "testyfile.txt" in the tree
@@ -11,29 +11,29 @@ Feature: Refresh directory tree
11
11
  Scenario: I can manually refresh the tree
12
12
  Given I will choose "." from the "open_directory" dialog
13
13
  When I open a directory
14
- Then I should see "bin,config,lib,plugins" in the tree
14
+ Then I should see "bin,lib,plugins" in the tree
15
15
  And I should not see "testyfile.txt" in the tree
16
16
  When I touch the file "./testyfile.txt"
17
17
  And I refresh the directory tree
18
- Then I should see "bin,config,lib,plugins,testyfile.txt" in the tree
19
-
18
+ Then I should see "bin,lib,plugins,testyfile.txt" in the tree
19
+
20
20
  Scenario: Changing windows refreshed the tree
21
21
  Given I will choose "." from the "open_directory" dialog
22
22
  When I open a directory
23
- Then I should see "bin,config,lib,plugins" in the tree
23
+ Then I should see "bin,lib,plugins" in the tree
24
24
  And I should not see "testyfile.txt" in the tree
25
25
  When I touch the file "./testyfile.txt"
26
26
  When I open a new window
27
27
  And I focus the working directory window through the gui
28
- Then I should see "bin,config,lib,plugins,testyfile.txt" in the tree
28
+ Then I should see "bin,lib,plugins,testyfile.txt" in the tree
29
29
 
30
30
  Scenario: Refreshing the tree leaves rows expanded as they were before
31
31
  Given I will choose "." from the "open_directory" dialog
32
32
  When I open a directory
33
33
  And I expand the tree row "lib"
34
- Then I should see "bin,config,lib,freebase2,plugins" in the tree
34
+ Then I should see "bin,lib,redcar.rb,plugins" in the tree
35
35
  And I refresh the directory tree
36
- Then I should see "bin,config,lib,freebase2,plugins" in the tree
36
+ Then I should see "bin,lib,redcar.rb,plugins" in the tree
37
37
 
38
38
  Scenario: Tree is moved
39
39
  Given I will choose "plugins/project/spec/fixtures/myproject" from the "open_directory" dialog
@@ -8,7 +8,7 @@ When /^I open a file$/ do
8
8
  end
9
9
 
10
10
  Given /^I have opened "([^\"]*)"$/ do |arg1|
11
- Redcar::Project::FileOpenCommand.new(arg1).run
11
+ Redcar::Project::FileOpenCommand.new(File.expand_path(arg1)).run
12
12
  end
13
13
 
14
14
  When /^I save the tab$/ do
@@ -34,7 +34,7 @@ end
34
34
 
35
35
  When /^I put a lot of lines into the file "([^\"]*)"$/ do |file|
36
36
  File.open(file, "w") do |f|
37
- 200.times { |i| f.puts (i*20).to_s }
37
+ 200.times { |i| f.puts(i * 20) }
38
38
  end
39
39
  end
40
40
 
@@ -68,6 +68,9 @@ module Redcar
68
68
  window.treebook.add_tree(@tree)
69
69
  window.title = File.basename(@tree.tree_mirror.path)
70
70
  Manager.open_project_sensitivity.recompute
71
+ Redcar.plugin_manager.objects_implementing(:project_loaded).each do |i|
72
+ i.project_loaded(self)
73
+ end
71
74
  RecentDirectories.store_path(path)
72
75
  Manager.storage['last_open_dir'] = path
73
76
  Project.window_projects[window] = self
@@ -78,6 +81,9 @@ module Redcar
78
81
  Project.window_projects.delete(window)
79
82
  window.title = Window::DEFAULT_TITLE
80
83
  Manager.open_project_sensitivity.recompute
84
+ Redcar.plugin_manager.objects_implementing(:project_closed).each do |i|
85
+ i.project_closed(self)
86
+ end
81
87
  end
82
88
 
83
89
  # Refresh the DirMirror Tree for the given Window, if
@@ -142,9 +148,7 @@ module Redcar
142
148
  end
143
149
 
144
150
  def gained_focus
145
- if @lost_application_focus
146
- refresh
147
- end
151
+ refresh
148
152
  @lost_application_focus = nil
149
153
  end
150
154
 
@@ -159,7 +163,7 @@ module Redcar
159
163
  end
160
164
 
161
165
  def config_files(glob)
162
- file_glob = File.join(config_dir, glob)
166
+ file_glob = File.join("{#{config_dir},#{Redcar.user_dir}}", glob)
163
167
  Dir[file_glob]
164
168
  end
165
169
  end
@@ -19,13 +19,10 @@ module Redcar
19
19
  def touch(file)
20
20
  local_path, local_file = split_paths(file)
21
21
 
22
- puts "Creating: #{file} as: #{local_file}... "
23
22
  FileUtils.mkdir_p local_path
24
23
  FileUtils.touch local_file
25
24
 
26
- print "Uploading: #{local_file} as #{file}... "
27
25
  upload local_file, file
28
- puts "done"
29
26
  end
30
27
 
31
28
  def mkdir(new_dir_path)
@@ -34,7 +31,6 @@ module Redcar
34
31
 
35
32
  def mv(path, new_path)
36
33
  target = "#{new_path}/#{File.basename(path)}"
37
- puts "Renaming: #{path} To: #{target}"
38
34
  exec :rename, path, target
39
35
  end
40
36
 
@@ -36,10 +36,8 @@ module Redcar
36
36
  def load(file)
37
37
  local_path, local_file = split_paths(file)
38
38
 
39
- print "Downloading: #{file} as: #{local_file}... "
40
39
  FileUtils.mkdir_p local_path
41
40
  download file, local_file
42
- puts "done"
43
41
  File.open(local_file, 'rb') do |f|; f.read; end
44
42
  end
45
43
 
@@ -47,9 +45,7 @@ module Redcar
47
45
  local_path, local_file = split_paths(file)
48
46
 
49
47
  ret = File.open(local_file, "wb") {|f| f.print contents }
50
- print "Uploading: #{local_file} as #{file}... "
51
48
  upload local_file, file
52
- puts "done"
53
49
 
54
50
  ret
55
51
  end
@@ -163,7 +163,6 @@ module Redcar
163
163
  end
164
164
 
165
165
  def sftp_exec(method, *args)
166
- puts "sftp_exec: #{method}, #{args.inspect}"
167
166
  begin
168
167
  Redcar.timeout(10) do
169
168
  connection.sftp.send(method, *args)
@@ -152,10 +152,8 @@ module Redcar
152
152
  return
153
153
  end
154
154
  if project = find_projects_containing_path(path).first
155
- p [:found_containing_project, project.path]
156
155
  window = project.window
157
156
  else
158
- p [:didn_t_find_containing_project]
159
157
  window = windows_without_projects.first || Redcar.app.new_window
160
158
  end
161
159
  open_file_in_window(path, window, adapter)
@@ -1,5 +1,9 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "..", "spec_helper")
2
2
 
3
+ require 'net/ssh'
4
+ require 'net/ftp'
5
+ require 'net/ftp/list'
6
+
3
7
  class Redcar::Project
4
8
  describe Adapters::RemoteProtocols::FTP do
5
9
  let(:conn) { double('connection') }
@@ -1,5 +1,8 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "..", "spec_helper")
2
2
 
3
+ require 'net/ssh'
4
+ require 'net/sftp'
5
+
3
6
  class Redcar::Project
4
7
  describe Adapters::RemoteProtocols::SFTP do
5
8
  let(:conn) { double('connection').as_null_object }
@@ -12,5 +12,6 @@ Plugin.define do
12
12
  "document_search", ">0",
13
13
  "runnables", ">0",
14
14
  "HTML View", ">=0.3.2",
15
- "Plugin Manager UI", ">=0.3.2"
15
+ "Plugin Manager UI", ">=0.3.2",
16
+ "outline_view", ">0"
16
17
  end
@@ -13,7 +13,7 @@ module Redcar
13
13
  puts e.backtrace
14
14
  end
15
15
  end
16
-
16
+
17
17
  def self.update_gui
18
18
  ApplicationSWT.sync_exec do
19
19
  safely do
@@ -21,9 +21,9 @@ module Redcar
21
21
  end
22
22
  end
23
23
  end
24
-
24
+
25
25
  class TimeoutError < StandardError; end
26
-
26
+
27
27
  def self.timeout(limit)
28
28
  x = Thread.current
29
29
  result = nil
@@ -47,14 +47,14 @@ module Redcar
47
47
  end
48
48
  result
49
49
  end
50
-
50
+
51
51
  module Top
52
52
  class QuitCommand < Command
53
-
53
+
54
54
  def execute
55
55
  check_for_modified_tabs_and_quit
56
56
  end
57
-
57
+
58
58
  private
59
59
 
60
60
  def check_for_modified_tabs_and_quit
@@ -65,8 +65,8 @@ module Redcar
65
65
  :continue => lambda { check_for_running_processes_and_quit },
66
66
  :cancel => nil
67
67
  ).check
68
- end
69
-
68
+ end
69
+
70
70
  def check_for_running_processes_and_quit
71
71
  Runnables::RunningProcessChecker.new(
72
72
  Redcar.app.all_tabs.select {|t| t.is_a?(HtmlTab)},
@@ -77,9 +77,9 @@ module Redcar
77
77
  ).check
78
78
  end
79
79
  end
80
-
80
+
81
81
  class NewCommand < Command
82
-
82
+
83
83
  def execute
84
84
  tab = win.new_tab(Redcar::EditTab)
85
85
  tab.title = "untitled"
@@ -87,42 +87,42 @@ module Redcar
87
87
  tab
88
88
  end
89
89
  end
90
-
90
+
91
91
  class NewNotebookCommand < Command
92
92
  sensitize :single_notebook
93
-
93
+
94
94
  def execute
95
95
  unless win.notebooks.length > 1
96
96
  win.create_notebook
97
97
  end
98
98
  end
99
99
  end
100
-
100
+
101
101
  class NewWindowCommand < Command
102
-
102
+
103
103
  def initialize(title=nil)
104
104
  @title = title
105
105
  end
106
-
106
+
107
107
  def execute
108
108
  window = Redcar.app.new_window
109
109
  window.title = @title if @title
110
110
  end
111
111
  end
112
-
112
+
113
113
  class CloseWindowCommand < Command
114
114
  def initialize(window=nil)
115
115
  @window = window
116
116
  end
117
-
117
+
118
118
  def execute
119
119
  check_for_modified_tabs_and_close_window
120
120
  quit_if_no_windows if [:linux, :windows].include?(Redcar.platform)
121
121
  @window = nil
122
122
  end
123
-
123
+
124
124
  private
125
-
125
+
126
126
  def quit_if_no_windows
127
127
  if Redcar.app.windows.length == 0
128
128
  if Application.storage['stay_resident_after_last_window_closed'] && !(ARGV.include?("--multiple-instance"))
@@ -132,68 +132,68 @@ module Redcar
132
132
  end
133
133
  end
134
134
  end
135
-
135
+
136
136
  def check_for_modified_tabs_and_close_window
137
137
  EditView::ModifiedTabsChecker.new(
138
- win.notebooks.map(&:tabs).flatten.select {|t| t.is_a?(EditTab)},
138
+ win.notebooks.map(&:tabs).flatten.select {|t| t.is_a?(EditTab)},
139
139
  "Save all before closing the window?",
140
140
  :none => lambda { check_for_running_processes_and_close_window },
141
141
  :continue => lambda { check_for_running_processes_and_close_window },
142
142
  :cancel => nil
143
143
  ).check
144
144
  end
145
-
145
+
146
146
  def check_for_running_processes_and_close_window
147
147
  Runnables::RunningProcessChecker.new(
148
- win.notebooks.map(&:tabs).flatten.select {|t| t.is_a?(HtmlTab)},
148
+ win.notebooks.map(&:tabs).flatten.select {|t| t.is_a?(HtmlTab)},
149
149
  "Kill them and close the window?",
150
150
  :none => lambda { win.close },
151
151
  :continue => lambda { win.close },
152
152
  :cancel => nil
153
153
  ).check
154
154
  end
155
-
155
+
156
156
  def win
157
157
  @window || super
158
158
  end
159
159
  end
160
-
160
+
161
161
  class FocusWindowCommand < Command
162
162
  def initialize(window=nil)
163
163
  @window = window
164
164
  end
165
-
165
+
166
166
  def execute
167
167
  win.focus
168
168
  @window = nil
169
169
  end
170
-
170
+
171
171
  def win
172
172
  @window || super
173
173
  end
174
174
  end
175
-
175
+
176
176
  class RotateNotebooksCommand < Command
177
177
  sensitize :multiple_notebooks
178
-
178
+
179
179
  def execute
180
180
  win.rotate_notebooks
181
181
  end
182
182
  end
183
-
183
+
184
184
  class CloseNotebookCommand < Command
185
185
  sensitize :multiple_notebooks
186
-
186
+
187
187
  def execute
188
188
  unless win.notebooks.length == 1
189
189
  win.close_notebook
190
190
  end
191
191
  end
192
192
  end
193
-
193
+
194
194
  class SwitchNotebookCommand < Command
195
195
  sensitize :multiple_notebooks, :other_notebook_has_tab
196
-
196
+
197
197
  def execute
198
198
  new_notebook = win.nonfocussed_notebook
199
199
  if new_notebook.focussed_tab
@@ -201,10 +201,10 @@ module Redcar
201
201
  end
202
202
  end
203
203
  end
204
-
204
+
205
205
  class MoveTabToOtherNotebookCommand < Command
206
206
  sensitize :multiple_notebooks, :open_tab
207
-
207
+
208
208
  def execute
209
209
  current_notebook = tab.notebook
210
210
  target_notebook = win.notebooks.detect {|nb| nb != current_notebook}
@@ -212,7 +212,7 @@ module Redcar
212
212
  tab.focus
213
213
  end
214
214
  end
215
-
215
+
216
216
  class CloseTreeCommand < Command
217
217
  def execute
218
218
  treebook = Redcar.app.focussed_window.treebook
@@ -220,14 +220,14 @@ module Redcar
220
220
  treebook.remove_tree(tree)
221
221
  end
222
222
  end
223
-
223
+
224
224
  class AboutCommand < Command
225
225
  def execute
226
- new_tab = Top::NewCommand.new.run
226
+ new_tab = Top::NewCommand.new.run
227
227
  new_tab.document.text = "About: Redcar\nVersion: #{Redcar::VERSION}\n" +
228
- "Ruby Version: #{RUBY_VERSION}\n" +
229
- "Jruby version: #{JRUBY_VERSION}\n" +
230
- "Redcar.environment: #{Redcar.environment}\n" +
228
+ "Ruby Version: #{RUBY_VERSION}\n" +
229
+ "Jruby version: #{JRUBY_VERSION}\n" +
230
+ "Redcar.environment: #{Redcar.environment}\n" +
231
231
  "http://redcareditor.com"
232
232
  new_tab.title= 'About'
233
233
  new_tab.edit_view.reset_undo
@@ -237,7 +237,7 @@ module Redcar
237
237
 
238
238
  class ChangelogCommand < Command
239
239
  def execute
240
- new_tab = Top::NewCommand.new.run
240
+ new_tab = Top::NewCommand.new.run
241
241
  new_tab.document.text = File.read(File.join(File.dirname(__FILE__), "..", "..", "CHANGES"))
242
242
  new_tab.title = 'Changes'
243
243
  new_tab.edit_view.reset_undo
@@ -256,16 +256,16 @@ module Redcar
256
256
  Application::Dialog.tool_tip(tab.edit_view.document.cursor_scope.gsub(" ", "\n"), :cursor)
257
257
  end
258
258
  end
259
-
259
+
260
260
  class CloseTabCommand < TabCommand
261
261
  def initialize(tab=nil)
262
262
  @tab = tab
263
263
  end
264
-
264
+
265
265
  def tab
266
266
  @tab || super
267
267
  end
268
-
268
+
269
269
  def execute
270
270
  if tab.is_a?(EditTab)
271
271
  if tab.edit_view.document.modified?
@@ -305,9 +305,9 @@ module Redcar
305
305
  end
306
306
  @tab = nil
307
307
  end
308
-
308
+
309
309
  private
310
-
310
+
311
311
  def close_tab
312
312
  win = tab.notebook.window
313
313
  tab.close
@@ -317,59 +317,59 @@ module Redcar
317
317
  #end
318
318
  end
319
319
  end
320
-
320
+
321
321
  class SwitchTabDownCommand < Command
322
-
322
+
323
323
  def execute
324
324
  win.focussed_notebook.switch_down
325
325
  end
326
326
  end
327
-
327
+
328
328
  class SwitchTabUpCommand < Command
329
-
329
+
330
330
  def execute
331
331
  win.focussed_notebook.switch_up
332
332
  end
333
333
  end
334
-
334
+
335
335
  class MoveTabUpCommand < Command
336
-
336
+
337
337
  def execute
338
338
  win.focussed_notebook.move_up
339
339
  end
340
340
  end
341
-
341
+
342
342
  class MoveTabDownCommand < Command
343
-
343
+
344
344
  def execute
345
345
  win.focussed_notebook.move_down
346
346
  end
347
347
  end
348
-
348
+
349
349
  class UndoCommand < EditTabCommand
350
350
  sensitize :undoable
351
-
351
+
352
352
  def execute
353
353
  tab.edit_view.undo
354
354
  end
355
355
  end
356
-
356
+
357
357
  class RedoCommand < EditTabCommand
358
358
  sensitize :redoable
359
-
359
+
360
360
  def execute
361
361
  tab.edit_view.redo
362
362
  end
363
363
  end
364
-
364
+
365
365
  class MoveHomeCommand < EditTabCommand
366
-
366
+
367
367
  def execute
368
368
  doc = tab.edit_view.document
369
369
  line_ix = doc.line_at_offset(doc.cursor_offset)
370
370
  line = doc.get_line(line_ix)
371
371
  prefix = line[0...doc.cursor_line_offset]
372
-
372
+
373
373
  if prefix =~ /^\s*$/
374
374
  # move to start of line
375
375
  new_offset = doc.offset_at_line(line_ix)
@@ -384,18 +384,18 @@ module Redcar
384
384
  doc.ensure_visible(doc.cursor_offset)
385
385
  end
386
386
  end
387
-
387
+
388
388
  class MoveTopCommand < EditTabCommand
389
-
389
+
390
390
  def execute
391
391
  doc = tab.edit_view.document
392
392
  doc.cursor_offset = 0
393
393
  doc.ensure_visible(0)
394
394
  end
395
395
  end
396
-
396
+
397
397
  class MoveEndCommand < EditTabCommand
398
-
398
+
399
399
  def execute
400
400
  doc = tab.edit_view.document
401
401
  line_ix = doc.line_at_offset(doc.cursor_offset)
@@ -407,16 +407,16 @@ module Redcar
407
407
  doc.ensure_visible(doc.cursor_offset)
408
408
  end
409
409
  end
410
-
410
+
411
411
  class MoveBottomCommand < EditTabCommand
412
-
412
+
413
413
  def execute
414
414
  doc = tab.edit_view.document
415
415
  doc.cursor_offset = doc.length
416
416
  doc.ensure_visible(doc.length)
417
417
  end
418
418
  end
419
-
419
+
420
420
  class ChangeIndentCommand < EditTabCommand
421
421
  def execute
422
422
  doc = tab.edit_view.document
@@ -445,9 +445,9 @@ module Redcar
445
445
  end
446
446
  end
447
447
  end
448
-
448
+
449
449
  class DecreaseIndentCommand < ChangeIndentCommand
450
-
450
+
451
451
  def indent_line(doc, line_ix)
452
452
  use_spaces = true
453
453
  num_spaces = 2
@@ -473,7 +473,7 @@ module Redcar
473
473
  end
474
474
 
475
475
  class IncreaseIndentCommand < ChangeIndentCommand
476
-
476
+
477
477
  def indent_line(doc, line_ix)
478
478
  line = doc.get_line(line_ix)
479
479
  if doc.edit_view.soft_tabs?
@@ -486,20 +486,20 @@ module Redcar
486
486
  end
487
487
 
488
488
  class SelectAllCommand < Redcar::EditTabCommand
489
-
489
+
490
490
  def execute
491
491
  doc.select_all
492
492
  end
493
493
  end
494
-
494
+
495
495
  class SelectLineCommand < Redcar::EditTabCommand
496
-
496
+
497
497
  def execute
498
498
  doc.set_selection_range(
499
499
  doc.cursor_line_start_offset, doc.cursor_line_end_offset)
500
500
  end
501
501
  end
502
-
502
+
503
503
  class SelectWordCommand < Redcar::EditTabCommand
504
504
 
505
505
  def execute
@@ -507,9 +507,9 @@ module Redcar
507
507
  doc.set_selection_range(range.first, range.last)
508
508
  end
509
509
  end
510
-
510
+
511
511
  class CutCommand < Redcar::DocumentCommand
512
-
512
+
513
513
  def execute
514
514
  if doc.selection?
515
515
  text = doc.selection_ranges.map do |range|
@@ -523,14 +523,14 @@ module Redcar
523
523
  end
524
524
  else
525
525
  Redcar.app.clipboard << doc.get_line(doc.cursor_line)
526
- doc.delete(doc.cursor_line_start_offset,
526
+ doc.delete(doc.cursor_line_start_offset,
527
527
  doc.cursor_line_end_offset - doc.cursor_line_start_offset)
528
528
  end
529
529
  end
530
530
  end
531
-
531
+
532
532
  class CopyCommand < Redcar::DocumentCommand
533
-
533
+
534
534
  def execute
535
535
  if doc.selection?
536
536
  text = doc.selection_ranges.map do |range|
@@ -542,10 +542,10 @@ module Redcar
542
542
  end
543
543
  end
544
544
  end
545
-
545
+
546
546
  class PasteCommand < Redcar::DocumentCommand
547
547
  sensitize :clipboard_not_empty
548
-
548
+
549
549
  def execute
550
550
  start_offset = doc.selection_ranges.first.begin
551
551
  start_line = doc.line_at_offset(start_offset)
@@ -579,9 +579,9 @@ module Redcar
579
579
  end
580
580
  end
581
581
  end
582
-
582
+
583
583
  class DuplicateCommand < Redcar::DocumentCommand
584
-
584
+
585
585
  def execute
586
586
  doc = tab.edit_view.document
587
587
  if doc.selection?
@@ -592,15 +592,15 @@ module Redcar
592
592
  else
593
593
  last_line_ix = doc.cursor_line
594
594
  text = doc.get_line(doc.cursor_line)
595
- end
595
+ end
596
596
  if last_line_ix == (doc.line_count - 1)
597
597
  text = "\n#{text}"
598
598
  end
599
599
  doc.insert(doc.offset_at_line_end(last_line_ix), text)
600
600
  doc.scroll_to_line(last_line_ix + 1)
601
- end
601
+ end
602
602
  end
603
-
603
+
604
604
  class DialogExample < Redcar::Command
605
605
  def execute
606
606
  builder = Menu::Builder.new do
@@ -616,14 +616,14 @@ module Redcar
616
616
  win.popup_menu(builder.menu)
617
617
  end
618
618
  end
619
-
619
+
620
620
  class GotoLineCommand < Redcar::EditTabCommand
621
-
621
+
622
622
  class Speedbar < Redcar::Speedbar
623
623
  label :goto_label, "Goto line:"
624
-
624
+
625
625
  textbox :line
626
-
626
+
627
627
  button :go, "Go", "Return" do
628
628
  new_line_ix = line.value.to_i - 1
629
629
  if new_line_ix < doc.line_count and new_line_ix >= 0
@@ -632,28 +632,28 @@ module Redcar
632
632
  win.close_speedbar
633
633
  end
634
634
  end
635
-
635
+
636
636
  def initialize(command)
637
637
  @command = command
638
638
  end
639
-
639
+
640
640
  def doc; @command.doc; end
641
641
  def win; @command.send(:win); end
642
642
  end
643
-
643
+
644
644
  def execute
645
645
  @speedbar = GotoLineCommand::Speedbar.new(self)
646
646
  win.open_speedbar(@speedbar)
647
647
  end
648
648
  end
649
-
649
+
650
650
  class ToggleBlockSelectionCommand < Redcar::EditTabCommand
651
-
651
+
652
652
  def execute
653
653
  doc.block_selection_mode = !doc.block_selection_mode?
654
654
  end
655
655
  end
656
-
656
+
657
657
  # define commands from SelectTab1Command to SelectTab9Command
658
658
  (1..9).each do |tab_num|
659
659
  const_set("SelectTab#{tab_num}Command", Class.new(Redcar::Command)).class_eval do
@@ -663,25 +663,25 @@ module Redcar
663
663
  end
664
664
  end
665
665
  end
666
-
666
+
667
667
  class ToggleInvisibles < Redcar::EditTabCommand
668
668
  def execute
669
669
  EditView.show_invisibles = !EditView.show_invisibles?
670
670
  end
671
671
  end
672
-
672
+
673
673
  class ToggleLineNumbers < Redcar::EditTabCommand
674
674
  def execute
675
675
  EditView.show_line_numbers = !EditView.show_line_numbers?
676
676
  end
677
677
  end
678
-
678
+
679
679
  class ToggleAnnotations < Redcar::EditTabCommand
680
680
  def execute
681
681
  EditView.show_annotations = !EditView.show_annotations?
682
682
  end
683
683
  end
684
-
684
+
685
685
  class SelectNewFont < Command
686
686
  def execute
687
687
  Redcar::EditView::SelectFontDialog.new.open
@@ -694,6 +694,12 @@ module Redcar
694
694
  end
695
695
  end
696
696
 
697
+ class ShowTheme < Command
698
+ def execute
699
+
700
+ end
701
+ end
702
+
697
703
  class SelectFontSize < Command
698
704
  def execute
699
705
  result = Application::Dialog.input("Font Size", "Please enter new font size", Redcar::EditView.font_size.to_s) do |text|
@@ -706,7 +712,7 @@ module Redcar
706
712
  Redcar::EditView.font_size = result[:value].to_i if result[:button ] == :ok
707
713
  end
708
714
  end
709
-
715
+
710
716
  def self.keymaps
711
717
  osx = Redcar::Keymap.build("main", :osx) do
712
718
  link "Cmd+N", NewCommand
@@ -729,13 +735,13 @@ module Redcar
729
735
  link "Cmd+X", CutCommand
730
736
  link "Cmd+C", CopyCommand
731
737
  link "Cmd+V", PasteCommand
732
- link "Cmd+D", DuplicateCommand
733
-
738
+ link "Cmd+D", DuplicateCommand
739
+
734
740
  link "Home", MoveTopCommand
735
741
  link "Ctrl+A", MoveHomeCommand
736
742
  link "Ctrl+E", MoveEndCommand
737
743
  link "End", MoveBottomCommand
738
-
744
+
739
745
  link "Cmd+[", DecreaseIndentCommand
740
746
  link "Cmd+]", IncreaseIndentCommand
741
747
  link "Cmd+Shift+I", AutoIndenter::IndentCommand
@@ -748,7 +754,7 @@ module Redcar
748
754
  link "Cmd+B", ToggleBlockSelectionCommand
749
755
  #link "Escape", AutoCompleter::AutoCompleteCommand
750
756
  link "Ctrl+Escape", AutoCompleter::MenuAutoCompleterCommand
751
-
757
+
752
758
  link "Ctrl+U", EditView::UpcaseTextCommand
753
759
  link "Ctrl+Shift+U", EditView::DowncaseTextCommand
754
760
  link "Ctrl+Alt+U", EditView::TitlizeTextCommand
@@ -762,13 +768,14 @@ module Redcar
762
768
  link "Cmd+Shift+]", SwitchTabUpCommand
763
769
  link "Ctrl+Shift+[", MoveTabDownCommand
764
770
  link "Ctrl+Shift+]", MoveTabUpCommand
765
- link "Ctrl+R", Runnables::RunEditTabCommand
766
771
  link "Cmd+Alt+I", ToggleInvisibles
767
-
768
- link "Ctrl+Shift+P", PrintScopeCommand
772
+ link "Ctrl+R", Runnables::RunEditTabCommand
773
+ link "Cmd+I", OutlineView::OpenOutlineViewCommand
769
774
 
775
+ link "Ctrl+Shift+P", PrintScopeCommand
776
+
770
777
  link "Cmd+Shift+R", PluginManagerUi::ReloadLastReloadedCommand
771
-
778
+
772
779
  link "Cmd+Alt+S", Snippets::OpenSnippetExplorer
773
780
  #Textmate.attach_keybindings(self, :osx)
774
781
 
@@ -800,12 +807,12 @@ module Redcar
800
807
  link "Ctrl+C", CopyCommand
801
808
  link "Ctrl+V", PasteCommand
802
809
  link "Ctrl+D", DuplicateCommand
803
-
810
+
804
811
  link "Ctrl+Home", MoveTopCommand
805
812
  link "Home", MoveHomeCommand
806
813
  link "End", MoveEndCommand
807
814
  link "Ctrl+End", MoveBottomCommand
808
-
815
+
809
816
  link "Ctrl+[", DecreaseIndentCommand
810
817
  link "Ctrl+]", IncreaseIndentCommand
811
818
  link "Ctrl+Shift+[", AutoIndenter::IndentCommand
@@ -817,7 +824,7 @@ module Redcar
817
824
  link "Ctrl+B", ToggleBlockSelectionCommand
818
825
  link "Ctrl+Space", AutoCompleter::AutoCompleteCommand
819
826
  link "Ctrl+Shift+Space", AutoCompleter::MenuAutoCompleterCommand
820
-
827
+
821
828
  link "Ctrl+U", EditView::UpcaseTextCommand
822
829
  link "Ctrl+Shift+U", EditView::DowncaseTextCommand
823
830
  link "Ctrl+Alt+U", EditView::TitlizeTextCommand
@@ -826,19 +833,21 @@ module Redcar
826
833
 
827
834
  link "Ctrl+T", Project::FindFileCommand
828
835
  link "Ctrl+Shift+Alt+O", MoveTabToOtherNotebookCommand
836
+
829
837
  link "Ctrl+R", Runnables::RunEditTabCommand
830
-
838
+
831
839
  link "Ctrl+Shift+P", PrintScopeCommand
832
840
 
833
841
  link "Ctrl+Alt+O", SwitchNotebookCommand
834
-
842
+
835
843
  link "Ctrl+Page Up", SwitchTabDownCommand
836
844
  link "Ctrl+Page Down", SwitchTabUpCommand
837
845
  link "Ctrl+Shift+Page Up", MoveTabDownCommand
838
846
  link "Ctrl+Shift+Page Down", MoveTabUpCommand
839
847
  link "Ctrl+Shift+R", PluginManagerUi::ReloadLastReloadedCommand
840
848
  link "Ctrl+Alt+I", ToggleInvisibles
841
-
849
+ link "Ctrl+I", OutlineView::OpenOutlineViewCommand
850
+
842
851
  link "Ctrl+Alt+S", Snippets::OpenSnippetExplorer
843
852
  #Textmate.attach_keybindings(self, :linux)
844
853
 
@@ -848,10 +857,10 @@ module Redcar
848
857
  end
849
858
 
850
859
  end
851
-
860
+
852
861
  [linwin, osx]
853
862
  end
854
-
863
+
855
864
  def self.menus
856
865
  Menu::Builder.build do
857
866
  sub_menu "File", :priority => :first do
@@ -859,28 +868,29 @@ module Redcar
859
868
  item "New", NewCommand
860
869
  item "New Window", NewWindowCommand
861
870
  end
862
-
871
+
863
872
  group(:priority => 10) do
864
873
  separator
865
874
  item "Close Tab", CloseTabCommand
866
875
  item "Close Tree", CloseTreeCommand
867
876
  item "Close Window", CloseWindowCommand
868
877
  end
869
-
878
+
870
879
  group(:priority => :last) do
871
880
  separator
872
881
  item "Quit", QuitCommand
873
882
  end
874
883
  end
875
884
  sub_menu "Edit", :priority => 5 do
876
- item "Tab Info", EditView::InfoSpeedbarCommand
877
-
885
+ group(:priority => :first) do
886
+ item "Tab Info", EditView::InfoSpeedbarCommand
887
+ end
878
888
  group(:priority => 10) do
879
889
  separator
880
890
  item "Undo", UndoCommand
881
891
  item "Redo", RedoCommand
882
892
  end
883
-
893
+
884
894
  group(:priority => 15) do
885
895
  separator
886
896
  item "Cut", CutCommand
@@ -888,7 +898,7 @@ module Redcar
888
898
  item "Paste", PasteCommand
889
899
  item "Duplicate Region", DuplicateCommand
890
900
  end
891
-
901
+
892
902
  group(:priority => 25) do
893
903
  separator
894
904
  item "Top", MoveTopCommand
@@ -896,18 +906,18 @@ module Redcar
896
906
  item "End", MoveEndCommand
897
907
  item "Bottom", MoveBottomCommand
898
908
  end
899
-
909
+
900
910
  group(:priority => 60) do
901
911
  separator
902
912
  item "Increase Indent", IncreaseIndentCommand
903
913
  item "Decrease Indent", DecreaseIndentCommand
904
914
  end
905
-
915
+
906
916
  group(:priority => 70) do
907
917
  separator
908
918
  item "Goto Line", GotoLineCommand
909
919
  end
910
-
920
+
911
921
  group(:priority => 80) do
912
922
  separator
913
923
  sub_menu "Select" do
@@ -949,14 +959,15 @@ module Redcar
949
959
  end
950
960
  end
951
961
  separator
952
- item "Toggle Invisibles", ToggleInvisibles
953
- item "Toggle Line Numbers", ToggleLineNumbers
954
- item "Toggle Annotations", ToggleAnnotations
962
+ item "Toggle Invisibles", :command => ToggleInvisibles, :type => :check, :active => EditView.show_invisibles?
963
+ item "Toggle Line Numbers", :command => ToggleLineNumbers, :type => :check, :active => EditView.show_line_numbers?
964
+ item "Toggle Annotations", :command => ToggleAnnotations, :type => :check, :active => EditView.show_annotations?
955
965
  end
956
966
  sub_menu "Bundles", :priority => 45 do
957
967
  group(:priority => :first) do
958
968
  item "Find Snippet", Snippets::OpenSnippetExplorer
959
969
  item "Installed Bundles", Textmate::InstalledBundles
970
+ item "View Bundles in Tree", Textmate::ShowSnippetTree
960
971
  end
961
972
  group(:priority => 15) do
962
973
  separator
@@ -971,33 +982,33 @@ module Redcar
971
982
  end
972
983
  end
973
984
  end
974
-
985
+
975
986
  class ApplicationEventHandler
976
987
  def tab_focus(tab)
977
988
  tab.focus
978
989
  end
979
-
990
+
980
991
  def tab_close(tab)
981
992
  CloseTabCommand.new(tab).run
982
993
  end
983
-
994
+
984
995
  def window_close(win)
985
996
  CloseWindowCommand.new(win).run
986
997
  end
987
-
998
+
988
999
  def application_close(app)
989
1000
  QuitCommand.new.run
990
1001
  end
991
-
1002
+
992
1003
  def window_focus(win)
993
1004
  FocusWindowCommand.new(win).run
994
1005
  end
995
1006
  end
996
-
1007
+
997
1008
  def self.application_event_handler
998
1009
  ApplicationEventHandler.new
999
1010
  end
1000
-
1011
+
1001
1012
  def self.start(args=[])
1002
1013
  puts "loading plugins took #{Time.now - PROCESS_START_TIME}"
1003
1014
  Application.start