summaryrefslogtreecommitdiffstats
path: root/konsole/doc/Konsole2.Requirements
diff options
context:
space:
mode:
Diffstat (limited to 'konsole/doc/Konsole2.Requirements')
-rw-r--r--konsole/doc/Konsole2.Requirements141
1 files changed, 141 insertions, 0 deletions
diff --git a/konsole/doc/Konsole2.Requirements b/konsole/doc/Konsole2.Requirements
new file mode 100644
index 000000000..19cbd72fc
--- /dev/null
+++ b/konsole/doc/Konsole2.Requirements
@@ -0,0 +1,141 @@
+[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).