You are not logged in.
Haven't changed much from last time except that I got some inspiration from Wmfs "mirror v" layout
that I saw in some screenshot and wrote one (quick and most likely dirty) for Awesome.
Must say that Awesome really give much flexibility and power to the user even for people like me thats
new to lua.
A tiling window manager simply manages your windows, not just letting you have em
:: Configs etc @GitHub
Offline
Haven't changed much from last time except that I got some inspiration from Wmfs "mirror v" layout
that I saw in some screenshot and wrote one (quick and most likely dirty) for Awesome.Must say that Awesome really give much flexibility and power to the user even for people like me thats
new to lua.
Nice. With a big enough monitor (or two), you might not need more than one or two tags for a layout like that.
Offline
I agree it's a nice layout for a widescreen, give a good overview and still keeps the "main" client in a good size.
Think I'll do Wmfs "Mirror H" too one day, could be nice for log reading and stuff like that.
A tiling window manager simply manages your windows, not just letting you have em
:: Configs etc @GitHub
Offline
Haven't changed much from last time except that I got some inspiration from Wmfs "mirror v" layout
that I saw in some screenshot and wrote one (quick and most likely dirty) for Awesome.Must say that Awesome really give much flexibility and power to the user even for people like me thats
new to lua.
Could you or anyone else show me how to add a bottom panel? Is that conky-cli? I'm basically using the stock awesome config.
edit: I think I found it by looking at awesome's wiki.
http://awesome.naquadah.org/wiki/Conky_bar
is this correct?
Last edited by cirnOS (2011-08-20 23:43:28)
Offline
greyscale wrote:Haven't changed much from last time except that I got some inspiration from Wmfs "mirror v" layout
that I saw in some screenshot and wrote one (quick and most likely dirty) for Awesome.Must say that Awesome really give much flexibility and power to the user even for people like me thats
new to lua.Could you or anyone else show me how to add a bottom panel? Is that conky-cli? I'm basically using the stock awesome config.
edit: I think I found it by looking at awesome's wiki.
http://awesome.naquadah.org/wiki/Conky_bar
is this correct?
It's a conkybar and I followed that guide when I added it.
I'll likely replace conky one day with widgets but haven't got myself started on that project yet.
My configs for both Awesome and Conky are at my github repo if you want to look at them.
A tiling window manager simply manages your windows, not just letting you have em
:: Configs etc @GitHub
Offline
You can actually ad a bottom wibox by simply copying the string of code that manifests the wibox (just the box, not the contents)...
-- Create the wibox
mywibox[s] = awful.wibox({ position = "top", screen = s, height=16 })
...and replace "top" with bottom. Add and position widgets in the same way as they're added to the original.
Offline
cirnOS wrote:greyscale wrote:Haven't changed much from last time except that I got some inspiration from Wmfs "mirror v" layout
that I saw in some screenshot and wrote one (quick and most likely dirty) for Awesome.Must say that Awesome really give much flexibility and power to the user even for people like me thats
new to lua.Could you or anyone else show me how to add a bottom panel? Is that conky-cli? I'm basically using the stock awesome config.
edit: I think I found it by looking at awesome's wiki.
http://awesome.naquadah.org/wiki/Conky_bar
is this correct?
It's a conkybar and I followed that guide when I added it.
I'll likely replace conky one day with widgets but haven't got myself started on that project yet.My configs for both Awesome and Conky are at my github repo if you want to look at them.
I followed that guide and restarted awesome and the bar did not hsow up. Also I added names to the 1-9 sections and nothing happened. Do you know what I need to do?
-- Standard awesome library
require("awful")
require("awful.autofocus")
require("awful.rules")
-- Theme handling library
require("beautiful")
-- Notification library
require("naughty")
-- Load Debian menu entries
require("debian.menu")
-- {{{ Variable definitions
-- Themes define colours, icons, and wallpapers
beautiful.init("/home/hei/.config/awesome/themes/kuro/theme.lua")
-- This is used later as the default terminal and editor to run.
terminal = "urxvt"
editor = os.getenv("EDITOR") or "editor"
editor_cmd = terminal .. " -e " .. editor
-- Default modkey.
-- Usually, Mod4 is the key with a logo between Control and Alt.
-- If you do not like this or do not have such a key,
-- I suggest you to remap Mod4 to another key using xmodmap or other tools.
-- However, you can use another modifier like Mod1, but it may interact with others.
modkey = "Mod4"
-- 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
}
-- }}}
-- {{{ 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:main, 2:www, 3:chat, 4:dev, 5:mus, 6:vid, 7:OOo, 8:gfx, 9:rand }, s, layouts[1])
end
-- }}}
-- {{{ Menu
-- Create a laucher widget and a main menu
myawesomemenu = {
{ "manual", terminal .. " -e man awesome" },
{ "edit config", editor_cmd .. " " .. awful.util.getdir("config") .. "/rc.lua" },
{ "restart", awesome.restart },
{ "quit", awesome.quit }
}
mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon },
{ "Debian", debian.menu.Debian_menu.Debian },
{ "open terminal", terminal }
}
})
mylauncher = awful.widget.launcher({ image = image(beautiful.awesome_icon),
menu = mymainmenu })
-- }}}
-- {{{ Wibox
-- Create a textclock widget
mytextclock = awful.widget.textclock({ align = "right" })
-- Create a systray
mysystray = widget({ type = "systray" })
-- Create a wibox for each screen and add it
mywibox = {}
mypromptbox = {}
mylayoutbox = {}
mytaglist = {}
mytaglist.buttons = awful.util.table.join(
awful.button({ }, 1, awful.tag.viewonly),
awful.button({ modkey }, 1, awful.client.movetotag),
awful.button({ }, 3, awful.tag.viewtoggle),
awful.button({ modkey }, 3, awful.client.toggletag),
awful.button({ }, 4, awful.tag.viewnext),
awful.button({ }, 5, awful.tag.viewprev)
)
mytasklist = {}
mytasklist.buttons = awful.util.table.join(
awful.button({ }, 1, function (c)
if c == client.focus then
c.minimized = true
else
if not c:isvisible() then
awful.tag.viewonly(c:tags()[1])
end
-- This will also un-minimize
-- the client, if needed
client.focus = c
c:raise()
end
end),
awful.button({ }, 3, function ()
if instance then
instance:hide()
instance = nil
else
instance = awful.menu.clients({ width=250 })
end
end),
awful.button({ }, 4, function ()
awful.client.focus.byidx(1)
if client.focus then client.focus:raise() end
end),
awful.button({ }, 5, function ()
awful.client.focus.byidx(-1)
if client.focus then client.focus:raise() end
end))
for s = 1, screen.count() do
-- Create a promptbox for each screen
mypromptbox[s] = awful.widget.prompt({ layout = awful.widget.layout.horizontal.leftright })
-- Create an imagebox widget which will contains an icon indicating which layout we're using.
-- We need one layoutbox per screen.
mylayoutbox[s] = awful.widget.layoutbox(s)
mylayoutbox[s]:buttons(awful.util.table.join(
awful.button({ }, 1, function () awful.layout.inc(layouts, 1) end),
awful.button({ }, 3, function () awful.layout.inc(layouts, -1) end),
awful.button({ }, 4, function () awful.layout.inc(layouts, 1) end),
awful.button({ }, 5, function () awful.layout.inc(layouts, -1) end)))
-- Create a taglist widget
mytaglist[s] = awful.widget.taglist(s, awful.widget.taglist.label.all, mytaglist.buttons)
-- Create a tasklist widget
mytasklist[s] = awful.widget.tasklist(function(c)
return awful.widget.tasklist.label.currenttags(c, s)
end, mytasklist.buttons)
-- Create the wibox
mywibox[s] = awful.wibox({ position = "top", screen = s })
-- Add widgets to the wibox - order matters
mywibox[s].widgets = {
{
mylauncher,
mytaglist[s],
mypromptbox[s],
layout = awful.widget.layout.horizontal.leftright
},
mylayoutbox[s],
mytextclock,
s == 1 and mysystray or nil,
mytasklist[s],
layout = awful.widget.layout.horizontal.rightleft
}
-- conky bar
mystatusbar = awful.wibox({ position = "bottom", screen = s, ontop = false, width = 1, height = 16 })
end
-- }}}
-- {{{ Mouse bindings
root.buttons(awful.util.table.join(
awful.button({ }, 3, function () mymainmenu:toggle() end),
awful.button({ }, 4, awful.tag.viewnext),
awful.button({ }, 5, awful.tag.viewprev)
))
-- }}}
-- {{{ Key bindings
globalkeys = awful.util.table.join(
awful.key({ modkey, }, "Left", awful.tag.viewprev ),
awful.key({ modkey, }, "Right", awful.tag.viewnext ),
awful.key({ modkey, }, "Escape", awful.tag.history.restore),
awful.key({ modkey, }, "j",
function ()
awful.client.focus.byidx( 1)
if client.focus then client.focus:raise() end
end),
awful.key({ modkey, }, "k",
function ()
awful.client.focus.byidx(-1)
if client.focus then client.focus:raise() end
end),
awful.key({ modkey, }, "w", function () mymainmenu:show({keygrabber=true}) end),
-- Layout manipulation
awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end),
awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( -1) end),
awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end),
awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end),
awful.key({ modkey, }, "u", awful.client.urgent.jumpto),
awful.key({ modkey, }, "Tab",
function ()
awful.client.focus.history.previous()
if client.focus then
client.focus:raise()
end
end),
-- Standard program
awful.key({ modkey, }, "Return", function () awful.util.spawn(terminal) end),
awful.key({ modkey, "Control" }, "r", awesome.restart),
awful.key({ modkey, "Shift" }, "q", awesome.quit),
awful.key({ modkey, }, "l", function () awful.tag.incmwfact( 0.05) end),
awful.key({ modkey, }, "h", function () awful.tag.incmwfact(-0.05) end),
awful.key({ modkey, "Shift" }, "h", function () awful.tag.incnmaster( 1) end),
awful.key({ modkey, "Shift" }, "l", function () awful.tag.incnmaster(-1) end),
awful.key({ modkey, "Control" }, "h", function () awful.tag.incncol( 1) end),
awful.key({ modkey, "Control" }, "l", function () awful.tag.incncol(-1) end),
awful.key({ modkey, }, "space", function () awful.layout.inc(layouts, 1) end),
awful.key({ modkey, "Shift" }, "space", function () awful.layout.inc(layouts, -1) end),
awful.key({ modkey, "Control" }, "n", awful.client.restore),
-- Prompt
awful.key({ modkey }, "r", function () mypromptbox[mouse.screen]:run() end),
awful.key({ modkey }, "x",
function ()
awful.prompt.run({ prompt = "Run Lua code: " },
mypromptbox[mouse.screen].widget,
awful.util.eval, nil,
awful.util.getdir("cache") .. "/history_eval")
end)
)
clientkeys = awful.util.table.join(
awful.key({ modkey, }, "f", function (c) c.fullscreen = not c.fullscreen end),
awful.key({ modkey, "Shift" }, "c", function (c) c:kill() end),
awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle ),
awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end),
awful.key({ modkey, }, "o", awful.client.movetoscreen ),
awful.key({ modkey, "Shift" }, "r", function (c) c:redraw() end),
awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end),
awful.key({ modkey, }, "n",
function (c)
-- The client currently has the input focus, so it cannot be
-- minimized, since minimized clients can't have the focus.
c.minimized = true
end),
awful.key({ modkey, }, "m",
function (c)
c.maximized_horizontal = not c.maximized_horizontal
c.maximized_vertical = not c.maximized_vertical
end)
)
-- Compute the maximum number of digit we need, limited to 9
keynumber = 0
for s = 1, screen.count() do
keynumber = math.min(9, math.max(#tags[s], keynumber));
end
-- Bind all key numbers to tags.
-- Be careful: we use keycodes to make it works on any keyboard layout.
-- This should map on the top row of your keyboard, usually 1 to 9.
for i = 1, keynumber do
globalkeys = awful.util.table.join(globalkeys,
awful.key({ modkey }, "#" .. i + 9,
function ()
local screen = mouse.screen
if tags[screen][i] then
awful.tag.viewonly(tags[screen][i])
end
end),
awful.key({ modkey, "Control" }, "#" .. i + 9,
function ()
local screen = mouse.screen
if tags[screen][i] then
awful.tag.viewtoggle(tags[screen][i])
end
end),
awful.key({ modkey, "Shift" }, "#" .. i + 9,
function ()
if client.focus and tags[client.focus.screen][i] then
awful.client.movetotag(tags[client.focus.screen][i])
end
end),
awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9,
function ()
if client.focus and tags[client.focus.screen][i] then
awful.client.toggletag(tags[client.focus.screen][i])
end
end))
end
clientbuttons = awful.util.table.join(
awful.button({ }, 1, function (c) client.focus = c; c:raise() end),
awful.button({ modkey }, 1, awful.mouse.client.move),
awful.button({ modkey }, 3, awful.mouse.client.resize))
-- Set keys
root.keys(globalkeys)
-- }}}
-- {{{ 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 } },
-- Set Firefox to always map on tags number 2 of screen 1.
-- { rule = { class = "Firefox" },
-- properties = { tag = tags[1][2] } },
}
-- }}}
-- {{{ Signals
-- Signal function to execute when a new client appears.
client.add_signal("manage", function (c, startup)
-- Add a titlebar
-- awful.titlebar.add(c, { modkey = modkey })
-- Enable sloppy focus
c:add_signal("mouse::enter", function(c)
if awful.layout.get(c.screen) ~= awful.layout.suit.magnifier
and awful.client.focus.filter(c) then
client.focus = c
end
end)
if not startup then
-- Set the windows at the slave,
-- i.e. put it at the end of others instead of setting it master.
-- awful.client.setslave(c)
-- Put windows in a smart way, only if they does not set an initial position.
if not c.size_hints.user_position and not c.size_hints.program_position then
awful.placement.no_overlap(c)
awful.placement.no_offscreen(c)
end
end
end)
client.add_signal("focus", function(c) c.border_color = beautiful.border_focus end)
client.add_signal("unfocus", function(c) c.border_color = beautiful.border_normal end)
-- }}}
Also I would like to make the top bar black, what is the color code chart for it?
edit: nvm I sorta figured it out.
Last edited by cirnOS (2011-08-22 00:33:40)
Offline
You broke it when you added the text to the tags, instead of 1:main change it to "1:main" and so on for the rest of them.
When you change something in rc.lua it can be a good thing to run awesome -k to see if it finds any error before restarting (wont always save you either).
If you want to change colors that is done in your theme:s theme.lua
Last edited by greyscale (2011-08-21 01:00:15)
A tiling window manager simply manages your windows, not just letting you have em
:: Configs etc @GitHub
Offline
You broke it when you added the text to the tags, instead of 1:main change it to "1:main" and so on for the rest of them.
When you change something in rc.lua it can be a good thing to run awesome -k to see if it finds any error before restarting (wont always save you either).
If you want to change colors that is done in your theme:s theme.lua
Thanks I didn't notice that. However along with those I still see an addtional 1-9 after those tags.
edit: fixed that, thanks.
Last edited by cirnOS (2011-08-21 03:17:43)
Offline
Offline
Hi ,
my new theme with custom cairo widgets for cpu cores, net and filesystems.
Nice, like the colors your using and like your cairo-widgets. Clean and simple but
they stand out from most widgets I seen in awesome
A tiling window manager simply manages your windows, not just letting you have em
:: Configs etc @GitHub
Offline
Yes, I installed aur/lua-oocairo and write little cairo function that I feed with vicious.
See http://awesome.naquadah.org/wiki/Using_ … in_Awesome for a brief introduction it's very easy. (I am not a developer)
I show them because I think people should try to write more widgets, the initial choice is very limited. (I am not a designer)
Last edited by Phasme (2011-08-21 17:24:04)
Offline
urxvt , weechat, luakit
and just showing an empty tag
Offline
Yes, I installed aur/lua-oocairo and write little cairo function that I feed with vicious.
See http://awesome.naquadah.org/wiki/Using_ … in_Awesome for a brief introduction it's very easy. (I am not a developer)
I show them because I think people should try to write more widgets, the initial choice is very limited. (I am not a designer)
I have seen the page but never tried it, might do that some day. I agree on that it seems pretty easy getting going and that more people
should try writing widgets, layouts etc.
I'm neither a designer or a programmer myself but managed to write a new layout that I wanted
so if we two made it when we wanted something new most users probably also would manage to do so
Don't think that the "quality" of the code has to be perfect from start since if someone comes up with a good and useful
idea there will probably someone that could help one fixing it. After all thats the spirit of open-source
A tiling window manager simply manages your windows, not just letting you have em
:: Configs etc @GitHub
Offline
so if we two made it when we wanted something new most users probably also would manage to do so
I agree with you but where are they? where they share/show their works? I regulary read a lot of forums/wikki about awesome and find that for most people it's a geek tiling manager only and just try to change color in their theme.lua.
I think that you have read Taking the other direction, and the fact that you have written your own layout means that you know that awesome is much more, but what about the others?
Don't think that the "quality" of the code has to be perfect from start since if someone comes up with a good and useful idea there will probably someone that could help one fixing it. After all thats the spirit of open-source
Okkkkk "Registered: 2011-07-10" is not my date of birth.
Last edited by Phasme (2011-08-22 07:14:58)
Offline
urxvt , weechat, luakit
and just showing an empty tag
Very nice! Can you share your widgets.lua?
Offline
greyscale wrote:so if we two made it when we wanted something new most users probably also would manage to do so
I agree with you but where are they? where they share/show their works? I regulary read a lot of forums/wikki about awesome and find that for most people it's a geek tiling manager only and just try to change color in their theme.lua.
I think that you have read Taking the other direction, and the fact that you have written your own layout means that you know that awesome is much more, but what about the others?
grescale wrote:Don't think that the "quality" of the code has to be perfect from start since if someone comes up with a good and useful idea there will probably someone that could help one fixing it. After all thats the spirit of open-source
Okkkkk "Registered: 2011-07-10" is not my date of birth.
Have read some parts of Julien's blog yes.
I don't mean to encourage people to write bad code, that should be forbidden by law
But I think the reason most people don't publish there code is that they are afraid of getting jumped for mistakes they might have done in the code.
I reason that if someone like the idea of the layout (credit to who ever came up with it) and pulls if from my github account finds any mistakes I made
and points them out in a good way the code will get better and better and I will learn from it.
As I said I think thats one step that keeps a lot of people from publish what they created sadly. We are all beginners at some point and we do mistake
but by learning from them we get better and better so thats what I mean with I don't think that the quality of the code has to be perfect from start
A tiling window manager simply manages your windows, not just letting you have em
:: Configs etc @GitHub
Offline
gulafaran wrote:urxvt , weechat, luakit
and just showing an empty tag
Very nice! Can you share your widgets.lua?
uhm its just the default one , dont even know where the widgets.lua is haha but yea i havent changed anything in it
Offline
I regulary read a lot of forums/wikki about awesome and find that for most people it's a geek tiling manager only and just try to change color in their theme.lua.
Really? What makes you think that?
Personally, I wrote most of my widgets myself before noticing there where some library existing for widgets (like vicious) so... at least, my awesome configuration is totally mine.
Offline
Offline
Haven't changed much from last time except that I got some inspiration from Wmfs "mirror v" layout
that I saw in some screenshot and wrote one (quick and most likely dirty) for Awesome.Must say that Awesome really give much flexibility and power to the user even for people like me thats
new to lua.
Can you post the layout? I wanna try it
Offline
greyscale wrote:Haven't changed much from last time except that I got some inspiration from Wmfs "mirror v" layout
that I saw in some screenshot and wrote one (quick and most likely dirty) for Awesome.Must say that Awesome really give much flexibility and power to the user even for people like me thats
new to lua.Can you post the layout? I wanna try it
You'll find it at https://github.com/gr3y/dotfiles/blob/m … mirror.lua
A tiling window manager simply manages your windows, not just letting you have em
:: Configs etc @GitHub
Offline