如果你觉得这个文章对你有帮助,留下个脚印吧。
装B是一个艺术活,普通人说爬山,要装B就要说登山。玩电脑也一样,用window的是普通青年,用MAC机就算装B了。
不过至今我都没弄明白MAC有什么让我觉得好玩的,在一大堆条条框框的约束中使用电脑,骗骗纯情的小女生可以,但是也仅此而已。
玩一玩linux也是一个装B的不二之选了。以前用的一直都是ubuntu的界面,当时花了不少时间去弄那些花哨的界面,但是玩了几天后发现一点意思都没有。
越来越感觉一个都是编辑器的界面比一个充满特效的界面要装B很多。这两天就换了awesome来装。感觉很爽。
废话很多,下面开始进入正题。
安装:
首先就是安装awesome。这个一点难度也没有,使用apt-get就可以了。在终端输入:
minghe@minghe-Inspiron-1420:~$ sudo apt-get install awesome
快捷键:
awesome界面很简单,可以说简单的让人无从下手。所以第一步就是先熟悉一些快捷键。awesome下快捷键都和没MOD4键有关(在PC下MOD4就是那个win键,画着一个window图标的那个)
举例几个我用到的快捷键。
mod4 + enter : 打开一个新终端
mod4 + control + r : 重新绘制桌面。一开始的时候肯定要配置awesome,如何让配置生效,使用的就是这个快捷键
mod4 + tab: 在最近使用的“两个”窗口间切换。
mod4 + 数字键(如1、2、3……): 切换到screen任意的
mod4(按住) + 鼠标左键拖动: 拖动窗口。因为awesome没有顶部的标签栏,拖动就是这么整的
mod4 + shift + c : 关闭一个窗口,这个和功能“alt + F4”的功能是一个意思
mod4 + space : 切换排版模式。awesome中提供了多种的窗口排版模式,这个也是最吸引我的地方。
现在记住这些快捷键已经基本够用了,还有很多其他的快捷键,比如mod4 + r , mod4 + esc , mod4 + j的都可以以后慢慢熟悉。
配置:
每个人都有自己的使用习惯,所以配置一般都少不了,尤其是使用linux的人更是癖好非常多,所以接下来就唠叨下怎么配置。
没有适合所有人的配置,只有最适合自己的配置。所以建议还是自己写配置文件。
需要知道的是,awesome的配置文件使用的是lua语言。我对这个语言怎么用至今没弄清楚,都是对着原来有的配置文件进行少量修改就完事了,毕竟我也不要很多功能
问:配置文件在哪里?
答:在用户目录下的.config/awesome/下。
问:为什么我在.config目录下没有找到awesome目录。
答:我装的时候也没有,我是自己新建的一个。输入命令
minghe@minghe-Inspiron-1420:~$ sudo mkdir ~/.config/awesome
问:要配置文件怎么写?需要从头开始自己写?
答:完全不用,系统已经提供了一个配置文件,把那个拷贝到.config/awesome目录下就可以了。具体输入命令:
minghe@minghe-Inspiron-1420:/$ cp /etc/xdg/awesome/rc.lua ~/.config/awesome/
这里的rc.lua就是以后要用来修改的配置文件了。启动的时候会默认按~/.config/awesome下的rc.lua的配置执行。
问:怎么看配置文件生效?
答:改一处,就按一次mod4 + control + r, 看一看结果对不对,配置文件中只要有一个地方错了,配置就失败,所以如果重新绘制后发现不对,就回去继续修改就好了。
问:里面的语法都不懂,我怎么自己弄?
答:照猫画虎,模仿别人的语法改就行了,实在不行就上网搜。
以下是修改时候的一些心得:以下内容都是rc.lua中的内容, --是注释符
问:怎么不能上网!!,怎么没有输入法!!怎么没有……
答:进入系统要有很多程序需要初始化并运行,awesome下都没有做,这只能我们自己改配置文档了。
--auto run app
awful.util.spawn_with_shell("ibus-daemon --xim")
awful.util.spawn_with_shell("nm-applet")
awful.util.spawn_with_shell("gnome-power-manager")
问:很多程序在菜单栏找不到啊,怎么办?
答:改rc.lua。
mymainmenu = awful.menu({ items =
{
{ "Terminal", terminal, beautiful.menu_terminal},
{ "Chromium", "chromium-browser",},
{ "Zim WIKI", "zim", beautiful.menu_zim},
{ "Gvim", "gvim", },
{ "Gedit", "gedit"},
{ "Qt", "./soft/qtcreator/bin/qtcreator &"},
{ "Home DIR", "gnome-open ~"},
{ "Evolution", "evolution"},
{ "awesome", myawesomemenu, beautiful.awesome_icon },
{ "Debian", debian.menu.Debian_menu.Debian },
--{ "Reboot ", "sudo reboot"},
}
})
例如:
{ "Chromium", "chromium-browser",}
第一个是菜单栏中的程序名字,这个随便叫什么,自己认得就好,第二个参数就是运行的命令,如果不知道命令,打开一个终端试试看就晓得了。
{ "Qt", "./soft/qtcreator/bin/qtcreator &"},
偶尔也会遇到一些自己装的程序,那就吧运行的命令改成路径就好了。
问:有9个标签页,感觉太多了,分不清怎么办?
答:删掉一下,根据自己的习惯给每个命名。修改rc.lua
-- {{{ Tags
-- Define a tag table which hold all screen tags.
tags = {}
for s = 1, screen.count() do
-- Each screen has its own tag table.
tags[s] = awful.tag({ '|1.Term', '|2.www', '|3.Qt ' ,'|4.Edit', '|5.Zim ', '|6.Mail|' }, s, layouts[2])
end
-- }}}
这里我就根据自己的喜好定义了6个,2号用来看网页,3号用来写Qt程序,4号看文档,5号是zim笔记用的,6号就是邮件。
问:为什么我按上面的设置了,打开的程序不能跳到指定的tag上?
答:这个要修改rule,也是在rc.lua中修改。
第一点需要知道程序的class类型。打开一个自己要的程序。在终端输入:
minghe@minghe-Inspiron-1420:~$ xprop
然后用鼠标点一下你打开的那个程序。比如我打开了一个zim,然后输入xprop后点了zim一下,终端中就会有很多信息跳出来。找到
WM_CLASS(STRING) = "zim", "Zim"
-- {{{ Rules
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
properties = { border_width = beautiful.border_width,
border_color = beautiful.border_normal,
focus = true,
keys = clientkeys,
buttons = clientbuttons } },
{ rule = { class = "MPlayer" },
properties = { floating = true } },
{ rule = { class = "pinentry" },
properties = { floating = true } },
{ rule = { class = "gimp" },
properties = { floating = true } },
{ rule = { class = "Chromium-browser" },
properties = { floating = true , tag = tags[1][2] } },
{ rule = { class = "Gedit" },
properties = { tag = tags[1][4] } },
{ rule = { class = "Zim" },
properties = { tag = tags[1][5] } },
{ rule = { class = "Gvim" },
properties = { tag = tags[1][4] } },
{ rule = { class = "Qtcreator" },
properties = { floating = true, tag = tags[1][3] } },
{ rule = { class = "Evolution"},
properties = { tag = tags[1][6] } },
{ rule = { class = terminal },
properties = { floating = true},
callback = function(c) c:tags({tags[1][1], tags[1][5]}) end},
--{ rule = { class = "Chromium-browser",}
-- properties = { floating = true}},
-- Set Firefox to always map on tags number 2 of screen 1.
--{ rule = { class = "Firefox" },
-- properties = { tag = tags[2][1] } },
}
-- }}}
比如这里我就让zim弄到4号tag上。此外还可以实现很多其他的选项,这个就看喜好了。
问:里面很多layout我用不到,怎么给弄掉?
答:注释掉就可以了,“--” 就是注释符,例如我的习惯:
-- Table of layouts to cover with awful.layout.inc, order matters.
layouts =
{
awful.layout.suit.floating,
-- awful.layout.suit.tile,
-- awful.layout.suit.tile.left,
-- awful.layout.suit.tile.bottom,
-- awful.layout.suit.tile.top,
-- awful.layout.suit.fair,
awful.layout.suit.fair.horizontal,
-- awful.layout.suit.spiral,
awful.layout.suit.spiral.dwindle,
awful.layout.suit.max,
-- awful.layout.suit.max.fullscreen,
-- awful.layout.suit.magnifier
}
-- }}}
答:就是没设置音量键的快捷方式嘛,添加以下内容。
-- volume control ,
awful.key({ }, "XF86AudioLowerVolume",
function()
awful.util.spawn("amixer sset Master,0 5%-")
update_volume(volume_widget)
end),
awful.key({ }, "XF86AudioRaiseVolume",
function()
awful.util.spawn("amixer sset Master,0 5%+")
update_volume(volume_widget)
end),
awful.key({ }, "XF86AudioMute",
function()
awful.util.spawn("amixer sset Master toggle")
update_volume(volume_widget)
end)
答:在/usr/share/awesome/theme/default/目录下的theme.lua,不过咱们要装B,这玩意要改了。至少我现在都懒得改,谁有那么多闲功夫盯着桌面的壁纸看啊。是不是