<font size="4"><font face="georgia,serif">Hello,<br></font></font><br><div class="gmail_quote">On Thu, May 24, 2012 at 9:40 AM, Jekyll Wu <span dir="ltr"><<a href="mailto:adaptee@gmail.com" target="_blank">adaptee@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi:<br>
<br>
Now that KDE SC 4.9 is feature frozen, I think it is a good chance to discuss the future of Konsole.<br>
<br>
At the moment we have 66 bugs + 119 wishes for Konsole on BKO.  That number looks acceptable from my perspective, especially when taking into consideration what that number was one year ago . So although fixing bug and reimplementing lost feature are still of high priority, I feel there is enough room for considering the road map problem.<br>

</blockquote><div> </div><div>Thanks again for all your work on Konsole.  It is much better shape now thanks mostly to you.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<br>
Don't get me wrong. I'm not suggesting to make big change like the KDE3 to KDE4 rewriting. I just feel a bit lost when considering the question of "What should we do in 4.10 and later versions?" in my head.<br>


<br>
Topic 1: The split view<br>
<br>
Well, I have to admit I'm also confused by its model and semantic at first sight.<br>
<br>
Its essential semantic is 'splitting the area for two views', not 'splitting the area for two sessions'. With the help of tabbar, it can provide the equivalence of the latter. But the user experience is definitely not as natural.<br>


<br>
Another problem is the current implementation of that model still does not support recursive splitting. That is mainly a implementation problem, not a design problem. However, even if correctly implemented, the result would not be very pleasant, since there will be multiple tabbars scattered around, which is not only confusing and ugly, but also takes too much space.<br>


<br>
Although I haven't made any survey, I'm quite sure what most users want is the split feature provide by tmux, yakuake, and terminator: 'split the area for two different sessions' .<br>
<br>
I suggest adopting terminator's model of tab and splitting. Each Tab is corresponding to one main view, and each main view supports recursive splitting. And the essential semantic of splitting is 'for two different sessions', although I think it should be possible to also support the current semantic of 'for two views of the same session'.<br>


<br>
Another advantage of that model  of tab and splitting is that it makes it easier to support navigating utility other than tabbar. That would be covered in next topic.<br>
<br></blockquote><div> </div><div>I personally have never like the "split" in Konsole.  Mainly due to the number of bugs and complexity it added to the code.  I would prefer people use apps such as tmux.   I do agree that the model should be changed to what you have above.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Topic 2: The tabbar<br>
<br>
There are some limitation when using tabbar.<br>
<br>
  * Qt currently only has nice support for horizontal tabbar. Qt does support vertical tabbar, but the text on each tab is laid vertically, which makes its basically unusable.<br>
<br>
  * horizontal tabbar can be easily filled when user open 20+ tabs.<br>
<br>
  * It is hard for tabbar to support organizing related tabs into one unit.<br>
<br>
  * It is hard for tabbar to support tab filtering<br>
<br>
It might be a good idea to use a treeview based sidebar for organizing and navigating tabs.  That idea is inspired by how konversation and quassel organize networks and channels. The benefit of using a treeview based sidebar:<br>


<br>
  * It allows users to select and organize related items into one subtree<br>
<br>
  * It allows users to drag item between different subtrees.<br>
<br>
  * It allows users to type some text to filter the items<br>
<br>
  * It allow users to see more items at the same time than using tabbar<br>
<br>
  * it should be able to support most tabbar features, like changing item icons after detecting activity/silence, changing text color, context menu, etc.<br>
<br>
  That's just my rough thoughts and imagination. But I already feels that tabbar is so limited :) Of course, I'm just proposing adding treeview-based sidebar as alternative navigating method, not removing tabbar.<br>

</blockquote><div> </div><div>Yes, this has been asked for and Robert originally coded the (KDE 4.0) classes so this would be possible.  You're free to give it a shot.  The tab title spacing has been a thorny issue and I'm not sure it is adequate now.  Also, the ordering and sub-folders of tabs and profiles have been asked for a long time.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
Topic 3 : provide scripting support<br>
<br>
Some features can be moved out of the core code and rewritten in scripts. One typical example is the (regex-based) URL recognition. It may not be a good idea to add support for "apt://" URI schema in the core code, but it should be easy and fine for debian developers to write a extension for "apt://" URI schema if we provide good scripting support.<br>


<br>
<br>
Topic 4: Move the core emulation code into its own library<br>
<br>
Well, although I feel most vte-based emulators are just toys and hardly as useful as konsole and yakuake, there are many vte-based emulators but few Qt emulators. Clearly, vte makes an important difference. Yes, there is qtermwidget(modified from old konsole code), which is basically what I am proposing, but I don't think it is actively maintained or can satisfy the need of konsole.<br>

</blockquote><div><br></div><div>A long time ago I pondered why Konsole doesn't use its own kpart.  If I recall, Robert didn't care for that.  If it did, the kpart would always be up to date.</div><div> </div><div>

Other things I think need done:</div><div>1. Redo the entire manage profile dialog and code.</div><div>2. Perhaps combine the Settings, manage profile and profile into 1 dialog.</div><div>3. I've always dislike the bookmark dialog - redesign it to be specify to Konsole</div>

<div>4. What's your thoughts on adding a toolbar?</div><div><br></div><div>Kurt</div><div> </div></div>