mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	[ruby/reline] Return 1 when char width not found
This fixes ruby/reline#261.
3cf1213014
			
			
This commit is contained in:
		
							parent
							
								
									b88be10094
								
							
						
					
					
						commit
						dc9e33016c
					
				
					 2 changed files with 9 additions and 0 deletions
				
			
		|  | @ -108,6 +108,7 @@ class Reline::Unicode | |||
|     end | ||||
|     m = mbchar.encode(Encoding::UTF_8).match(MBCharWidthRE) | ||||
|     case | ||||
|     when m.nil? then 1 # TODO should be U+FFFD <20> REPLACEMENT CHARACTER | ||||
|     when m[:width_2_1], m[:width_2_2] then 2 | ||||
|     when m[:width_3] then 3 | ||||
|     when m[:width_0] then 0 | ||||
|  |  | |||
|  | @ -2280,6 +2280,14 @@ class Reline::KeyActor::Emacs::Test < Reline::TestCase | |||
|     assert_line('  12345') | ||||
|   end | ||||
| 
 | ||||
|   def test_input_unknown_char | ||||
|     input_keys('') # U+0378 (unassigned) | ||||
|     assert_line('') | ||||
|     assert_byte_pointer_size('') | ||||
|     assert_cursor(1) | ||||
|     assert_cursor_max(1) | ||||
|   end | ||||
| 
 | ||||
| =begin # TODO: move KeyStroke instance from Reline to LineEditor | ||||
|   def test_key_delete | ||||
|     input_keys('ab') | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 aycabta
						aycabta