just-tmux 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: c64942d5b414654232636551529fc45087f1eccb
4
+ data.tar.gz: 90618d489a480d8451f504413a6c55a3d68fcf3b
5
+ SHA512:
6
+ metadata.gz: 412f1bcae281b8fef6d6275ddb7cdcd16f79475d77ab15acd39df8a79a63e7b5208f7537be944205b47b7c60090ae066f1612ae4b79fdd6329f577b7e7052598
7
+ data.tar.gz: d9565c7be64901b5f189fcc852614d6e3b164b464e0ef91b8cc52ed70a6a872970ea8d5806536a1ea1df8b9d08abf44510ebf8fab7d5feca88ab5da5915e8816
checksums.yaml.gz.sig ADDED
Binary file
data.tar.gz.sig ADDED
@@ -0,0 +1,2 @@
1
+ ��x��!�
2
+ ����=��y�M��k�� �x�,A׉�w�!�W�ѣ�m�E=x��������:�%;��VNnw^}�64�vvEDGx�i|5R"��mq'�d`�p �-�=$�/>�|�O��C�I �q��MǞsy��Қ*�
data/lib/just-tmux.rb ADDED
@@ -0,0 +1,57 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # file: just-tmux.rb
4
+
5
+ require 'dynarex'
6
+
7
+ class JustTmux
8
+
9
+ attr_reader :to_s
10
+
11
+
12
+ # example raw dynarex file:
13
+ #
14
+ # config=<<EOF
15
+ # <?dynarex schema="tmux[session, shell, default_dir]/window(command, name, dir)"?>
16
+ # session: fun
17
+ # shell: bash
18
+ # default_dir: ~
19
+ #
20
+ # lis
21
+ # pwd home /home/james/ruby
22
+ #EOF
23
+ #
24
+ def intialize(dynarex_file)
25
+
26
+ dynarex = Dynarex.new dynarex_file
27
+
28
+ shell = dynarex.summary['shell']
29
+ default_dir = File.expand_path dynarex.summary['default_dir']
30
+ session_name = dynarex.summary['session']
31
+
32
+ h = dynarex.to_h.map do |x|
33
+ x[:name] = shell if x[:name].empty?
34
+ x[:dir] = default_dir if x[:dir].empty?
35
+ x
36
+ end
37
+
38
+ @to_s = new_session(session_name, h[0][:name], shell, h[0][:dir],
39
+ h[0][:command]) + h[1..-1].map {|x| new_window(x[:name],
40
+ shell, x[:command]) }.join
41
+
42
+ end
43
+
44
+ private
45
+
46
+ def new_window(window_name, shell, command)
47
+ "tmux new-window -n %s %s\ntmux send-keys '%s' Enter\n" %
48
+ [window_name, shell, command]
49
+ end
50
+
51
+ def new_session(session_name, window_name, shell, dir, command)
52
+ r = "tmux new-session -d -s %s -n %s '%s'\n" %
53
+ [session_name, shell, window_name]
54
+ r + "tmux send-keys 'cd %s && %s' Enter\n" % [dir, command]
55
+ end
56
+
57
+ end
metadata ADDED
@@ -0,0 +1,81 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: just-tmux
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - James Robertson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTEzMTAyMTIxMDg1NVoXDTE0MTAyMTIxMDg1NVowSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
+ ggEBALRcgFjzqQC36t9RdsfKa29eZU3RGX9vqKu0QVMMg/hJo4md7bqXUKD5BZqk
19
+ df0ppWvR/luV0fWByq66RjyQRSMdGVdYKYfmqLmM71b68vdcUytnjknPCwz+n5JP
20
+ 0w4nIoKpD5aOjLZzs1uojArn/Icba7X2AvxsLUupPr3hKVt7bLmXtJDNok/lggPV
21
+ kyD1T7giAz5tuuIqbPa5eJ6mD6jdVbxbWCDK6ayQRd18Wa1robM6ok0eYDl0G1kO
22
+ q4YDMytHLHVQ+e3u151BNpBUnc2vD+8AaDTKd+6d1juFTQSKDQF8w6izccf5AsRb
23
+ vdHinn9RtYCuokVStagrzaJjK3MCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQUtiOp/HE5wbTgTwtXROHNKhPZqOYwJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAoNIQ72n0
27
+ HkvWWxxit+58xNNzOa4exjL+PAad8TR3t1YzLbj6aECYxb5W2xOo+ODWmIZgMibp
28
+ 9jSrEfm3d9pKHndUDOUUi+Ij66BczOV48fMrddKy2U6JXCqbLibqwPHJw6dJLIOy
29
+ LT7j6zlwYJXLPLZLIwxALp1glzkxFr59bUEKLPMf7UoznzMFiouG1TLNenXMRGNb
30
+ 1Id2drh8xU8r9QiPdhl5D6kd7sPz8uLai2k1v7pRK4fMNj7DLdJwBafBtUguULQ2
31
+ GZxKVyIb70J4/2nG3zo8UMkUNLZb4ndNQ+FEsYq5injt0qnyorF9kpslWaSMv2Y0
32
+ BEbFg33dhjzHhQ==
33
+ -----END CERTIFICATE-----
34
+ date: 2013-10-21 00:00:00.000000000 Z
35
+ dependencies:
36
+ - !ruby/object:Gem::Dependency
37
+ name: dynarex
38
+ requirement: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: '0'
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '0'
50
+ description:
51
+ email: james@r0bertson.co.uk
52
+ executables: []
53
+ extensions: []
54
+ extra_rdoc_files: []
55
+ files:
56
+ - lib/just-tmux.rb
57
+ homepage: https://github.com/jrobertson/just-tmux
58
+ licenses:
59
+ - MIT
60
+ metadata: {}
61
+ post_install_message:
62
+ rdoc_options: []
63
+ require_paths:
64
+ - lib
65
+ required_ruby_version: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ required_rubygems_version: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ requirements: []
76
+ rubyforge_project:
77
+ rubygems_version: 2.0.0.rc.2
78
+ signing_key:
79
+ specification_version: 4
80
+ summary: just-tmux
81
+ test_files: []
metadata.gz.sig ADDED
Binary file