summaryrefslogtreecommitdiff
path: root/usr.bin
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@cvs.openbsd.org>2009-10-09 07:33:13 +0000
committerNicholas Marriott <nicm@cvs.openbsd.org>2009-10-09 07:33:13 +0000
commit18e5527c20aa9fec68e81896548209b8fb82b032 (patch)
tree3991597b951ea69f5bda08fa4a1145ec76980e16 /usr.bin
parent0b2a125ee8d23e5bcdd2b4b7b51702be14a0c2ad (diff)
The UTF-8 detection idea doesn't work and I am reasonably happy with the
current methods, so remove the (already #ifdef 0'd) code.
Diffstat (limited to 'usr.bin')
-rw-r--r--usr.bin/tmux/tmux.h3
-rw-r--r--usr.bin/tmux/tty.c83
2 files changed, 2 insertions, 84 deletions
diff --git a/usr.bin/tmux/tmux.h b/usr.bin/tmux/tmux.h
index 5fc68f1b794..63232244ec9 100644
--- a/usr.bin/tmux/tmux.h
+++ b/usr.bin/tmux/tmux.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: tmux.h,v 1.121 2009/10/06 07:19:32 nicm Exp $ */
+/* $OpenBSD: tmux.h,v 1.122 2009/10/09 07:33:12 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -1199,7 +1199,6 @@ void tty_init(struct tty *, int, char *);
void tty_resize(struct tty *);
void tty_start_tty(struct tty *);
void tty_stop_tty(struct tty *);
-void tty_detect_utf8(struct tty *);
void tty_set_title(struct tty *, const char *);
void tty_update_mode(struct tty *, int);
void tty_draw_line(struct tty *, struct screen *, u_int, u_int, u_int);
diff --git a/usr.bin/tmux/tty.c b/usr.bin/tmux/tty.c
index 4511036451c..b3deaa38dc9 100644
--- a/usr.bin/tmux/tty.c
+++ b/usr.bin/tmux/tty.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tty.c,v 1.35 2009/10/09 07:23:28 nicm Exp $ */
+/* $OpenBSD: tty.c,v 1.36 2009/10/09 07:33:12 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -134,10 +134,6 @@ tty_start_tty(struct tty *tty)
if (fcntl(tty->fd, F_SETFL, mode|O_NONBLOCK) == -1)
fatal("fcntl failed");
-#if 0
- tty_detect_utf8(tty);
-#endif
-
if (tcgetattr(tty->fd, &tty->tio) != 0)
fatal("tcgetattr failed");
memcpy(&tio, &tty->tio, sizeof tio);
@@ -216,83 +212,6 @@ tty_stop_tty(struct tty *tty)
tty_raw(tty, tty_term_string(tty->term, TTYC_RMCUP));
}
-#if 0
-void
-tty_detect_utf8(struct tty *tty)
-{
- struct pollfd pfd;
- char buf[7];
- size_t len;
- ssize_t n;
- int nfds;
- struct termios tio, old_tio;
- int what;
-
- if (tty->flags & TTY_UTF8)
- return;
-
- /*
- * If the terminal looks reasonably likely to support this, try to
- * write a three-byte UTF-8 wide character to the terminal, then read
- * the cursor position.
- *
- * XXX This entire function is a hack.
- */
-
- /* Check if the terminal looks sort of vt100. */
- if (strstr(tty_term_string(tty->term, TTYC_CLEAR), "[2J") == NULL ||
- strstr(tty_term_string(tty->term, TTYC_CUP), "H") == NULL)
- return;
-
- if (tcgetattr(tty->fd, &old_tio) != 0)
- fatal("tcgetattr failed");
- cfmakeraw(&tio);
- if (tcsetattr(tty->fd, TCSANOW, &tio) != 0)
- fatal("tcsetattr failed");
-
- what = 0;
- if (ioctl(tty->fd, TIOCFLUSH, &what) != 0)
- fatal("ioctl(TIOCFLUSH)");
-
-#define UTF8_TEST_DATA "\033[H\357\277\246\033[6n"
- if (write(tty->fd, UTF8_TEST_DATA, (sizeof UTF8_TEST_DATA) - 1) == -1)
- fatal("write failed");
-#undef UTF8_TEST_DATA
-
- len = 0;
- for (;;) {
- pfd.fd = tty->fd;
- pfd.events = POLLIN;
-
- nfds = poll(&pfd, 1, 500);
- if (nfds == -1) {
- if (errno == EAGAIN || errno == EINTR)
- continue;
- fatal("poll failed");
- }
- if (nfds == 0)
- break;
- if (pfd.revents & (POLLERR|POLLNVAL|POLLHUP))
- break;
- if (!(pfd.revents & POLLIN))
- continue;
-
- if ((n = read(tty->fd, buf + len, 1)) != 1)
- break;
- buf[++len] = '\0';
-
- if (len == (sizeof buf) - 1) {
- if (strcmp(buf, "\033[1;3R") == 0)
- tty->flags |= TTY_UTF8;
- break;
- }
- }
-
- if (tcsetattr(tty->fd, TCSANOW, &old_tio) != 0)
- fatal("tcsetattr failed");
-}
-#endif
-
void
tty_fill_acs(struct tty *tty)
{