aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-07-20Add some hint to have the pseudo terminal in the right mode.Christoph Lohmann1-0/+6
If you don't make sure that the terminal does not expand tabs to spaces, of course such a setting won't work.
2016-07-20Add comment about tabspaces.Christoph Lohmann1-0/+9
st.info needs to be changed too, when tabspaces are changed.
2016-07-12Consistent Alt+BackSpace behaviorAlive 4ever1-0/+1
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>
2016-06-03Use XftFontMatch in place of FcFontMatch.Christoph Lohmann1-4/+1
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
2016-06-03delete clipboard properties after pasting themv4hn1-2/+1
https://tronche.com/gui/x/icccm/sec-2.html#s-2.4 specifies: > Once all the data in the selection has been retrieved, > the requestor should delete the property in the SelectionNotify request Most Clipboard-Owners ignore whether or not the property is already set, so this is mostly a cosmetic change to keep the windows property list clean. However, at least synergy decides to wait for the requestor to delete the properties if they are already set by a previous paste (from synergy). Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-04-15Remove stupid assignation in memcpy()Roberto E. Vargas Caballero1-2/+2
2016-03-09st: Fix off-by-one error when calculating character width.Tor Andersson1-2/+2
LEN(str) is one larger than strlen(str) because it also counts the zero terminator. The original code would include the .notdef glyph (since it'll try to encode character 0, which gets encoded to the .notdef glyph) when measuring the average dimensions of printable ascii characters. This causes problems with fonts like GNU Unifont where the .notdef glyph is not the same width as the usual half-width characters. Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-03-08Fix vertical character alignment in some casesTon van den Heuvel1-1/+1
The y-position of a character found by asking fontconfig for a matching font does not take the border pixels into account, resulting in a slightly misaligned vertical position. Signed-off-by: Ton van den Heuvel <tonvandenheuvel@gmail.com> Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-03-08I like empty lines.Christoph Lohmann1-0/+1
2016-03-08Measure the single advance width with a heuristic methodRyusei Yamaguchi2-1/+15
This fix is needed to use dual-width fonts, which have double-width glyphs (e.g. CJK unified ideographs). Signed-off-by: Ryusei Yamaguchi <mandel59@gmail.com> Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-03-07xtermclear() is now done by xdrawglyphfontspecs()Christoph Lohmann1-13/+0
Thanks Ton van den Heuvel for the proposal!
2016-02-21arg.h: fixed argv checks orderLucas Gabriel Vuotto1-2/+2
This prevents accessing to a potentially out-of-bounds memory section. Signed-off-by: Lucas Gabriel Vuotto <l.vuotto92@gmail.com> Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-02-01Fix forgotten bracket and duplicate option in usage()Quentin Rameau1-6/+8
Scratch the preceding patch, this one is more correct (don't forget to 'git am --scissors' ;)) -- >8 -- Also reformat the strings in a saner layout Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-01-30Extract ttyresize() out of cresize()Quentin Rameau1-4/+4
This way we can call cresize() to set the terminal size before creating a tty or spawning a process, which will start with the correct size. Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-01-30Ok, no need for a separate version function.Christoph Lohmann1-8/+1
This is just redundant metadata. Please add Java comment meta classes too.
2016-01-30Add -n option for setting WM_CLASS instance nameQuentin Rameau2-15/+26
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-01-30Reformat usage and separate version from itQuentin Rameau2-29/+33
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-01-28Enforce a terminal size to reduce race conditions in too efficient apps.Christoph Lohmann1-0/+2
dvtm is too fast in starting up. It will then have a race condition in finding the right. terminal size.
2016-01-14Height is height.Christoph Lohmann1-1/+1
2016-01-01Bump year.Christoph Lohmann1-1/+1
2015-12-20Fixing the XClassHint setting in st.Christoph Lohmann1-1/+1
2015-11-21Avoid recursive call to ttywrite from ttyreadRoberto E. Vargas Caballero1-2/+2
Ttyread() calls to ttywrite, so if we check for reading before that for writing in ttywrite we can get a circular call sequence.
2015-11-08arg.h: remove unused macrosQuentin Rameau1-15/+0
ARGUM isn't used and ARGNUMF uses estrtol() that isn't defined anywhere. Those were probably copied from sbase arg.h. Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-06Introduce lim in all ttywrite() checks.Christoph Lohmann1-4/+4
2015-11-06Fix ttywrite()Roberto E. Vargas Caballero1-18/+20
ttywrite was assuming that if it could not write then it could read, but this is not necessarily true, there are some situations where you cannot read or write. The correct behaviour is to detect if you can read or/and write.
2015-11-01Now the mshortcuts are even more consistent.Ivan Tham1-5/+5
Keep everyone happy Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-31Now the Shortcuts are more consistent.Christoph Lohmann2-3/+3
Keep the debile happy.
2015-10-11fix bug where first selection snaps to linesJason Woofenden1-2/+3
2015-10-06Fix the cursor colors selectionQuentin Rameau1-3/+2
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-06Normalize the whole color selection in xdrawcursor.Christoph Lohmann1-11/+22
2015-10-06Fix the cursor color when over selection.Quentin Rameau1-1/+2
If we want to show a custom selected cursor color, we must not set the revert attribute to the drawn glyph. Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-05Make the cursor shapes more descriptive.Christoph Lohmann1-4/+4
»IBeam« is now »Bar« because it's named like that in the source code.
2015-10-05Snowman is everywhere.Christoph Lohmann2-0/+3
2015-10-05Style normalisation in the config.def.h.Christoph Lohmann1-8/+13
This adds an awareness commit for the big key array too.
2015-10-05The definition of the reverse cursor is now up to the user.Christoph Lohmann2-13/+6
2015-10-05Fixing the cursor movement in selections.Christoph Lohmann1-13/+31
Before the fix the cursor wouldn't obey if it's in a selection. If it is inside it will now change to the reverse. This patch also adds that the defaultcs will be reversed for the manually drawn cursors.
2015-10-05When the cursor is moved, clear the selection.Christoph Lohmann1-0/+1
2015-10-05Reverse the cursor on selection.Christoph Lohmann1-0/+3
2015-10-05More style changes. We forgot some switches.Christoph Lohmann1-33/+33
2015-10-05Small style change.Christoph Lohmann1-4/+4
2015-09-28There's no need for libXext to compile st.Christoph Lohmann1-1/+1
2015-09-25Fix extra bracketed paste markers when pasting >8kbdequis1-2/+2
Before this patch, when pasting over BUFSIZE (8192 bytes here), st would do the following: \e[200~...8192 bytes...\e[201~\e[200~...remaining bytes...\e[201~ With this patch, the start marker is only sent when the offset is 0 (at the beginning of selnotify) and the end marker is only sent when the remaining bytes to read are 0 (at the end). For short pastes, both conditions are true in the same iteration. For long pastes, it removes the extra markers in the middle, keeping the intended wrapping: \e[200~...8192 bytes......remaining bytes...\e[201~ Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-09-22dup() -> dup2()FRIGN1-2/+1
gcc would warn about an unused result. We know it is 0 and dup() can't fail in these circumstances, as we closed fd0 previously. Using dup2() to do the same saves one line and shuts gcc up, bringing us a clean build back.
2015-09-12The times of bad fonts are over.Christoph Lohmann1-1/+1
The antialiasing was false due to circumstances that do not exist anymore. We need antialiasing on big screens with big fonts. Autohinting too.
2015-09-10Fix copy of line with len = 0Roberto E. Vargas Caballero1-1/+4
When a line has no any character linelen is 0, so last = &term.line[y][MIN(lastx, linelen-1)] generated a pointer to the end of the previous line. The best thing we can do in this case is to add a newline, because we don't have a glyph to print (and consult its state of wrapping).
2015-09-08Change Pause to Break in shortcut for serial breakRoberto E. Vargas Caballero2-3/+5
2015-09-08Expose cursor shape in config.def.hJan Christoph Ebersbach2-1/+10
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-09-08Add key to send a break to the serial lineRoberto E. Vargas Caballero3-0/+13
2015-09-08Set default values of stty according to the man pageRoberto E. Vargas Caballero1-1/+1
This configuration is basically 38400 8N1, without echo and in raw mode. Kernel will not process any of the characters sent by the user.
2015-09-07Making st.1 more descriptive about -l and fix -l in st.c.Christoph Lohmann2-4/+19