aboutsummaryrefslogtreecommitdiff
path: root/st.h
diff options
context:
space:
mode:
authorAurélien Aptel <aurelien.aptel@gmail.com>2009-06-11 16:41:14 +0200
committerAurélien Aptel <aurelien.aptel@gmail.com>2009-06-11 16:41:14 +0200
commitad39f000be87ec16e74c05bdc3fa81ef307b5477 (patch)
tree06fbb74004f4e5c3c071ceb3918c278ae229e616 /st.h
parent2f35cef54b5a32b5498aded0a25f78d0d973a152 (diff)
downloadst-ad39f000be87ec16e74c05bdc3fa81ef307b5477.tar.gz
st-ad39f000be87ec16e74c05bdc3fa81ef307b5477.tar.bz2
st-ad39f000be87ec16e74c05bdc3fa81ef307b5477.zip
added sigchld handler, cleaned error checking.
Diffstat (limited to 'st.h')
-rw-r--r--st.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/st.h b/st.h
index 4652a33..0bd2c4e 100644
--- a/st.h
+++ b/st.h
@@ -1,16 +1,19 @@
/* See LICENSE for licence details. */
#define _XOPEN_SOURCE
#include <ctype.h>
+#include <errno.h>
#include <fcntl.h>
#include <locale.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <signal.h>
#include <sys/ioctl.h>
#include <sys/select.h>
#include <sys/stat.h>
#include <sys/types.h>
+#include <sys/wait.h>
#include <unistd.h>
#include <X11/Xlib.h>
#include <X11/keysym.h>
@@ -52,6 +55,7 @@ static char* colorname[] = {
#define ESCSIZ 256
#define ESCARG 16
+#define SERRNO strerror(errno)
#define MIN(a, b) ((a) < (b) ? (a) : (b))
#define MAX(a, b) ((a) < (b) ? (b) : (a))
#define LEN(a) (sizeof(a) / sizeof(a[0]))
@@ -63,7 +67,7 @@ static char* colorname[] = {
enum { ATnone=0 , ATreverse=1 , ATunderline=2, ATbold=4 }; /* Attribute */
enum { CSup, CSdown, CSright, CSleft, CShide, CSdraw, CSwrap, CSsave, CSload }; /* Cursor */
enum { CRset=1 , CRupdate=2 }; /* Character state */
-enum { TMwrap=1 , TMinsert=2 }; /* Terminal mode */
+enum { TMwrap=1 , TMinsert=2, TMaltcharset }; /* Terminal mode */
enum { SCupdate, SCredraw }; /* screen draw mode */
typedef int Color;
@@ -130,6 +134,7 @@ typedef struct {
void die(const char *errstr, ...);
void draw(int);
void execsh(void);
+void sigchld(int);
void kpress(XKeyEvent *);
void resize(XEvent *);
void run(void);