forked from enlightenment/terminology
add bracketed paste (by egmont). Closes T670
This commit is contained in:
parent
c3f40b8cd8
commit
ac4117ce8a
|
@ -1869,7 +1869,17 @@ _getsel_cb(void *data, Evas_Object *obj EINA_UNUSED, Elm_Selection_Data *ev)
|
||||||
tmp[i] = s[i];
|
tmp[i] = s[i];
|
||||||
if (tmp[i] == '\n') tmp[i] = '\r';
|
if (tmp[i] == '\n') tmp[i] = '\r';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (sd->pty->state.bracketed_paste)
|
||||||
|
termpty_write(sd->pty, "\x1b[200~",
|
||||||
|
sizeof("\x1b[200~") - 1);
|
||||||
|
|
||||||
termpty_write(sd->pty, tmp, ev->len - 1);
|
termpty_write(sd->pty, tmp, ev->len - 1);
|
||||||
|
|
||||||
|
if (sd->pty->state.bracketed_paste)
|
||||||
|
termpty_write(sd->pty, "\x1b[201~",
|
||||||
|
sizeof("\x1b[201~") - 1);
|
||||||
|
|
||||||
free(tmp);
|
free(tmp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -98,6 +98,7 @@ struct _Termstate
|
||||||
unsigned int reverse : 1;
|
unsigned int reverse : 1;
|
||||||
unsigned int no_autorepeat : 1;
|
unsigned int no_autorepeat : 1;
|
||||||
unsigned int cjk_ambiguous_wide : 1;
|
unsigned int cjk_ambiguous_wide : 1;
|
||||||
|
unsigned int bracketed_paste : 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _Termpty
|
struct _Termpty
|
||||||
|
|
|
@ -845,9 +845,9 @@ _handle_esc_csi(Termpty *ty, const Eina_Unicode *c, Eina_Unicode *ce)
|
||||||
else
|
else
|
||||||
_termpty_cursor_copy(&(ty->save), &(ty->state));
|
_termpty_cursor_copy(&(ty->save), &(ty->state));
|
||||||
break;
|
break;
|
||||||
case 2004: // ignore
|
case 2004:
|
||||||
handled = 1;
|
handled = 1;
|
||||||
// INF("XXX: enable bracketed paste mode %i", mode);
|
ty->state.bracketed_paste = mode;
|
||||||
break;
|
break;
|
||||||
case 7727: // ignore
|
case 7727: // ignore
|
||||||
handled = 1;
|
handled = 1;
|
||||||
|
|
|
@ -387,6 +387,7 @@ _termpty_reset_state(Termpty *ty)
|
||||||
ty->state.hidecursor = 0;
|
ty->state.hidecursor = 0;
|
||||||
ty->state.crlf = 0;
|
ty->state.crlf = 0;
|
||||||
ty->state.had_cr = 0;
|
ty->state.had_cr = 0;
|
||||||
|
ty->state.bracketed_paste = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
Loading…
Reference in New Issue