QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5553|回复: 6

icewm介绍(zt)

[复制链接]
发表于 2003-12-31 22:38:06 | 显示全部楼层 |阅读模式
icewm介绍

icewm是一个超小型的窗口管理器,其主要特点是小和高速,特别是对于比较老的机器来说;并且也不失灵活配置的特点。

本文就最新的stable版icewm1.2.13来阐述基本的一些使用心得。



Icewm的安装:

下载:
www.icewm.org可以下到最新版的icewm包, 目前最新版本是1.2.13. 1.2.14以上还是非稳定版。
有gz压缩格式和rpm两种包。
gz解压后make &&make install即可,rpm包共有4个,互相有一定dep关系,目前只是rh9(理论上其他distro也可以)。

slackware的包也有,不过是非官方的。

icewm的irc是在freenode上的#icewm,大家都知道对把。

cvs可以拿到最新source,具体方法如下:

cvs -z3 -d:pserver:[email protected]:/cvsroot/icewm co icewm-1.2

-z#只是决定压缩率,可以不用, co xxxx则是check out的repository的目录,可以根据需要换成 co icewm-1.0|| co icewm-1.3, etc.

密码按回车即可。

个人建议是使用rpm包,非常方便。

安装后:(以rpm为例)
        /usr/bin/ 包括了icewm的执行程序部分。
        /usr/share/doc/icewm-1.2.xx 则是帮助说明部分。
        /usr/share/icewm/ 则是icewm的主体配置目录,包括icons, preference等。

默认下,启动icewm时,会自动搜索下列路径来确定配置目录:
~/.icewm (需手工建立)
/etc/X11/icewm
/usr/local/share/icewm
/usr/share/icewm

为了个性化配置,一般建议将 /usr/share/icewm 复制到 ~/.icewm, 这样可以实现个性话修改而不影响其他用户。




icewm的运行

程序构成:
$PATH 默认下都有/usr/bin, 所以可以直接键入相关名字启动icewm。

/usr/bin 目录中包括:
        icewm  - 主要的windows manager, 启动这个文件就启动了基本的icewm管理器了。
        icewmbg - icewm这个管理器默认是不带背景的,所以icewmbg这个程序提供了背景服务,比如壁纸等。
        icewmtray - 没发现有什么区别(根据icewm.org定义是catches the Docklet objects installed by various applications like PSI)
        icewm-session - 是最新的1.2.13才提供的,其目的是同时启动icewm, icewmbg, icewmtray,方便操作。

        icewm-menu-gnome1, icewm-menu-gnome2, icewmhint 是icewm内部使用,一般不直接执行。

启动:
1.如果开机默认是level 3 (字符界面),则需要编辑~/.Xclients(若没有,可以从/etc/X11/xinit/Xclients复制过来)
~/.Xclients

#!/bin/bash
exec icewmbg   #启动icewmbg必须在icewm之前,否则背景manager不会有效
exec icewm #启动manager

注意:也可以单启动 exec icewm, 如果不需要背景的话。(大壁纸不但吃内存还会影响速度)

或者

exec icewm-session #自动启动 icewmbg + icewm + icewmtray; 只有icewm 1.2.13以上支持

然后startx就自动会运行.Xclient脚本启动icewm了

2.开机默认是level 5(图形界面),则配置 ~/.xsession, 配置方法同上。

例子:(我的.Xclients)
由于我的init level是3,所以要打startx进入X, 并且配置文件是 .Xclients

#!/bin/bash

xmodmap -e "pointer = 1 2 3 6 7 4 5" #鼠标键定义

gaim& #通讯软件
xscreensaver& #屏保daemon
exec icewm   || exec xterm -fg blue #如果icewm启动失败,则单启动一个xterm (一般icewm不会crash);我没有用icewmbg,因为X加个背景速度一定很慢,特别是老机器。

可能有人要问,为什么不把要启动的程序放在 ~/.icewm/startup脚本里呢?
原因有2:
1.换manager后.Xclients还是有作用,所以不管换什么manager都可以启动这几个程序。
2.虽然icewm的文档说明可以用startup, 但是我这里从来不工作。



