当前位置: 技术问答>linux和unix
linux下面的vi编辑器是如何知道我securecrt的屏幕宽度的?
来源: 互联网 发布时间:2017-05-13
本文导语: vi编辑器,可以根据我securecrt的宽度,自动适应换行,这是如何做到的? | SIGWINCH信号啊 /*- * Copyright (C), 1988-2014, mymtom * * vi:set ts=4 sw=4: */ #ifndef lint static const char rcsid[] = "$Id$"; #...
vi编辑器,可以根据我securecrt的宽度,自动适应换行,这是如何做到的?
|
SIGWINCH信号啊
/*-
* Copyright (C), 1988-2014, mymtom
*
* vi:set ts=4 sw=4:
*/
#ifndef lint
static const char rcsid[] = "$Id$";
#endif /* not lint */
/**
* @file winch.c
* @brief
*/
#include
#include
#include
#include
static void sig_winch(int sig)
{
char buf[80];
signal(SIGWINCH, &sig_winch);
endwin();
initscr();
refresh();
sprintf(buf, "SIGWINCH: COLS=%3d LINES=%3d", COLS, LINES);
move(0, 0);
waddstr(stdscr, buf);
refresh();
}
int main(int argc, char *argv[])
{
int i;
char buf[80];
initscr();
signal(SIGWINCH, &sig_winch);
for (i = 0; i