瀏覽代碼

Convert VT102ID to a config variable

VT102ID is the sequence that the terminal returns when it is inquired
to identify itself. This value should be configurable in the same
way that another st parameters.
Roberto E. Vargas Caballero 10 年之前
父節點
當前提交
f8b4998b32
共有 2 個文件被更改,包括 6 次插入5 次删除
  1. 3 0
      config.def.h
  2. 3 5
      st.c

+ 3 - 0
config.def.h

@@ -9,6 +9,9 @@ static char font[] = "Liberation Mono:pixelsize=12:antialias=false:autohint=fals
 static int borderpx = 2;
 static char shell[] = "/bin/sh";
 
+/* identification sequence returned in DA and DECID */
+static char vtiden[] = "\033[?6c";
+
 /* Kerning / character bounding-box multipliers */
 static float cwscale = 1.0;
 static float chscale = 1.0;

+ 3 - 5
st.c

@@ -86,8 +86,6 @@ char *argv0;
 #define TRUEBLUE(x)      (((x) & 0xff) << 8)
 
 
-#define VT102ID "\033[?6c"
-
 enum glyph_attribute {
 	ATTR_NULL      = 0,
 	ATTR_BOLD      = 1,
@@ -1965,7 +1963,7 @@ csihandle(void) {
 		break;
 	case 'c': /* DA -- Device Attributes */
 		if(csiescseq.arg[0] == 0)
-			ttywrite(VT102ID, sizeof(VT102ID) - 1);
+			ttywrite(vtiden, sizeof(vtiden) - 1);
 		break;
 	case 'C': /* CUF -- Cursor <n> Forward */
 	case 'a': /* HPR -- Cursor <n> Forward */
@@ -2433,7 +2431,7 @@ tcontrolcode(uchar ascii) {
 	case 0x98:   /* TODO: SOS */
 		break;
 	case 0x9a:   /* DECID -- Identify Terminal */
-		ttywrite(VT102ID, sizeof(VT102ID) - 1);
+		ttywrite(vtiden, sizeof(vtiden) - 1);
 		break;
 	case 0x9b:   /* TODO: CSI */
 	case 0x9c:   /* TODO: ST */
@@ -2589,7 +2587,7 @@ tputc(char *c, int len) {
 				}
 				break;
 			case 'Z': /* DECID -- Identify Terminal */
-				ttywrite(VT102ID, sizeof(VT102ID) - 1);
+				ttywrite(vtiden, sizeof(vtiden) - 1);
 				break;
 			case 'c': /* RIS -- Reset to inital state */
 				treset();