Introduction
Introduction Statistics Contact Development Disclaimer Help
tfactor and cleanup code. - st - [fork] customized build of st, the simple term…
git clone git://src.adamsgaard.dk/st
Log
Files
Refs
README
LICENSE
---
commit ef69118028afad1938951a1f7dff8db2aa557879
parent f732ca5f1f03a0a496a07aa6bda15f6c363a2484
Author: AurĂ©lien Aptel <[email protected]>
Date: Wed, 1 Sep 2010 16:26:12 +0200
factor and cleanup code.
Diffstat:
M st.c | 23 +++++++++++------------
1 file changed, 11 insertions(+), 12 deletions(-)
---
diff --git a/st.c b/st.c
t@@ -387,10 +387,10 @@ dump(char c) {
void
ttyread(void) {
- char buf[BUFSIZ] = {0};
+ char buf[BUFSIZ];
int ret;
- if((ret = read(cmdfd, buf, BUFSIZ)) < 0)
+ if((ret = read(cmdfd, buf, LEN(buf))) < 0)
die("Couldn't read from shell: %s\n", SERRNO);
else
tputs(buf, ret);
t@@ -465,8 +465,7 @@ tscrolldown (int n) {
LIMIT(n, 0, term.bot-term.top+1);
- for(i = 0; i < n; i++)
- memset(term.line[term.bot-i], 0, term.col*sizeof(Glyph));
+ tclearregion(0, term.bot-n+1, term.col-1, term.bot);
for(i = term.bot; i >= term.top+n; i--) {
temp = term.line[i];
t@@ -481,8 +480,7 @@ tscrollup (int n) {
Line temp;
LIMIT(n, 0, term.bot-term.top+1);
- for(i = 0; i < n; i++)
- memset(term.line[term.top+i], 0, term.col*sizeof(Glyph));
+ tclearregion(0, term.top, term.col-1, term.top+n-1);
for(i = term.top; i <= term.bot-n; i++) {
temp = term.line[i];
t@@ -957,7 +955,8 @@ tputc(char c) {
term.esc = 0;
csiparse(), csihandle();
}
- } else if(term.esc & ESC_OSC) {
+ /* TODO: handle other OSC */
+ } else if(term.esc & ESC_OSC) {
if(c == ';') {
term.titlelen = 0;
term.esc = ESC_START | ESC_TITLE;
t@@ -1201,18 +1200,18 @@ xinit(void) {
xloadcols();
/* windows */
- xw.h = term.row * xw.ch + 2*BORDER;
- xw.w = term.col * xw.cw + 2*BORDER;
+ xw.bufh = term.row * xw.ch;
+ xw.bufw = term.col * xw.cw;
+ xw.h = xw.bufh + 2*BORDER;
+ xw.w = xw.bufw + 2*BORDER;
xw.win = XCreateSimpleWindow(xw.dis, XRootWindow(xw.dis, xw.scr), 0, 0,
xw.w, xw.h, 0,
dc.col[DefaultBG],
dc.col[DefaultBG]);
- xw.bufw = xw.w - 2*BORDER;
- xw.bufh = xw.h - 2*BORDER;
xw.buf = XCreatePixmap(xw.dis, xw.win, xw.bufw, xw.bufh, XDefaultDepth…
/* gc */
dc.gc = XCreateGC(xw.dis, xw.win, 0, NULL);
-
+
/* event mask */
XSelectInput(xw.dis, xw.win, ExposureMask | KeyPressMask
| StructureNotifyMask | FocusChangeMask | PointerMotionMask
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.