From da24f0d9ac1af4fbefc09f01f255f253973fff41 Mon Sep 17 00:00:00 2001 From: Luxferre Date: Wed, 21 Oct 2026 00:16:33 +0300 Subject: [PATCH] fix(system,x11): set system-wide TERM=xterm-256color and C.UTF-8 locale --- overlay/rootfs/etc/locale.conf | 1 + overlay/rootfs/etc/profile | 5 +++++ overlay/rootfs/etc/profile.d/20locale.sh | 4 ++++ overlay/rootfs/etc/profile.d/sxmo_init.sh | 5 +++++ overlay/rootfs/etc/skel/.Xresources | 1 + overlay/rootfs/etc/skel/.config/sxmo/profile | 5 +++++ overlay/rootfs/etc/skel/.profile | 5 +++++ overlay/rootfs/home/user/.Xresources | 1 + overlay/rootfs/home/user/.config/sxmo/profile | 5 +++++ overlay/rootfs/home/user/.profile | 5 +++++ .../rootfs/usr/bin/bananarchy-x11-session.sh | 5 +++++ overlay/rootfs/usr/bin/st | Bin 64004 -> 64008 bytes overlay/rootfs/usr/bin/sxmo_terminal.sh | 5 +++++ .../rootfs/usr/share/sxmo/appcfg/Xresources | 1 + .../usr/share/sxmo/appcfg/profile_template | 5 +++++ .../default_hooks/sxmo_hook_contextmenu.sh | 2 +- prebuilt/sxmo-x11/usr/bin/st | Bin 64004 -> 64008 bytes scripts/configure-rootfs-from-scratch.sh | 2 +- src/sxmo-st/config.def.h | 2 +- src/sxmo-st/config.h | 2 +- src/sxmo-st/st.c | 8 ++++++++ src/sxmo-st/x.c | 4 ++-- 22 files changed, 67 insertions(+), 6 deletions(-) create mode 100644 overlay/rootfs/etc/locale.conf create mode 100644 overlay/rootfs/etc/profile.d/20locale.sh diff --git a/overlay/rootfs/etc/locale.conf b/overlay/rootfs/etc/locale.conf new file mode 100644 index 0000000..f9c983c --- /dev/null +++ b/overlay/rootfs/etc/locale.conf @@ -0,0 +1 @@ +LANG=C.UTF-8 diff --git a/overlay/rootfs/etc/profile b/overlay/rootfs/etc/profile index 8b00b73..3c8d08c 100644 --- a/overlay/rootfs/etc/profile +++ b/overlay/rootfs/etc/profile @@ -4,6 +4,11 @@ export EDITOR=nano export VISUAL=nano export PAGER="less -RXF" export LESS="-RXF" +export TERM=xterm-256color +export CHARSET=UTF-8 +export LANG=C.UTF-8 +export LC_ALL=C.UTF-8 +export LC_COLLATE=C.UTF-8 umask 022 # use nicer PS1 for bash and busybox ash diff --git a/overlay/rootfs/etc/profile.d/20locale.sh b/overlay/rootfs/etc/profile.d/20locale.sh new file mode 100644 index 0000000..101b261 --- /dev/null +++ b/overlay/rootfs/etc/profile.d/20locale.sh @@ -0,0 +1,4 @@ +export CHARSET=UTF-8 +export LANG=C.UTF-8 +export LC_ALL=C.UTF-8 +export LC_COLLATE=C.UTF-8 diff --git a/overlay/rootfs/etc/profile.d/sxmo_init.sh b/overlay/rootfs/etc/profile.d/sxmo_init.sh index 2c08117..c5944db 100644 --- a/overlay/rootfs/etc/profile.d/sxmo_init.sh +++ b/overlay/rootfs/etc/profile.d/sxmo_init.sh @@ -109,6 +109,11 @@ _sxmo_load_environments() { export VISUAL="${VISUAL:-nano}" export PAGER="less -RXF" export LESS="-RXF" + export TERM=xterm-256color + export CHARSET=UTF-8 + export LANG=C.UTF-8 + export LC_ALL=C.UTF-8 + export LC_COLLATE=C.UTF-8 export BROWSER="${BROWSER:-firefox}" export SHELL="${SHELL:-/bin/sh}" diff --git a/overlay/rootfs/etc/skel/.Xresources b/overlay/rootfs/etc/skel/.Xresources index b15c5cb..4f477d6 100644 --- a/overlay/rootfs/etc/skel/.Xresources +++ b/overlay/rootfs/etc/skel/.Xresources @@ -16,6 +16,7 @@ dwm.selbordercolor: #005577 dwm.selfgcolor: #ffffff st.font: Fira Code:pixelsize=18:style=Regular:antialias=true:autohint=true +st.termname: xterm-256color st.background: #1c1c1c st.foreground: #e5e5e5 st.cursorColor: #cccccc diff --git a/overlay/rootfs/etc/skel/.config/sxmo/profile b/overlay/rootfs/etc/skel/.config/sxmo/profile index 3991864..4047777 100755 --- a/overlay/rootfs/etc/skel/.config/sxmo/profile +++ b/overlay/rootfs/etc/skel/.config/sxmo/profile @@ -75,6 +75,11 @@ export EDITOR="nano" export VISUAL="nano" export PAGER="less -RXF" export LESS="-RXF" +export TERM="xterm-256color" +export CHARSET="UTF-8" +export LANG="C.UTF-8" +export LC_ALL="C.UTF-8" +export LC_COLLATE="C.UTF-8" export SXMO_WM="dwm" export SXMO_MENU="dmenu" export SXMO_TERMINAL="st" diff --git a/overlay/rootfs/etc/skel/.profile b/overlay/rootfs/etc/skel/.profile index fe4e327..207f7c6 100644 --- a/overlay/rootfs/etc/skel/.profile +++ b/overlay/rootfs/etc/skel/.profile @@ -4,6 +4,11 @@ export EDITOR=nano export VISUAL=nano export PAGER="less -RXF" export LESS="-RXF" +export TERM=xterm-256color +export CHARSET=UTF-8 +export LANG=C.UTF-8 +export LC_ALL=C.UTF-8 +export LC_COLLATE=C.UTF-8 export SXMO_WM=dwm export SXMO_MENU=dmenu export SXMO_TERMINAL=st diff --git a/overlay/rootfs/home/user/.Xresources b/overlay/rootfs/home/user/.Xresources index b15c5cb..4f477d6 100644 --- a/overlay/rootfs/home/user/.Xresources +++ b/overlay/rootfs/home/user/.Xresources @@ -16,6 +16,7 @@ dwm.selbordercolor: #005577 dwm.selfgcolor: #ffffff st.font: Fira Code:pixelsize=18:style=Regular:antialias=true:autohint=true +st.termname: xterm-256color st.background: #1c1c1c st.foreground: #e5e5e5 st.cursorColor: #cccccc diff --git a/overlay/rootfs/home/user/.config/sxmo/profile b/overlay/rootfs/home/user/.config/sxmo/profile index 3991864..4047777 100755 --- a/overlay/rootfs/home/user/.config/sxmo/profile +++ b/overlay/rootfs/home/user/.config/sxmo/profile @@ -75,6 +75,11 @@ export EDITOR="nano" export VISUAL="nano" export PAGER="less -RXF" export LESS="-RXF" +export TERM="xterm-256color" +export CHARSET="UTF-8" +export LANG="C.UTF-8" +export LC_ALL="C.UTF-8" +export LC_COLLATE="C.UTF-8" export SXMO_WM="dwm" export SXMO_MENU="dmenu" export SXMO_TERMINAL="st" diff --git a/overlay/rootfs/home/user/.profile b/overlay/rootfs/home/user/.profile index fe4e327..207f7c6 100644 --- a/overlay/rootfs/home/user/.profile +++ b/overlay/rootfs/home/user/.profile @@ -4,6 +4,11 @@ export EDITOR=nano export VISUAL=nano export PAGER="less -RXF" export LESS="-RXF" +export TERM=xterm-256color +export CHARSET=UTF-8 +export LANG=C.UTF-8 +export LC_ALL=C.UTF-8 +export LC_COLLATE=C.UTF-8 export SXMO_WM=dwm export SXMO_MENU=dmenu export SXMO_TERMINAL=st diff --git a/overlay/rootfs/usr/bin/bananarchy-x11-session.sh b/overlay/rootfs/usr/bin/bananarchy-x11-session.sh index 380057f..d077b21 100755 --- a/overlay/rootfs/usr/bin/bananarchy-x11-session.sh +++ b/overlay/rootfs/usr/bin/bananarchy-x11-session.sh @@ -21,6 +21,11 @@ export EDITOR=nano export VISUAL=nano export PAGER="less -RXF" export LESS="-RXF" +export TERM=xterm-256color +export CHARSET=UTF-8 +export LANG=C.UTF-8 +export LC_ALL=C.UTF-8 +export LC_COLLATE=C.UTF-8 export SXMO_DISABLE_LEDS=1 export SXMO_NO_VIRTUAL_KEYBOARD=1 export NO_AT_BRIDGE=1 diff --git a/overlay/rootfs/usr/bin/st b/overlay/rootfs/usr/bin/st index c2753951c11b201595c3575f77d3779cabe7846c..2e5753547aca470dde93978c914dfe00e9835995 100755 GIT binary patch delta 16375 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 CN-hTg delta 15970 zcmZ8|3s_Xu`u^IR0TEGAQ4vvRfD{20kqj^Ch|?Cq3mO@DMI{@_jEoGGoYBzCOwmP3 z>M=7aB`+X&(o&%gb*#+LsLaf)NbWEix`$za|GQ>BI`jYS=XrU*_gibP^{utnZST=- z&2CxEZrNJNuv@p>Bj*}pIoEb?_m}c^zyFSJ@~bc1Z~ic#{jsK8`Gi#W#owo%T2z!I zS-j+ylA<{8z22tk`;7Hxj5QN$9yqlxaWHWdv4J>|IE6T!IEy%kIFGoPxQw{M$tG4w zj%H$wN&yfD6Gssnh!crZh|`I)h;xYZh>MBKh$|dyVyu!J&BPij1wb5397Sv(P9#nt zPAASH&LPetE+#G`t`Lm+StU7|i8U=00C6yJ6tRIgkvN4ooj8j)hd7V8n7E9%0&MCp z0w6~-vBpLL5C;=S5gUjTiBpKviL;1vi1UbxiOYy9Y|P{se3j&ACf2l40K~z>QN#w~ zMB)_UbmA=H9O69UV&XF5idOW$qX)>*Osug}0K~z>QN#w~MB)_UbmA=H9O69UV&XF5 z3KJQX#LdK-HVS|^m^g~qK%7XNLYz*VMVv#NM_f!?Mr^7eqmsCpSkq1c5C;=S5gUjT ziBpKviL;1vi1UbxiOZa9Vin}5ByJ|wbWi}q!NgI-2I55G6ykK^EaDvEJmO;FG6$O& zs~|@uaWk=oNsh7MOB_rbMQk8WBu*htC(a_yAe~P9aVw&LYks&Lb`+E(1H}e+4-ziJOTvG6g^!OdLgQAWkGsAxT%^83naR6~RaRjlR*g%{}oJ5>VY$RSqobG0FR**psGjSI24&rR$ zT;hYodBjJF3y6z}&l8stUn0ItTwx;PI`M7dO5%EA3$c~hPOQ;58{kRoL+nc&K&&MW zAr2=tMUfFrtS2@Q&mc}9P9k1NoI-3QP9shy&LlPyZzJB}*Y54oh3-x+mq$oQ7-cN07_4HY#*Bq=1iMAAyb@mE&{?PhtIzZ)^9w^v7n z^`MV7wL=YQNM6>(VzC!#Mz5CSJFPrDvfVwp!`;%4zdYtc=_Vf%rIVKODN%29UE0<~ z>8^NMh8O)1HCdMTXY+oK42?{Dhq3c}8T&Wz36Kx$0LB90KmcIDS>oaq##VzXcJbAZ z^podvzV(s0(ue%#M;;q=$G$jzgTW8s6x6aHZyt6>W2tX@?T(LDwyft9q92nU=bNJE zNJ;$r=vSoce9pKra#K6sIxf^-w~R4;He=hqV(iu~#*W-$tQ}mii+??CvwQ8=j8*eF z<43ud!n(+}j9(yM+sFSHA1UwISJZF9A-BHUH{*;5*uP{f1{?_V;9pJpvzM^;ZenaM zkPAfc3zI*Uw8ObwW(<5l(CZRzmtC%bI&7sBV*=GMHi!4q|-gJj)JuKg}%(&+#3F~%?r%t5a zMC#-R8K-``Bh;t=q?fng{wc!ujU&f1r>;0k$p0rtNsEst!3{U@do%9@O>^Y?^JJVO z-_U>ZO+ZOzM@eIO>#V7Ld>#1;PWDHHW=F)`_?+3({NvU#cB2$e8#oNi1rmVU>HPHU zBZD(vV9fJOn>wS38QawH^^zjTW*9ouk`7j~>IJ?g;k0}yjSroZ-!&l(&kIQ6KhLT2 zYJVPs0w{RC=*ry1vgz_F#zxdwru0=##tl(U#&0iJZ_p?wW^GfxPugf0Xza>oTbSEh zg~u>t-0qtn|K7T7RE$L{{|6kFF(NGF>a!VRK7B7<3fy4uPiEndmcKhw)@hYj3~g#c zJq!85>f=^=ujeMFYf~*X(MpFpxcvwCa^raXdc*gVlKhQb56st#O7s?+*{k3}wPn-n z=3mxK(S;~&>d5+C@hk+RHTmj|o$-Gs4K%v(Hg$WwXmm!+c3$&D(7<2Kn`gGEUbRyL zUNL-O^>$;HTV@ubw`?}Q!iUWpV@m(UJ-1D@Rcr9~L3NvIsMjRBqikzkn_5|?QCP@x zP54T^KuD zkphK3vUWcFOIN}+so}Lr=%1w6zmqZy0}yy{Ez|YVwyCG@%iK-BBlcb!1hW`eU8woU&?3nS^jV zRMT{Oh%vdaO+63Sc!x`Ge}83I1`G2nc}#h|YOKRI*8VX1cYyKX_-%^l=P89EJxuww z#^Y5M`MEqnzIMHZ{lL%|d-au^E1d z!4uBy4(EC}hd45}^W{koJyDGDH}Vu?*Wboahkeoo`LI6#)&P5fa+$Gga8pZ1$MI*e z2m+^pO883wTPkBRw9I=wHCrEANOC_OAq z_$cPjn`sv+_`3NMq|f-7`Hy&+PcxPQM4#pl=0{4e@!<=`bd}+FP{`ON{`3OfaHU3y z$TToZw%M*8YI0Ye4e-cimc3>+f?3{$FTYXJb;rX#%1RChnwG)1m%kODfc$Q}Qsnv`V|$#ims*RQu@dY6bsu(W0J58-BKWM?7u~W>S=0 zJ9@5iN4V2S8Mqziw8`|Y`E@{Z!HvycrT{$=5N+mK3Zup{A~4PcC`%a z8ne8(=_{zwiYUdde!{OV?myt9BW2O1kJy*iq@DwmAFT&_dT_gXgiA{vl{WLqOP=-@ zt0J>>+ceD@hPzQ;+LN&CSeE$3B_sRZY7)tJ&6n^(9-;hX_0ATJkdkLhi};-6by5od zCi#)j!?vrBUA!S3NFA(Gn6_QbwS8Qb>hE#iJP%b)-oxDLu!HLC>c|EjzI2vp@p&w; z-NLHusyFrvyK1YGl!x$S+f`GCU6ma^3w%0<@1>4*^%(pQ8b#hp_yZjNmGIR&d^h0p zbNH6P_lLt*4xg{X_XPH!Pj)eO?<8aEfrN?pQ+om@5@0A03{+y`T?0k}#TX@Gq{zz| zt53#a02BkqfgSweWy7T$zGT_J{@uR9aKHno zJjU3UKpt=e2n2kO@trA0q>Fs?(@**wudA4@Ro=3m4P1voJGYkSJ{==R)bg88`6SOQzc<7_pHZS73#1Vs}l>BMkfTz8}Dw2PiscdhD_i=I{Y zb=5e0{JG~XJ$v{nZbO$;1uDQ=K`cJ#)<(R3iMdOCb1lxXw!fPi*PW(Qw@jhn~HPJ zN<3j81F-#zF>4-H2Otx+??M!W0?rmayz+$9N4CrRJrowIw-j!c_h``{fAIUMTd<|_ z%x4E<+8ucI87Z5)t(q#8^J%Mg%i%ReH&zXnaMEshF3jJjfrUsG%ccrzS!9{@yzFO) zR6LHgs$LCz(rQ0B)>f3XI!o&Fp7l3tmS%Rd?;3_DXpCr8FY~777fDO_%(T(+U^_Rb zg-8|rSX!7=%zsEbrfE~hSo!7`LZxZ^#0&j{c4GB>w*6w|sehKY9h3W3X|Za3&{0$= z_z16hVVpd(l?SfbA&+e11#9}rfo=TKnn}KL+nPJ8VqGhbuIK(QPLyu*CtnP6FSCDm zXD|LdhN z=@s5 zy3chR#>t*FeBp-il9lhfi>*5!RAzge5dGRL{3Adp*E$#(T3AC;+-Qi|qec9Eqw z`BNJome%lH8)rt&w29O0q~^$zt*W16YqYByTC|Eyozc*)4!ii9bw^a^u|BP*T^()X zJxqRbu#Jb94AL+BInz|>EH5;TlHFSPAEu#F6YpvclYZt8n}<(stnX0AoprN3u(qq8 zmjq_$u+BtB;MxDBzQ+G$ehi!0pXO(zOdh{! z;DFV(cD3pJTX9V1sjN3#t6`DS1ZlioUB*qDblv9Iw#ThE{7_|6bNNS`mYXs*K!I)Y!=FE1M|40j zAg0DP@OHFvHIN8f0gnXw0pczF4sZqdH*g5p3akd^0po$rjkO2t2WZ?apcFU^YzI<- z`G9^WPInp@jc8o~z+PZ1eU5X&-!z~=w9XG`#sXtUi|T>Pz-eF)un|ZGW&uM14Nx1y zZ@s!rX6@XVHGV`u-Ipt!i&Q%{l-01)&J385Y0%tP)>c@3gDP-_EcE;QzImBVJwGD;tLNLIHlY-*+cM6(U!6IS>4J{h)ZTS`#g$FlAUhzq2KF)Vx}oT8zv#H4hoP z;J{;7L)vy2ozdo*ajKb&L1;o3u(BtALpQW7AR>q7;dDbP4j|w!_em|gDjF8Un)+*?Rla<*h4+g zBNf)O%%U{@o~YvSEwHyAQ-xVYUzD`xA2^Q`0`GNkf{woQ@e)^OvtlhR?{|MdxeW!2`V zoh?W}hFI7(Je?!&6{WsDUXm8`_qRVQht%@kZ){GO(bzrPjGim4?wLJW*$gYQ=IQBk z@h-d0(4w-Y<NThvb)d*-&N#eB|=G16ar%Z|}Z255iqE< z+HJp^;bAQ@ zE$54N_Sdg&aC@7DtSo`C@`r((l%6u;6WxfxZ!CeK>tgTG{2J7S*SLN9+pd`E}!A7pILc*fr?k;zm%CscFD2 z9ByikI~5%}8hKmQLmgA`)x~M&cKo+0itIfdC#oXJ-qFFUBFNs_F{kPWtEcW+C473q zO7Xy2)b;$p?qQ}Cb=q?bN1tyVSY9|)b-K~B+c-zFKW`A;vU?#?9y)b>Ju6}8HqoWC z&}{;HaVXmXWCAOIRmtE-aQFl2aW?A*E&~@Y#Et}eJ?vX!v1S2Z0-pdUM~Xkd9w1@* zocMKyIdMK`_7-eU+FA*8Mv#L8;X=vI9btwz* z=7EEvXxwxuV46XDV0B$GfLXe|CJNg|G(C8sO`YYU)t)OA`wLe=!eCFb7fR?qWIklIn`p0_UJ)uKgZ#`Glm+W-@{9ApW%&&VGk>}Ok z!D;2rQ_jdYN1Kl=05nAFkeS<+PE;s{W)+6?} z1`PReFTSrwh_50Vqv+4A_%bYEsEVZqCotY;Z@e5($CLMJ5&ovV!*H}bws+8g;QBu? zuB1Jlx^HXbguqm`d+EyCSSTC$Z+rVo7Ow6cG^L_8D78D!uj&@xoeo|ozUDZZa;;|b zlg?(W2PYteNQ4*&yKIy*Av4 zgWSx~6oET}Lcus-9D(D!Du#tcz z5hITC{cjJRuEDv^jx$`unO6&X%)nB;TkO=u%&OjKk`73^BdOZdGHY=H_Ny9gs-$aC zC)K={nj0fsbt{Ot;D((cLf@)JetLsT`zHkAqrTRvRyOWm$+R&R{1~)Ud^PJ(cb{V= z`%%lzJ$&*00BH~3uzx_`@|vFU42K7a?_cT6+@U_hkL@4Q_rDj?rbQw9P{0caABlGG zU-v&cZer8nl6FGTt+@C^7~Wm-aR%NFr0(Kt{#AgpPtc)Px-DzMX6hJFKk|E^WTkYHPkV22 zzz1~~<8WHXD}*TSAd1=wdo_?8$B(?1FyMi`qDB+>d#Zb@e9xoR?Qaa`8iwvo;@$Fw zJbbW0QVu`&`!cH5dpZ@w?CL4(+qvI`>xTu1#Iuj!9m_q@d+us9P}9=kXx`h;g3f8TyT^lU0WOANKbO4`@)}$^ce6$N4igKUq`yxk*+I+X-uC|Ey<=)Isqvz)f11;~W*T4i!Fef{5BZSGvub(q zhqL6NwOn(wS^AN;9MugCt&{ibl<)&TTa%cou4oGF!tQP{hk2w{Y>5{i3UZ&bs{N|D z{#d3QSHmwJTRYgQj;+qD!s@#HXKQoBcx+lpOs9-7JZ`Y6q1AkD{$_mb{2_n1skUh> zMG=Yt;f1J*w_v~mDZt$6IIe<=vlz<)Rs)H^e6%MV2!!2?`)|IA6Ev_2FdC2s?g#AI zjHjzW1C^WbE(A*Qb!_+W9LVjgkuZiH~&HnZNsJh~&qcJ{mprDO;Jfl2ur% zwO>{R;GWxNywjqL=0W(42=)>1elu5&$4Zy@uHyqkA{r~Km3ld!1$Fs4+>lk>h5b~e zs$Na_0Ra<9jPV%UHhv1fc6_2Vm-jsJkkp?)d}69R$j;ZFSRpOrzn>U{gpL!#_^Z|eB)Nn&~!_q46K)KcH-Uifkq=A)` z>YX*EnDF$cqBFtOF_`(2(E(upjp&?L(20mh55@`U%TwWluQ$A#8j4ppRZXk^^Vv{E zENrSetI0iARfjfkpMv0_2`K&cqt4PVW@71ry&f#%;F7zNStOP=ZC)myUl1xi&$krp zl4sj^zd}VGpUD>&hDvMs>xIJxkGY7?pQF8lHJHuUk~|!*CaM~8ar_3HJ0|lhg(JJ} z!b{1U@0%7zAh>$HEbfI5$V{aWaDKo>i}m|;-Wxx8yp{4*yT z#7`l=Vs8#nRCPzgHcYx7(W%9C7$qplcY?F&q5Uxu)?q|~tNY=X!twZW0X_tzol&tC ziF2bLVpvn3UD$1=s+#LOaKLxJo1<~Re~*7!G{9Yh`#DB2gn_Wa|pkCX5bt{&9nHu zFN#S~s#;zbW_&Nkas3*b0GYU?QLg3_$D`eABhXrWr63fJ7h(SO_Eo zDS#1J1*8G#Kn9Qrn1L){8?Xb&26BL0;2>}q$ODc7$AJQ%7&r@@2TFl5;L;ZiFA;PN z*yl7}dWW&mKzE??`s{7S1jKa?yKCpwmfLCJ=gZgrXA7(0JuY4A*Kat^u1k^h61Xo; zhvItrZSHY%lKAJ)%FWeoU0X`f6bqgwzwld7ckz#-n@33OGH{zW{PwZw3|_^=r2&?9 zU`~*hNVkygz$MZLEfTpA5rE(1*wXifGEWwI-v4xo&H%IpS zUU+c{$5X&L(jtK6D4o9Kv)xcY5qoeSzkqo<2dkT#Np+$RqT+)U1rSyH2 z9sn)M>C{@v->HKs|Jxnt1W`Z;-2jI}htmz6I)ZN4OX*RRzf(t3{!TrS^5;^1J>~Dz z2Fjn?VRBX&OE>Jt4I=UxLgNxz1ei$rU!)h3J_s#_Z!$DY)~QpVML9wXUgeT5bXsS+ z7*?W!3^>GffNn6mXpz2+^dU;mrUE*3E;N#u&?2D2|3~M!;$DZ zQ~F8LR???P+esIYX5Tm}WQC+P4sF7F0XahGh9c6Qbc6Uu&Y}fk&>>=WhO{@O|C_X) z(my8cL+NKp2T=Ms(!L_ygaYTnA-d2H4si+X3D&ykuFxSaT0G+j7cEwZXcz4bt#{Gg zp<`XNXpj~GVg5NQ6pmmxL?nq6Py*c`vxvU9l;NU9K<016 zB8W>=AOZ*%0l@Cm5fsoI_(TtFqXL8$0cE>r5m2s+cFY17Edn~~qD4Rj-BY66r!uq<|iW76Fw~exXG`mt3?6sN6-1fUdh}5zuXui$g?I?V?3M78fl7 zFi=3ELZM?RAZ@!dAS>nXP663nw8$@Jk+{V6CK_PsTsS%%*~lOggm!cxG|Yc==RzXV zMS-0QNvG~yM>^>K^K^fw?p#NNMm?r~77}v&vyccaD(GBDI`vHo&=cv7>#~!C7LPzf z+HnF9Nysl+(5XFzM$JNZbeR6Pn>ii-+s&Rt2GIk_)Phc(LIDUZdTNzRy3lDZ>7oG{ z(BgW6%JZZEg_cZ6nBkH^+>l6m9^K$WHwY~%FuSCS{M$%hM7p^AD8JAme}Ib?4GMPA zCOsVCE)LO!Q7&2wJ&|+?RbX(@qJmf#Ehdf3(TjMTh@!IG_1Z7p+GD1uj}taF+DvRA8x# z76D&!(IVh-7p;fB-lRq%bFV;otp%YxRC@;yWP3%i5Fqtw4 zEebTcXi;FAi`GMDxM)$Jne>0DylpO8l$Y(IMR~anZDLH^poinIO9oNkQPP*FzycR7 z3OwtgMS-O*S`U56MT_#vNqg-ge0#3aoa~dT5J_76n>Ke@z8;&hu|b z$I=+NOuBOxeM?#ldK1cFSIE&hYQH1hIq1qs`%#5gN$W{pBW)!8J?YLauOQvoV?U5a zgH57-_9HnuSEipxCr}HnlkS}NKa)O6={HDsPP1P~cg~WVq_q^_ucTwYH96{Mx5$x3 z8Ga+3OZqnHQqp4C6=%WDH$?IH1jJ)ogg4^OC0*qE$9DyZxI{j&_ltaH6Rq7MW2ZBL zGA0s>|E;r-?Av$o34!cN*sI8{hMi7!J?u=fEwHo5Zic;sY%A;>*pBwwAr4XkyNB0C zvNf=elkEw+m~3y@=gIbgT}HMq?8{{P!LA@X0QOC?Z{ssSHQAN-QGYWD@qK`a_flNK z_9nX+t@nj3x-AD^6N1UUiSGyzWaq*^k!&B>v9QJC$$*_eb|&obayUhOfG6O6MGGM= za)gUST(_^{V+C%se^+#;*~3jP&*qKlU=M2vW?c#IZ4LDDDaG%7fVnrHWF730eGMzj iHNMPxPYUKwv;^Vrx|U)1`!4?K`B(V+62IHh|NjBZgc=Yvx5IFPYxRyt2b+)H}ey{GT&?r#t`O`}sWce4p<*@7dQE&8$~# ztXE}er0DJ1Mc!xcFn0FN_D#K{Bilbe&^3MilLrY+)BbVxXSV&pSPzEh&sO#)))0pi>xdJGlZj2l7UC@8Tw*J6A#o9LX)BwVjT}s& z0uXD6!-;jo3B<|7CSnV57I7}ImAH_&h`7|nX2xvfV0J11v4%LDSVx>doJ?#Ywh(6# z=Mr0q3yF(}O9dl;W+Mk{paKwUh{K6>#0kX7#3o`3aTakdv6Z-xxQMtEZ0;cnKn~VO z1t8WChZF0F6NrBF-hY5*HE|5to|Duo1In zDgd#DIGk8VoIspRY$CQ0XA$QTTZs#ai-^soWY~yV3l)G^LmW=5BTgVrCN>dUh_i@u ziLJzi#6_)aW~Jn?5i=(hfLKEuPOKwNAWkMW5nG6}h;xap#D&B~E;ch(N)8(_W0Gr3 z_!Dc0!-;jo3B<|7CSnV57I7}ImAH_&NHFqerR1;?Gl>d7tRW63))6NVCli~9EyP*G zxx`lDLgFH@YyOv#!$!i8x(lZp|oz92Vk@#G8q;iF1f^i4PHnA5pl7ZjQhl;#O1`*#P!5>Vy12_xSH6H*q=CnIFPt6aVT*(u{nZ_@x(gf zXySO{nZ!xN$;2tdONdRxD~L0QGl@46XSMPmmQ9X*#JR*rh))n(`C9EX=~4bawY@vY zT^#)Juzh_tHMD<{;FF;*uIM94p`!~VjWiIy+AGj1+xPs_@adiBIg9Q4{55G#CA21a zVH=ySIbS_|sU(kb@bnQaUYng>wlx0k$S+cI0o4cK{jsIkZa&^UQILpGWR0 zaXy|_&)y0*c-x|&x0NVDPZxR|^oEkU$4ujG>)jatG(Zwoc%zS2gbqgN#6MS@{^hYy z?fweaG~)e9!q?js<`Sx@yq2`#P?&*9UjP3cv+oUwa_j9mnBfkYqyu)M?1Ogk79xQsEM zbInS89Wyp7W2+^D9KAyCR0^D|z;78}mT*QkzQy}bKi1Y}Vl4D6#_as3=~ce_q0)f_ zQ~u4wd9r!Q8;lL9uubY__&&Ce;rqBv)>V47;ri5#hC4}X^u3L3`7|3-eVlg{Lq_$7 zWyT%*#$k~*jr=V*Y{ihU&|8aFjQqMVP6}SF@0H93KVNkD1zD>xyr*wg5~^9~cXoeO z;nSG4Oxvv3Dn=WeN>Iy>@STgb#;wxdnUK`W*mm!1oybIIi&*Pxy;N>nJFWibWs|g_ zhGu1G^@%tZiqV>U>)!FW-;;V9RlHf*R4ppKqT&l)@nT5t9%~Q0(5(1YMg_j7|IY5G zVzz*_EL3N^WZA<9%o^FY@abubS5C8H=L=@_#%ccxOD3ACSs793WniJqcErMlG23a& zIHNgQ#YM=miuYVG4p(Hj_+Z8AXen506k%g4SN>&3RK6QM&>#g1|Io^J;9rosLZ2Sr ztb|sk$4J5H(QhTK(6=>aAUvq@EqLBCN3Yb2=mC|cXf3_kxpL`WwqNBE*h}I?qT)4m zWm+@~)*8e+EfvPUYb)z`rv4+FmBcF1ZNEQmR`yhh*56bv8Dh~o zPNjn*)R>&ttXSZg;_`SoK2Hr>!NPnBCL5-gMY()UO_6btvA-LW&Y%-J8>8~rAfJLk zh94@tN3dY;(>^;Um4zADpg)Vc7{(fYFKbqODw>toTv^R5mknA&ge#enreI`{^=d{=ngOa06~0S2j4EcNgOv1>6T7A)P{*`Lg~HLj`zh(llu>zmPOw>X((w=ui&T zwTqDrQqD@fLvhsoh6=})vx3NcET|_KyU8*0k;p~xLEt>>Khqdf#Yx)L`a2lq%}Tqk zSV6{dKJ?{8dEFVl?qyxatM-vb=~-#q@yOrqn=TFJw_YA6y}{ehe$KZf50wM5^7z!* zBczdh?d*|lXTvcS(C|yMwF94)OW_%MX3MfTl-N2i!{R{i9A?{TVMCbhQ}|}pO4{}q z9y58HIRm6zK5Wjoj@_Hi8`Oqi!z6>4tXuiYIpZV~KR0KjW>&c>$m{1vy`ItkaZ4(F zVDD;aljBhC)=V;pG>Xf)&)h)sl^WqJtf?-0ChkRpw12gJuW^RGo#lAhK!Zau)OsWI zj4RHmn&Cztw3?%~OWX+KZ%JKZIvZE&1K^3Q?Su|@D8Y51c&C4jL)loHyS=sb)`5>$ z8QTeD3r=OM7Qyci>1-;_+@UZ+@l65EB+&W_x?>KkYtj zxIv`jP+oKSQsMK1uk9a}S$FM89UaPSK51SLX)1qt-t*E>zH8pAvZIQ(%RN|#ubO8jPc{2q#Dd>0tjwXDuN9NwaFt}}hi+_9!kiA} zl*_jdKCR2Ab+#xk!hg`^&w@YDvMEah$U--N9GM5(3 zkxueg7Cj@~<*OG>96Z|bZCQJ<_iZaYiadaMz<3}Ca2&yL3s?m#Il><=Iw+;_4^v+9 zPpT@8(HK6qpAQzxNJ|B`r9_(VSKPH<86idNi~P@>!su}ZuV6`wlqZQH9Q3s@^ujG^ zh|Z>1n0A`Y8LqYkHHjW>vWT7c9OA1HU&QsTx>t6_L(5gS%T9af#>(quV+_6;k+wq# z`TA&_uvSN4_FR+Iw)~3+pJ-I`!tzV}4P!7hyI19x$wSP_>eIPmhE?QyW9nB9H+UJ; zwg>#buWFw+U66;Idcfm;!w$j1ju!23&BUTe4c@+8rLn10{x(%d)f2U9noT7K6a*M7 zK5`SYN#Q7Le$;CnrMBuyrWFYW^Et1-BYnYdz22kk+YO>zYTIJ|i|t_}x(Y1%{@8rRt{lMO6nqf8ehy=^V2=U^0p39Me#Wi=^X4&D zjCV3&Z^kN}1Ox-NRGiyB!C~tVwi=*#AGU;yxkw1G=5H~cl)9X1lJ|IHI+^G5f;FROpC2lij3zl|X=QvVHpGak#_`)IRL-;i&8 zBU9=!&Hjr$Q$4M|>oSIJH-3GcBz0Egpz3~66bq6>B`|?5b z9@j+k{kPeL4!I%!*A2@*o z|3t>Ofr~(94j+*o+%CVV^1o`WsI7(1Pk-Gvz9sL!lE$HY)x?X^2TSvLbNWPSB7gp! zFliu9eP@`|iSK@Am}v3q?~L!g+!sa(6fxAZ)J ze)$mT2w#lf?R@w0XC%h|wtS?d=2gqX(C$6n6~9sMzSN~rIa8NrylXd2^zSW=?TOL) z89({%MCmzRgI|dcSuxIUa*I>xbwQM_yn&~$SST&y|6Vc2|8cD-!onaqryXAVsX0G# zcocXPzGQ_ZB*>lJYh}Ozy}R2O5o*R>=`p#_vST9w^L$ob|^&+ z+_FY5ZQ$RniIP%yTk|maw4IMN_m}qa1?Dj61HQ#PuJ zU%=)~*jT|yKrh(hJ3)LbGX4-iWzGZpVVh0(84Cmhet?()rC5m{qDEJN6R`J#*8@v| zS-=FKKhOdA6Sevea1}TO>;T-m?`yE90;7Ncz>W$&1ik^z06AOO3^o^r0q_BmOjy>Z zqjV^Qelik7jZ8p%CSxrpJ?WV?~nDrRvDDq zx){wuMXnmTZ)Tu0j}OQk7BaIU)L^>QsEnv+RO)f3ZB!mrv|i*Lim`dK1d?OzH7e`zn%K^;4>tdOa;#yxA+#V8GvY)Q zpYTESFuAf(Np_{5fQW5e5sMv7JR02tY3$Cd_J?EXN}6{@?!g0cEx@^VPl>{;f}U3gA7n?rCyWPsCZW% zOv7|f3&Yvjq-z|cy!e&rlGs+CPQVdKx&O5~&MSH~Zr6A0r5Z6g%f4m>_1Fk*^Y=DP zl3U7o;f7OEJb!cJxBydmNlI&-jvzuV>_l`@CewIS9q13+2e^9x=VM@9GGl|s@h>+A#qP%* z*fGxkoZ7Hjzs|ZlEdYJ7yj(KMhK#&P_-55Mu2b@Ay|hDwG$^sPQjUz1tiP^7VVAWC zuPtK*Ymi3Dejc4ML_W zeh1%AMdIq(fw*3H9cxey*Q)kP*au!N3P@9JZ%{JoN*A!umx^LzypOZsaP&=%LHK*s zsCKi^)S}5TQHF2>!#P=aJGi{jMU$qk(R)AfVGT-U-NbIOD#Nd-tMvY9KF8P&xa9`L zR>%Fe_V3i7T(7&-5UP<32|+%3**29&Z4C)l*GQV0vQYFlt5KoT9MzKMzh%Fr%7&!W zHpd$j9Kkkj4P3CiHrK;>xH{m%1AO$@6S?VLN8IMM3wi}NC3T4IZCrujkz8voYfxs_ z_|0cb4TxEH6DP<=W3XxiD;6-83>`49b%~0A?-BRf7KZscd|OBlpXxQZ5Qu>(S6geN z+YQ9_*q|ix#oJ=WHP-xCGj7$T+CpD@ZP}__HN97TP~+u0pmu|AgHl~1{2Ifen3ehu zYSg|R@m68g7(+_1c;CqDw)KoVRW;CX&8276%)&>i6?*o^8Ix1l-NHiSZq0Z>eDoWL z*n1F9RAmKJCW1+GA;r@LqWuDjh;=_pfFJNw2iF^_Qa=6R5>`?h#N7Tn4V7FK#}E zofXhSuK@>w{pMn$gMAxEI|FzuFcb&|x_1^oK;tNELNU|gR_dqm7%tGm_zk{_1fHD%&A9hI6@b#XQ>F}qu0z5?^!yblg3Vna} zluyj=gX8%8?0(WI{y}!gfPIxe*+cyk@xeiZ8KtkhR@Nih8+Qt)vc`U)tQ*-Y_`kBd zy)?V(S(I{Sr2!=|pd@0Tw?tqag54D;-h~DS<^kf58XbWBBe8Y?VsD-W_C=|EV^-_M z(uBhk)(4dRK5=IceDHc{=QEQsD?`%S^J8W0;@Z=R z4arxWKvmXNJe<{9jeB4#PFtr&U>SuS5l+Vm=t_QWXP?NkRVpjP(su~QEdO(;MEp9d zZ%l?>>~jtHF8yhm%1~^#YBXuA?++EMYfn^SPnC>L#?Fd&;)n6>yYzBpC7-)1Iv^k- zw4TkAZR$3w^>RHMGt}naLG{PlMf~Efgmw=rTkGDU6!RWAQ+n7HYu(y17W(fZDYR3O z2n)vtsn7X4IpbpAbx4Mv%iKOo%dxU8_HLTqAzSQS!)5JFR5H0d;YA!JQ3TOno03pL z;0DL(4}G>3NSKK$@ebaY6BLtz1L0gC{M`H24)Ivjw~KxLEVC<{>ZHAr_F$SO?TYzF_yb;BTGSK$Yy;J*i9+X_MtW z3&dwRr}FUyR?vu}W$ku;d3T@`$$#G6vzw)&V;sZLL*jc@wy3;#o+) zm;i(5EcKHF*{%ff{5=zs?YN7Srm)ce-13VH3-03aj-kA`%&zF_f)lY^AV<-1-#>La zKdE*)?bC6TMG3@+9uK~VGx2Qj3HTom!EAsX0Sp?-6ZiJ_9b4BrZd$hSb$k1JX-4`z z$>b;ZM)?+v!i504{npob|K*zx6Ajgho) z8y~xGS$}g=`wRGN^?s9bv5|!~6#beC6*c5>-x)Y8Z^eKGu5abH_gSR`{{AQLwd;&4 zmss6flzY70{`_faHQA`x)@iL3Ga~wIU@Tw{YdvF&%4Fkcy%2itR7`j1(SScti;F~U z0&X_IWuOfoexM829PpD8`H%xq_#*k%fe+>SD(*P&r_`7Kp8LM8Lp8%=$s9UKFw-5- zwemJyeLOA>IG2kSJ_UORun_t_&g2h~u{fiz+r+>8G(pPbZ4UP9bhe5W?8J>@Yi#RF zN&NYPsW_W|ad2Ybtg0Y*J0nyi=Ri`AaeTiC6vlA*vxJ_Fj^YaSh+osZn&hY6O{(89 zm@62X*M~3utk1LYIGg3Z@#{jna=-F7Bhwx<`rvP0)0~>cep;_4=}Du~r3I6`f=MBZ z#89_ksL$pFpLOd#6IsLxAWI$i;09b%Ht@>Ng5+fzxbLCC=Guy492HrZ?fxLw(b=by zCe4nkL$TdovMZe{i|u}rPo7;Vtq5_2hr7ay5k4B>GQuNV;YAgJuJ9yR_!WdFBm60N zt}DE-qMIw+;tD?t|3-vAjDeBqieRni5Vy02`L5Rg4W|cu_LEwapk}5ORqcw8wh!&% zq~4+|ygU_^2nJ-};db-5? z-+X>iist6ST*hb4u3t=*?^f`XFY2ZB{N*Fs{`V^7JzB%yy+7HLn4)yA8`Oq9`M?t9 zomTuo9K&Bsa^6sst93m0NQT^4&V!CF4^ouJbs1$?T{rz?uMZ!KO)H6M4I}k4^onw? zj-NTYPFl*JJvPw1r*0>eVp9y(43tV-eC}o9Pyn2X#wS^DSK!h67$Cq|;49Q;Gq4W! zOz?Pc5O8B1*2gG>ftLf~uiZJ5p#eSYK>)*FNcvr71^#(V+rl3l8-}A&`{P>d%)^fN zkplU&EmG37ntmC(Ys)P7T!SY8I6F z1maE=udogX`t4G&{mO8^zG}?o+ezN8ON^qF zT-vh=A08&~p?O2wPQ1tphC&ALSMx%Gx8N^ujVrN&0c}FnCE|u#w18<$QzU>DTwlqL zi<2vVo*t_X$uqLP`09o3xK?d7s*kF( z6(yUuKRdC@x6RKZ!=&VJ6uUdV%`3_%KL6|s^7Tr7>g=GfG0pPcZ_8w^C}*mVB+GlJ zm-Tcd*P7T=B*sG2Tzyng0=Vj2NZ6>#VAMz~$PArOf|_0hqOoy|AC27=c0EcT5QsU) zr=RORy}o=g{-79vKdUKCVF z7=!@M!_z*rdKvr--aGsaYHfE^0e>ky_oG~Lo@aj{G_Rv|2VWo&7TyHH60u^Ek1tIOw9PD3zohq!Y1ouW=_L4 zIxA+zi<1y%$*XU_tr?P-gbB?OCQX@)AV!kKPo9Cj8Tq{V&XSa+1JX5bznZRjH#L9T zxBb-Z-cBDf;@MG)-dytLvi$siJnPeOMf$7D-uTPM@_+x=8*RDeo=-2`RV+9_G!PFY z05gH4t9-$&dFHt=lYtb#2rL0iKsvAj$N(%rCa@9M3}gY>Kn}1E$OR4oM}QN66*vo= z2QC7Iz!l&ca04g;ih+`=Y>ud*>$$M2mAmCKcIyCRCjs}fU=L#g;#q(bhWq(sx7$Me z4ga%+wdD~1wWxddf8v1N7Q1V=os6Bs`Bgk#d${-g2{Qg&y5as(RomT#sG1E&3V!LA zkoG0`M_~0sBz6OM#A|-}oB0)7sKlcN7C7-KjI>1hQ_@a6BK$kjUI>2?S~?7aStbfS z>wmgH=mh9bKNsOB7Jwat{hey!ijVK6Y%Mj7aJ(!)S`=Ur5^!q~ZifEQBLOjlKG}yK zJR%&cFl(62m?*5!2H-spodo?VHL(Z}L;n9?4d%m1HFDJe_XL)TZoGze6E9%zbm{ZZ z;=zX=mH}h}n}KX#A8-V)0_TB3;0ka9C~yBk3w!W_D7jH+JVJ{ann-^_dIjly&|>IjK*MBi zZGjf)2rYP{N4U_NJ;I&H--!$zq6UvV!iBE(2p8$qdxQ&Zr|@G)Uubp%2MfG++=)pb z9BOiGp$INe7b7BdsBQ#%XRXkr;%cMEMkAbX#b>hZcPt z@1e!&Fw;Z(LC^Kj?V(dVv}p11D3EAUv&c|5-1BlK6=(^)Ahak@x`!48%J9&lK$#v| z6lk-D_Jhv$(4s*5TD6&p3`7Ck^WLr9^L{!N=ny3!v?$OC4=oCG)gu}hChzPDGLYOEnGc7KsUAdPaj?n_-Lv`ByO_h!U`a67^&!b|Xp z8fQ=oxU~gZBrLRG_uB5(n?1rs2H7G#JTFpueW`##i}#IYj|k!g6X{v>!eDwqXz{{6 zk8lzH5b4VZ7f%Gm7h1$0?V&}5bRJpH9@(gl=3vWFHKq&?18)9$Eu!CH;3w|GbCBf1bg1 z>ERF=T=CF4=o=ndWKc}{8%prLhZY5X0b zJhVu#tB2M>2YP5xz`mrfPdp+$moJ+w$K z#Y5|$mw0HAUOMTkV*eLU#{V3y8fSWFk>F+zt%J_?&?3Qor2jz$JmjH80Z({nk>1(A zH1gNMaq%xl>q2sc^fgNGhKCjj7JF!s;C&A*(tG5gMFFcx|C7?IcWW~oB0-1S0WA_# z{|i5O#0xsGpNAF+b|rnC5_He=?@7C-! zhixU>?0`5=f<46^PqrHNHL`tR7m@7;yM%0i*rjB5g--m`LAyiy7B&M8C-7xE7FU|%at z0oH|&wFh}y@q+aZpJ#uHzeZ1Q2*K|=4FmA|Ny7jyJ*xODf6~x}-*51jR`QyL9{&$B CN-hTg delta 15970 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 "$ROOTFS/etc/locale.conf" + echo "LANG=C.UTF-8" > "$ROOTFS/etc/locale.conf" if [ -f "$ROOTFS/usr/share/zoneinfo/UTC" ]; then cp "$ROOTFS/usr/share/zoneinfo/UTC" "$ROOTFS/etc/localtime" echo "UTC" > "$ROOTFS/etc/timezone" diff --git a/src/sxmo-st/config.def.h b/src/sxmo-st/config.def.h index 11df9d1..5cfc1e6 100644 --- a/src/sxmo-st/config.def.h +++ b/src/sxmo-st/config.def.h @@ -74,7 +74,7 @@ static unsigned int cursorthickness = 2; static int bellvolume = 0; /* default TERM value */ -char *termname = "st-256color"; +char *termname = "xterm-256color"; /* * spaces per tab diff --git a/src/sxmo-st/config.h b/src/sxmo-st/config.h index 11df9d1..5cfc1e6 100644 --- a/src/sxmo-st/config.h +++ b/src/sxmo-st/config.h @@ -74,7 +74,7 @@ static unsigned int cursorthickness = 2; static int bellvolume = 0; /* default TERM value */ -char *termname = "st-256color"; +char *termname = "xterm-256color"; /* * spaces per tab diff --git a/src/sxmo-st/st.c b/src/sxmo-st/st.c index 1bb5b37..38e41d3 100644 --- a/src/sxmo-st/st.c +++ b/src/sxmo-st/st.c @@ -715,6 +715,14 @@ execsh(char *cmd, char **args) setenv("SHELL", sh, 1); setenv("HOME", pw->pw_dir, 1); setenv("TERM", termname, 1); + setenv("CHARSET", "UTF-8", 1); + setenv("LANG", "C.UTF-8", 1); + setenv("LC_ALL", "C.UTF-8", 1); + setenv("LC_COLLATE", "C.UTF-8", 1); + setenv("EDITOR", "nano", 0); + setenv("VISUAL", "nano", 0); + setenv("PAGER", "less -RXF", 0); + setenv("LESS", "-RXF", 0); signal(SIGCHLD, SIG_DFL); signal(SIGHUP, SIG_DFL); diff --git a/src/sxmo-st/x.c b/src/sxmo-st/x.c index c399523..376b59a 100644 --- a/src/sxmo-st/x.c +++ b/src/sxmo-st/x.c @@ -881,8 +881,8 @@ xclear(int x1, int y1, int x2, int y2) void xhints(void) { - XClassHint class = {opt_name ? opt_name : termname, - opt_class ? opt_class : termname}; + XClassHint class = {opt_name ? opt_name : "st-256color", + opt_class ? opt_class : "st-256color"}; XWMHints wm = {.flags = InputHint, .input = 1}; XSizeHints *sizeh;