cewm配置

(本文假设已经mkdir建立~/.icewm 并已复制/usr/share/icewm到~/.icewm)

1.Theme:

icewm本身自带几种theme,且可以到themes.freshmeat.net下载新theme.

theme配置文件:
theme配置文件在 ~/.icewm/theme, 这个文件一般只有一行格式如:
Theme="Infade2/Overloaded.theme" (本人喜欢infade2)

此文件为自动建立,一般不手工改动这个文件;若想要换theme,在icewm主菜单选择自己喜欢的theme即可,此文件也会被相应改动。

theme目录;
theme目录在~/.icewm/themes这个目录里,其中包括多种themes,例如:
$ ls ~/.icewm/themes
blueCrux  icedesert  metal2  nice   warp3  win95
gtk2      Infadel2   motif   nice2  warp4

默认随rpm包的themes如上所示

如果要添加theme,只要下载theme后,用tar解theme压缩包时用-C 参数到 ~/.icewm/themes即可
启动icewm会发现,新theme已经在主菜单可以被选择了,就这么简单。

2. preferences:
icewm主要配置就在~/.icewm/preference文件里

默认状态下,配置参数都被#给注释了,也就是使用了icewm的默认参数

用户可以自行修改,使icewm界面符合自己的个人需要

粗略介绍如下:(用户可以自行仔细查看,其中可配置的项目有几百项)
(1为开启,0为关闭)

窗口行为部分:
ClickToFocus = 0/1 只有鼠标点击才能选择一个窗口
RaiseOnFocus = 0/1 窗口被选择时将窗口放到最前面
FocusOnClickClient = 0/1 点击时才选择窗口
RaiseOnClickClient = 0/1 点击时将窗口拉到最前端
RaiseOnClickTitleBar = 0/1 点击窗口条将窗口拉到最前端
RaiseOnClickButton = 0/1 点击按钮时将窗口拉到最前端
RaiseOnClickFrame = 0/1 点击窗口周围边框时,将窗口拉至最前端
PassFirstClickToCient = 0/1 当点击能将窗口拉至前端,同时还将点击的消息传给按键
(上述参数默认都为1, 以符合普通人习惯)

AutoRaise = 0/1 自动将窗口拉至前端如果被选择
StrongPointerFocus = 0/1 自动将窗口选择如果鼠标停留在此窗口上
(上述参数默认为0, 以符合普通人习惯)

QuickSwitch = 0/1 是否用Alt+Tab来选择窗口(象windoz那样)
QuickSwitchToAllWorkspaces = 0/1 是否用Alt+Tab来选择workspace
Win95Keys = 0/1 是否win95这三个键有效,如果有效,则分别被映射成metaL metaR 和menu
AutoReloadMenus = 0/1 是否自动读取menu配置文件当menu主菜单被按下时
ShowThemesMenu = 0/1 是否显示Theme子菜单在menu主菜单里

ShowTaskBar = 0/1 是否显示任务条
TaskBarAtTop = 0/1 显示任务条在顶端(否则在底部)
TaskBarKeepBelow = 0/1 同理于windows下的“总是在最前端”
TaskBarShowStartMenu = 0/1 同理于windows下的"开始“
TaskBarshowWorkspaces = 0/1 显示工作区选择按钮(用过gnome的都知道有4个工作区吧)
TaskBarShowClock = 0/1 显示时间
TaskBarClockLeds = 0/1 显示时间为电子表的数字形式
TaskBarShowMailboxStatus = 0/1 显示邮件箱状态,具体根据$MAIL决定
TaskBarMailboxStatusBeepOnNewMail = 0/1 喇叭叫,如果有新邮件到达
TaskBarMailboxSTatusCountMessages = 0/1 当鼠标移动当mail标志时,会显示受到的mail数目
IconPath = "" 图标的路径, 个人把它设为 /usr/share/pixmaps:/usr/share/gnome/pixmaps:/usr/share/IceWMCP/pixmaps:/usr/X11R6/include/X11/pixmaps 这样icewm主菜单上的程序都有漂亮的小图标了
MailBoxPath = "" 可以填写标准scheme格式的收邮件地址 scheme://[user]@server[][/path]
例如:
        pop3://zheng:[email protected]/  其中zheng为用户名 6666为密码, pop3.online.sh.cn为pop3服务器地址
        file:///var/spool/mail/root/        可以收取local的email
