Module: Env::Variables

Included in:
Env
Defined in:
lib/env/variables.rb

Instance Method Summary collapse

Instance Method Details

#browserString?

The default browser to use.

Returns:

  • (String, nil)

    The name of the browser program.



123
124
125
# File 'lib/env/variables.rb', line 123

def browser
  env_hash['BROWSER']
end

#columnsInteger

The number of columns in the terminal.

Returns:

  • (Integer)

    The number of columns.



63
64
65
# File 'lib/env/variables.rb', line 63

def columns
  env_hash['COLUMNS'].to_i if env_hash['COLUMNS']
end

#editorString?

The default editor to use.

Returns:

  • (String, nil)

    The name of the editor program.



113
114
115
# File 'lib/env/variables.rb', line 113

def editor
  env_hash['EDITOR']
end

#env_hashHash{String => String}

The environment variables.

Returns:

  • (Hash{String => String})

    The Hash of environment variable names and values.



11
12
13
# File 'lib/env/variables.rb', line 11

def env_hash
  ENV
end

#homePathname?

The home directory.

Returns:

  • (Pathname, nil)

    The path of the home directory.



41
42
43
44
45
# File 'lib/env/variables.rb', line 41

def home
  if (home = (env_hash['HOME'] || env_hash['HOMEPATH']))
    Pathname.new(home)
  end
end

#langArray<String, String>

The default language.

Returns:

  • (Array<String, String>)

    The language name and encoding.



53
54
55
# File 'lib/env/variables.rb', line 53

def lang
  env_hash['LANG'].split('.',2)
end

#ld_library_pathsArray<Pathname>

The directories to search within for libraries.

Returns:

  • (Array<Pathname>)

    The paths of the directories.



31
32
33
# File 'lib/env/variables.rb', line 31

def ld_library_paths
  parse_paths(env_hash['LD_LIBRARY_PATH'])
end

#linesInteger

The number of lines in the terminal.

Returns:

  • (Integer)

    The number of lines.



73
74
75
# File 'lib/env/variables.rb', line 73

def lines
  env_hash['LINES'].to_i if env_hash['LINES']
end

#parse_paths(paths) ⇒ Array<Pathname> (protected)

Parses a String containing multiple paths.

Returns:

  • (Array<Pathname>)

    The multiple paths.



135
136
137
138
139
140
141
142
143
# File 'lib/env/variables.rb', line 135

def parse_paths(paths)
  if paths
    paths.split(File::PATH_SEPARATOR).map do |path|
      Pathname.new(path)
    end
  else
    []
  end
end

#pathsArray<Pathname>

The directories to search within for executables.

Returns:

  • (Array<Pathname>)

    The paths of the directories.



21
22
23
# File 'lib/env/variables.rb', line 21

def paths
  parse_paths(env_hash['PATH'])
end

#shellString?

The path of the default shell.

Returns:

  • (String, nil)

    The path to the default shell.



83
84
85
# File 'lib/env/variables.rb', line 83

def shell
  env_hash['SHELL']
end

#shell_nameString?

The name of the default shell.

Returns:

  • (String, nil)

    The program name of the shell.



93
94
95
# File 'lib/env/variables.rb', line 93

def shell_name
  File.basename(shell) if shell
end

#terminalString?

The default terminal to use.

Returns:

  • (String, nil)

    The name of the terminal program.



103
104
105
# File 'lib/env/variables.rb', line 103

def terminal
  env_hash['COLORTERM'] || env_hash['TERM']
end