Age | Commit message (Collapse) | Author |
|
|
|
A little annoying to make it a "chord" like this, but C-v is already
used for scrolling, following Emacs-style key bindings (in order
to have a way to scroll without using "special" keys like the arrows
and page up/down), and C-z is at least already in the business of
inserting control characters. This makes it possible to manually
enter some things that are otherwise only possible with /exec printf.
|
|
Third time's the charm?
|
|
|
|
With the early return, mainUpdate doesn't get called in cases where
other functions expect windowShow to call it, such as when closing
or moving windows.
|
|
I don't know why I ruled this out originally, it's more visually
pleasing to me now especially that threshold is likely to remain
set at "+" for a long time.
|
|
|
|
This allows for non-ASCII characters in timestamps, and simplifies
things by including the trailing space in the width.
|
|
This respects the user's locale settings.
|
|
|
|
|
|
Finally! Changing the message visibility threshold doesn't totally
screw up scroll position. Neither do horizontal resizes, but vertical
resizes drift because the value of windowTop() changes before and
after...
The scroll position is anchored to the top of the window. It's
arbitrary whether to anchor the top or the bottom, but other scrolling
commands like M-p and C-r are anchored to the top, so this is
consistent.
|
|
|
|
|
|
catgirl shouldn't try to execute a command if it is misconfigured
with both restrict and notify.
|
|
|
|
No idea why I made that more complicated than it had to be looping
backwards.
|
|
|
|
Oops, forgot about these.
|
|
So they're not hidden by M-+.
|
|
|
|
So that pressing M-- repeatedly maintains the previous behavior.
|
|
|
|
|
|
Split UI initialization into two steps either side of the call to
connect, so that C-c works as interrupt while it's blocked.
|
|
|
|
getyx is so annoying this way.
|
|
This fixes the inconsistent M-u behaviour when catgirl is restarting and
reconnecting to pounce, for example.
|
|
It only used to use different code to avoid adding the blank line to the
soft buffer.
|
|
|
|
|
|
|
|
|
|
Otherwise the zero timestamps totally break save data loading! Bad!
|
|
This restores normal scrolling behaviour.
|
|
Scrolling is still affected by hidden lines (which I'm not sure yet is
good or not), so for M-u to work it needs to count ignored lines.
|
|
So they can be preserved forever!
|
|
|
|
|
|
|
|
Otherwise artefects can appear when resizing to smaller width with wide
characters at the right edge of the window.
|
|
Never split a codepoint, don't set wrapping point unless we're not
already wrapping, wrap on any unicode whitespace, only clear rest of
line if still on the same line...
|
|
Still missing: split scrolling and preserving a blank on reflow either
from resize or ignore toggling.
Anecdata: on one of my instances of catgirl, RAM usage of the previous
release was ~30M, RAM usage of this commit was ~12M.
|
|
Not sure why I had named them this way. Hard means hard-wrapped.
|
|
In preparation for doing line wrapping outside of ncurses.
|
|
|
|
LibreSSL is "a modified version of that library".
|
|
Also the old catf would be broken with -DNDEBUG oops!
|
|
For some reason gcc thinks that numWarm might be used uninitialized.
It's fine with numHot though, strangely.
|
|
|