X下轻量级桌面WindowMaker上手指南
layout: post
title: 轻量级桌面WindowMaker上手指南
tags: x11, cygwin, raspi
最近工作上需要在远程Linux上运行一个桌面(我需要跑Netbeans, Firefox, Emacs和Seafile),但是MobaXterm自带的两个窗口管理器twm/dwm 都过于简陋了(而且我觉得都比较无趣); 另一方面一直觉得树莓派Raspbian自带的桌面也不好用,我想找个替代品,于是我又想起了以前玩过一阵的WindowMaker。
WindowMaker(常简称wmaker,因为它的主程序文件是这个名字)历史也很久,所以有些设计思想跟现在流行的window manager或者desktop environment差异比较大(从另一个角度说,现在流行的window manager都太雷同了,也就平铺式的有点新意),但正因为如此,它也可以给我们增加一点新奇感。
WindowMaker的设计是基于NeXTSTEP的,另外还有一个叫做GNUStep的项目也是试图克隆NeXTSTEP的(甚至编程语言也是Objective-C),它的目标定位是整个desktop environment(包含了文件管理器在、图片查看器、界面设计器等),并且选择了WindowMaker作为它的window manager(不过这个是用C语言开发的)。不过我不太喜欢GNUstep里面其它的组件,用起来都慢吞吞而且不稳定。

