Archive:Projects/Plasma/FAQ (zh CN)

From KDE TechBase
Revision as of 00:24, 14 July 2008 by Nihui (talk | contribs) (update)


Projects/Plasma/FAQ


注意:本信息页介绍了 KDE 4.1 中的 Plasma。请参阅KDE 4.0 页面以获取旧版本信息。

介绍

Plasma 是 KDE 4 中一个关键技术 (被誉为 “KDE 的支柱”),是用户最直观的东西。由于 Plasma 不同于传统桌面的方式对待用户界面,可能会有关于 Plasma 是什么、它做些什么、以及如何进行常规任务的疑惑。

本文档将通过一些最常见问题的解答来试图理清这些问题。

常规问题

Plasma 是用来干什么的?

Plasma 是“主管”桌面界面的组件:桌面、面板(经常特指任务栏面板)、以及相关元素。然而,Plasma 不仅仅是这些通常部分至界面。“桌面”自最初拥有以来未曾改变很多:典型的桌面包括快捷方式、一个面板、以及当前运行的程序图标。Plasma 旨在改变这些,融入语义学程序元素,并在简化工作流程的同时以可视化的反应把协作技术带至用户的指尖。

目前的桌面技术有何问题?

现今的桌面是静态的。典型的,它们由能找到图标(程序启动器)的文件夹,或用户放置的文档和文件夹所束缚着。以图片和图像作为背景,目前的桌面就再也没什么进一步的工作方式了。Plasma 以不同于往常方式,通过创造动态和高度自定义的环境来迎合用户。

我觉得这不是个好主意……

有了 Plasma,你就能让你的桌面(和随同的支持元素)像它通常那样地表现。你可以有一个任务栏、一幅背景图像、快捷方式等等。然而,如果你愿意,你可以使用由 Plasma 提供的工具来增进你的桌面体验,让你的桌面依照你所想要和需要的那样呈现。

Plasma 是如何工作的?

Plasma 的组件是种叫做“Plasmoid”的部件。Plasmoids 具有各式各样的功能,从展现你的桌面和指定的墙纸、显示你的笔记本电池电量、显示你插入的设备到绘制任务栏:基本上,它们是生活在桌面上的小程序。Plasmoids 可以按组聚合在叫做“容器”的容器中。

这听起来不是很新……其它操作系统已经有了。

关键的不同在于 plasmoid 能够彼此相互间作用。你想要个较好的笔记本电池视图用来发现何时你电池电量偏低吗?你仅需将其从任务栏中拖出来放到桌面上。同样地,由于 Scalable Vector Graphics 可缩放矢量图像 (SVG) 的使用,小程序也能任意改变大小和旋转。正如你所见的那样,桌面不仅能与用户交互工作,而且能够以一种新颖有趣的方式与其自身交互。现在通过养眼并友好的方法,你便能控制你的工作区如何工作以及怎样显示。因为 Plasma 是其 plasmoid 的总和,每个元素,甚至桌面本身就是一个部件。这允许你任意移动你的桌面和窗口(向后和向前)。不再源于幕后而成为真正可交互的元素。

Kicker 和 Kdesktop 在 KDE 3 中工作得很好!你们为什么还要改动?

尤其考虑到 kicker,有个很重要的维护问题。自从 KDE 2 的时候代码就在那里了,而且在不破坏其它特性的情况下添加新的特性尤为困难。最终,为了向前达到那些特性,只能除旧而从新开始。

我没有找到我最喜欢的 <在此插入特性>!

别忘了,Plasma 仍然处于艰巨的开发中,而 KDE 3 是个精细优化打造过的代码库:花了七年时间达到这程度的,而 Plasma 还非常年轻。只要有时间,Plasma 开发人员就会计划重新引进缺失的特性并修复回归。就如 KDE 在 KDE4 周期中发展,Plasma 将会随之改善。

为什么你们最终决定改变桌面操作的方式?

桌面文件夹这个主意根本就是个坏主意。它假定了你访问的任何东西都属于你磁盘上的一个单纯的物理目录。这或许很方便,但同时它极大地限制了你能做的事情。例如,由于每件事物都要从这个目录里读取,无法能为不同的桌面使用自定义布局。同样地,如此经常性的像这样的桌面格局会变成一块乱放文件和文件夹的地方,而没有任何功能。

我听说 KDE 4.1 中的桌面上不再会有图标了...

不完全正确。你可以从 Dolphin 或者 K 菜单中拖动图标和启动器(快捷方式)到桌面上。更改的是桌面将不再会显示 Desktop 文件夹中的内容。 然而,你可以在你的桌面上展示任意数量的文件夹(本地或远程),而不是仅仅显示“Desktop”文件夹的内容。为了做到这点,我们引入了一个新的部件小程序:Folder View(文件夹视图)。

Folder View 文件夹视图 小程序是什么?

