Commit Briefs
Change default keybindings (split)
CTRL+SHIFT is an impossible combination in the terminal world (0x20 | x & 0x1F), so it is perfect to be used for internals shortcuts of terminals, and being a double combination reduces the prossibility of having comflicts.
Revert "Initial font size issue."
This reverts commit 424202798b02554092ba84dd59fb7b79b59b7b75.
Fixed 'missing glyph doesn't use fontconfig config substitutions' bug
XftFontMatch does display-specific font configuration (commit 528241a). Nice. Unfortunately, when we switched from FcFontMatch, we also stopped storing the post-Fc{Config,Default}Substitute FcPattern for future lookups. The result is that if a glyph isn't found in the primary font, secondary font lookups use the original FcPattern, not the configured one. If you have custom fontconfig rules (like me), this can be disappointing. I basically just copied the guts out of XftFontMatch[1] and saved the intermediate configured FcPattern. Could be related to the bug that inspired commit 4242027. [1]: https://cgit.freedesktop.org/xorg/lib/libXft/tree/src/xftfont.c
make the various combinations of arrow keys and shift/control/meta work
When using st with screen, I've bound next, prev, new screen to combinations like Ctrl-Alt-Right,Left,Down; xterm and (u)rxvt work fine when this combination of modifiers is pressed, st does not seem to transport all of them; a single modifier key is fine (e.g. Ctrl-Up, Alt-Down etc., but combinations are not). While I'm not terribly familiar with this, I have tried to hack config.h in a more or less systematic way to generate the expected sequences.
Initial font size issue.
Hi, When I specify a font by point size (I'm using "Inconsolata:size=12"), characters that are substituted from another font because they are not in the main one appear too small. Doing a zoom reset fixes it. For example: Before: http://i.imgur.com/G4Mfv4X.png After: http://i.imgur.com/PMDhfQA.png I found that adding the pixel size (acquired from the initial font load) to the pattern then reloading the font fixes the problem. I'm not sure if this is a proper fix, though.
Make strdump(), csidump(), print to stderr
The two functions strdump(), csidump() are called to show errors and their output is introduced by a message printed to stderr. Thus, it it more consistent to have them print to stderr. Moreover stderr is unbuffered (at least on Linux), making problems immediately visible.
Do not use color when font attributes are supported
If fontconfig gives us a font without the attributes we asked for, display an alternative color instead.
Add support for iso14755
We launch dmenu for getting a codepoint, then convert it and send it to the terminal.
Add missing device path to '-l' example
Also, it's ttyS0 not ttySO.
Add parsing of DCS q sequences
These sequences are used to operate with sixels, but they are still str sequences, so they are finished with \a, ST or with a C1 control code. This patch also disables utf8 handling for the case of sixels.
Add support for enabling/disabling utf
There are some ocasions where we want to disable the enconding/decoding of utf8, mainly because it adds an important overhead. This is partial patch for ESC % G and ESC % @, where they modified the way that st reads and write from/to the serial line, but it does not modifies how it interacts with the X window part.
Delete ncv capability from terminfo
We do not need to disable the previous ncv definition, because there is not previous definition.
st.info: do not prevent st from displaying attributes
With ncv set to 3, we prevent st from displaying A_STANDOUT and A_UNDERLINE with colors while our virtual terminal is capable of it.
Update the LICENSE.
This is for the next release.
0.7 release (tags/0.7)
Add some hint to have the pseudo terminal in the right mode.
If you don't make sure that the terminal does not expand tabs to spaces, of course such a setting won't work.
Add comment about tabspaces.
st.info needs to be changed too, when tabspaces are changed.
Consistent Alt+BackSpace behavior
The default config specifies BackSpace as "\177". The default behavior should persist across modifier keys, commonly Mod1 (Alt or Meta) which is widely used to delete a word on readline and text editors, notably Emacs. This will make Alt+BackSpace behaves as expected, i.e. sends "\033\177" instead of "\033\010" as previous default behavior. Signed-off-by: Christoph Lohmann <20h@r-36.net>
Use XftFontMatch in place of FcFontMatch.
git am -s didn't like your patch: From: Mark Edgar <medgar123@gmail.com> XftFontMatch calls XftDefaultSubstitute which configures various match properties according to the user's configured Xft defaults (xrdb) as well as according to the current display and screen. Most importantly, the screen DPI is computed [1]. Without this, st uses a "default" DPI of 75 [2]. [1]: https://cgit.freedesktop.org/xorg/lib/libXft/tree/src/xftdpy.c?id=libXft-2.3.2#n535 [2]: https://cgit.freedesktop.org/fontconfig/tree/src/fcdefault.c?id=2.11.1#n255
