Sha256: 66af41f360bb66db063333d66fa2739fdaaba5ef0e8c5580f20c2dc7e71f6fe5
Contents?: true
Size: 1.38 KB
Versions: 3
Compression:
Stored size: 1.38 KB
Contents
# typed: true require 'rbconfig' module CLI module UI class OS extend T::Sig sig { params(emoji: T::Boolean, color_prompt: T::Boolean, arrow_keys: T::Boolean, shift_cursor: T::Boolean).void } def initialize(emoji: true, color_prompt: true, arrow_keys: true, shift_cursor: false) @emoji = emoji @color_prompt = color_prompt @arrow_keys = arrow_keys @shift_cursor = shift_cursor end sig { returns(T::Boolean) } def use_emoji? @emoji end sig { returns(T::Boolean) } def use_color_prompt? @color_prompt end sig { returns(T::Boolean) } def suggest_arrow_keys? @arrow_keys end sig { returns(T::Boolean) } def shift_cursor_back_on_horizontal_absolute? @shift_cursor end sig { returns(OS) } def self.current @current_os ||= case RbConfig::CONFIG['host_os'] when /darwin/ MAC when /linux/ LINUX else if RUBY_PLATFORM !~ /cygwin/ && ENV['OS'] == 'Windows_NT' WINDOWS else raise "Could not determine OS from host_os #{RbConfig::CONFIG["host_os"]}" end end end MAC = OS.new LINUX = OS.new WINDOWS = OS.new(emoji: false, color_prompt: false, arrow_keys: false, shift_cursor: true) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
gorails-0.1.5 | vendor/deps/cli-ui/lib/cli/ui/os.rb |
gorails-0.1.4 | vendor/deps/cli-ui/lib/cli/ui/os.rb |
gorails-0.1.3 | vendor/deps/cli-ui/lib/cli/ui/os.rb |