Folder View 文件夹视图 小程序,正如其名,是用来显示目录中的项目(文件夹、文件)的。这种目录可以是属于你计算机的本地目录,也可以是远程 FTP、SSH 或 SMB 共享文件。将来,它还会包含 Nepomuk 搜索和标记结果的虚拟目录。

你可以选择查看所有文件,也可以用过滤器来指定使用正则表达式(正在讨论对 KDE 后续版本使用基于类型的过滤方式)。

此小程序还支持基本的文件管理操作属性(例如移动、复制、剪切和粘贴),并且你可以在你桌面上放置任意数量的文件夹视图。

在 KDE 4.2 中,你还能够使用文件夹视图当成你的桌面,重现“旧样式”的桌面。

K 菜单是怎么解决的?太大太丑了!

在 KDE 4.0 的开发中,我们尝试了很多不同 K 菜单(程序启动器)的方式。有些项目,像 Raptor,雄心勃勃,却不可能准时完工。这个时候,一位开发者移植了 SUSE Linux 的程序启动器(Kickoff)至新的 KDE 构架中。由于它几近完工并且特性完整(未提及使用性的成果),所以就被选作默认菜单了。

如果你不喜欢它,还有个传统的 K 菜单可用。同时,一些可选的菜单系统也公布了(Lancelot,Raptor),但是在写这篇文章的时候,它们仍然在开发当中。

KRunner 是什么?

KRunner 是个万用的迷你命令行程序。你可以按下"Alt-F2"或者从桌面上下文菜单中选择"运行命令"激活它。它可以按照你的输入搜索应用程序、书签、甚至会话,显示系统活动甚至进行简单的算术计算。

KRunner 的功能可以通过使用插件("runners")进行扩展。

“腰果”是什么东西?

通常意义上的“腰果”就是你在默认桌面上可以找到的 Plasma 徽标,它在右上角,以及在面板的右边。通过点击它们,你可以访问其它的配置选项,比如面板配置和缩放用户界面(ZUI)。

其中一些,比如面板上的腰果,只有在部件没有锁定的时候才出现。(参见下文)。

请提供一个选项以禁用右上角的腰果。

虽然提供一个禁用桌面腰果的选项听起来很合理,但是从编写代码的角度来看,这样会带来不必要的复杂性而且会打破原设计。建议的是,因为桌面本身(一个容器)是由插件处理的,写一个可以绘制不带有腰果桌面的插件。目前,一些工作(“空桌面”插件)已经在 KDE SVN 中出现了。随着 KDE 4.2 能带来的容器切换类型特性,到那时候看到可选的桌面类型也并非不合理。

Zooming User Interface 缩放用户界面 (ZUI) 是什么?

Zooming User Interface 缩放用户界面,或称作 ZUI,是 Plasma 的又一个组件。它可以让用户一起聚合不同组的 plasmoid,并通过使用一种 缩放-移动 的方式快速地在两两之间切换。注意,尽管 KDE 4.1 中有了显著的改善,目前这个特性仍处于艰巨的开发进程中,可能只在今后的 KDE 4.x 发布的时候才具备完整功能。

ZUI 是如何工作的?

假定你有三组 plasmoid(比如部件、程序启动器等等),而你想要以你的方式以特定的连接来安排布局。你先根据你的口味聚合它们,然后你可以用放大(获得所有组的预览)在其之间切换,接着回到你想要使用的特定组上。注意,这有别于传统的 X11 虚拟桌面切换,因为通过使用这种方式有更高层次的灵活度,而且组与组间能完全独立。

配置

我可以在桌面上放置图标吗?

当然可以。从 Dolphin 或者 Konqueror 里拖出来就行了。注意,在桌面上拖放一个图标不会真实地在那里创建一个文件,而只是指向原文件的链接。

要显示你的 Desktop 文件夹或者其它文件夹的内容,请使用 Folder View 部件。

我有两个屏幕,而且我过去常把 kicker 同时放在两个显示上。那么用 Plasma 我怎么做呢?

不可以。原因是把一个面板跨越两个显示器显示会增加很多复杂性,尤其是当两个显示器拥有不同分辨率的时候。作为这种增加复杂性的结果,此特性不能保证在所有场合都能正常工作。所以,我们没有整合此特性。

如何向任务栏面板添加部件?

方法 1:在 Plasma 腰果(屏幕右上角)中打开 添加部件 对话框,然后选择你喜欢的部件把它直接拖到面板上(不要双击或使用 添加部件 按钮)。它应该能很完美地嵌入进去。如果没有,那么一定是部件本身有什么 bug 了。

方法 2:从桌面上拖动部件至面板。这里还有个简要的视频为你展示这个动作,就在Lydia Pintscher 的博客上。

我能从任务栏面板上移动部件吗?

就在 KDE 4.1 RC1 被标记之前,Plasma 中作出了更改以允许在面板上移动小程序部件。方法是:打开面板控制器(通过点击腰果或在面板上右键选择“面板设置”)并在小程序上悬停鼠标指针。它的形状会变成四个方向的指针,然后你就能如你所愿重新安排小程序了。

