Age | Commit message (Collapse) | Author |
|
|
|
Ttyread() calls to ttywrite, so if we check for reading before
that for writing in ttywrite we can get a circular call sequence.
|
|
|
|
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.
|
|
Keep everyone happy
Signed-off-by: Christoph Lohmann <20h@r-36.net>
|
|
Keep the debile happy.
|
|
|
|
Signed-off-by: Christoph Lohmann <20h@r-36.net>
|
|
|
|
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>
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
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>
|
|
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.
|
|
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).
|
|
Signed-off-by: Christoph Lohmann <20h@r-36.net>
|
|
|
|
|
|
For completeness and documentation add all C1 control codes.
|
|
|
|
|
|
wcwidth() returns -1 for all the non visible characters, but it doesn't
necessarilly mean that they are incorrect. It only means that they are not
printable.
|
|
|
|
|
|
|
|
A little fix in xwrite().
>From 3727d2e3344b57128ab51c7839795204f1f839ff Mon Sep 17 00:00:00 2001
From: Quentin Rameau <quinq@fifth.space>
Date: Fri, 24 Jul 2015 11:40:46 +0200
Subject: [PATCH] Fix type for write(2) return variable.
The allocated lengh of s fits into an integer so we can safely use
ssize_t here.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This is needed so big input like a paste of several megabyte does not clog our
I/O.
|
|
|
|
and add a space between the keyword and the parentheses.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
|
|
Put the opening brace on a new line. This was already used for some
functions inside st.c.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
|
|
This practice proved itself in sbase, ubase and a couple of other
projects.
Also remove the True and False defined in X11 and FcTrue and FcFalse
defined in Fontconfig.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
|
|
Any system having different assignments than the usual 0, 1, 2 for
the standard file numbers and 0, 1 for the exit-statuses is broken
beyond repair.
Let's keep it simple and just use the numbers, no reason to fall
out of the window here and bend down for POSIX.
In one occasion, the ret-variable was not necessary. The check was
rewritten.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
|
|
This reverts commit d2937b05aed9cee8d6651cd806d31682a853c773.
|
|
|
|
This reverts commit 7ab6c92e18d468968811256e808b02309c160a22.
We need 32 bits for real color support.
|
|
For a higher usefulness of the utf8strchr function, the index of the
UTF-8 character could be returned in addition with a Rune instead of a
char*. Since utf8strchr is currently only used by ISDELIM I didn't
bother to increase the complexity.
|
|
|
|
Otherwise a tangling bmotion event will consider
the selection still valid and selnormalize segfaults
because of an invalid sel.ob.y index.
|