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.
142 lines
4.2 KiB
142 lines
4.2 KiB
15 years ago
|
[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 then '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).
|