Here how it looks like: https://imgur.com/a/uaMQvT6
Before, it was impossible to resize the splits
with the same size in case they were manually resized.
I have added a new button menu for doing so:
in View -> Split View -> Equal size to all views.
First I wanted to make this as a plugin,
but since I thought it could make splits a bit more useful,
I decided to merge it not as a plugin but internally.
GUI: Menu -> View -> Split View -> Equal size to all views
CHANGELOG: Added equal size to all split views.
Commit e2167eb0 restricted deactivating the word-wise/line-wise
selection mode to mouse presses with no modifiers. Since in
mouse-tracking mode, the Shift key has to be pressed to not pass mouse
events to the application running on the terminal, there was no way to
end word-wise/line-wise selection mode without sending a mouse event to
the application.
Modify the logic so ending word-wise/line-wise selection mode is done by
a LMB button press with no modifiers on non-mousetracking mode, and by a
LMB button press with only the Shift modifier on mousetracking mode.
BUG: 408048
KColorSchemeManager (from KConfigWidgets) was changed in 5.89 to handle
loading/saving the selected color scheme automatically if
KColorSchemeManager::setAutosaveChanges(true) is used (it auto saves by
default, but calling setAutosaveChanges(true) makes it easier to understand
the code).
However this is conditional on KConfigWidgets >= 5.93 because that's where
the KColorSchemeManager::createSchemeSelectionMenu() overload used here was
changed to load the previously saved color scheme.
Since KColorSchemeManager uses "ColorScheme" as the config entry name,
migrate the old config entry when KF >= 5.93.
When you do a selection, characters jump. This s a lot worse if
you enable "Underline Files" as then characters are jumping all the
time.
Example of such characters are, icon chars from the result of `ls-deluxe` or
`exa`.
After 6667d96e broke scrolling, and apparently neither c9f77e52 nor MR
!413 where able to totally fix it for all use cases, applying the
restriction to cells only when sending mouse tracking events should fix
all remaining warts.
It does something, actually, so fix a bug in OSC 1337 state machine: we start the machine on the first character, so process the character immediately after starting the machine.
When selecting, the last line gets an added newline if the characters
returned from copyLineToStream() are less than the cells selected on that
last line.
A weird behaviour was that after running:
printf ' v\n'
printf '\e[KSELECT ME\n'
printf '\e[31m\e[Kselect me\n'
printf '\e[0m ^\n'
selecting "SELECT ME " would add a newline, while
selecting "select me " would not add a newline.
This is a side-effect of clearImage() resizing lines which end with
spaces with the default rendition, so selecting the "SELECT ME" line
would get a count of 9 characters, which would make selecting more than
the initial 9 characters add a newline, while the "select me" line would
have additional spaces with isRealCharacter == false and a non-default
rendition.
Solve it but making copyLineToStream() not count and not pass to
PlainTextDecoder trailing characters where isRealCharacter == false.
Otherwise, weirdness ensues. e.g. if you do:
seq 1 $((LINES)); printf '\e[31m\ec'
and try to select the blank lines, the selection shows the previous
rendition color.
Commit c3b3ef19 introduced a regression when invoking the
clear-history-and-reset action. While RIS (Reset to Initial State) is
specified in DEC STD-070 as homing the cursor, konsole has grown some
hacks in the name of usability to preserve the command prompt line.
For a long time, it has sent two SIGWINCH with changed sizes after clear
and reset actions to force the shell to redraw the prompt (see d346a2cc,
temporarily disabled on 5d61b69e and re-added on 82778e87), which works
for bash, zsh, ksh, ...
tcsh doesn't redraw its prompt on SIGWINCH, but commit b8e96bcd modified
Screen::refresh() so instead of clearing the entire screen and homing
the cursor, it scrolled up everything but the last (usually the prompt)
line.
So, keep that last hack when called from clear-history-and-reset, and
behave as specified on DEC STD-070 otherwise.
Note that other ways of clearing the screen don't need hacks, e.g.
Ctrl-L, if handled at all, is handled by the shell, which then redraws
its prompt. Calling "clear" or invoking "printf '\ec'" will result in
the shell redrawing its prompt in the usual way.
BUG: 453568
When using konsoleprofile multiple settings can be specified separated by
semicolons. The usage output and documenting comments now reflect this.
Also fixes the link to Profile.h.