mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 00:56:10 +00:00 
			
		
		
		
	Fix binding of C-Space/C-@, from Micah Cowan.
This commit is contained in:
		
							
								
								
									
										41
									
								
								key-string.c
									
									
									
									
									
								
							
							
						
						
									
										41
									
								
								key-string.c
									
									
									
									
									
								
							@@ -149,29 +149,28 @@ key_string_lookup_string(const char *string)
 | 
			
		||||
		key = (u_char) string[0];
 | 
			
		||||
		if (key < 32 || key > 126)
 | 
			
		||||
			return (KEYC_NONE);
 | 
			
		||||
 | 
			
		||||
		/* Convert the standard control keys. */
 | 
			
		||||
		if (modifiers & KEYC_CTRL) {
 | 
			
		||||
			if (key >= 97 && key <= 122)
 | 
			
		||||
				key -= 96;
 | 
			
		||||
			else if (key >= 64 && key <= 95)
 | 
			
		||||
				key -= 64;
 | 
			
		||||
			else if (key == 32)
 | 
			
		||||
				key = 0;
 | 
			
		||||
			else if (key == 63)
 | 
			
		||||
				key = KEYC_BSPACE;
 | 
			
		||||
			else
 | 
			
		||||
				return (KEYC_NONE);
 | 
			
		||||
			modifiers &= ~KEYC_CTRL;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		return (key | modifiers);
 | 
			
		||||
	} else {
 | 
			
		||||
		/* Otherwise look the key up in the table. */
 | 
			
		||||
		key = key_string_search_table(string);
 | 
			
		||||
		if (key == KEYC_NONE)
 | 
			
		||||
			return (KEYC_NONE);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/* Convert the standard control keys. */
 | 
			
		||||
	if (key < KEYC_BASE && (modifiers & KEYC_CTRL)) {
 | 
			
		||||
		if (key >= 97 && key <= 122)
 | 
			
		||||
			key -= 96;
 | 
			
		||||
		else if (key >= 64 && key <= 95)
 | 
			
		||||
			key -= 64;
 | 
			
		||||
		else if (key == 32)
 | 
			
		||||
			key = 0;
 | 
			
		||||
		else if (key == 63)
 | 
			
		||||
			key = KEYC_BSPACE;
 | 
			
		||||
		else
 | 
			
		||||
			return (KEYC_NONE);
 | 
			
		||||
		modifiers &= ~KEYC_CTRL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/* Otherwise look the key up in the table. */
 | 
			
		||||
	key = key_string_search_table(string);
 | 
			
		||||
	if (key == KEYC_NONE)
 | 
			
		||||
		return (KEYC_NONE);
 | 
			
		||||
	return (key | modifiers);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user