Right word jump
This commit is contained in:
parent
0fbc459243
commit
9e703f935a
|
@ -41,6 +41,8 @@
|
||||||
#include "hardware/hw_main.h"
|
#include "hardware/hw_main.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#define PUNCTUATION "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||||
|
|
||||||
#define MAXHUDLINES 20
|
#define MAXHUDLINES 20
|
||||||
|
|
||||||
static boolean con_started = false; // console has been initialised
|
static boolean con_started = false; // console has been initialised
|
||||||
|
@ -815,6 +817,47 @@ boolean CON_Responder(event_t *ev)
|
||||||
|| key == KEY_LALT || key == KEY_RALT)
|
|| key == KEY_LALT || key == KEY_RALT)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
if (key == KEY_LEFTARROW)
|
||||||
|
{
|
||||||
|
if (input_cur != 0)
|
||||||
|
--input_cur;
|
||||||
|
if (!shiftdown)
|
||||||
|
input_sel = input_cur;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else if (key == KEY_RIGHTARROW)
|
||||||
|
{
|
||||||
|
if (ctrldown)
|
||||||
|
{
|
||||||
|
char *line;
|
||||||
|
int c;
|
||||||
|
|
||||||
|
line = &inputlines[inputline][input_cur];
|
||||||
|
c = line[0];
|
||||||
|
|
||||||
|
if (isspace(c))
|
||||||
|
input_cur += strspn(line, " ");
|
||||||
|
else if (ispunct(c))
|
||||||
|
input_cur += strspn(line, PUNCTUATION);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (isspace(line[1]))
|
||||||
|
input_cur += 1 + strspn(&line[1], " ");
|
||||||
|
else
|
||||||
|
input_cur += strcspn(line, " "PUNCTUATION);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (input_cur < input_len)
|
||||||
|
++input_cur;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!shiftdown)
|
||||||
|
input_sel = input_cur;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
// ctrl modifier -- changes behavior, adds shortcuts
|
// ctrl modifier -- changes behavior, adds shortcuts
|
||||||
if (ctrldown)
|
if (ctrldown)
|
||||||
{
|
{
|
||||||
|
@ -967,23 +1010,6 @@ boolean CON_Responder(event_t *ev)
|
||||||
con_scrollup--;
|
con_scrollup--;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (key == KEY_LEFTARROW)
|
|
||||||
{
|
|
||||||
if (input_cur != 0)
|
|
||||||
--input_cur;
|
|
||||||
if (!shiftdown)
|
|
||||||
input_sel = input_cur;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else if (key == KEY_RIGHTARROW)
|
|
||||||
{
|
|
||||||
if (input_cur < input_len)
|
|
||||||
++input_cur;
|
|
||||||
if (!shiftdown)
|
|
||||||
input_sel = input_cur;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else if (key == KEY_HOME)
|
else if (key == KEY_HOME)
|
||||||
{
|
{
|
||||||
input_cur = 0;
|
input_cur = 0;
|
||||||
|
|
Loading…
Reference in New Issue