Lydia Pintscher 的博客里有一段视频展示了此移动操作Aikurn 的博客中也有一段。

如何更改面板的高度和尺寸?

点击面板上的腰果(面板最右边的小图标),然后点击并拖动,调整面板尺寸和位置直到符合你的习惯。再次点击这个腰果(或者红色的 X)即可关闭面板配置界面。

如何删除面板?

点击面板腰果,选择“删除此面板”。同样,你也可以在面板上右键点击来选择“删除此面板”。

我听说你们能在 Plasma 中使用 OS X 的部件。这是真的吗?

是的,Plasma 能够使用 OS X 的部件,但只有 HTML 的那些。

我的部件藏在窗口下面了。我怎样显示它们?

你可以通过按下 Ctrl-F12 来前端显现所有的部件,这会把 Plasma Dashboard 带到前端。

怎样才能锁定部件的位置?

方法 1:在桌面的空白处右键,然后在上下文菜单中选择“锁定部件”。如果你想要逆操作,再右键并选择“解锁部件”。如果你在面板上右键点击也能得到相同的选项。

方法 2:从右上角的 Plasma 腰果或面板控制器中选择“锁定部件”。

如何删除部件?

如果在面板上,在部件上右键并选择“删除此……”。如果在桌面上,你可以有多种选择:

  • 如果你在它们上方悬停鼠标,点击红色的 X 便可删除它们;
  • 如果你使用 添加部件 对话框,你可以点击部件名旁边的短横标志图标来删除。

如何添加/删除活动?

添加活动:通过点击桌面视图上的腰果(右上角的图标)并选择“缩小”来缩小你当前的桌面。再次在腰果上悬停鼠标将会出现一个新按钮,“添加活动”。点击它便可创建一个新的桌面视图。

删除活动:缩小你当前的桌面,确保它不是当前的活动(否则选择另一个),然后在你想要删除的活动上右键点击,选择适当的选项。

Plasma 有快捷键吗?

除了鼠标之外,还有一系列快捷键可用:

  • 添加部件:Ctrl-A
  • 锁定部件:Ctrl-L
  • 缩小:Ctrl- -
  • 放大:Ctrl- = 或 Ctrl-+
  • 下一个部件:Ctrl-N
  • 上一个部件:Ctrl-P
  • 添加活动:Shift-Ctrl-A
  • 下一个活动:Shift-Ctrl-N
  • 上一个活动:Shift-Ctrl-P
  • 部件设置:Ctrl-S
  • 容器设置:Shift-Ctrl-S
  • 删除部件:Ctrl-R

不幸的是,在 KDE 4.1 中不能对这些快捷键进行更改,但是预计安排在 KDE 4.2 中。

主题

我不喜欢任务栏面板和其它 Plasma 组件的默认样式。如何更改呢?

可以。Plasma 外观的修改功能自从开始以来就在计划中了。Plasma 可以使用“主题”来更改其外观,主题实际上是一组必要的 SVG 图像和指定颜色的文件。一些主题已经在诸如 kde-look.org 的流行网站上出现了。

是否有一个可用的 GUI 选项来更改主题?

是的。在你当前的桌面上右键点击,选择“桌面设置”,你就能在弹出的对话框中找到更改主题的选项。你还可以直接从那里下载新的主题。

手把手的教程(包含截图)可参见 Aikurn 的博客

故障解决

我的任务栏面板没有了,如何找回来?

kquitapp plasma; rm $KDEHOME/share/config/plasma-appletsrc; plasma

这会删除你的 plasma 设置,所以你将得到默认的配置效果。panel-vanishing-on-crash 问题已经在 4.0.0 的发布后修复了。 如果同时运行这 3 个命令不太管用,试试手动输入它们并在运行下一条命令前等待几秒钟。

有些 GTK+ 应用程序显示错误的系统托盘图标尺寸。

很不幸,这是 Freedesktop.org 系统托盘标准中的一个问题,它没有正确定义系统托盘图标的尺寸。

当我用 NVIDIA 闭源驱动时,Plasma 表现得极度缓慢。

这完全是 NVIDIA 的问题,由于他们的驱动没有正常支持 XRender X11 扩展,并且这个问题还会影响到 KDE 的其它部分,比如 Konsole。参见 此博客日志 以获得如何向 NVIDA 上游汇报问题。

词汇表

  • 容器:不同 plasmoid 的容器。桌面和面板就是这种容器。
  • 面板:K 菜单、任务栏、系统托盘以及其它组件放置的地方。经常叫做任务栏。
  • Plasmoid:一种 Plasma 的组件。经常特指部件,或者小程序。
  • 活动:一组有组织的部件和一个相关联的桌面视图。用户可以有任意数量的活动。

致谢

  • Daniel Laidig & Simon St.James - thanks for the umeet IRC logs!
  • Marco Martin - thanks for the information on panels!
  • Sebas - 感谢您让我们引用您博客日志的信息!

贡献人员