MailCommand = "" 收取邮件的软件, 默认为pine, 可能有的机器上没有pine, 本人改为"evolution"来收
LockCommand = "" 默认为xlock, 如果没有xlock, 可以用"xscreensaver-command -lock"来锁,前提是xscreensaver daemon已经启动
RebootCommand ="" 非root用户可能不能用shutdown -r now来启动, 改为reboot即可
NetworkStatusDevice="" 默认有ppp0 和eth0显示在任务栏上, 如果有多个网卡,可以加如: eth1, eth2... etc.

如果你运行了icewmbg,或者icewm-session (即,启动了背景服务)
DesktopBackgroudCenter = 0/1 壁纸是否在中央
SupportSemitransparency = 0/1 是否让有透明效果的程序能透明壁纸 比如gnome-terminal
DesktopBackgroundScaled = 0/1 是否让壁纸满屏
DesktopBackgroundImage = "" 壁纸的路径

3. Menu:
在~/.icewm/menu文件里,配置主菜单的项目

格式为:
类别 显示名 图标名 程序执行名

类别有 prog separator menuprog menufile

prog就是普通的程序,点击就可以运行
separator是分割符,分割菜单用的
menuprog就是子菜单
menufile 类似于menuprog只是必须是文件而已

例子:
prog gterm xterm gnome-terminal
表示这是一个程序, 显示菜单名叫gterm, 图标叫xterm(根据preferences里面的IconPath搜索) 执行程序则是gnome-terminal

menuprog KDE folder icewm-menu-gnome2 --list /var/lib/menu/kde/Applications/
表示这是一个子菜单,名字叫KDE, 显示图标是folder图标,路径为kde的程序目录(也就是把kde下目录导入到icewm下)

menufile Tool_bar folder toolbar
表示这是个子菜单,名字叫Tool_bar,显示为folder图标,其路径是toolbar这个配置文件

4. toolbar:
是条状bar的配置文件在~/.icewm/toolbar
其配置形式同如menu文件,所以不再赘述

5. startup:
~/.icewm/startup文件是个bash脚本,可以在icewm启动时自动执行一些程序。
注:这个脚本从来不工作,那位如果使它工作的告诉我一声。
发表于 2004-1-1 16:49:30 | 显示全部楼层
我现在正在用。。。
回复

使用道具 举报

发表于 2004-6-25 10:45:26 | 显示全部楼层
不错啊,我也试试icewm  :-)
回复

使用道具 举报

发表于 2004-6-25 14:17:36 | 显示全部楼层
icewm的xp主题

http://themes.freshmeat.net/releases/164805/
回复

使用道具 举报

发表于 2004-6-27 12:00:30 | 显示全部楼层
5. startup:
~/.icewm/startup文件是个bash脚本,可以在icewm启动时自动执行一些程序。
注:这个脚本从来不工作,那位如果使它工作的告诉我一声。


其实用不着这样,完全可以写在.xinitrc或者.xsesseion里,当然也可以把~/.icewm/startup写在xinitrc和.xsesion里。
要运行的程序必须写在icewm之前,并且有&来结束
回复

使用道具 举报

发表于 2004-6-29 00:42:08 | 显示全部楼层
那个图汉化后的效果有没有?太美了!
回复

使用道具 举报

发表于 2004-7-1 14:06:22 | 显示全部楼层
为什么我的RH9进不了ICEVM? 我一进去刚把那个linuxsir-fontconfig-3.4的输入法BAR显示出来, 然后后面就没什么反应了.....一片漆黑.......郁闷......我用DESKTOP SWITCHING TOOL 换成ICEVM的.....后来只好把.Xclients和.Xclients-default删除了才能进GNOME, 郁闷....
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-5-10 10:49 , Processed in 0.076102 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表