plan9port/src/cmd/9term/fns.h
Dave Presotto be7485e1da cmd/9term: A hack because I'm constantly getting confused about ^C vs fn+delete
Since Google (and a lot of the outside) is so engrained with using
^C as interrupt, I'd like to be able to use it in 9term if I've
stty'd my intr to ^C. Without this, hitting ^C still works but if
the program behind the window isn't reading from /dev/cons, it won't
take effect till after I hit a newline which is often very confusing.

I know this is a hack since it only works if I stty intr ^C but that
seems the only other character that gets used anyways.

Change-Id: I0597e63b2d7628f5668c648e6dba6f281e4b27fd
Reviewed-on: https://plan9port-review.googlesource.com/2742
Reviewed-by: Russ Cox <rsc@swtch.com>
2017-01-09 15:42:59 +00:00

43 lines
1.1 KiB
C

#undef isalnum
#define isalnum runeisalnum
void keyboardsend(char*, int);
int whide(Window*);
int wunhide(int);
void freescrtemps(void);
int parsewctl(char**, Rectangle, Rectangle*, int*, int*, int*, int*, char**, char*, char*);
Window *new(Image*, int, int, int, char*, char*, char**);
void riosetcursor(Cursor*, int);
int min(int, int);
int max(int, int);
Rune* strrune(Rune*, Rune);
int isalnum(Rune);
void timerstop(Timer*);
void timercancel(Timer*);
Timer* timerstart(int);
void error(char*);
void killprocs(void);
int shutdown(void*, char*);
void iconinit(void);
void *erealloc(void*, uint);
void *emalloc(uint);
char *estrdup(char*);
void button3menu(void);
void button2menu(Window*);
void cvttorunes(char*, int, Rune*, int*, int*, int*);
/* was (byte*,int) runetobyte(Rune*, int); */
char* runetobyte(Rune*, int, int*);
void timerinit(void);
int goodrect(Rectangle);
int rawon(void);
void winterrupt(Window*);
int intrc();
#define runemalloc(n) malloc((n)*sizeof(Rune))
#define runerealloc(a, n) realloc(a, (n)*sizeof(Rune))
#define runemove(a, b, n) memmove(a, b, (n)*sizeof(Rune))
void rioputsnarf(void);
void riogetsnarf(void);