mkalias 1.0.3 → 1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7141b7cc6b6bdfe69ebcd7bfc3a9daf28a3bff3e
4
- data.tar.gz: fd583834b2ea509075c8c8f02b9c71657615da57
3
+ metadata.gz: 1948f9aa0438885fe26d111aff8ffc7b97ab1f6e
4
+ data.tar.gz: cacd144cb21b36258d1e129b3da46c560ee2e442
5
5
  SHA512:
6
- metadata.gz: 8c6124af31a8ea0e14e6fe0f2e7151efbe8f4889709f16f9ab5a5ba4911bfa868221f84fdcc5b384587edf854293c56909a5a11fe2a88a33c56d4a75775772dd
7
- data.tar.gz: 8214e02207f4b6bf8025717193a044e0a4f67906e8a55d1976999fa1d9155d8b695c4df05c626dc229d0966469a7fed1e7e726aadbe5e678c2f03ddae88d6af7
6
+ metadata.gz: d97cd21536fb5a1d58533ff7c6ae14cf93ba5a87745c545ca1a92da0e1de667f1cf6f2f5e7f6a5add46df4c69e925589831a6072fa6c064a2c29d9879963d0a3
7
+ data.tar.gz: 42b5d41f02465b52790105b2012d1257e3f0ad1d19b57c0d8b7500ce00eab5e2cce4a17c9da1de10e5e23172fece86d6fcc0468a849f132e41b2aff8c3293e58
data/README.md CHANGED
@@ -23,7 +23,7 @@ Or install it yourself as:
23
23
 
24
24
  run: $ mkalias [option]
25
25
 
26
- options:
26
+ options:
27
27
 
28
28
  new $ mkalias new [alias] [command 1] [command 2] ... [command n]
29
29
  - Create a new alias to run the commands
@@ -40,17 +40,17 @@ Or install it yourself as:
40
40
  remove $ mkalias remove [alias 1] [alias 2] ... [alias n]
41
41
  - Remove the specified alias
42
42
 
43
- add_signal $ mkalias add_signal
43
+ add_signal $ mkalias add_signal
44
44
  - Add signal to run 'source ~/.bashrc' when
45
45
  - add or remove an alias
46
46
 
47
- remove_signal $ mkalias remove_signal"
47
+ remove_signal $ mkalias remove_signal"
48
48
  - Remove signal to run 'source ~/.bashrc' when
49
49
  - add or remove an alias
50
50
 
51
- Attention: To make alias with args use #. Example:
52
- $ mkalias new [alias] "echo #1 #2 #3"
53
- Then you can use: $ [alias] arg1 arg2 arg3
51
+ Attention: To make alias with args use #. Example:
52
+ $ mkalias new [alias] "echo #1 #2 #3"
53
+ Then you can use: $ [alias] arg1 arg2 arg3
54
54
 
55
55
 
56
56
  ## Development
@@ -1,3 +1,3 @@
1
1
  module Mkalias
2
- VERSION = "1.0.3"
2
+ VERSION = "1.0.4"
3
3
  end
data/lib/mkalias.rb CHANGED
@@ -3,15 +3,14 @@ require 'set'
3
3
 
4
4
  module Mkalias
5
5
 
6
- SIGNAL_NAME = 'USR1'
6
+ SIGNAL_NAME = 'USR1'
7
7
  BASHRC_PATH = "#{File.expand_path('~')}/.bashrc"
8
8
 
9
9
  def self.new_alias(alias_name, commands, file_path=BASHRC_PATH)
10
10
  alias_names = Mkalias.list_alias(file_path)
11
11
  return false if alias_names.include?(alias_name)
12
12
 
13
- commands = commands.join('; ') if commands.kind_of?(Array)
14
- commands = commands.tr('#', '$')
13
+ commands = Mkalias.prepare_commands(commands)
15
14
 
16
15
  function_name = "mkalias_#{alias_name}"
17
16
  bash_function = "function #{function_name}(){ #{commands}; }"
@@ -23,7 +22,7 @@ module Mkalias
23
22
  file.puts(bash_function)
24
23
  end
25
24
 
26
- true
25
+ return true
27
26
  end
28
27
 
29
28
  def self.list_alias(file_path=BASHRC_PATH)
@@ -50,7 +49,7 @@ module Mkalias
50
49
  end
51
50
 
52
51
  alias_commands.select!{ |_, value| !value.nil? }
53
- return alias_commands
52
+ alias_commands
54
53
  end
55
54
 
56
55
  def self.remove_alias(alias_names, file_path=BASHRC_PATH)
@@ -62,36 +61,36 @@ module Mkalias
62
61
  removed_alias << alias_name if removed
63
62
  end
64
63
 
65
- return removed_alias
64
+ removed_alias
66
65
  end
67
66
 
68
- def self.add_signal(file_path=BASHRC_PATH)
69
- return false if Mkalias.has_signal?(file_path)
67
+ def self.add_signal(file_path=BASHRC_PATH)
68
+ return false if Mkalias.has_signal?(file_path)
70
69
 
71
- trap_command = "trap 'source #{file_path}' #{SIGNAL_NAME}"
70
+ trap_command = "trap 'source #{file_path}' #{SIGNAL_NAME}"
72
71
  open(file_path, 'a') do |file|
73
72
  file.puts("\n")
74
73
  file.puts(trap_command)
75
74
  end
76
75
 
77
- true
78
- end
76
+ return true
77
+ end
79
78
 
80
- def self.remove_signal(file_path=BASHRC_PATH)
81
- return false unless has_signal?(file_path)
79
+ def self.remove_signal(file_path=BASHRC_PATH)
80
+ return false unless has_signal?(file_path)
82
81
 
83
- trap_regex = /\btrap\s'source\s(.*)\sUSR1/
82
+ trap_regex = /\btrap\s'source\s(.*)\sUSR1/
84
83
 
85
84
  lines = File.readlines(file_path).reject{ |line| line =~ trap_regex }
86
85
  File.open(file_path, "w"){ |f| lines.each { |line| f.puts line } }
87
86
 
88
- true
89
- end
87
+ return true
88
+ end
90
89
 
91
- def self.has_signal?(file_path=BASHRC_PATH)
92
- trap_regex = /\btrap\s'source\s(.*)\sUSR1/
93
- !File.foreach(file_path).grep(trap_regex).empty?
94
- end
90
+ def self.has_signal?(file_path=BASHRC_PATH)
91
+ trap_regex = /\btrap\s'source\s(.*)\sUSR1/
92
+ !File.foreach(file_path).grep(trap_regex).empty?
93
+ end
95
94
 
96
95
  def self.get_alias_command(alias_name, file_path=BASHRC_PATH)
97
96
  alias_names = Mkalias.list_alias(file_path)
@@ -107,7 +106,7 @@ module Mkalias
107
106
  return result.captures.first.split(';').each{ |c| c.strip! } if result
108
107
  end
109
108
 
110
- nil
109
+ return nil
111
110
  end
112
111
 
113
112
  def self.remove_one_alias(alias_name, file_path=BASHRC_PATH)
@@ -122,4 +121,14 @@ module Mkalias
122
121
 
123
122
  return true
124
123
  end
124
+
125
+ def self.prepare_commands(commands)
126
+ commands = commands.join('; ') if commands.kind_of?(Array)
127
+ unless commands.include?(';') or commands.include?('#')
128
+ commands = "#{commands} $@"
129
+ end
130
+ commands = commands.tr('#', '$')
131
+
132
+ commands
133
+ end
125
134
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mkalias
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luciano Prestes Cavalcanti
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-13 00:00:00.000000000 Z
11
+ date: 2016-05-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler