Class: Console::Terminal::XTerm
  
  
  
  
  
    - Inherits:
 
    - 
      Text
      
        
          - Object
 
          
            - Text
 
          
            - Console::Terminal::XTerm
 
          
        
        show all
      
     
  
  
  
  
  
  
  
  
  
  
    - Defined in:
 
    - lib/console/terminal/xterm.rb
 
  
  
 
  
    
      Constant Summary
      collapse
    
    
      
        - COLORS =
          
        
 
        {
	black: 0,
	red: 1,
	green: 2,
	yellow: 3,
	blue: 4,
	magenta: 5,
	cyan: 6,
	white: 7,
	default: 9,
}.freeze 
      
        - ATTRIBUTES =
          
        
 
        {
	normal: 0,
	bold: 1,
	bright: 1,
	faint: 2,
	italic: 3,
	underline: 4,
	blink: 5,
	reverse: 7,
	hidden: 8,
}.freeze 
      
    
  
  
    
      Instance Method Summary
      collapse
    
    
  
  
  
  
  
  
  
  
  
  Methods inherited from Text
  #[], #[]=, #initialize, #print, #print_line, #puts, #write
  
    Instance Method Details
    
      
  
  
    #colors?  ⇒ Boolean 
  
  
  
  
    
      
38
39
40 
     | 
    
      # File 'lib/console/terminal/xterm.rb', line 38
def colors?
	true
end 
     | 
  
 
    
      
  
  
    #reset  ⇒ Object 
  
  
  
  
    
      
71
72
73 
     | 
    
      # File 'lib/console/terminal/xterm.rb', line 71
def reset
	"\e[0m"
end 
     | 
  
 
    
      
  
  
    #size  ⇒ Object 
  
  
  
  
    
      
42
43
44
45
46
47 
     | 
    
      # File 'lib/console/terminal/xterm.rb', line 42
def size
	@output.winsize
rescue Errno::ENOTTY
		[24, 80]
end 
     | 
  
 
    
      
  
  
    #style(foreground, background = nil, *attributes)  ⇒ Object 
  
  
  
  
    
      
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69 
     | 
    
      # File 'lib/console/terminal/xterm.rb', line 53
def style(foreground, background = nil, *attributes)
	tokens = []
	
	if foreground
		tokens << 30 + COLORS.fetch(foreground)
	end
	
	if background
		tokens << 40 + COLORS.fetch(background)
	end
	
	attributes.each do |attribute|
		tokens << ATTRIBUTES.fetch(attribute){attribute.to_i}
	end
	
	return "\e[#{tokens.join(';')}m"
end
     | 
  
 
    
      
  
  
    #width  ⇒ Object 
  
  
  
  
    
      
49
50
51 
     | 
    
      # File 'lib/console/terminal/xterm.rb', line 49
def width
	size.last
end 
     |