redcar 0.3.7.1 → 0.3.8
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +16 -0
- data/README.md +5 -0
- data/ROADMAP.md +7 -9
- data/Rakefile +55 -22
- data/lib/redcar.rb +12 -6
- data/lib/redcar/installer.rb +119 -44
- data/plugins/application/features/step_definitions/speedbar_steps.rb +62 -0
- data/plugins/application/features/step_definitions/tree_steps.rb +3 -3
- data/plugins/application/features/support/env.rb +2 -1
- data/plugins/application/lib/application/notebook.rb +53 -7
- data/plugins/application/lib/application/speedbar.rb +12 -0
- data/plugins/application/lib/application/tab.rb +16 -5
- data/plugins/application/lib/application/treebook.rb +21 -1
- data/plugins/application_swt/lib/application_swt.rb +12 -2
- data/plugins/application_swt/lib/application_swt/html_tab.rb +4 -0
- data/plugins/application_swt/lib/application_swt/notebook.rb +5 -3
- data/plugins/application_swt/lib/application_swt/speedbar.rb +15 -27
- data/plugins/application_swt/lib/application_swt/swt_wrapper.rb +1 -0
- data/plugins/application_swt/lib/application_swt/tab.rb +1 -0
- data/plugins/application_swt/lib/application_swt/treebook.rb +36 -8
- data/plugins/application_swt/lib/application_swt/window.rb +24 -18
- data/plugins/auto_completer/lib/auto_completer.rb +5 -20
- data/plugins/core/lib/core.rb +7 -4
- data/plugins/core/lib/core/observable_struct.rb +2 -2
- data/plugins/declarations/lib/declarations.rb +3 -17
- data/plugins/document_search/features/search.feature +163 -0
- data/plugins/document_search/features/support/env.rb +4 -0
- data/plugins/document_search/lib/document_search.rb +121 -0
- data/plugins/document_search/plugin.rb +8 -0
- data/plugins/edit_view/features/line_delimiter.feature +7 -0
- data/plugins/edit_view/features/step_definitions/editing_steps.rb +49 -1
- data/plugins/edit_view/features/step_definitions/tab_steps.rb +10 -11
- data/plugins/edit_view/features/switch_tabs.feature +61 -10
- data/plugins/edit_view/lib/edit_view.rb +4 -0
- data/plugins/edit_view/lib/edit_view/document.rb +56 -0
- data/plugins/edit_view/lib/edit_view/document/command.rb +1 -1
- data/plugins/edit_view/lib/edit_view/edit_tab.rb +0 -8
- data/plugins/edit_view_swt/lib/edit_view_swt.rb +4 -0
- data/plugins/html_view/lib/html_controller.rb +19 -1
- data/plugins/html_view/lib/html_view.rb +28 -1
- data/plugins/html_view/lib/html_view/html_tab.rb +10 -1
- data/plugins/plugin_manager_ui/lib/plugin_manager_ui.rb +3 -1
- data/plugins/project/features/open_directory_tree.feature +3 -3
- data/plugins/project/lib/project.rb +4 -6
- data/plugins/project/lib/project/commands.rb +17 -0
- data/plugins/project/lib/project/dir_controller.rb +2 -1
- data/plugins/project/lib/project/dir_mirror.rb +8 -0
- data/plugins/project/lib/project/manager.rb +2 -0
- data/plugins/project/plugin.rb +2 -1
- data/plugins/project/vendor/net-sftp/Manifest +55 -0
- data/plugins/project/vendor/net-sftp/Rakefile +30 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp.rb +70 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/constants.rb +187 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/errors.rb +39 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/operations/dir.rb +93 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/operations/download.rb +364 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/operations/file.rb +176 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/operations/file_factory.rb +60 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/operations/upload.rb +387 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/packet.rb +21 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol.rb +32 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/01/attributes.rb +315 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/01/base.rb +268 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/01/name.rb +43 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/02/base.rb +31 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/03/base.rb +35 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/04/attributes.rb +152 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/04/base.rb +94 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/04/name.rb +67 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/05/base.rb +66 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/06/attributes.rb +107 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/06/base.rb +63 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/protocol/base.rb +50 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/request.rb +91 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/response.rb +76 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/session.rb +951 -0
- data/plugins/project/vendor/net-sftp/lib/net/sftp/version.rb +18 -0
- data/plugins/project/vendor/net-sftp/setup.rb +1331 -0
- data/plugins/project/vendor/net-sftp/test/common.rb +171 -0
- data/plugins/project/vendor/net-sftp/test/protocol/01/test_attributes.rb +97 -0
- data/plugins/project/vendor/net-sftp/test/protocol/01/test_base.rb +210 -0
- data/plugins/project/vendor/net-sftp/test/protocol/01/test_name.rb +27 -0
- data/plugins/project/vendor/net-sftp/test/protocol/02/test_base.rb +26 -0
- data/plugins/project/vendor/net-sftp/test/protocol/03/test_base.rb +27 -0
- data/plugins/project/vendor/net-sftp/test/protocol/04/test_attributes.rb +148 -0
- data/plugins/project/vendor/net-sftp/test/protocol/04/test_base.rb +74 -0
- data/plugins/project/vendor/net-sftp/test/protocol/04/test_name.rb +53 -0
- data/plugins/project/vendor/net-sftp/test/protocol/05/test_base.rb +62 -0
- data/plugins/project/vendor/net-sftp/test/protocol/06/test_attributes.rb +124 -0
- data/plugins/project/vendor/net-sftp/test/protocol/06/test_base.rb +51 -0
- data/plugins/project/vendor/net-sftp/test/protocol/test_base.rb +42 -0
- data/plugins/project/vendor/net-sftp/test/test_all.rb +7 -0
- data/plugins/project/vendor/net-sftp/test/test_dir.rb +47 -0
- data/plugins/project/vendor/net-sftp/test/test_download.rb +252 -0
- data/plugins/project/vendor/net-sftp/test/test_file.rb +159 -0
- data/plugins/project/vendor/net-sftp/test/test_file_factory.rb +48 -0
- data/plugins/project/vendor/net-sftp/test/test_packet.rb +9 -0
- data/plugins/project/vendor/net-sftp/test/test_protocol.rb +17 -0
- data/plugins/project/vendor/net-sftp/test/test_request.rb +71 -0
- data/plugins/project/vendor/net-sftp/test/test_response.rb +53 -0
- data/plugins/project/vendor/net-sftp/test/test_session.rb +741 -0
- data/plugins/project/vendor/net-sftp/test/test_upload.rb +219 -0
- data/plugins/project/vendor/net-ssh/Manifest +110 -0
- data/plugins/project/vendor/net-ssh/Rakefile +85 -0
- data/plugins/project/vendor/net-ssh/Rudyfile +96 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh.rb +215 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/agent.rb +179 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/constants.rb +18 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/key_manager.rb +193 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/methods/abstract.rb +60 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/methods/hostbased.rb +71 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/methods/keyboard_interactive.rb +66 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/methods/password.rb +39 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/methods/publickey.rb +92 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/pageant.rb +183 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/authentication/session.rb +134 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/buffer.rb +340 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/buffered_io.rb +198 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/config.rb +202 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/connection/channel.rb +630 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/connection/constants.rb +33 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/connection/session.rb +597 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/connection/term.rb +178 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/errors.rb +85 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/key_factory.rb +102 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/known_hosts.rb +129 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/loggable.rb +61 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/packet.rb +102 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/prompt.rb +93 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/proxy/command.rb +75 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/proxy/errors.rb +14 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/proxy/http.rb +94 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/proxy/socks4.rb +70 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/proxy/socks5.rb +142 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/ruby_compat.rb +43 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/service/forward.rb +288 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/test.rb +89 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/test/channel.rb +129 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/test/extensions.rb +152 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/test/kex.rb +44 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/test/local_packet.rb +51 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/test/packet.rb +81 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/test/remote_packet.rb +38 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/test/script.rb +157 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/test/socket.rb +64 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/algorithms.rb +384 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/cipher_factory.rb +97 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/constants.rb +30 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/hmac.rb +31 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/hmac/abstract.rb +79 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/hmac/md5.rb +12 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/hmac/md5_96.rb +11 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/hmac/none.rb +15 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/hmac/sha1.rb +13 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/hmac/sha1_96.rb +11 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/identity_cipher.rb +55 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/kex.rb +13 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb +208 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb +77 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/openssl.rb +128 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/packet_stream.rb +235 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/server_version.rb +71 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/session.rb +276 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/transport/state.rb +206 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/verifiers/lenient.rb +30 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/verifiers/null.rb +12 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/verifiers/strict.rb +53 -0
- data/plugins/project/vendor/net-ssh/lib/net/ssh/version.rb +62 -0
- data/plugins/project/vendor/net-ssh/net-ssh.gemspec +138 -0
- data/plugins/project/vendor/net-ssh/setup.rb +1585 -0
- data/plugins/project/vendor/net-ssh/support/arcfour_check.rb +20 -0
- data/plugins/project/vendor/net-ssh/support/ssh_tunnel_bug.rb +65 -0
- data/plugins/project/vendor/net-ssh/test/README.txt +42 -0
- data/plugins/project/vendor/net-ssh/test/authentication/methods/common.rb +28 -0
- data/plugins/project/vendor/net-ssh/test/authentication/methods/test_abstract.rb +51 -0
- data/plugins/project/vendor/net-ssh/test/authentication/methods/test_hostbased.rb +114 -0
- data/plugins/project/vendor/net-ssh/test/authentication/methods/test_keyboard_interactive.rb +98 -0
- data/plugins/project/vendor/net-ssh/test/authentication/methods/test_password.rb +50 -0
- data/plugins/project/vendor/net-ssh/test/authentication/methods/test_publickey.rb +127 -0
- data/plugins/project/vendor/net-ssh/test/authentication/test_agent.rb +205 -0
- data/plugins/project/vendor/net-ssh/test/authentication/test_key_manager.rb +105 -0
- data/plugins/project/vendor/net-ssh/test/authentication/test_session.rb +93 -0
- data/plugins/project/vendor/net-ssh/test/common.rb +107 -0
- data/plugins/project/vendor/net-ssh/test/configs/eqsign +3 -0
- data/plugins/project/vendor/net-ssh/test/configs/exact_match +8 -0
- data/plugins/project/vendor/net-ssh/test/configs/host_plus +10 -0
- data/plugins/project/vendor/net-ssh/test/configs/multihost +4 -0
- data/plugins/project/vendor/net-ssh/test/configs/nohost +19 -0
- data/plugins/project/vendor/net-ssh/test/configs/numeric_host +4 -0
- data/plugins/project/vendor/net-ssh/test/configs/wild_cards +14 -0
- data/plugins/project/vendor/net-ssh/test/connection/test_channel.rb +467 -0
- data/plugins/project/vendor/net-ssh/test/connection/test_session.rb +488 -0
- data/plugins/project/vendor/net-ssh/test/manual/test_forward.rb +185 -0
- data/plugins/project/vendor/net-ssh/test/test_all.rb +9 -0
- data/plugins/project/vendor/net-ssh/test/test_buffer.rb +336 -0
- data/plugins/project/vendor/net-ssh/test/test_buffered_io.rb +63 -0
- data/plugins/project/vendor/net-ssh/test/test_config.rb +117 -0
- data/plugins/project/vendor/net-ssh/test/test_key_factory.rb +67 -0
- data/plugins/project/vendor/net-ssh/test/transport/hmac/test_md5.rb +39 -0
- data/plugins/project/vendor/net-ssh/test/transport/hmac/test_md5_96.rb +25 -0
- data/plugins/project/vendor/net-ssh/test/transport/hmac/test_none.rb +34 -0
- data/plugins/project/vendor/net-ssh/test/transport/hmac/test_sha1.rb +34 -0
- data/plugins/project/vendor/net-ssh/test/transport/hmac/test_sha1_96.rb +25 -0
- data/plugins/project/vendor/net-ssh/test/transport/kex/test_diffie_hellman_group1_sha1.rb +146 -0
- data/plugins/project/vendor/net-ssh/test/transport/kex/test_diffie_hellman_group_exchange_sha1.rb +92 -0
- data/plugins/project/vendor/net-ssh/test/transport/test_algorithms.rb +302 -0
- data/plugins/project/vendor/net-ssh/test/transport/test_cipher_factory.rb +213 -0
- data/plugins/project/vendor/net-ssh/test/transport/test_hmac.rb +34 -0
- data/plugins/project/vendor/net-ssh/test/transport/test_identity_cipher.rb +40 -0
- data/plugins/project/vendor/net-ssh/test/transport/test_packet_stream.rb +441 -0
- data/plugins/project/vendor/net-ssh/test/transport/test_server_version.rb +78 -0
- data/plugins/project/vendor/net-ssh/test/transport/test_session.rb +315 -0
- data/plugins/project/vendor/net-ssh/test/transport/test_state.rb +173 -0
- data/plugins/redcar/plugin.rb +3 -1
- data/plugins/redcar/redcar.rb +108 -121
- data/plugins/redcar_debug/lib/redcar_debug.rb +2 -0
- data/plugins/runnables/lib/runnables.rb +80 -23
- data/plugins/runnables/lib/runnables/command_output_controller.rb +102 -0
- data/plugins/runnables/lib/runnables/running_process_checker.rb +34 -0
- data/plugins/runnables/{plugin_no_load.rb → plugin.rb} +2 -1
- data/plugins/runnables/vendor/session-2.4.0/HISTORY +73 -0
- data/plugins/runnables/vendor/session-2.4.0/README +89 -0
- data/plugins/runnables/vendor/session-2.4.0/TODO +3 -0
- data/plugins/runnables/vendor/session-2.4.0/VERSION +1 -0
- data/plugins/runnables/vendor/session-2.4.0/gemspec.rb +22 -0
- data/plugins/runnables/vendor/session-2.4.0/install.rb +143 -0
- data/plugins/runnables/vendor/session-2.4.0/lib/session.rb +757 -0
- data/plugins/runnables/vendor/session-2.4.0/sample/bash.rb +60 -0
- data/plugins/runnables/vendor/session-2.4.0/sample/driver.rb +47 -0
- data/plugins/runnables/vendor/session-2.4.0/sample/session_idl.rb +25 -0
- data/plugins/runnables/vendor/session-2.4.0/sample/session_sh.rb +29 -0
- data/plugins/runnables/vendor/session-2.4.0/sample/sh0.rb +23 -0
- data/plugins/runnables/vendor/session-2.4.0/sample/stdin.rb +17 -0
- data/plugins/runnables/vendor/session-2.4.0/sample/threadtest.rb +42 -0
- data/plugins/runnables/vendor/session-2.4.0/session-2.4.0.gem +0 -0
- data/plugins/runnables/vendor/session-2.4.0/test/session.rb +227 -0
- data/plugins/runnables/views/command_output.html.erb +32 -0
- data/plugins/task_manager/lib/task_manager.rb +2 -0
- data/plugins/textmate/lib/textmate/plist.rb +1 -1
- data/plugins/textmate/lib/textmate/snippet.rb +1 -0
- data/plugins/tree/lib/tree/mirror.rb +8 -1
- data/plugins/tree_view_swt/lib/tree_view_swt.rb +29 -2
- metadata +191 -6
- data/plugins/declarations/TODO +0 -3
- data/plugins/redcar/spec/redcar/redcar_spec.rb +0 -70
- data/plugins/redcar/spec/spec_helper.rb +0 -4
data/CHANGES
CHANGED
@@ -1,4 +1,20 @@
|
|
1
1
|
|
2
|
+
Version 0.3.8 (TBA)
|
3
|
+
===================
|
4
|
+
|
5
|
+
* Can switch between open trees in a window (Dan Lucraft)
|
6
|
+
* Runnables: extensible runnable tasks/build items/tests/generators for projects. (Dan Lucraft)
|
7
|
+
* Runnables: run scripts in edit tabs as processes. (Dan Lucraft)
|
8
|
+
* Fix for: end key not working in documents with Windows-style line endings (Dan Lucraft)
|
9
|
+
* Caches downloaded jar files so that installation is faster when updating versions. (Felipe Coury)
|
10
|
+
* Fix for: dragging and dropping HtmlTabs between notebooks and windows. (Dan Lucraft)
|
11
|
+
* Select Word command (Johannes Wollert)
|
12
|
+
* Move tab up/Move tab down commands (Johannes Wollert)
|
13
|
+
* New APIs: Document#current_word, Document#word_at_offset (Johannes Wollert)
|
14
|
+
* Made the first tab open for a new install MUCH faster by generating the textmate bundle cache in the install script (Dan Lucraft)
|
15
|
+
* Search speedbar is opened with selected text as the default search (Johannes Wollert)
|
16
|
+
* Helper method for executing JavaScript in the browser during controller actions (Dan Lucraft)
|
17
|
+
|
2
18
|
Version 0.3.7.1 (25 Jun 2010)
|
3
19
|
=============================
|
4
20
|
|
data/README.md
CHANGED
@@ -30,6 +30,11 @@ for a list of options.
|
|
30
30
|
## INSTALLING FROM SOURCE
|
31
31
|
|
32
32
|
If you want to contribute to Redcar, you can install it from the source code.
|
33
|
+
|
34
|
+
If you're running Windows, as a prerequisite, you'll need to install the rubyzip gem:
|
35
|
+
|
36
|
+
$ gem install rubyzip
|
37
|
+
|
33
38
|
Download from github, checkout the submodules and build JavaMateView. You will need Ant
|
34
39
|
installed, and RSpec and Cucumber installed as JRuby gems.
|
35
40
|
|
data/ROADMAP.md
CHANGED
@@ -2,24 +2,22 @@
|
|
2
2
|
Redcar JRuby Port Roadmap
|
3
3
|
=========================
|
4
4
|
|
5
|
-
Features still to port
|
6
|
-
-----------------------
|
7
|
-
|
8
|
-
* Tests passing on 3 platforms
|
9
|
-
* Full project support
|
10
|
-
* Text/Source/Ruby bundle commands ported
|
11
|
-
* Packaged for one-click install on 3 platforms
|
12
|
-
* Ruby on Rails/HTML/CSS/YAML bundle commands ported
|
13
|
-
|
14
5
|
Version 0.4.0
|
15
6
|
-------------
|
16
7
|
|
17
8
|
Feature parity with Redcar 0.2.
|
18
9
|
|
10
|
+
Remaining:
|
11
|
+
* Text/Source/Ruby bundle commands ported
|
12
|
+
* Ruby on Rails/HTML/CSS/YAML bundle commands ported
|
13
|
+
|
14
|
+
|
19
15
|
And then for 1.0...
|
20
16
|
-------------------
|
21
17
|
|
22
18
|
* Incremental search
|
19
|
+
* Tests passing on 3 platforms
|
20
|
+
* Packaged for one-click install on 3 platforms
|
23
21
|
* Find/Replace
|
24
22
|
* Go to symbol
|
25
23
|
* Command browser
|
data/Rakefile
CHANGED
@@ -1,5 +1,4 @@
|
|
1
|
-
REDCAR_VERSION = "0.3.
|
2
|
-
|
1
|
+
REDCAR_VERSION = "0.3.8"
|
3
2
|
require 'rubygems'
|
4
3
|
require 'fileutils'
|
5
4
|
require 'spec/rake/spectask'
|
@@ -159,12 +158,13 @@ Rake::GemPackageTask.new(spec) do |pkg|
|
|
159
158
|
end
|
160
159
|
|
161
160
|
desc "Build a MacOS X App bundle"
|
162
|
-
task :app_bundle do
|
161
|
+
task :app_bundle => :build do
|
163
162
|
require 'erb'
|
164
163
|
|
165
164
|
redcar_icon = "redcar_icon_beta.png"
|
166
165
|
|
167
166
|
bundle_contents = File.join("pkg", "Redcar.app", "Contents")
|
167
|
+
FileUtils.rm_rf bundle_contents if File.exist? bundle_contents
|
168
168
|
macos_dir = File.join(bundle_contents, "MacOS")
|
169
169
|
resources_dir = File.join(bundle_contents, "Resources")
|
170
170
|
FileUtils.mkdir_p macos_dir
|
@@ -202,7 +202,7 @@ task :app_bundle do
|
|
202
202
|
f << '#!/bin/sh
|
203
203
|
DIR=$(cd "$(dirname "$0")"; pwd)
|
204
204
|
REDCAR=$(cd "$(dirname "${DIR}/../Resources/bin/redcar")"; pwd)
|
205
|
-
|
205
|
+
$REDCAR/redcar --ignore-stdin $@'
|
206
206
|
end
|
207
207
|
File.chmod 0777, File.join(macos_dir, "redcar")
|
208
208
|
|
@@ -211,7 +211,8 @@ task :app_bundle do
|
|
211
211
|
FileUtils.cp_r f, File.join(resources_dir, f), :remove_destination => true
|
212
212
|
end
|
213
213
|
|
214
|
-
|
214
|
+
p "Running #{File.join(resources_dir, "bin", "redcar")} install"
|
215
|
+
system "#{File.join(resources_dir, "bin", "redcar")} install"
|
215
216
|
|
216
217
|
FileUtils.cp_r File.join(resources_dir, "plugins", "application", "icons", redcar_icon),
|
217
218
|
resources_dir, :remove_destination => true
|
@@ -288,32 +289,64 @@ task :release => :gem do
|
|
288
289
|
AWS::S3::S3Object.store("redcar-#{REDCAR_VERSION}.gem", open(file), 'redcar', :access => :public_read)
|
289
290
|
end
|
290
291
|
|
291
|
-
def hash_with_hash_default
|
292
|
-
Hash.new {|h,k| h[k] = hash_with_hash_default }
|
293
|
-
end
|
294
|
-
|
295
292
|
namespace :redcar do
|
293
|
+
def hash_with_hash_default
|
294
|
+
Hash.new {|h,k| h[k] = hash_with_hash_default }
|
295
|
+
end
|
296
|
+
|
297
|
+
require 'json'
|
298
|
+
|
296
299
|
desc "Redcar Integration: output runnable info"
|
297
300
|
task :runnables do
|
298
|
-
mkdir_p(".redcar")
|
301
|
+
mkdir_p(".redcar/runnables")
|
299
302
|
puts "Creating runnables"
|
303
|
+
File.open(".redcar/runnables/sync_stdout.rb", "w") do |fout|
|
304
|
+
fout.puts <<-RUBY
|
305
|
+
$stdout.sync = true
|
306
|
+
$stderr.sync = true
|
307
|
+
RUBY
|
308
|
+
end
|
300
309
|
|
301
310
|
tasks = Rake::Task.tasks
|
302
|
-
|
303
|
-
|
311
|
+
runnables = []
|
312
|
+
ruby_bin = Config::CONFIG["bindir"] + "/ruby -r#{File.dirname(__FILE__)}/.redcar/runnables/sync_stdout.rb "
|
304
313
|
tasks.each do |task|
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
314
|
+
name = task.name.gsub(":", "/")
|
315
|
+
command = ruby_bin + $0 + " " + task.name
|
316
|
+
runnables << {
|
317
|
+
"name" => name,
|
318
|
+
"command" => command,
|
319
|
+
"description" => task.comment,
|
320
|
+
"type" => "task/ruby/rake"
|
321
|
+
}
|
322
|
+
end
|
323
|
+
File.open(".redcar/runnables/rake.json", "w") do |f|
|
324
|
+
data = {"commands" => runnables}
|
325
|
+
f.puts(JSON.pretty_generate(data))
|
312
326
|
end
|
313
|
-
|
314
|
-
|
315
|
-
|
327
|
+
File.open(".redcar/runnables/ruby.json", "w") do |f|
|
328
|
+
data = {"file_runners" =>
|
329
|
+
[
|
330
|
+
{
|
331
|
+
"regex" => ".*.rb$",
|
332
|
+
"name" => "Run as ruby",
|
333
|
+
"command" => ruby_bin + "__PATH__",
|
334
|
+
"type" => "script/ruby"
|
335
|
+
}
|
336
|
+
]
|
337
|
+
}
|
338
|
+
f.puts(JSON.pretty_generate(data))
|
339
|
+
end
|
340
|
+
end
|
341
|
+
|
342
|
+
task :sample do
|
343
|
+
5.times do |i|
|
344
|
+
puts "out#{i}"
|
345
|
+
sleep 1
|
346
|
+
$stderr.puts "err#{i}"
|
347
|
+
sleep 1
|
316
348
|
end
|
349
|
+
FileUtils.touch("finished_process")
|
317
350
|
end
|
318
351
|
end
|
319
352
|
|
data/lib/redcar.rb
CHANGED
@@ -41,10 +41,10 @@ require 'uri'
|
|
41
41
|
#
|
42
42
|
# and so on.
|
43
43
|
module Redcar
|
44
|
-
VERSION = '0.3.
|
44
|
+
VERSION = '0.3.8'
|
45
45
|
VERSION_MAJOR = 0
|
46
46
|
VERSION_MINOR = 3
|
47
|
-
VERSION_RELEASE =
|
47
|
+
VERSION_RELEASE = 8
|
48
48
|
|
49
49
|
ENVIRONMENTS = [:user, :debug, :test]
|
50
50
|
|
@@ -138,16 +138,22 @@ module Redcar
|
|
138
138
|
:test => ".redcar_test",
|
139
139
|
:debug => ".redcar_debug"
|
140
140
|
}[Redcar.environment]
|
141
|
+
File.expand_path(File.join(home_dir, dirname))
|
142
|
+
end
|
143
|
+
|
144
|
+
# Platform specific ~/
|
145
|
+
#
|
146
|
+
# @return [String] expanded path
|
147
|
+
def self.home_dir
|
141
148
|
if platform == :windows
|
142
149
|
if ENV['USERPROFILE'].nil?
|
143
|
-
userdir = "C:/My Documents
|
150
|
+
userdir = "C:/My Documents/"
|
144
151
|
else
|
145
|
-
userdir =
|
152
|
+
userdir = ENV['USERPROFILE']
|
146
153
|
end
|
147
154
|
else
|
148
|
-
userdir =
|
155
|
+
userdir = ENV['HOME'] unless ENV['HOME'].nil?
|
149
156
|
end
|
150
|
-
File.expand_path(userdir)
|
151
157
|
end
|
152
158
|
|
153
159
|
class << self
|
data/lib/redcar/installer.rb
CHANGED
@@ -18,6 +18,26 @@ module Redcar
|
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
21
|
+
def install
|
22
|
+
unless File.writable?(JRUBY_JAR_DIR)
|
23
|
+
puts "Don't have permission to write to #{JRUBY_JAR_DIR}. Please rerun with sudo."
|
24
|
+
exit 1
|
25
|
+
end
|
26
|
+
Redcar.environment = :user
|
27
|
+
puts "Downloading >10MB of jar files. This may take a while."
|
28
|
+
grab_jruby
|
29
|
+
grab_common_jars
|
30
|
+
grab_platform_dependencies
|
31
|
+
grab_redcar_jars
|
32
|
+
puts "Building textmate bundle cache"
|
33
|
+
s = Time.now
|
34
|
+
load_textmate_bundles
|
35
|
+
puts "... took #{Time.now - s}s"
|
36
|
+
fix_user_dir_permissions
|
37
|
+
puts
|
38
|
+
puts "Done! You're ready to run Redcar."
|
39
|
+
end
|
40
|
+
|
21
41
|
def associate_with_any_right_click
|
22
42
|
raise 'this is currently only for windows' unless Redcar.platform == :windows
|
23
43
|
require 'rbconfig'
|
@@ -38,20 +58,6 @@ module Redcar
|
|
38
58
|
puts 'Associated.'
|
39
59
|
end
|
40
60
|
|
41
|
-
def install
|
42
|
-
unless File.writable?(JRUBY_JAR_DIR)
|
43
|
-
puts "Don't have permission to write to #{JRUBY_JAR_DIR}. Please rerun with sudo."
|
44
|
-
exit 1
|
45
|
-
end
|
46
|
-
puts "Downloading >10MB of jar files. This may take a while."
|
47
|
-
grab_jruby
|
48
|
-
grab_common_jars
|
49
|
-
grab_platform_dependencies
|
50
|
-
grab_redcar_jars
|
51
|
-
puts
|
52
|
-
puts "Done! You're ready to run Redcar."
|
53
|
-
end
|
54
|
-
|
55
61
|
def plugins_dir
|
56
62
|
File.expand_path(File.join(File.dirname(__FILE__), %w(.. .. plugins)))
|
57
63
|
end
|
@@ -71,6 +77,10 @@ module Redcar
|
|
71
77
|
/jface/org.eclipse.core.jobs.jar
|
72
78
|
)
|
73
79
|
|
80
|
+
def redcar_jars_dir
|
81
|
+
File.expand_path(File.join(Redcar.user_dir, "jars"))
|
82
|
+
end
|
83
|
+
|
74
84
|
JRUBY_JAR_DIR = File.expand_path(File.join(File.dirname(__FILE__), ".."))
|
75
85
|
|
76
86
|
JRUBY = [
|
@@ -81,59 +91,67 @@ module Redcar
|
|
81
91
|
|
82
92
|
JRUBY << "http://jruby.org.s3.amazonaws.com/downloads/1.5.0/jruby-complete-1.5.0.jar"
|
83
93
|
|
94
|
+
JOPENSSL_DIR = "lib/openssl/lib/"
|
84
95
|
JOPENSSL = {
|
85
|
-
"/jruby/bcmail-jdk14-139-#{Redcar::VERSION}.jar" => "
|
86
|
-
"/jruby/bcprov-jdk14-139-#{Redcar::VERSION}.jar" => "
|
87
|
-
"/jruby/jopenssl-#{Redcar::VERSION}.jar" => "
|
96
|
+
"/jruby/bcmail-jdk14-139-#{Redcar::VERSION}.jar" => "bcmail-jdk14-139.jar",
|
97
|
+
"/jruby/bcprov-jdk14-139-#{Redcar::VERSION}.jar" => "bcprov-jdk14-139.jar",
|
98
|
+
"/jruby/jopenssl-#{Redcar::VERSION}.jar" => "jopenssl.jar",
|
88
99
|
}
|
89
100
|
|
90
101
|
REDCAR_JARS = {
|
91
102
|
"/java-mateview-#{Redcar::VERSION}.jar" => "plugins/edit_view_swt/vendor/java-mateview.jar",
|
92
|
-
"/
|
103
|
+
"/application_swt-#{Redcar::VERSION}.jar" => "plugins/application_swt/lib/dist/application_swt.jar"
|
93
104
|
}
|
94
105
|
|
95
106
|
XULRUNNER_URI = "http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/1.9.2/runtimes/xulrunner-1.9.2.en-US.win32.zip"
|
96
107
|
|
108
|
+
SWT_JARS = {
|
109
|
+
:osx => {
|
110
|
+
"/swt/osx.jar" => "osx/swt.jar",
|
111
|
+
"/swt/osx64.jar" => "osx64/swt.jar"
|
112
|
+
},
|
113
|
+
:linux => {
|
114
|
+
"/swt/linux.jar" => "linux/swt.jar",
|
115
|
+
"/swt/linux64.jar" => "linux64/swt.jar"
|
116
|
+
},
|
117
|
+
:windows => {
|
118
|
+
"/swt/win32.jar" => "win32/swt.jar",
|
119
|
+
}
|
120
|
+
}
|
121
|
+
|
97
122
|
def grab_jruby
|
98
|
-
puts "*
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
JOPENSSL.each do |jar_url, relative_path|
|
103
|
-
download(jar_url, File.join(File.dirname(__FILE__), "..", "..", relative_path))
|
104
|
-
end
|
123
|
+
puts "* Checking JRuby dependencies"
|
124
|
+
|
125
|
+
setup "jruby", :resources => JRUBY, :path => JRUBY_JAR_DIR
|
126
|
+
setup "jopenssl", :resources => JOPENSSL, :path => JOPENSSL_DIR
|
105
127
|
end
|
106
128
|
|
107
129
|
def grab_common_jars
|
108
|
-
puts "*
|
109
|
-
|
110
|
-
|
111
|
-
end
|
130
|
+
puts "* Checking common jars"
|
131
|
+
|
132
|
+
setup "jface", :resources => JFACE, :path => File.join(plugins_dir, %w(application_swt vendor jface))
|
112
133
|
end
|
113
134
|
|
114
135
|
def grab_platform_dependencies
|
115
|
-
puts "*
|
136
|
+
puts "* Checking platform-specific SWT jars"
|
116
137
|
case Config::CONFIG["host_os"]
|
117
138
|
when /darwin/i
|
118
|
-
|
119
|
-
|
139
|
+
setup "swt", :resources => SWT_JARS[:osx], :path => File.join(plugins_dir, %w(application_swt vendor swt))
|
140
|
+
|
120
141
|
when /linux/i
|
121
|
-
|
122
|
-
download("/swt/linux64.jar", File.join(plugins_dir, %w(application_swt vendor swt linux64 swt.jar)))
|
123
|
-
when /windows|mswin|mingw/i
|
124
|
-
download("/swt/win32.jar", File.join(plugins_dir, %w(application_swt vendor swt win32 swt.jar)))
|
125
|
-
# download("/swt/win64.jar", File.join(plugins_dir, %w(application_swt vendor swt win64 swt.jar)))
|
126
|
-
vendor_dir = File.expand_path(File.join(File.dirname(__FILE__), %w(.. .. vendor)))
|
142
|
+
setup "swt", :resources => SWT_JARS[:linux], :path => File.join(plugins_dir, %w(application_swt vendor swt))
|
127
143
|
|
128
|
-
|
144
|
+
when /windows|mswin|mingw/i
|
145
|
+
setup "swt", :resources => SWT_JARS[:windows], :path => File.join(plugins_dir, %w(application_swt vendor swt))
|
146
|
+
setup "swt", :resources => [XULRUNNER_URI], :path => File.expand_path(File.join(File.dirname(__FILE__), %w(.. .. vendor)))
|
147
|
+
link( File.join(redcar_jars_dir, "swt", "xulrunner"),
|
148
|
+
File.expand_path(File.join(File.dirname(__FILE__), %w(.. .. vendor xulrunner))))
|
129
149
|
end
|
130
150
|
end
|
131
151
|
|
132
152
|
def grab_redcar_jars
|
133
|
-
puts "*
|
134
|
-
REDCAR_JARS
|
135
|
-
download(jar_url, File.join(File.dirname(__FILE__), "..", "..", relative_path))
|
136
|
-
end
|
153
|
+
puts "* Checking Redcar jars"
|
154
|
+
setup "redcar", :resources => REDCAR_JARS, :path => File.join(File.dirname(__FILE__), "..", "..")
|
137
155
|
end
|
138
156
|
|
139
157
|
def download(uri, path)
|
@@ -150,7 +168,48 @@ module Redcar
|
|
150
168
|
Installer.unzip_file(path)
|
151
169
|
end
|
152
170
|
|
153
|
-
puts " downloaded #{uri}\n to #{path}\n"
|
171
|
+
# puts " downloaded #{uri}\n to #{path}\n"
|
172
|
+
end
|
173
|
+
|
174
|
+
def setup(name, options)
|
175
|
+
resources = options.delete(:resources)
|
176
|
+
path = options.delete(:path)
|
177
|
+
|
178
|
+
if resources.is_a?(Array)
|
179
|
+
resources.each do |resource|
|
180
|
+
setup_resource name, path, resource, File.basename(resource)
|
181
|
+
end
|
182
|
+
else
|
183
|
+
resources.each_pair do |url, save_as|
|
184
|
+
setup_resource name, path, url, save_as
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|
188
|
+
|
189
|
+
def setup_resource(name, path, url, save_as)
|
190
|
+
target = File.join(path, save_as)
|
191
|
+
return if File.exist?(target)
|
192
|
+
|
193
|
+
cached = File.join(redcar_jars_dir, name, save_as)
|
194
|
+
unless File.exists?(cached)
|
195
|
+
print " downloading #{File.basename(cached)}... "
|
196
|
+
download(url, cached)
|
197
|
+
puts "done!"
|
198
|
+
end
|
199
|
+
|
200
|
+
FileUtils.mkdir_p File.dirname(target)
|
201
|
+
link(cached, target)
|
202
|
+
end
|
203
|
+
|
204
|
+
def link(cached, target)
|
205
|
+
# Windoze doesn't support FileUtils.ln_sf, so we copy the files
|
206
|
+
if Config::CONFIG["host_os"] =~ /windows|mswin|mingw/i
|
207
|
+
puts " copying #{File.basename(cached)}..."
|
208
|
+
FileUtils.cp_r cached, target
|
209
|
+
else
|
210
|
+
puts " linking #{File.basename(cached)}..."
|
211
|
+
FileUtils.ln_sf cached, target
|
212
|
+
end
|
154
213
|
end
|
155
214
|
|
156
215
|
# unzip a .zip file into the directory it is located
|
@@ -168,6 +227,22 @@ module Redcar
|
|
168
227
|
end
|
169
228
|
end
|
170
229
|
end
|
230
|
+
|
231
|
+
def load_textmate_bundles
|
232
|
+
$:.unshift("#{File.dirname(__FILE__)}/../../plugins/core/lib")
|
233
|
+
$:.unshift("#{File.dirname(__FILE__)}/../../plugins/textmate/lib")
|
234
|
+
require 'core'
|
235
|
+
Redcar.environment = :user
|
236
|
+
Core.loaded
|
237
|
+
require 'textmate'
|
238
|
+
Redcar::Textmate.all_bundles
|
239
|
+
end
|
240
|
+
|
241
|
+
def fix_user_dir_permissions
|
242
|
+
desired_uid = File.stat(Redcar.home_dir).uid
|
243
|
+
desired_gid = File.stat(Redcar.home_dir).gid
|
244
|
+
FileUtils.chown_R(desired_uid, desired_gid.to_s, Redcar.user_dir)
|
245
|
+
end
|
171
246
|
end
|
172
247
|
end
|
173
248
|
|