mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 09:26:05 +00:00 
			
		
		
		
	Trim menu item text correctly, GitHub issue 3197.
This commit is contained in:
		
							
								
								
									
										14
									
								
								menu.c
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								menu.c
									
									
									
									
									
								
							@@ -56,7 +56,7 @@ menu_add_item(struct menu *menu, const struct menu_item *item,
 | 
			
		||||
{
 | 
			
		||||
	struct menu_item	*new_item;
 | 
			
		||||
	const char		*key = NULL, *cmd, *suffix = "";
 | 
			
		||||
	char			*s, *name;
 | 
			
		||||
	char			*s, *trimmed, *name;
 | 
			
		||||
	u_int			 width, max_width;
 | 
			
		||||
	int			 line;
 | 
			
		||||
	size_t			 keylen, slen;
 | 
			
		||||
@@ -103,11 +103,13 @@ menu_add_item(struct menu *menu, const struct menu_item *item,
 | 
			
		||||
		max_width--;
 | 
			
		||||
		suffix = ">";
 | 
			
		||||
	}
 | 
			
		||||
	if (key != NULL)
 | 
			
		||||
		xasprintf(&name, "%.*s%s#[default] #[align=right](%s)",
 | 
			
		||||
		    (int)max_width, s, suffix, key);
 | 
			
		||||
	else
 | 
			
		||||
		xasprintf(&name, "%.*s%s", (int)max_width, s, suffix);
 | 
			
		||||
	trimmed = format_trim_right(s, max_width);
 | 
			
		||||
	if (key != NULL) {
 | 
			
		||||
		xasprintf(&name, "%s%s#[default] #[align=right](%s)",
 | 
			
		||||
		    trimmed, suffix, key);
 | 
			
		||||
	} else
 | 
			
		||||
		xasprintf(&name, "%s%s", trimmed, suffix);
 | 
			
		||||
	free(trimmed);
 | 
			
		||||
 | 
			
		||||
	new_item->name = name;
 | 
			
		||||
	free(s);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user