WindowMaker的几个优点:
- 绝大部分设置(全局快捷键也可以!)可以通过自带的WPrefs程序即可设置,不必自己编辑配置文件,并且大多数是即时生效的;
- 整体功能比较紧凑,不会需要很多额外的扩展包(是的,听说fvwm是有很强的可配置性,可我难得折腾)
- Cygwin官方仓库有这个程序(在我这个场景里是挺重要的一点)
- 而且,整体小巧、快捷,占用的内存少,所以很适合我的这两个场景(Cygwin和Raspbian)
当然,缺点也挺明显
- appicon/miniwindows/dock/clip跟现在大家习惯的“任务栏”差别比较大,可能得适应一阵
- 小部件不是太丰富(主要原因还的确在于wmaker比较古老,现在的人对它兴趣不太大了)
参考:
- Window Maker - ArchWiki
- In Depth: 5 of the best lightweight window managers for Linux (被薔,我放了一份副本在这里 )
- Why I use Window Maker - UNIX Administratosphere
dock/clip是任务栏吗
首先说一下wmaker里面几个相关的概念:
- appicon: 每个程序跑起来时,会在桌面底部显示一个图标,这个图标称为application icon,常简称appicon。程序关掉之后,对应的图标就消失了。我们可以拖动appicon到其它位置(比如随意移动,或者移动到dock或者clip上)
- dock: 桌面最右边(缺省配置在右边)有一列图标,这列图标就叫做dock。appicon拖动到这一列时就会“停靠”在这里了,即使程序关掉也不会消失,并且重启WindowMaker它也还在,可以直接点击它来启动这个应用程序(当然,可以定制启动方法,还可以定制一个鼠标中键点击时执行的命令)——简单地说,dock比较类似于Windows 7里面固定在任务栏的程序 (详细说明: Window Maker - Dock )
- clip: 桌面左上角还有一个回型针一样的图标,它的名字是clip,但跟“剪贴”没有什么关系,其实是工作区(workspace)切换器(点击两个小三角会切换到上一个/下一个工作区)。不过它还有一个作用:appicon可以停靠到它旁边,这样这个appicon对应的应用就只跟当前workspace绑定(当桌面切换到其它工作区时,这个应用的窗口就不会显示了) 关于clip的详细说明: Window Maker - Clip
- miniwindow: 除了appicon之外,每个窗口最小化之后还有另外一个图标,这个被称为miniwindow。
但这里面有些小问题:
但是多用一阵发现我不太习惯它的dock/clip设计,一方面它可以启动应用,另一方面它又有任务栏的作用(一个appicon停靠到dock后,原来的appicon就不显示了,双击它可以激活应用的主窗口),但只能针对已经dock/clip的应用,其它应用不在这里,而是在下面(appicon)。而且每个应用有两个图标,一个是appicon,另一个是最小化的图标,一般情况下双击dock图标可以激活应用程序窗口,但不能激活已经最小化的窗口。
基于这个问题,如果你要切换回某个程序的话,有时要点右边的dock,有时需要点击左上角的clip,有时要点击下方的appicon,很分裂。感觉要解决这个问题,得把dock栏和appicon栏放在同一排,但dock只能是竖着的 (appicon的位置和方向倒是可以在wprefs里面修改),同时将dock和appicon都放在右侧竖着的话,多开几个程序就没空间了。
网上也有人问能不能将dock搞成横着的,一个答复是变通地用0.95.5(Aug/2013)里面新增的抽屉(drawer)功能,但我试了一下发现,dock里面缺省那个按钮不能是drawer,也不能删除,得另外添加一个drawer按钮,这样至少需要两个按钮
X下轻量级桌面WindowMaker上手指南的更多相关文章
- (转第二方案)在 ASP.NET 環境下使用 Memcached 快速上手指南
转自:http://blog.miniasp.com/post/2010/01/27/Memcached-for-ASPNET-Quick-Start-Guide.aspx 之前一直想研究 Memca ...
- Windows 8 系统完全上手指南 - 非常详尽的 Win8 系统入门学习手册与使用技巧专题教程!
每次当有新版本的操作系统发布的时候,市面上总会冒出各种从入门到精通类的学习书籍,这次最新的 Windows 8 也不例外!不过,今天给大家送上免费的大礼——<Windows 8 完全上手指南&g ...
- Resharper上手指南
原文http://www.cnblogs.com/renji/archive/2007/12/11/resharper.html Resharper上手指南 我是visual studio的忠实用户, ...
- Rancher 快速上手指南操作(1)
Rancher 快速上手指南操作(1)该指南知道用户如何快速的部署Rancher Server 管理容器.前提是假设你的机器已经安装好docker了.1 确认 docker 的版本,下面是 ubunt ...
- UnityShader快速上手指南(三)
简介 这一篇还是一些基本的shader操作:裁剪.透明和法向量的应用 (纠结了很久写不写这些,因为代码很简单,主要是些概念上的东西) 先来看下大概的效果图:(从左到右依次是裁剪,透明,加了法向量的透明 ...
- NewLife.XCode 上手指南2018版(一)代码生成
目录 NewLife.XCode 上手指南2018版(一)代码生成 NewLife.XCode 上手指南2018版(二)增 NewLife.XCode 上手指南2018版(三)查 NewLife.XC ...
- Gatsby上手指南 - 让你的静态网站用react来高逼格的写
注意:Gatsby V2版本安装及使用问题请移步<Gastby V2安装过程中常见问题>,此文较旧,主要针对V1版Gatsby而介绍 前言 一直以来都是用之前比较流行的静态网站生成器Hex ...
- [转]Rancher 快速上手指南操作(1)
本文转自:http://www.cppblog.com/zhiyewang/archive/2016/03/17/213053.aspx Rancher 快速上手指南操作(1)该指南知道用户如何快速的 ...
- 轻量级桌面 openbox + tint2 + conky + stalonetray + pcmanfm + xcompmgr
openbox+tint2+pnmixer+conky=轻量级archlinux桌面环境设置备忘 缘起 机器上的Ubuntu 12.04有一段时间没有使用了,最近在用的时候发现频繁死机的情况,开始以为 ...
随机推荐
- JAVA的JNI调用
由于JNI调用C和调用C++差不多,而且C++中可以混合写C代码,所以这里主要是写关于JNI调用C++的部分. 一般步骤: 先是写普通的Java类,其中包括本地方法调用. 然后编译这个Java类,调 ...
- Zabbix3.0 自动电话报障
第一种:Pagerduty 网站:www.pagerduty.com 优点:老牌服务商,稳定 缺点:贵,英文,网站要FQ 价格参考(34美元每月才25个电话,*29每月是包年才有的价格) 安装方式: ...
- php数据库常用函数
//打开mysqlmysql_connect( $host, $user, $pwd ) or die('error');$host => localhost //数据库地址$user => ...
- JAVA操作Mysql数据库
String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://127.0.0.1:3306/ph ...
- 39行代码实现JS HTML模板(轻量+高效+易用)
otmpl 是一个轻量级前端模版(仅有39行无压缩代码,支持缓存),所用指令仅需[#...#]和{#...#},前者包含需要输出html语句,后者包含js变量. 支持javascript完整语法,你可 ...
- 从源代码分析Android-Universal-Image-Loader的缓存处理机制
讲到缓存,平时流水线上的码农一定觉得这是一个高大上的东西.看过网上各种讲缓存原理的文章,总感觉那些文章讲的就是玩具,能用吗?这次我将带你一起看过UIL这个国内外大牛都追捧的图片缓存类库的缓存处理机制. ...
- [游戏模版14] Win32 键盘控制
>_<:compared with the previous article,this one only adds key-message listener. >_<:up d ...
- [游戏学习24] MFC 各种绘图 字体学习
>_<:这里包含字体设置及各种绘图,只要稍微看一下代码就能理解,这里不多介绍 >_<:Hello.h #include<afxwin.h> class CMyApp ...
- thrift之TTransport层的缓存传输类TBufferedTransport和缓冲基类TBufferBase
本节主要介绍缓冲相关的传输类,缓存的作用就是为了提高读写的效率.Thrift在实现缓存传输的时候首先建立一个缓存的基类,然后需要实现缓存功能的类都可以直接从这个基类继承.下面就详细分析这个基类以及一个 ...
- Atitit WebDriver技术规范原理与概念
Atitit WebDriver技术规范原理与概念 1. Book haosyo ma1 2. WebDriver是W3C的一个标准,由Selenium主持.1 3. WebDriver如何工作 (z ...