You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
141 lines
4.2 KiB
141 lines
4.2 KiB
[Konsole2.Requirements] |
|
|
|
The current state of konsole asks for a redesign. |
|
|
|
While lower level material, especially the emulation |
|
comes out to be very stable over the years, the upper |
|
level level shifts because of new uses and fulfilled |
|
wishes. |
|
|
|
These cannot be implemented by evolutionary modification |
|
but require complete redesign/rewrites. |
|
|
|
This file is to collect requirements and ideas for this. |
|
|
|
- Here are some candidates ----------------------------- |
|
|
|
- proper partification |
|
|
|
While konsole became a proper platform for terminal |
|
oriented working, fine integration with the desktop |
|
did not happen yet. |
|
|
|
- connection/disconnect session to/from individual windows |
|
|
|
- gui style configuration for $KDEDIR/share/apps/konsole/* |
|
|
|
- improved history algorithm |
|
|
|
Current history algorithm does not allow to limit the |
|
histories size. Also, it descreases the speed. |
|
|
|
- improve unicode support |
|
|
|
this is both an ncurses and terminfo issue. |
|
We may need to provide some help for these packages. |
|
|
|
- tty vs. fullscreen mode solution. |
|
|
|
The visual appearence of the problem is that information |
|
may get lost when the screen is resized. Likely, lines |
|
scrolled into the history could be unfolded. |
|
|
|
- systematic solution for the configuration issue. |
|
|
|
Konsole can be configured from many sources. |
|
Adding or changing configuration items needs |
|
to be localized. |
|
|
|
The compiled-in defaults should consistently |
|
be handled like the default.Keytab. |
|
|
|
- Multi session startup |
|
|
|
Having multible sessions in the beginning |
|
would be a nice option. |
|
|
|
- Event flow and class design. |
|
|
|
The Emulation::setConnect logic has severe flaws. |
|
The whole class design needs to be revisited in |
|
light of the session material that came in, too. |
|
Likely, cut&paste happily flows from the back |
|
through the chest right into the eye. |
|
|
|
- Improved integration of technical documentation. |
|
|
|
This is a freeware project and so, proper technical |
|
documentation is even more importent than in a |
|
commertial environment. |
|
|
|
- A more generic handling of different sorts of emulations. |
|
|
|
This means to fix a long term problem in mc(1) first, |
|
to allow using terminfo entries other than 'xterm'. |
|
|
|
We could use these then to weed out obsolete material |
|
and to make konsole having an ECMA compatible emulation |
|
by default. This would perhaps allow to pull the emulation |
|
straight again. |
|
|
|
... Check through wishlist and FIXME/Notes/PROJECTS |
|
|
|
-------------------------------------------------------- |
|
- copy of the earlier file PROJECTS -------------------- |
|
|
|
The state of konsole is that the lower level mechanics are very |
|
stable, while the overall program still shifts purpose. |
|
|
|
After a year or two of these shifts the upper levels ask for a |
|
redesign. This will come out to be konsole2. |
|
|
|
I'll start a Konsole2.requierements instead of this file. |
|
|
|
- current issues ------------------------------------------------- |
|
|
|
- add configuration for function keys. (allmost done) |
|
document broken keypad (It's a QT issue really) |
|
document VT100 keypad codes (doc/missing.keys) |
|
|
|
* configuration |
|
|
|
- codec selection unfinished. |
|
- command line options |
|
font, menu, scrollbar, schema, kdelnk, codec, keytrans, ... |
|
|
|
* improve/complete documentation |
|
|
|
- include README.* into doc. |
|
- explain configuration files |
|
|
|
|
|
|
|
* future stuff, perhaps ------------------------------------------ |
|
|
|
|
|
* stuff centered around resizing and text vs. matrix: |
|
|
|
[This needs a bit explaination] |
|
|
|
- make resizing more clever |
|
to see the issue, 'ls /dev', make window smaller |
|
and then larger again. |
|
- introduce the concept of "logical lines" for resizing and |
|
cut'n'paste. |
|
- selecting lines that wrap insert a '\n' in the middle of the |
|
line when pasting. A related problem occures with resizing. |
|
|
|
* write configuration utility for configuration files. |
|
(*.schema,*.kdelnk.*.keytab) |
|
|
|
- when manipulating binary files, sometimes one |
|
screws up ones terminal settings. xterm has |
|
a convenient 'hard reset' menu choice. |
|
|
|
- keep session open after client program termination. |
|
Useful for things like 'konsole -e ls'. |
|
|
|
- deflicker, setting all the attributes separately |
|
both when creating and changing to a session |
|
creates 3 setimage and 1 paint events. (This may |
|
have improved, lately).
|
|
|