summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-05-08fix possible rare crash when Xutf8TextPropertyToTextList failsHiltjo Posthuma
from the XmbTextListToTextProperty(3) man page: "If insufficient memory is available for the new value string, the functions return XNoMemory. If the current locale is not supported, the functions return XLocaleNotSupported. In both of these error cases, the functions do not set text_prop_return." Reported by Steffen Nurpmeso <steffen@sdaoden.eu>, thanks!
2023-05-08fix a problem that the standard streams are unexpectedly closedKoichi Murase
In the current implementation, the slave PTY (assigned to the variable `s') is always closed after duplicating it to file descriptors of standard streams (0, 1, and 2). However, when the allocated slave PTY `s' is already one of 0, 1, or 2, this causes unexpected closing of a standard stream. The same problem occurs when the file descriptor of the master PTY (the variable `m') is one of 0, 1, or 2. In this patch, the original master PTY (m) is closed before it would be overwritten by duplicated slave PTYs. The original slave PTY (s) is closed only when it is not one of the stanrad streams.
2023-05-08Update symbol fontGustaf Rydholm
2023-05-08Update xresourcesGustaf Rydholm
2022-11-08Remove joyGustaf Rydholm
2022-11-07Update icon fontGustaf Rydholm
2022-10-13Update curly styleGustaf Rydholm
2022-10-13Add undercurl patchGustaf Rydholm
2022-07-20Update green againGustaf Rydholm
2022-07-20Update green colorGustaf Rydholm
2022-01-20Update Green to Cyan color #75B5AAGustaf Rydholm
2022-01-20Update brighter black to #555555Gustaf Rydholm
2022-01-19Update white color to #E1E1E1Gustaf Rydholm
2022-01-15FormatGustaf Rydholm
2022-01-10Add scroll patchGustaf Rydholm
2022-01-10Update fontsGustaf Rydholm
2022-01-10Remove config.def.hGustaf Rydholm
2021-12-26Update XresourcesGustaf Rydholm
2021-09-20Add cleaner dark bgGustaf Rydholm
2021-09-17Update bg color to coalGustaf Rydholm
2021-09-01Update darkerer bg colorGustaf Rydholm
2021-09-01Update darker bg colorGustaf Rydholm
2021-09-01Update bg colorGustaf Rydholm
2021-08-18Remove unnecessary filesGustaf Rydholm
2021-08-18Fix so that the boxdraw patch is applied correctly(?), still issue with ↵Gustaf Rydholm
bottom graph display
2021-08-15Apply anysize patchGustaf Rydholm
2021-08-15Fix colorscheme, but still not displaying graphs correctlyGustaf Rydholm
2021-08-14Fix colorscheme st cursor is whiteGustaf Rydholm
2021-08-12Add colorschemeGustaf Rydholm
2021-08-12Add bold is not brightGustaf Rydholm
2021-08-12Add clipboard patchGustaf Rydholm
2021-08-12Revert from applying font2Gustaf Rydholm
2021-08-12Revert "Apply appsync patch"Gustaf Rydholm
This reverts commit ae19d30bab16589623aa80ba316288d234e7fee9.
2021-08-12Not compilingGustaf Rydholm
2021-08-12Apply font2 patchGustaf Rydholm
2021-08-12Apply appsync patchGustaf Rydholm
2021-08-12Apply boxdraw patchGustaf Rydholm
2021-08-12Apply desktopentry patchGustaf Rydholm
2021-08-12Add xresources patchGustaf Rydholm
2021-08-12Initial commitGustaf Rydholm
2021-07-18Add 14th bit to XK_SWITCH_MOD bitmaskPetar Kapriš
The bits of uint signal in an XKeyEvent which concern the key group (keyboard layout) are bits 13 and 14, as documented here: https://www.x.org/releases/X11R7.7/doc/libX11/XKB/xkblib.html#Groups_and_Shift_Levels In the older version, only bit 13 was marked as part of XK_SWITCH_MOD, this causes issues for users who have more than two keymaps. the 14th bit is not in ignoremod, key sequences are not caught by match(), if they switch to a third or fourth keyboard.
2021-05-06Mild const-correctness improvements.Markus F.X.J. Oberhumer
Only touch a few things, the main focus is to improve code readability.
2021-03-19fix: correctly encode mouse buttons >= 8 in X10 and SGR modeHiltjo Posthuma
These are typically mapped in X11 to the side-buttons (backward/forwards) on the mouse. A comparison of the button numbers in SGR mode (first field): st old: 0 1 2 64 65 66 67 68 69 70 st new (it is the same as xterm now): 0 1 2 64 65 66 67 128 129 130 A script to test and reproduce it, first argument is "h" (on) or "l" (off): #!/bin/sh printf '\x1b[?1000%s\x1b[?1006%s' "$1" "$1" for n in 1 2 3 4 5 6 7 8 9 10; do printf 'button %d\n' "$n" xdotool click "$n" printf '\n\n' done
2020-10-18remove unused variable from previous patchHiltjo Posthuma
2020-10-18ST: Add WM_ICON_NAME property supportJohn Collis
Also added _NET_WM_ICON_NAME.
2020-06-19bump version to 0.8.4Hiltjo Posthuma
2020-06-17config.mk: use PKG_CONFIG in commented OpenBSD sectionHiltjo Posthuma
2020-06-17LICENSE: bump yearsHiltjo Posthuma
2020-06-17remove sixel stub codeHiltjo Posthuma
Remove stub code that was used for an experiment of adding sixel code to st from the commit f7398434.
2020-06-17fix unicode glitch in DCS strings, patch by Tim AllenHiltjo Posthuma
Reported on the mailinglist: " I discovered recently that if an application running inside st tries to send a DCS string, subsequent Unicode characters get messed up. For example, consider the following test-case: printf '\303\277\033P\033\\\303\277' ...where: - \303\277 is the UTF-8 encoding of U+00FF LATIN SMALL LETTER Y WITH DIAERESIS (ÿ). - \033P is ESC P, the token that begins a DCS string. - \033\\ is ESC \, a token that ends a DCS string. - \303\277 is the same ÿ character again. If I run the above command in a VTE-based terminal, or xterm, or QTerminal, or pterm (PuTTY), I get the output: ÿÿ ...which is to say, the empty DCS string is ignored. However, if I run that command inside st (as of commit 9ba7ecf), I get: ÿÿ ...where those last two characters are \303\277 interpreted as ISO8859-1 characters, instead of UTF-8. I spent some time tracing through the state machines in st.c, and so far as I can tell, this is how it works currently: - ESC P sets the "ESC_DCS" and "ESC_STR" flags, indicating that incoming bytes should be collected into the strescseq buffer, rather than being interpreted. - ESC \ sets the "ESC_STR_END" flag (when ESC is received), and then calls strhandle() (when \ is received) to interpret the collected bytes. - If the collected bytes begin with 'P' (i.e. if this was a DCS string) strhandle() sets the "ESC_DCS" flag again, confusing the state machine. If my understanding is correct, fixing the problem should be as easy as removing the line that sets ESC_DCS from strhandle(): diff --git a/st.c b/st.c index ef8abd5..b5b805a 100644 --- a/st.c +++ b/st.c @@ -1897,7 +1897,6 @@ strhandle(void) xsettitle(strescseq.args[0]); return; case 'P': /* DCS -- Device Control String */ - term.mode |= ESC_DCS; case '_': /* APC -- Application Program Command */ case '^': /* PM -- Privacy Message */ return; I've tried the above patch and it fixes my problem, but I don't know if it introduces any others. "