mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	[ruby/irb] Commands should respect USE_COLORIZE config (https://github.com/ruby/irb/pull/362)
				
					
				
			534688dfc4
			
			
This commit is contained in:
		
							parent
							
								
									c46824d094
								
							
						
					
					
						commit
						2d4a41df6b
					
				
					 3 changed files with 8 additions and 6 deletions
				
			
		| 
						 | 
				
			
			@ -10,7 +10,7 @@ module IRB
 | 
			
		|||
  module ExtendCommand
 | 
			
		||||
    class Ls < Nop
 | 
			
		||||
      def execute(*arg, grep: nil)
 | 
			
		||||
        o = Output.new(grep: grep)
 | 
			
		||||
        o = Output.new(grep: grep, colorable: colorable)
 | 
			
		||||
 | 
			
		||||
        obj    = arg.empty? ? irb_context.workspace.main : arg.first
 | 
			
		||||
        locals = arg.empty? ? irb_context.workspace.binding.local_variables : []
 | 
			
		||||
| 
						 | 
				
			
			@ -45,7 +45,8 @@ module IRB
 | 
			
		|||
      class Output
 | 
			
		||||
        MARGIN = "  "
 | 
			
		||||
 | 
			
		||||
        def initialize(grep: nil)
 | 
			
		||||
        def initialize(grep: nil, colorable: true)
 | 
			
		||||
          @colorable = colorable
 | 
			
		||||
          @grep = grep
 | 
			
		||||
          @line_width = screen_width - MARGIN.length # right padding
 | 
			
		||||
        end
 | 
			
		||||
| 
						 | 
				
			
			@ -56,7 +57,7 @@ module IRB
 | 
			
		|||
          return if strs.empty?
 | 
			
		||||
 | 
			
		||||
          # Attempt a single line
 | 
			
		||||
          print "#{Color.colorize(name, [:BOLD, :BLUE])}: "
 | 
			
		||||
          print "#{Color.colorize(name, [:BOLD, :BLUE], colorable: @colorable)}: "
 | 
			
		||||
          if fits_on_line?(strs, cols: strs.size, offset: "#{name}: ".length)
 | 
			
		||||
            puts strs.join(MARGIN)
 | 
			
		||||
            return
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,9 +29,10 @@ module IRB
 | 
			
		|||
 | 
			
		||||
      def initialize(conf)
 | 
			
		||||
        @irb_context = conf
 | 
			
		||||
        @colorable = Color.colorable? && conf.use_colorize
 | 
			
		||||
      end
 | 
			
		||||
 | 
			
		||||
      attr_reader :irb_context
 | 
			
		||||
      attr_reader :irb_context, :colorable
 | 
			
		||||
 | 
			
		||||
      def irb
 | 
			
		||||
        @irb_context.irb
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -30,7 +30,7 @@ module IRB
 | 
			
		|||
        puts
 | 
			
		||||
        puts "#{bold("From")}: #{source.file}:#{source.first_line}"
 | 
			
		||||
        puts
 | 
			
		||||
        code = IRB::Color.colorize_code(File.read(source.file))
 | 
			
		||||
        code = IRB::Color.colorize_code(File.read(source.file), colorable: colorable)
 | 
			
		||||
        puts code.lines[(source.first_line - 1)...source.last_line].join
 | 
			
		||||
        puts
 | 
			
		||||
      end
 | 
			
		||||
| 
						 | 
				
			
			@ -78,7 +78,7 @@ module IRB
 | 
			
		|||
      end
 | 
			
		||||
 | 
			
		||||
      def bold(str)
 | 
			
		||||
        Color.colorize(str, [:BOLD])
 | 
			
		||||
        Color.colorize(str, [:BOLD], colorable: colorable)
 | 
			
		||||
      end
 | 
			
		||||
 | 
			
		||||
      Source = Struct.new(
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue