… | |
… | |
665 | if (rs[Rs_multiClickTime] && (i = atoi (rs[Rs_multiClickTime])) >= 0) |
665 | if (rs[Rs_multiClickTime] && (i = atoi (rs[Rs_multiClickTime])) >= 0) |
666 | multiClickTime = i; |
666 | multiClickTime = i; |
667 | else |
667 | else |
668 | multiClickTime = 500; |
668 | multiClickTime = 500; |
669 | |
669 | |
|
|
670 | cursor_type = option (Opt_cursorUnderline) ? 1 : 0; |
|
|
671 | |
670 | /* no point having a scrollbar without having any scrollback! */ |
672 | /* no point having a scrollbar without having any scrollback! */ |
671 | if (!saveLines) |
673 | if (!saveLines) |
672 | set_option (Opt_scrollBar, 0); |
674 | set_option (Opt_scrollBar, 0); |
673 | |
675 | |
674 | if (!rs[Rs_cutchars]) |
676 | if (!rs[Rs_cutchars]) |
… | |
… | |
746 | envv->push_back (0); |
748 | envv->push_back (0); |
747 | |
749 | |
748 | this->argv = argv; |
750 | this->argv = argv; |
749 | this->envv = envv; |
751 | this->envv = envv; |
750 | |
752 | |
|
|
753 | env = new char *[this->envv->size ()]; |
|
|
754 | for (int i = 0; i < this->envv->size (); i++) |
|
|
755 | env[i] = this->envv->at (i); |
|
|
756 | |
751 | init2 (argv->size () - 1, argv->begin ()); |
757 | init2 (argv->size () - 1, argv->begin ()); |
752 | } |
758 | } |
753 | |
759 | |
754 | void |
760 | void |
755 | rxvt_term::init (int argc, const char *const *argv, const char *const *envv) |
761 | rxvt_term::init (int argc, const char *const *argv, const char *const *envv) |
… | |
… | |
773 | void |
779 | void |
774 | rxvt_term::init2 (int argc, const char *const *argv) |
780 | rxvt_term::init2 (int argc, const char *const *argv) |
775 | { |
781 | { |
776 | SET_R (this); |
782 | SET_R (this); |
777 | set_locale (""); |
783 | set_locale (""); |
778 | set_environ (envv); // a few things in X do not call setlocale :( |
784 | set_environ (env); // a few things in X do not call setlocale :( |
779 | |
785 | |
780 | init_vars (); |
786 | init_vars (); |
781 | |
787 | |
782 | const char **cmd_argv = init_resources (argc, argv); |
788 | const char **cmd_argv = init_resources (argc, argv); |
783 | |
789 | |
… | |
… | |
950 | |
956 | |
951 | /*----------------------------------------------------------------------*/ |
957 | /*----------------------------------------------------------------------*/ |
952 | void |
958 | void |
953 | rxvt_term::set_locale (const char *locale) |
959 | rxvt_term::set_locale (const char *locale) |
954 | { |
960 | { |
955 | set_environ (envv); |
961 | set_environ (env); |
956 | |
962 | |
957 | free (this->locale); |
963 | free (this->locale); |
958 | this->locale = setlocale (LC_CTYPE, locale); |
964 | this->locale = setlocale (LC_CTYPE, locale); |
959 | |
965 | |
960 | if (!this->locale) |
966 | if (!this->locale) |
… | |
… | |
988 | } |
994 | } |
989 | |
995 | |
990 | void |
996 | void |
991 | rxvt_term::init_xlocale () |
997 | rxvt_term::init_xlocale () |
992 | { |
998 | { |
993 | set_environ (envv); |
999 | set_environ (env); |
994 | |
1000 | |
995 | #if USE_XIM |
1001 | #if USE_XIM |
996 | if (!locale) |
1002 | if (!locale) |
997 | rxvt_warn ("setting locale failed, continuing without locale support.\n"); |
1003 | rxvt_warn ("setting locale failed, continuing without locale support.\n"); |
998 | else |
1004 | else |
… | |
… | |
1208 | for (j = map->max_keypermod; j--; k++) |
1214 | for (j = map->max_keypermod; j--; k++) |
1209 | { |
1215 | { |
1210 | if (kc[k] == 0) |
1216 | if (kc[k] == 0) |
1211 | break; |
1217 | break; |
1212 | |
1218 | |
1213 | switch (XKeycodeToKeysym (dpy, kc[k], 0)) |
1219 | switch (rxvt_XKeycodeToKeysym (dpy, kc[k], 0)) |
1214 | { |
1220 | { |
1215 | case XK_Num_Lock: |
1221 | case XK_Num_Lock: |
1216 | ModNumLockMask = modmasks[i - 1]; |
1222 | ModNumLockMask = modmasks[i - 1]; |
1217 | continue; |
1223 | continue; |
1218 | |
1224 | |