ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/init.C
(Generate patch)

Comparing rxvt-unicode/src/init.C (file contents):
Revision 1.116 by root, Sun Feb 20 19:45:30 2005 UTC vs.
Revision 1.121 by root, Wed Nov 30 21:05:39 2005 UTC

169 COLOR_SCROLLTROUGH, 169 COLOR_SCROLLTROUGH,
170#endif /* KEEP_SCROLLCOLOR */ 170#endif /* KEEP_SCROLLCOLOR */
171#if TINTING 171#if TINTING
172 NULL, 172 NULL,
173#endif 173#endif
174#if OFF_FOCUS_FADING
175 "black",
176#endif
174 }; 177 };
175 178
176const char *const xa_names[] = 179const char *const xa_names[] =
177 { 180 {
178 "TEXT", 181 "TEXT",
213 }; 216 };
214 217
215bool 218bool
216rxvt_term::init_vars () 219rxvt_term::init_vars ()
217{ 220{
218 sw_term.start (SIGTERM);
219 sw_int.start (SIGINT);
220
221 pix_colors_focused = new rxvt_color [TOTAL_COLORS]; 221 pix_colors_focused = new rxvt_color [TOTAL_COLORS];
222#ifdef OFF_FOCUS_FADING 222#ifdef OFF_FOCUS_FADING
223 pix_colors_unfocused = new rxvt_color [TOTAL_COLORS]; 223 pix_colors_unfocused = new rxvt_color [TOTAL_COLORS];
224#endif 224#endif
225 pix_colors = pix_colors_focused; 225 pix_colors = pix_colors_focused;
344 if ((rs[Rs_display_name] = getenv ("DISPLAY")) == NULL) 344 if ((rs[Rs_display_name] = getenv ("DISPLAY")) == NULL)
345 rs[Rs_display_name] = ":0"; 345 rs[Rs_display_name] = ":0";
346 346
347 get_options (r_argc, r_argv); 347 get_options (r_argc, r_argv);
348 348
349#ifdef LOCAL_X_IS_UNIX
350 if (rs[Rs_display_name][0] == ':')
351 {
352 val = rxvt_malloc (5 + strlen (rs[Rs_display_name]));
353 strcpy (val, "unix");
354 strcat (val, rs[Rs_display_name]);
355 display = displays.get (val);
356 free (val);
357 }
358#endif
359
360 if (!display
361 && ! (display = displays.get (rs[Rs_display_name]))) 349 if (!(display = displays.get (rs[Rs_display_name])))
362 rxvt_fatal ("can't open display %s, aborting.\n", rs[Rs_display_name]); 350 rxvt_fatal ("can't open display %s, aborting.\n", rs[Rs_display_name]);
363 351
364 extract_resources (); 352 extract_resources ();
365 free (r_argv); 353 free (r_argv);
366 354
749 } 737 }
750 } 738 }
751 } 739 }
752 740
753 pix_colors[i] = xcol; 741 pix_colors[i] = xcol;
742 SET_PIXCOLOR (i);
743 }
744
754#ifdef OFF_FOCUS_FADING 745#ifdef OFF_FOCUS_FADING
755 if (rs[Rs_fade]) 746 if (rs[Rs_fade])
747 for (i = 0; i < (display->depth <= 2 ? 2 : NRS_COLORS); i++)
756 pix_colors_unfocused[i] = xcol.fade (display, atoi (rs[Rs_fade])); 748 pix_colors_unfocused[i] = pix_colors_focused[i].fade (display, atoi (rs[Rs_fade]), pix_colors[Color_fade]);
757#endif 749#endif
758 SET_PIXCOLOR (i);
759 }
760 750
761 if (display->depth <= 2) 751 if (display->depth <= 2)
762 { 752 {
763 if (!rs[Rs_color + Color_pointer_fg]) pix_colors[Color_pointer_fg] = pix_colors[Color_fg]; 753 if (!rs[Rs_color + Color_pointer_fg]) pix_colors[Color_pointer_fg] = pix_colors[Color_fg];
764 if (!rs[Rs_color + Color_pointer_bg]) pix_colors[Color_pointer_bg] = pix_colors[Color_bg]; 754 if (!rs[Rs_color + Color_pointer_bg]) pix_colors[Color_pointer_bg] = pix_colors[Color_bg];
772 * from the fvwm window manager. 762 * from the fvwm window manager.
773 */ 763 */
774#ifdef KEEP_SCROLLCOLOR 764#ifdef KEEP_SCROLLCOLOR
775 765
776 if (display->depth <= 2) 766 if (display->depth <= 2)
767 {
777 { /* Monochrome */ 768 /* Monochrome */
778 pix_colors[Color_scroll] = pix_colors[Color_fg]; 769 pix_colors[Color_scroll] = pix_colors[Color_fg];
779 pix_colors[Color_topShadow] = pix_colors[Color_bg]; 770 pix_colors[Color_topShadow] = pix_colors[Color_bg];
780 pix_colors[Color_bottomShadow] = pix_colors[Color_bg]; 771 pix_colors[Color_bottomShadow] = pix_colors[Color_bg];
781 } 772 }
782 else 773 else
1211 tio->c_cc[VKILL] = CKILL; 1202 tio->c_cc[VKILL] = CKILL;
1212 tio->c_cc[VSTART] = CSTART; 1203 tio->c_cc[VSTART] = CSTART;
1213 tio->c_cc[VSTOP] = CSTOP; 1204 tio->c_cc[VSTOP] = CSTOP;
1214 tio->c_cc[VSUSP] = CSUSP; 1205 tio->c_cc[VSUSP] = CSUSP;
1215# ifdef VDSUSP 1206# ifdef VDSUSP
1216
1217 tio->c_cc[VDSUSP] = CDSUSP; 1207 tio->c_cc[VDSUSP] = CDSUSP;
1218# endif 1208# endif
1219# ifdef VREPRINT 1209# ifdef VREPRINT
1220
1221 tio->c_cc[VREPRINT] = CRPRNT; 1210 tio->c_cc[VREPRINT] = CRPRNT;
1222# endif 1211# endif
1223# ifdef VDISCRD 1212# ifdef VDISCRD
1224
1225 tio->c_cc[VDISCRD] = CFLUSH; 1213 tio->c_cc[VDISCRD] = CFLUSH;
1226# endif 1214# endif
1227# ifdef VWERSE 1215# ifdef VWERSE
1228
1229 tio->c_cc[VWERSE] = CWERASE; 1216 tio->c_cc[VWERSE] = CWERASE;
1230# endif 1217# endif
1231# ifdef VLNEXT 1218# ifdef VLNEXT
1232
1233 tio->c_cc[VLNEXT] = CLNEXT; 1219 tio->c_cc[VLNEXT] = CLNEXT;
1234# endif 1220# endif
1235
1236 } 1221 }
1222
1237 tio->c_cc[VEOF] = CEOF; 1223 tio->c_cc[VEOF] = CEOF;
1238 tio->c_cc[VEOL] = VDISABLE; 1224 tio->c_cc[VEOL] = VDISABLE;
1239# ifdef VEOL2 1225# ifdef VEOL2
1240
1241 tio->c_cc[VEOL2] = VDISABLE; 1226 tio->c_cc[VEOL2] = VDISABLE;
1242# endif 1227# endif
1243# ifdef VSWTC 1228# ifdef VSWTC
1244
1245 tio->c_cc[VSWTC] = VDISABLE; 1229 tio->c_cc[VSWTC] = VDISABLE;
1246# endif 1230# endif
1247# ifdef VSWTCH 1231# ifdef VSWTCH
1248
1249 tio->c_cc[VSWTCH] = VDISABLE; 1232 tio->c_cc[VSWTCH] = VDISABLE;
1250# endif 1233# endif
1251# if VMIN != VEOF 1234# if VMIN != VEOF
1252
1253 tio->c_cc[VMIN] = 1; 1235 tio->c_cc[VMIN] = 1;
1254# endif 1236# endif
1255# if VTIME != VEOL 1237# if VTIME != VEOL
1256
1257 tio->c_cc[VTIME] = 0; 1238 tio->c_cc[VTIME] = 0;
1258# endif 1239# endif
1259 1240
1260 if (erase != -1) 1241 if (erase != -1)
1261 tio->c_cc[VERASE] = (char)erase; 1242 tio->c_cc[VERASE] = (char)erase;
1289 if (ioctl (STDIN_FILENO, TIOCGETP, & (tio->sg)) < 0) 1270 if (ioctl (STDIN_FILENO, TIOCGETP, & (tio->sg)) < 0)
1290 { 1271 {
1291 tio->sg.sg_erase = CERASE; /* ^H */ 1272 tio->sg.sg_erase = CERASE; /* ^H */
1292 tio->sg.sg_kill = CKILL; /* ^U */ 1273 tio->sg.sg_kill = CKILL; /* ^U */
1293 } 1274 }
1275
1294 if (erase != -1) 1276 if (erase != -1)
1295 tio->sg.sg_erase = (char)erase; 1277 tio->sg.sg_erase = (char)erase;
1296 1278
1297 tio->sg.sg_flags = (CRMOD | ECHO | EVENP | ODDP); 1279 tio->sg.sg_flags = (CRMOD | ECHO | EVENP | ODDP);
1298 1280
1304 tio->tc.t_startc = CSTART; /* ^Q */ 1286 tio->tc.t_startc = CSTART; /* ^Q */
1305 tio->tc.t_stopc = CSTOP; /* ^S */ 1287 tio->tc.t_stopc = CSTOP; /* ^S */
1306 tio->tc.t_eofc = CEOF; /* ^D */ 1288 tio->tc.t_eofc = CEOF; /* ^D */
1307 tio->tc.t_brkc = -1; 1289 tio->tc.t_brkc = -1;
1308 } 1290 }
1291
1309 /* get local special chars */ 1292 /* get local special chars */
1310 if (ioctl (STDIN_FILENO, TIOCGLTC, & (tio->lc)) < 0) 1293 if (ioctl (STDIN_FILENO, TIOCGLTC, & (tio->lc)) < 0)
1311 { 1294 {
1312 tio->lc.t_suspc = CSUSP; /* ^Z */ 1295 tio->lc.t_suspc = CSUSP; /* ^Z */
1313 tio->lc.t_dsuspc = CDSUSP; /* ^Y */ 1296 tio->lc.t_dsuspc = CDSUSP; /* ^Y */
1317 tio->lc.t_lnextc = CLNEXT; /* ^V */ 1300 tio->lc.t_lnextc = CLNEXT; /* ^V */
1318 } 1301 }
1319 /* get line discipline */ 1302 /* get line discipline */
1320 ioctl (STDIN_FILENO, TIOCGETD, & (tio->line)); 1303 ioctl (STDIN_FILENO, TIOCGETD, & (tio->line));
1321# ifdef NTTYDISC 1304# ifdef NTTYDISC
1322
1323 tio->line = NTTYDISC; 1305 tio->line = NTTYDISC;
1324# endif /* NTTYDISC */ 1306# endif /* NTTYDISC */
1325 1307
1326 tio->local = (LCRTBS | LCRTERA | LCTLECH | LPASS8 | LCRTKIL); 1308 tio->local = (LCRTBS | LCRTERA | LCTLECH | LPASS8 | LCRTKIL);
1327#endif /* HAVE_TERMIOS_H */ 1309#endif /* HAVE_TERMIOS_H */
1350 FOO (IGNCR, "IGNCR"); 1332 FOO (IGNCR, "IGNCR");
1351 FOO (ICRNL, "ICRNL"); 1333 FOO (ICRNL, "ICRNL");
1352 FOO (IXON, "IXON"); 1334 FOO (IXON, "IXON");
1353 FOO (IXOFF, "IXOFF"); 1335 FOO (IXOFF, "IXOFF");
1354# ifdef IUCLC 1336# ifdef IUCLC
1355
1356 FOO (IUCLC, "IUCLC"); 1337 FOO (IUCLC, "IUCLC");
1357# endif 1338# endif
1358# ifdef IXANY 1339# ifdef IXANY
1359
1360 FOO (IXANY, "IXANY"); 1340 FOO (IXANY, "IXANY");
1361# endif 1341# endif
1362# ifdef IMAXBEL 1342# ifdef IMAXBEL
1363
1364 FOO (IMAXBEL, "IMAXBEL"); 1343 FOO (IMAXBEL, "IMAXBEL");
1365# endif 1344# endif
1366 1345
1367 fprintf (stderr, "\n"); 1346 fprintf (stderr, "\n");
1368 1347
1375 FOO (VERASE, "VERASE"); 1354 FOO (VERASE, "VERASE");
1376 FOO (VKILL, "VKILL"); 1355 FOO (VKILL, "VKILL");
1377 FOO (VEOF, "VEOF"); 1356 FOO (VEOF, "VEOF");
1378 FOO (VEOL, "VEOL"); 1357 FOO (VEOL, "VEOL");
1379# ifdef VEOL2 1358# ifdef VEOL2
1380
1381 FOO (VEOL2, "VEOL2"); 1359 FOO (VEOL2, "VEOL2");
1382# endif 1360# endif
1383# ifdef VSWTC 1361# ifdef VSWTC
1384
1385 FOO (VSWTC, "VSWTC"); 1362 FOO (VSWTC, "VSWTC");
1386# endif 1363# endif
1387# ifdef VSWTCH 1364# ifdef VSWTCH
1388
1389 FOO (VSWTCH, "VSWTCH"); 1365 FOO (VSWTCH, "VSWTCH");
1390# endif 1366# endif
1391
1392 FOO (VSTART, "VSTART"); 1367 FOO (VSTART, "VSTART");
1393 FOO (VSTOP, "VSTOP"); 1368 FOO (VSTOP, "VSTOP");
1394 FOO (VSUSP, "VSUSP"); 1369 FOO (VSUSP, "VSUSP");
1395# ifdef VDSUSP 1370# ifdef VDSUSP
1396
1397 FOO (VDSUSP, "VDSUSP"); 1371 FOO (VDSUSP, "VDSUSP");
1398# endif 1372# endif
1399# ifdef VREPRINT 1373# ifdef VREPRINT
1400
1401 FOO (VREPRINT, "VREPRINT"); 1374 FOO (VREPRINT, "VREPRINT");
1402# endif 1375# endif
1403# ifdef VDISCRD 1376# ifdef VDISCRD
1404
1405 FOO (VDISCRD, "VDISCRD"); 1377 FOO (VDISCRD, "VDISCRD");
1406# endif 1378# endif
1407# ifdef VWERSE 1379# ifdef VWERSE
1408
1409 FOO (VWERSE, "VWERSE"); 1380 FOO (VWERSE, "VWERSE");
1410# endif 1381# endif
1411# ifdef VLNEXT 1382# ifdef VLNEXT
1412
1413 FOO (VLNEXT, "VLNEXT"); 1383 FOO (VLNEXT, "VLNEXT");
1414# endif 1384# endif
1415 1385
1416 fprintf (stderr, "\n"); 1386 fprintf (stderr, "\n");
1417# undef FOO 1387# undef FOO
1459 1429
1460#if ENABLE_FRILLS 1430#if ENABLE_FRILLS
1461 if (rs[Rs_pty_fd]) 1431 if (rs[Rs_pty_fd])
1462 return; 1432 return;
1463#endif 1433#endif
1464
1465 sw_chld.start (SIGCHLD);
1466 1434
1467#ifndef __QNX__ 1435#ifndef __QNX__
1468 /* spin off the command interpreter */ 1436 /* spin off the command interpreter */
1469 switch (cmd_pid = fork ()) 1437 switch (cmd_pid = fork ())
1470 { 1438 {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines