summaryrefslogtreecommitdiffstats
path: root/cmd-capture-pane.c
diff options
context:
space:
mode:
authornicm <nicm>2017-02-16 12:18:38 +0000
committernicm <nicm>2017-02-16 12:18:38 +0000
commitc889e113754f16de6d5d388c804864bdc2f2148a (patch)
tree24dc43b108492632496a0aaf6763fad63b07a218 /cmd-capture-pane.c
parent8b8d0963da522c3a0ac4e99dc9264b6fda2b477a (diff)
Merge clear-history into capture-pane.
Diffstat (limited to 'cmd-capture-pane.c')
-rw-r--r--cmd-capture-pane.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/cmd-capture-pane.c b/cmd-capture-pane.c
index 913738e9..87db6e99 100644
--- a/cmd-capture-pane.c
+++ b/cmd-capture-pane.c
@@ -49,6 +49,19 @@ const struct cmd_entry cmd_capture_pane_entry = {
.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 *
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 *
-
cmd_capture_pane_history(struct args *args, struct cmdq_item *item,
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;
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;
if (args_has(args, 'P'))
buf = cmd_capture_pane_pending(args, wp, &len);