====== 提示与技巧 ======
此页面包含了 Xfce 桌面环境的多种技巧。
===== 自定义面板时钟插件字体 =====
你可以用[[http://library.gnome.org/devel/pango/unstable/PangoMarkupFormat.html|Pango 标记]]来自定义面板时钟插件的字体。切换到到自定义格式(只在数字式布局时能用)并在格式字符串中使用标记标签。
例如:
* ''%R''
* ''%R''
===== 性能提示 =====
让我们面对它吧:使用 Xfce 的原因之一是性能。它更轻量,在几乎所所件硬件平台比 Gnome 反应更灵敏,尤其是在较少的内存和处理器能力的机器上。
==== 字体 ====
字体对 GUI 性能有**极大**影响。全部打开字体平滑,微调和渲染,你会注意菜单对话框出现时有明显的延迟。当你把这些全部关闭,出现要快(实际上是敏捷)**很多**。
关掉这这些微调/抗锯齿唯一的问题就是,字体会显示得很丑。在 LCD 的笔记本电脑上,我建议使用 "Kochi Gothic" 字体的9号或者更大号。"Helvetica" 9号或者 "Luxi Sans" 也看起来很清晰。"Verdana" 9号以上,及只打开抗锯齿(不打开微调,亚像素渲染)
看起来非常光滑,只是可能看起了有点粗。也欢迎推荐其他字体。
我在 CRT 显示器上使用 Fixed 字体(12号+),感觉效果很好。很容易看清不用开抗锯齿。看起为不错并且跑得快。
==== 背景颜色 ====
我经常使用 vncserver 远程连接,我总是感觉很慢,反应迟钝,特别是关闭程序窗口的时候。比如,关闭 Firefox 的时候,需要30到60 秒钟才能完成,在这期间,系统完全没有反应。
我修改了我的背景为纯白色,现在的所有程序(包括 Firefox )1到2秒内就可以关闭了。
右击桌面,选择”设置“,然后”桌面设置“。请确保”显示图像“是未选中的。并设置”颜色风格“为”纯色”,然后设置第一个颜色为白色(#FFFFFF)。
另外一个选择,对一些软件可能有用,那就是查看你用来远程连接的程序的设置选项,如果有”去掉墙纸“或者”不显示墙纸“的选项,那就打开这个选项。我用的是 TightVNCviewer,它没有”去掉墙纸“的选项,所以修改背景颜色是我的唯一的解决办法。
===== 如何使用 GNOME 菜单 =====
如果你想使用 GNOME 的新菜单, 比如用快速启动的喜欢的应用之类的话,你可以使用的 [[http://goodies.xfce.org/projects/panel-plugins/xfce4-xfapplet-plugin|xfapplet 面板插件]] 添加 GNOME 主菜单小程序。这个菜单您可以用你的包管理系统安装,查找 **gnome-main-menu**。 [[http://wirelessimage4.pbwiki.com/f/Screenshot.png|Xfce的截图]],[[http://www.novell.com/video/desktop/|视频]]。
在您的面板上添加一个新 xfapplet 项,并打开其属性对话框添加GNOME 菜单的小程序。
如果你不喜欢GNOME主菜单,可以试一下Ubuntu系统面板,在几种发行上找得到。
另见:[[/zh-cn:howto:customize-menu|如何自定义 Xfce 4.5 +菜单]]
===== gtkrc 文件 =====
* 在[[http://live.gnome.org/GnomeArt/Tutorials/GtkThemes|这里]]有一个 gtkrc 文件格式的教程。
* Xfce也有一些应用有自定义的 gtkrc 设置:[[http://svn.xfce.org/svn/xfce/xfdesktop/branches/xfce_4_4/README|xfdesktop]] 和 [[http://thunar.xfce.org/pwiki/documentation/advanced_settings|Thunar]] (参看: [[http://thunar.xfce.org/pwiki/documentation/faq#how_do_i_assign_different_keyboard_shortcuts|可编辑的快捷键]]).
* 你不能定义 Thunar 图标/列表视图模式下的自定义背景,这是因为 GTK+ 本身的缺陷。
* 你可以像这样定义自定义的面板背景:
# ~/.gtkrc-2.0
style "panel-background" {
bg_pixmap[NORMAL] = "foo.bar"
bg_pixmap[PRELIGHT] = "foo.bar"
bg_pixmap[ACTIVE] = "foo.bar"
bg_pixmap[SELECTED] = "foo.bar"
bg_pixmap[INSENSITIVE] = "foo.bar"
}
style "panel-color" {
fg[NORMAL] = "#222222"
fg[ACTIVE] = "#111111"
bg[NORMAL] = "#edeff2"
bg[PRELIGHT] = "#3d6eab"
bg[ACTIVE] = "#3d6eab"
}
widget_class "*Panel*" style "panel-background"
widget "*PanelWidget*" style "panel-color"
widget "*PanelApplet*" style "panel-color"
widget "*Panel*" style "panel-color"
widget_class "*Panel*" style "panel-color"
class "*Panel*" style "panel-color"
class "*Tray*" style "panel-color"
class "*tray*" style "panel-color"
* 参考下论坛的这些贴子: http://forum.xfce.org/viewtopic.php?id=6169 和 http://forum.xfce.org/viewtopic.php?id=6196
===== 如何删除和添加系统菜单中应用程序 =====
=== 添加应用程序 ===
你必须为你想要添加的应用程序创建一个 .desktop 文件(通常创建在下列位置中, ''/usr/share/applications'' 对整个系统有效, ''~/.local/share/applications'' 对你自己有效)。
在下面的例子中,我们在 “多媒体” 菜单中创建了一个名为 “foo” 的子菜单:
[Desktop Entry]
Encoding=UTF-8
Name=foo
GenericName=bar
Comment=Senseless program ever
Exec=foobar
Icon=/usr/share/pixmaps/foobar.xpm
Terminal=false
Type=Application
Categories=Multimedia;
你可以在 [[http://standards.freedesktop.org/desktop-entry-spec/latest/|这里]]阅读更多的关于 .desktop 文件的内容。
libexo 提供了好几个实用工具,其中有一个可以以图形方式处理 desktop 文件: **exo-desktop-item-edit**。 你可以用它创建一个新的 .desktop 文件,用命令 ''exo-desktop-item-edit --create-new'' ;-)
=== 删除应用程序 ===
你有两种方法:
* 第一种,并且也是更简单的一种就是直接删除 ''/usr/share/applications/'' 文件夹中的.desktop 文件,但这样你们丢失 mime 数据(文件关联)。
* 第二种,添加这一行到 .desktop 文件中:
NoDisplay=true
=====怎样自定义 Xfce 启动=====
像大多数 UNIX 终端会话一样,Xfce 在启动时会执行用户自定义的启动文件。你可以通过修改这个初始化文件来执行你自己的脚本,给 GUI 发送界面环境变量等。
请像这样编辑 xinitrc 文件,添加你自己的启动代码:
* 复制 /etc/xdg/xfce4/xinitrc 到 ~/.config/xfce4/
* 添加你自己的代码到这个文件。例如,你可以启动 rxvt-unicode 服务器:
* source $HOME/.bashrc
* # start rxvt-unicode server
* urxvtd -q -o -f
你可以从这了解更多关于 xinitrc 的内容 [[http://www.google.com.au/search?q=xinitrc&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:unofficial&client=firefox-a | 很多不同的网站]]。
==== Starting with showing the Root Window ====
- xfdesktop --quit
- save your session
===== 使用桌面空白边 =====
用“设置管理器”(**设置管理器 > 工作区和空白边 > 空白边**)设置桌面空白边。
桌面空白边用来限制最大化的窗口的大小。这有助于避免鼠标移动到屏幕边上时意外地切换工作区。
如果你只有一个 Xfce 面板,空白边也有很有用: 空白边区域留出一个清晰的空白,用于调出“应用程序”菜单或者“工作区”菜单。默认的,在桌面(空白边)上右击显示 Xfce 菜单,中键(或者左键+右键)点击显示工作区菜单。
空白边的大小以像素为单位,所以在比较新近的显示器上,以分辨率1680 x 1050为例, ‘10’ 会留出大约 1/8 英寸(0.3175厘米)的空白。注意,已经打开的窗口在最小化再还原后才会生效。另外还要注意,这只应用于最大化的窗口 —— 你可以手工地改变窗口的大小到屏幕边缘。
===== 处理 ACPI 电源按钮事件,显示 Xfce 注销选项 =====
如果你想在你按下电源按钮时显示注销菜单,并且你的机器支持 ACPI,那就按下面的步骤做吧:
==== 解决方案 1 ====
* ''/etc/acpi/events/powerbtn''
# /etc/acpi/events/powerbtn
# 当用户按下电源按钮时这文件会被调用并且调用
# /etc/acpi/powerbtn.sh 作进一步处理。
# 你也可以用 %e 这个占位符来把整个内核事件消息传给你指定的程序。
# 我们需要对 "button power.*" 和 "button/power.*" 都作出反应,
# 因为内核做了改动。
event=button[ /]power
action=/usr/local/sbin/xfce4-shutdown-as-user.sh
* ''/usr/local/sbin/xfce4-shutdown-as-user.sh''
#!/bin/sh
# xfce4-shutdown-as-user.sh
#
# 检查当前有多少用户登录了 X。如果只有一个用户登录,
# 就执行脚本设置环境来调用 xfce4-session-logout。
LOGGED_IN_USER=`ls -trl /tmp/.ICE-unix/ | tail -n -1 | cut -d' ' -f3`
NUM_X_USERS=`echo $LOGGED_IN_USER | wc -l`
if [ $NUM_X_USERS -eq 1 ]; then
sudo -H -u $LOGGED_IN_USER /usr/local/sbin/xfce4-user-session-shutdown.sh
fi
* ''/usr/local/sbin/xfce4-user-session-shutdown.sh''
#!/bin/sh
# xfce4-user-session-shutdown.sh
#
# 设置环境变量,使 DISPLAY 和 SESSION_MANAGER 为有效的,
# 并且可以执行 xfce4-session-logout
HOST=`hostname`
SESSION_ID=`ls -t /tmp/.ICE-unix/ | head -n1`
# 注意,发行版们的 SESSION_MANAGER 变量使用不同的语法(这时用的是 Debian 格式)
# 如果这个不能用,请试着修改为类似于
# SESSION_MANAGER="local/$HOST:@/tmp/.ICE-unix/$SESSION_ID" 这样的。
# 通过在 X 会话中查看 SESSION_MANAGER 的值,你总可以找到你的发行版的正确的格式
DISPLAY=:0 SESSION_MANAGER="local/$HOST:/tmp/.ICE-unix/$SESSION_ID" /usr/bin/xfce4-session-logout
* 让这些脚本可执行 :
chmod +x /usr/local/sbin/xfce4-user-session-shutdown.sh /usr/local/sbin/xfce4-shutdown-as-user.sh
==== 解决方案 2 ====
* 打开“设置管理器”(或者用命令:xfce4-settings-manager)
* 打开“电源管理器”
* 一般设置:设置//按下电源按钮时//为//询问//
* 关闭“电源管理器”
* 如果您安装有 ACPI 脚本,从 **/etc/acpi/events/** 停用或更新电源按钮脚本, 修改 //action// 字段的值为 ///bin/true//:
event=button/power.*
#action=/usr/lib/acpid/power_button
action=/bin/true
===== 使用助记符创建 Thunar 自定义动作 =====
当你创建一个 [[http://thunar.xfce.org/pwiki/documentation/custom_actions|自定义动作]] 时,你可以设置一个字母前面带 “_”(下划线)的名字,这个字母作为助记符。当你在 Thunar 中点击右键时你可以按这个字母来访问你的自定义动作。
=====通过 xfrun4 打开用户手册页=====
使用 '#' 作为在 xfrun4 中打开一个用户手册页的快捷方式。例如,#man
===== 使用 xfrun4/应用程序查找器 做数学运算 =====
* 能干嘛: 在xfrun4/应用程序查找器 中,输入简单的数学运算式子,比如 5+5 或 (5+5)/3 或 .5*10, 运算结果将显示在桌面通知中.
* 需要有此命令: notify-send
* 在您的家目录,保存此脚本为 bcme.sh :
#!/bin/sh
precision=2 # number of digit for floating value
notify_time=20000 # number of milisecond the notification show
res=`echo "scale=$precision;$@" | bc`
notify-send -t $notify_time "$res" "=$@"
*在应用程序查找器添加自定义动作 :
* 类型 : 正则表达式
* 类型 : ^([0-9]|\(|\.).*
* 命令 : /bin/sh ~/bcme.sh \0
* (勾选) 在命令历史中保存匹配的
====== Xfconf =====
===== Toggle panel autohide =====
Short Bash script to toggle the autohide property of a panel, so you can bind for example a keyboard shortcut to quickly show and hide a panel.
#!/bin/sh
test -z "$1" && echo missing panel id && exit 1
test ! -z "`echo $1 | sed s/[0-9]*//g`" && echo bad panel id && exit 1
CHANNEL=xfce4-panel
PANELID=$1
PROP=/panels/panel-$PANELID/autohide
if `xfconf-query -c $CHANNEL -p $PROP >/dev/null 2>&1`; then
xfconf-query -c $CHANNEL -T -p $PROP
else
xfconf-query -c $CHANNEL -n -p $PROP -t bool -s false
fi