加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在awesome-wm中为特定应用程序设置窗口布局

发布时间:2020-12-15 00:24:47 所属栏目:大数据 来源:网络整理
导读:如何配置真棒,所以它将启动新的应用程序与两个窗口对齐如下: ----------------|xxxxxxxxxx####||xxxxxxxxxx####||xxxxxxxxxx####||xxxxxxxxxx####|---------------- 其中“x”是pidgin中的对话窗口,“#”是好友列表窗口. 一般来说,我想指定右窗口的宽度,并
如何配置真棒,所以它将启动新的应用程序与两个窗口对齐如下:
----------------
|xxxxxxxxxx####|
|xxxxxxxxxx####|
|xxxxxxxxxx####|
|xxxxxxxxxx####|
----------------

其中“x”是pidgin中的对话窗口,“#”是好友列表窗口.

一般来说,我想指定右窗口的宽度,并将其放在右侧(最大化垂直方向),另一个窗口应占用剩余空间.

我已经有一些几乎工作的代码,但它的行为奇怪(它设置一切正确的pidgin,但它不适用于gimp和v_sim,偶尔没有任何知道我的原因,它会改变左窗口的几何,或当我启动应用程序(v_sim),它不会被放置在正确的位置,并且不是垂直最大化,但是当我重新启动时,它会正确放置,所以我猜这个应用程序在启动时会改变一些.

这里是我现在使用的代码:

awful.rules.rules = {
  ...
  { rule = { class = "Pidgin",role = "buddy_list" },properties = {
      floating = true
    },callback = function( c )
      local w_area = screen[ c.screen ].workarea
      local winwidth = 340
      c:struts( { right = winwidth } )
      c:geometry( { x = w_area.width - winwidth,width = winwidth,y = w_area.y,height = w_area.height } )
    end
  },{ rule = { class = "Pidgin",role = "conversation" },properties = {
      floating = true,x = 0,maximized_vertical = true,maximized_horizontal = true
    },callback = awful.client.setslave
  },...
}

解决方法

我有这个完全相同的问题,但是我想要一个左侧的一个大型Firefox窗口,右侧有一个小型终端.为了使其正常工作,我用一个瓦片布局为这个目的专门设计了一个标签,并调整了宽度因子(即通常由CTRL-L执行的操作).

将以下内容添加到rc.lua的末尾,其中yourtag是要放置这些窗口的标签. 0.15的价值可以调整到你的口味.

awful.tag.viewonly(yourtag)
awful.tag.incmwfact(0.15,yourtage)

另外,在右边窗口中使用awful.client.setslave确保它们不被切换.

{
    rule = { class = "URxvt" },callback = awful.client.setslave
},

您还可以使用标签属性将某些应用程序引导到标签.

{
    rule = { class = "Firefox" },properties = { tag = browse }
},{
    rule = { class = "URxvt",instance = "browse" },properties = { tag = browse },},

然后我创建了一个绑定来打开这些应用程序如下.

-- Custom programs
awful.key({ modkey,"Shift" },"b",function()
    awful.tag.viewonly(browse)
    awful.util.spawn_with_shell("urxvt -name browse -e newsbeuter")
    awful.util.spawn("firefox")
end)

这是最后的结果:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读