Xfce Wiki

Sub domains
 

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
zh-cn:tips [2010/04/06 03:42] – removed hashimozh-cn:tips [2015/03/10 04:50] – [Do maths with xfrun4/appfinder] yjwork
Line 1: Line 1:
 +====== 提示与技巧 ======
  
 +此页面包含了 Xfce 桌面环境的多种技巧。
 +===== 自定义面板时钟插件字体 =====
 +
 +
 +你可以用[[http://library.gnome.org/devel/pango/unstable/PangoMarkupFormat.html|Pango  标记]]来自定义面板时钟插件的字体。切换到到自定义格式(只在数字式布局时能用)并在格式字符串中使用标记标签。
 +
 +例如:
 +  * ''<nowiki><span font_desc="URW Gothic L Book 18">%R</span></nowiki>''
 +  * ''<nowiki><span font_desc="bold 12">%R</span></nowiki>''
 +
 +===== 性能提示 =====
 +
 +让我们面对它吧:使用 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 文件,用命令 ''<nowiki>exo-desktop-item-edit --create-new</nowiki>'' ;-)
 +
 +=== 删除应用程序 ===
 +你有两种方法:
 +  * 第一种,并且也是更简单的一种就是直接删除 ''/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''
 +<file bash>
 +# /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
 +</file>
 +
 +  * ''/usr/local/sbin/xfce4-shutdown-as-user.sh''
 +<file bash>
 +#!/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
 +</file>
 +
 +  * ''/usr/local/sbin/xfce4-user-session-shutdown.sh''
 +  <file bash>
 +#!/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
 +  </file>
 +
 +   * 让这些脚本可执行 :
 +<code bash>
 +chmod +x /usr/local/sbin/xfce4-user-session-shutdown.sh /usr/local/sbin/xfce4-shutdown-as-user.sh
 +</code>
 +==== 解决方案 2 ====
 +   * 打开“设置管理器”(或者用命令:xfce4-settings-manager)
 +   * 打开“电源管理器”
 +   * 一般设置:设置//按下电源按钮时//为//询问//
 +   * 关闭“电源管理器”
 +   * 如果您安装有 ACPI 脚本,从 **/​etc/​acpi/​events/​** 停用或更新电源按钮脚本, 修改  //action// 字段的值为 ///bin/true//:
 +<file>
 +event=button/power.*
 +#action=/usr/lib/acpid/power_button
 +action=/bin/true
 +</file>
 +===== 使用助记符创建 Thunar 自定义动作 =====
 +
 +当你创建一个 [[http://thunar.xfce.org/pwiki/documentation/custom_actions|自定义动作]] 时,你可以设置一个字母前面带 “_”(下划线)的名字,这个字母作为助记符。当你在 Thunar 中点击右键时你可以按这个字母来访问你的自定义动作。
 +=====通过 xfrun4 打开用户手册页=====
 +
 +使用 '#' 作为在 xfrun4 中打开一个用户手册页的快捷方式。例如,#man
 +
 +===== Do maths with xfrun4/appfinder =====
 +  * What you get: input simple mathematical expression, like 5+5 or (5+5)/3 or .5*10, in xfrun4/appfinder, and get the result as notification.
 +  * 要求: 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.
 +
 +<code bash>
 +#!/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
 +</code>