⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 settitle.c

📁 Mrxvt是一个小巧
💻 C
字号:
/* *  All portions of code are copyright by their respective author/s. *  Copyright (c) 2004    Jingmin Zhou <jimmyzhou@users.sourceforge.net> * *  This program is free software; you can redistribute it and/or modify *  it under the terms of the GNU General Public License as published by *  the Free Software Foundation; either version 2 of the License, or *  (at your option) any later version. * *  This program is distributed in the hope that it will be useful, *  but WITHOUT ANY WARRANTY; without even the implied warranty of *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *  GNU Library General Public License for more details. * *  You should have received a copy of the GNU General Public License *  along with this program; if not, write to the Free Software *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *//*** This program acts as a wrapper of the escape sequence to set the** tab and terminal title with user supplied string.*/#include <stdio.h>#include <strings.h>/*** mrxvt extensions of XTerm OSCs: ESC ] Ps;Pt (ST|BEL)** Example: echo "\e]61;newtitle\a"*/#define Xterm_tab			(61) /* change tab title */#define Xterm_tabterm		(62) /* change tab and terminal title */#define Xterm_newtab		(63) /* create a new tab with title */#define Xterm_prevtab		(64) /* switch to previous tab */#define Xterm_nexttab		(65) /* switch to next tab */#define Xterm_tint			(66) /* change tinting color */#define Xterm_shade			(67) /* change shade level */#define Xterm_encode		(68) /* change encoding */#define Xterm_hide			(69) /* hide/show tabbar */#define Xterm_opacity		(70) /* set opacity level */#define Xterm_tabbtn		(71) /* hide/show tabbar button */#define Xterm_tabfg			(72) /* change active tab fg */#define Xterm_tabbg			(73) /* change tabbar/active tab bg */#define Xterm_itabfg		(74) /* change inactive tab fg */#define Xterm_itabbg		(75) /* change inactive tab bg */#define Xterm_trans			(76) /* toggle background transparency */#define Xterm_moveleft		(77) /* move active tab to left */#define Xterm_moveright		(78) /* move active tab to right */#define Xterm_verybold		(79) /* toggle bold font for color text */#define Xterm_hotkeys		(80) /* toggle hotkeys */#define Xterm_saveconfig	(81) /* save configuration */#define Xterm_bgfade		(82) /* set bg fading degree */static voidusage (int argc, char** argv){	fprintf (stderr, "Usage:\n");	fprintf (stderr, "  %s -t tab_title  # set tab/terminal title\n",		argv[0]);	fprintf (stderr, "  %s -c tab_title  # create a new tab\n",		argv[0]);	fprintf (stderr, "  %s -e encoding   # change encoding method\n",		argv[0]);	fprintf (stderr, "  %s -g color      # change tinting color\n",		argv[0]);	fprintf (stderr, "  %s -s number     # change shade of tinting\n",		argv[0]);	fprintf (stderr, "  %s -o [-+]number # change opacity level\n",		argv[0]);	fprintf (stderr, "  %s -p            # activate previous tab\n",		argv[0]);	fprintf (stderr, "  %s -n            # activate next tab\n",		argv[0]);	fprintf (stderr, "  %s -a            # hide/show tabbar buttons\n",		argv[0]);	fprintf (stderr, "  %s -H [m|t|s]    # hide/show tabbar/scrollbar/menubar\n",		argv[0]);	exit (1);}voidmain (int argc, char** argv){	if (2 != argc && 3 != argc)	{		usage (argc, argv);	}	if (3 == argc &&		strcmp ("-t", argv[1]) &&		strcmp ("-c", argv[1]) &&		strcmp ("-e", argv[1]) &&		strcmp ("-g", argv[1]) &&		strcmp ("-s", argv[1]) &&		strcmp ("-o", argv[1]) &&		strcmp ("-H", argv[1]))	{		usage (argc, argv);		exit (1);	}	if (2 == argc)	{		if (!strcmp ("-H", argv[1]))			/* switch to previous tab */			fprintf (stdout, "%c]%d;%c", 033, Xterm_hide, 007);		else if (!strcmp ("-a", argv[1]))			/* switch to previous tab */			fprintf (stdout, "%c]%d;%c", 033, Xterm_tabbtn, 007);		else if (!strcmp ("-p", argv[1]))			/* switch to previous tab */			fprintf (stdout, "%c]%d;%c", 033, Xterm_prevtab, 007);		else if (!strcmp ("-n", argv[1]))			/* switch to next tab */			fprintf (stdout, "%c]%d;%c", 033, Xterm_nexttab, 007);		else if (!strcmp ("-t", argv[1]) ||			!strcmp ("-c", argv[1]))			usage (argc, argv);			/* switch to next tab */		else			/* set tab title */			fprintf (stdout, "%c]%d;%s%c", 033, Xterm_tab, argv[1], 007);	}	else if (3 == argc && !strcmp ("-t", argv[1]))	{		/* set tab and terminal title */		fprintf (stdout, "%c]%d;%s%c", 033, Xterm_tabterm, argv[2], 007);	}	else if (3 == argc && !strcmp ("-c", argv[1]))	{		/* create new tab with user supplied title */		fprintf (stdout, "%c]%d;%s%c", 033, Xterm_newtab, argv[2], 007);	}	else if (3 == argc && !strcmp ("-e", argv[1]))	{		/* change encoding method */		fprintf (stdout, "%c]%d;%s%c", 033, Xterm_encode, argv[2], 007);	}	else if (3 == argc && !strcmp ("-g", argv[1]))	{		/* change tinting color */		fprintf (stdout, "%c]%d;%s%c", 033, Xterm_tint, argv[2], 007);	}	else if (3 == argc && !strcmp ("-s", argv[1]))	{		/* change shade value for tinting */		fprintf (stdout, "%c]%d;%s%c", 033, Xterm_shade, argv[2], 007);	}	else if (3 == argc && !strcmp ("-o", argv[1]))	{		/* change shade value for tinting */		fprintf (stdout, "%c]%d;%s%c", 033, Xterm_opacity, argv[2], 007);	}	else if (3 == argc && !strcmp ("-H", argv[1]))	{		/* show/hide tabbar/scrollbar/menubar */		fprintf (stdout, "%c]%d;%s%c", 033, Xterm_hide, argv[2], 007);	}	exit (0);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -