repla 0.8.0 → 0.8.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: aae4b6c188582d9c3eb7e6f3445d5af6927bff7e
4
- data.tar.gz: f5627327e35865fe416b8d7047d464f703aa3fee
3
+ metadata.gz: 87526d7ca6ba1268da5cc15117822bdd450f23b7
4
+ data.tar.gz: ee6780d5b3cdaaaae58198c768c4a9361ebb3e7e
5
5
  SHA512:
6
- metadata.gz: 2a8cce91dada9ca36a2e99f1bf4e0f2344a82e9389d7714f7a2d3bc8b8eb533407755b71b632dfcc5d1e0b543125070079c18d5bac2195d9dea6e5e61b8ca847
7
- data.tar.gz: 793b7ac5f555c2f8ca54b6a13385488100e9e79e1b079a6be525144e28ae5c47c9b993422d5881ff883e318182144c40904b056daafa18ee26aa710f3447342f
6
+ metadata.gz: 46314f9cb676081d120aaa853da3c6e7c6daf92ea23f1cac9fc5015d76e5f19af0d384d20f4683bec43e058b388ac735d2cc4effa95d3733a5c164adca878f2f
7
+ data.tar.gz: a06271d13d7f1eee4492f0a5726cb7438005b7b93d493327f17d558f5ca96ff6c1b40f2d28f8fabc0ea1a41b6608200b489555983686ab72c903749ed161a9e3
@@ -29,6 +29,14 @@ module Repla
29
29
  run_applescript(RUN_PLUGIN_SCRIPT, parameters)
30
30
  end
31
31
 
32
+ RUN_PLUGIN_WITH_ENVIRONMENT_SCRIPT = File.join(
33
+ APPLESCRIPT_DIRECTORY, 'run_plugin_with_environment.scpt'
34
+ )
35
+ def self.run_plugin_with_environment(name, environment)
36
+ parameters = [name, environment]
37
+ run_applescript(RUN_PLUGIN_WITH_ENVIRONMENT_SCRIPT, parameters)
38
+ end
39
+
32
40
  RUN_PLUGIN_IN_SPLIT_SCRIPT = File.join(APPLESCRIPT_DIRECTORY,
33
41
  'run_plugin_in_split.scpt')
34
42
  def self.run_plugin_in_split(name, window_id, split_id)
@@ -79,8 +87,8 @@ module Repla
79
87
  # TODO: `self.run_applescript` should be private but now all of a sudden
80
88
  # instances method can't call private class methods?
81
89
  def self.run_applescript(script, arguments = nil)
82
- # command = "osascript #{script.shell_escape}"
83
- command = "osascript #{script}"
90
+ # command = "/usr/bin/osascript #{script.shell_escape}"
91
+ command = "/usr/bin/osascript #{script}"
84
92
 
85
93
  if arguments
86
94
  command += ' ' + arguments.compact.map(&:to_s).map do |x|
@@ -11,8 +11,9 @@ module Repla
11
11
  'applescript')
12
12
 
13
13
  def self.run_javascript(javascript)
14
- # `osascript` requires redirecting stderr to stdout for some reason
15
- `osascript -l JavaScript -e \
14
+ # `/usr/bin/osascript` requires redirecting stderr to stdout for some
15
+ # reason
16
+ `/usr/bin/osascript -l JavaScript -e \
16
17
  #{Shellwords.escape(javascript)} 2>&1`.chomp!
17
18
  # return `node -e #{Shellwords.escape(javascript)}`
18
19
  end
@@ -74,7 +75,7 @@ module Repla
74
75
  # TODO: `self.run_applescript` should be private but now all of a sudden
75
76
  # instances method can't call private class methods?
76
77
  def self.run_applescript(script, arguments = nil)
77
- command = "osascript #{Shellwords.escape(script)}"
78
+ command = "/usr/bin/osascript #{Shellwords.escape(script)}"
78
79
  if arguments
79
80
  arguments.each do |argument|
80
81
  if argument
@@ -16,5 +16,7 @@
16
16
  <integer>1</integer>
17
17
  <key>WCTransparentBackground</key>
18
18
  <integer>1</integer>
19
+ <key>WCUsesEnvironment</key>
20
+ <integer>1</integer>
19
21
  </dict>
20
22
  </plist>
@@ -1 +1,3 @@
1
1
  TEST_PLUGIN_NAME = 'TestEnvironment'.freeze
2
+ TEST_MESSAGE_KEY = 'MESSAGE'.freeze
3
+ TEST_MESSAGE_VALUE = 'A message'.freeze
@@ -27,4 +27,10 @@ class TestEnviroment < Test::Unit::TestCase
27
27
  assert(window_id.integer?)
28
28
  assert(window_id.to_i > 0)
29
29
  end
30
+
31
+ def test_message_key
32
+ assert(ENV.key?(TEST_MESSAGE_KEY))
33
+ message = ENV[TEST_MESSAGE_KEY]
34
+ assert_equal(message, TEST_MESSAGE_VALUE)
35
+ end
30
36
  end
@@ -16,5 +16,7 @@
16
16
  <integer>0</integer>
17
17
  <key>WCTransparentBackground</key>
18
18
  <integer>0</integer>
19
+ <key>WCUsesEnvironment</key>
20
+ <integer>0</integer>
19
21
  </dict>
20
22
  </plist>
data/lib/repla/test.rb CHANGED
@@ -52,9 +52,9 @@ module Repla
52
52
  'title.js')
53
53
  # Plugins
54
54
  TEST_PLUGIN_DIRECTORY = File.join(TEST_DIRECTORY, 'packages')
55
- HELLOWORLD_PLUGIN_FILE = File.join(TEST_PLUGIN_DIRECTORY,
56
- 'HelloWorld.replaplugin')
57
- HELLOWORLD_PLUGIN_NAME = 'HelloWorld'.freeze
55
+ TEST_HELLOWORLD_PLUGIN_FILE = File.join(TEST_PLUGIN_DIRECTORY,
56
+ 'HelloWorld.replaplugin')
57
+ TEST_HELLOWORLD_PLUGIN_NAME = 'HelloWorld'.freeze
58
58
  TEST_SERVER_PLUGIN_NAME = 'TestServer'.freeze
59
59
  TEST_SERVER_PLUGIN_FILE = File.join(TEST_PLUGIN_DIRECTORY,
60
60
  'TestServer.replaplugin')
@@ -71,6 +71,9 @@ module Repla
71
71
  INVALID_PLUGIN_FILE = File.join(TEST_PLUGIN_DIRECTORY,
72
72
  'Invalid.replaplugin')
73
73
  INVALID_PLUGIN_NAME = 'Invalid'.freeze
74
+ TEST_ENVIRONMENT_PLUGIN_FILE = File.join(TEST_PLUGIN_DIRECTORY,
75
+ 'TestEnvironment.replaplugin')
76
+ TEST_ENVIRONMENT_PLUGIN_NAME = 'TestEnvironment'.freeze
74
77
 
75
78
  # Local Asssets
76
79
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: repla
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roben Kleene
@@ -31,6 +31,7 @@ files:
31
31
  - lib/applescript/resource_url_for_plugin.scpt
32
32
  - lib/applescript/run_plugin.scpt
33
33
  - lib/applescript/run_plugin_in_split.scpt
34
+ - lib/applescript/run_plugin_with_environment.scpt
34
35
  - lib/applescript/show_log.scpt
35
36
  - lib/applescript/split_id_in_window.scpt
36
37
  - lib/applescript/split_id_in_window_last.scpt