mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 00:56:10 +00:00 
			
		
		
		
	Merge clear-history into capture-pane.
This commit is contained in:
		
							
								
								
									
										2
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Makefile
									
									
									
									
									
								
							@@ -13,7 +13,6 @@ SRCS=	alerts.c \
 | 
				
			|||||||
	cmd-choose-buffer.c \
 | 
						cmd-choose-buffer.c \
 | 
				
			||||||
	cmd-choose-client.c \
 | 
						cmd-choose-client.c \
 | 
				
			||||||
	cmd-choose-tree.c \
 | 
						cmd-choose-tree.c \
 | 
				
			||||||
	cmd-clear-history.c \
 | 
					 | 
				
			||||||
	cmd-command-prompt.c \
 | 
						cmd-command-prompt.c \
 | 
				
			||||||
	cmd-confirm-before.c \
 | 
						cmd-confirm-before.c \
 | 
				
			||||||
	cmd-copy-mode.c \
 | 
						cmd-copy-mode.c \
 | 
				
			||||||
@@ -89,7 +88,6 @@ SRCS=	alerts.c \
 | 
				
			|||||||
	layout-set.c \
 | 
						layout-set.c \
 | 
				
			||||||
	layout.c \
 | 
						layout.c \
 | 
				
			||||||
	log.c \
 | 
						log.c \
 | 
				
			||||||
	mode-key.c \
 | 
					 | 
				
			||||||
	names.c \
 | 
						names.c \
 | 
				
			||||||
	notify.c \
 | 
						notify.c \
 | 
				
			||||||
	options-table.c \
 | 
						options-table.c \
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -49,6 +49,19 @@ const struct cmd_entry cmd_capture_pane_entry = {
 | 
				
			|||||||
	.exec = cmd_capture_pane_exec
 | 
						.exec = cmd_capture_pane_exec
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const struct cmd_entry cmd_clear_history_entry = {
 | 
				
			||||||
 | 
						.name = "clear-history",
 | 
				
			||||||
 | 
						.alias = "clearhist",
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						.args = { "t:", 0, 0 },
 | 
				
			||||||
 | 
						.usage = CMD_TARGET_PANE_USAGE,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						.tflag = CMD_PANE,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						.flags = CMD_AFTERHOOK,
 | 
				
			||||||
 | 
						.exec = cmd_capture_pane_exec
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static char *
 | 
					static char *
 | 
				
			||||||
cmd_capture_pane_append(char *buf, size_t *len, char *line, size_t linelen)
 | 
					cmd_capture_pane_append(char *buf, size_t *len, char *line, size_t linelen)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@@ -91,7 +104,6 @@ cmd_capture_pane_pending(struct args *args, struct window_pane *wp,
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static char *
 | 
					static char *
 | 
				
			||||||
 | 
					 | 
				
			||||||
cmd_capture_pane_history(struct args *args, struct cmdq_item *item,
 | 
					cmd_capture_pane_history(struct args *args, struct cmdq_item *item,
 | 
				
			||||||
    struct window_pane *wp, size_t *len)
 | 
					    struct window_pane *wp, size_t *len)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@@ -186,6 +198,13 @@ cmd_capture_pane_exec(struct cmd *self, struct cmdq_item *item)
 | 
				
			|||||||
	const char		*bufname;
 | 
						const char		*bufname;
 | 
				
			||||||
	size_t			 len;
 | 
						size_t			 len;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (self->entry == &cmd_clear_history_entry) {
 | 
				
			||||||
 | 
							if (wp->mode == &window_copy_mode)
 | 
				
			||||||
 | 
								window_pane_reset_mode(wp);
 | 
				
			||||||
 | 
							grid_clear_history(wp->base.grid);
 | 
				
			||||||
 | 
							return (CMD_RETURN_NORMAL);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	len = 0;
 | 
						len = 0;
 | 
				
			||||||
	if (args_has(args, 'P'))
 | 
						if (args_has(args, 'P'))
 | 
				
			||||||
		buf = cmd_capture_pane_pending(args, wp, &len);
 | 
							buf = cmd_capture_pane_pending(args, wp, &len);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,53 +0,0 @@
 | 
				
			|||||||
/* $OpenBSD$ */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 * Copyright (c) 2009 Nicholas Marriott <nicholas.marriott@gmail.com>
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * Permission to use, copy, modify, and distribute this software for any
 | 
					 | 
				
			||||||
 * purpose with or without fee is hereby granted, provided that the above
 | 
					 | 
				
			||||||
 * copyright notice and this permission notice appear in all copies.
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 | 
					 | 
				
			||||||
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 | 
					 | 
				
			||||||
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 | 
					 | 
				
			||||||
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 | 
					 | 
				
			||||||
 * WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
 | 
					 | 
				
			||||||
 * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
 | 
					 | 
				
			||||||
 * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include <sys/types.h>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "tmux.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 * Clear pane history.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static enum cmd_retval	cmd_clear_history_exec(struct cmd *,
 | 
					 | 
				
			||||||
			    struct cmdq_item *);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const struct cmd_entry cmd_clear_history_entry = {
 | 
					 | 
				
			||||||
	.name = "clear-history",
 | 
					 | 
				
			||||||
	.alias = "clearhist",
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	.args = { "t:", 0, 0 },
 | 
					 | 
				
			||||||
	.usage = CMD_TARGET_PANE_USAGE,
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	.tflag = CMD_PANE,
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	.flags = CMD_AFTERHOOK,
 | 
					 | 
				
			||||||
	.exec = cmd_clear_history_exec
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static enum cmd_retval
 | 
					 | 
				
			||||||
cmd_clear_history_exec(__unused struct cmd *self, struct cmdq_item *item)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	struct window_pane	*wp = item->state.tflag.wp;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (wp->mode == &window_copy_mode)
 | 
					 | 
				
			||||||
		window_pane_reset_mode(wp);
 | 
					 | 
				
			||||||
	grid_clear_history(wp->base.grid);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	return (CMD_RETURN_NORMAL);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
		Reference in New Issue
	
	Block a user