预览 KDE 4.8 中的 konsole

adaptee | 2011/09/13

首先介绍下konsole目前的开发情况。

KDE4 konsole 除了保留了一小部分核心代码外,大部分代码是由 Robert Knight 重写的。遗憾的是,Robert这两年来已经停止了在konsole上的开发活动,维护者近来已经正式换成 Kurt Hindenbug(KDE3 konsole的主要作者)。在下两个月前向konsole贡献了第一个patch,目前一边熟悉代码一边修改/实现简单的bug/feature。总的来说,由于人力不足,konsole目前没有大的开发动作,小修小补而已。

尽管如此,4.8中的konsole 修复了不少bug,也加入了一些feature。下面介绍一些我觉得比较重要或有用的变化。

先插一句,经过最近一度时间的bug fixing 和bug triaging(关掉了很多重复或无关/无用的report) , 目前bugzilla上konsole的状态是 171 bugs + 131 wishes。虽然我认为这个数字还是有点高,但是比起几个月前 400 bugs + 200 wishes 的情况,还是改善了不少。

169054 用户现在可以控制当窗口大小变化时,是否提示当前的终端尺寸(个人觉得这个提示有点烦人, 尤其是搜索历史的时候)。

157882 支持将终端背景设定为选中的图像;这个特性还有待改进,例如不支持缩放,不支持控制图片的透明度,这点gnome-terminal目前做的更好

276872 用户可以控制新创建的标签的放置位置:末尾(默认和原有行为),或是当前标签的后面(在下建议并实现); 尚未提交

274501 “编辑配置对话框”里的”应用”按钮只在用户有未保存的修改时才可用,减少了用户的困惑

272239 增加了颜色方案 : solarized(http://ethanschoonover.com/solarized)

管理配置对话框中,当用户没有足够的权限删除选中的profile时(例如’Shell’这个konsole自带的profile),禁用删除按钮

167294 现在可以在”管理配置方案”对话框里直接为profile改名了,双击第一列的名字即可

281375 解决了在”管理配置对话框”内按下 Ctrl+A 导致konsole崩溃的问题,现在可以用 Ctrl+A 选中所有profiles.

219023 支持源于某些非KDE FileManager的拖拽动作,例如thunar和pcmanfm 160583 为拖拽动作恢复了KDE3 时代的 popup menu

228130 重命名标签对话框内,控制序列和其含义现在并排显示,减少了用户对其对应关系的困惑。

203768 “复制”操作,在没有文本被选中的情况下被禁用。这减少了针对URl打开context menu时用户可能产生的困惑。

204741 “清除回滚”和”清除回滚并重置”操作,在运行vim,less,mc等程序时会被禁用,因为没有意义且影响这些应用

199990 添加了用于选择全部历史的’Select All’操作(尚未提交)

136730 使用 “Ctrl+鼠标左键” 选择并复制多行文本时,仿照vim中’J’的方式将多行合并为一行(合并时在行之间加入一个空格)

96536 改善了对unicode的支持,能够正确处理 decomposition. 这个bug的修复对于各种字母文字的用户(欧洲、阿拉伯、南亚)比较有意义,对中文用户意义不大。

221726 正确的实现”监视以非零状态结束的会话”这一特性;目前的实现弄反了,会话正常结束时会错误的触发通知。

38390 45950 添加了跳到历史头部和尾部的快捷键:Shift+Home/End(这是在default.keytab里定义的,所以在shortcut dialog里是找不到的)

176902 确保终端程序(shell,vim,etc)启动时能获得正确的终端尺寸。这是个历史悠久且相当出名的bug;提交的patch虽然既不优雅也不完美,但是绝大部分情况下都解决了这个bug

236733 消除了使用ibus时切换tab导致视图自动滚动到底部的问题

197345 238973 改善了书签对ssh命令的支持: 1). 若用户以’ssh -l user host’的形式连接远程主机,保存书签时现在能够保存用户名 2). 若用户以’ssh -p port …’ 的形式连接远程主机,保存书签时现在能够保存端口号

233377 解决了某些情况下在标签栏上利用鼠标滚轮切换标签会导致konsole崩溃的问题

其它细微的改动:

KPart 添加了 monitor activity/silence 的支持,这样 yakuake 用户在下一个版本就可以使用该功能了。实际上这个支持就是由yakuake的开发者添加的。

279863 确保konsole自带的’Shell’这个profile总是启动$SHELL,而不受当前默认profile的影响

188941 默认设置中去除了切换标签的alternative shortcut,因为和mc存在冲突

207213 使用split view时,所有的container都应一致的显示/隐藏 new & close 按钮

为环境编辑对话框添加了tootip,提示用户每行只能有一个变量定义。

    Tags: ,

    16 FEEDBACKS

    1. 心之所在

      那个,如果只有bash,新建标签能不能不要弄个子菜单,比较多此一举。

    2. 这个字体是方正准圆么?

    3. tmk

      感谢。改善很多。希望kde各个组建都能保持活力。

    4. adaptee

      @心之所在

      嗯,有人也这么觉得 https://bugs.kde.org/show_bug.cgi?id=245478

      我个人觉得他说的挺对,不过这个问题优先级比较低(大部分konsole用户都偏好键盘快捷键吧),而且今后profile的管理可能有大的变动(比如分组),所以暂时就这样吧

    5. adaptee

      @自由帽 算是吧;用的网友弄的合成字体,DejaVu Sans YuanTi Mono

    6. BILLYKANE

      太好了,终于又看到这个popmenu了。无语凝咽,我还以为为了它要吟诗一首,家祭无忘告乃翁呢。

    7. tmk

      另外一个非常期待而且认为非常有用的功能是: 能不能在有vim等cli程序运行在后台运行(比如被挂起)或有子shell运行的情况下,如果用户关闭konsole窗口弹出提示? 当任务较多时有时总是忘了这些任务,结果导致结果丢失……

    8. @tmk 其实有这个功能……但经常不管用。

    9. adaptee

      @tmk 如果shell中有前台进程(vim,less,mc),通过菜单关闭这个标签的时候konsole会有提示的;至于后台进程,确实没这特性

      我还是建议尽量用’Ctrl+D’来结束shell吧,多数shell都有能力在退出前提示有后台进程

    10. tmk

      @adaptee 多谢。Ctrl+D有效,不过要习惯。。^..^

    11. jack

      粗体显示字体不再缺胳膊少腿了?

    12. adaptee

      @jack

      没,还是个挺头疼的问题;跟字体、Qt版本都有关系

      现在用上 Qt4.8beta 的用户,估计会发现字体显示的很怪异

    13. artofegg

      kde下面只用yakuake….

    14. @artofegg 都是konsolepart,一家人啦。yakuake其实也就是个konsole的外壳的,上面的修改yakuake也能受益的。

    15. 好仔细的介绍!感谢~

    16. Robin

      其实 Konsole 也是 KDE 的 killer app 之一,其它的X终端都相形见绌。希望能持续开发保持领先位置!!

      P.S. 第一次在 ikde 留言~

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    Note: Commenter is allowed to use '@User+blank' to automatically notify your reply to other commenter. e.g, if ABC is one of commenter of this post, then write '@ABC '(exclude ') will automatically send your comment to ABC. Using '@all ' to notify all previous commenters. Be sure that the value of User should exactly match with commenter's name (case sensitive).