Module: WinAlias
- Defined in:
- lib/win_alias/cli.rb,
lib/win_alias/util.rb,
lib/win_alias/alias.rb,
lib/win_alias/version.rb
Defined Under Namespace
Classes: Alias
Constant Summary collapse
- VERSION =
'0.1.1'.freeze
Class Method Summary collapse
- .add_to_path ⇒ Object
- .backup_path_variable ⇒ Object
- .base_path ⇒ Object
- .in_path? ⇒ Boolean
- .path ⇒ Object
Class Method Details
.add_to_path ⇒ Object
20 21 22 23 24 25 26 27 28 |
# File 'lib/win_alias/util.rb', line 20 def self.add_to_path return true if in_path? warn("About to add win-alias/bin to PATH. A backup of your paths will be saved @ #{File.join(base_path, 'path_backup.txt')} in case something goes wrong.") error("NOTE: It is recommdned you verify your PATH in another shell after this is run. Some versions of Windows can cause the PATH to be truncated at 1024 characters.") backup_path_variable ENV['PATH'] = ENV['PATH'] + ";#{path}" `setx /M PATH "#{ENV['PATH']}"` in_path? end |
.backup_path_variable ⇒ Object
30 31 32 33 34 35 |
# File 'lib/win_alias/util.rb', line 30 def self.backup_path_variable backup = File.join(base_path, 'path_backup.txt') lines = File.exist?(backup) ? File.read(backup).split("\n") : [] lines += ENV['PATH'].split(';') lines.uniq.join("\n").to_file(backup, mode: 'w') end |
.base_path ⇒ Object
8 9 10 |
# File 'lib/win_alias/util.rb', line 8 def self.base_path ENV['WIN_ALIAS_HOME'] || File.join(Dir.home, 'win_alias') end |
.in_path? ⇒ Boolean
16 17 18 |
# File 'lib/win_alias/util.rb', line 16 def self.in_path? ENV['PATH'].include?(path) end |
.path ⇒ Object
12 13 14 |
# File 'lib/win_alias/util.rb', line 12 def self.path File.join(base_path, 'bin') end |