Bruno Vernay wrote:
Awesome uses combo like:
 Mod4 + 1-9 :   Switch to tag 1-9.
 Mod4 + Shift + 1-9 :    Tag client with tag.
 Mod4 + Control + 1-9 : Toggle tag view.
 Mod4 + Shift + Control + 1-9 : Toggle tag on client.

It wasn't working on my config. I found out on IRC (thanks tyk) that I
needed a special config in my rc.lua because I have an azerty
keyboard.

In fact, on an azerty keyboard, 1-9  needs the Shift key.  I tryied
with the special keypad on the laptop keyboard, but it didn't work and
it seems that the normal keypad isn't working either.
So since the numbers needs the Shift key, it seems that:
- combo using numbers could be banned (replaced by F1-F9 ?)
- an include could be provided for each kind of keyboard map and the
documentation would make it obvious.
- it should be possible to find in the configuration which kind of
keyboard is used and automatically use the right map.

From http://en.wikipedia.org/wiki/Keyboard_layout  it seems that only
France and Belgium have the privilege of an azerty layout !? As per
the article, all the other have the numbers without Shift ?!  If so,
it makes the "only french speaking  people need to tweak their config"
case more realist.
I admit, I though that all European countries (Italian, spanish,
german ...) used some kind of azerty layout.

Bruno

Note that the following should work for both azerty and qwerty keyboards:

=============================8<-----------------------------
-- Bind keyboard digits
-- 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

for i = 1, keynumber do
    globalkeys = awful.util.table.join(globalkeys,
        awful.key({ modkey }, '#1' .. i-1,
                  function ()
                        local screen = mouse.screen
                        if tags[screen][i] then
                            awful.tag.viewonly(tags[screen][i])
                        end
                  end),
        awful.key({ modkey, "Control" }, '#1' .. i-1,
                  function ()
                      local screen = mouse.screen
                      if tags[screen][i] then
tags[screen][i].selected = not tags[screen][i].selected
                      end
                  end),
        awful.key({ modkey, "Shift" }, '#1' .. i-1,
                  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" }, '#1' .. i-1,
                  function ()
if client.focus and tags[client.focus.screen][i] then

awful.client.toggletag(tags[client.focus.screen][i])
                      end
                  end),
        awful.key({ modkey, "Shift" }, "F" .. i,
                  function ()
                      local screen = mouse.screen
                      if tags[screen][i] then
for k, c in pairs(awful.client.getmarked()) do

awful.client.movetotag(tags[screen][i], c)
                          end
                      end
                   end))
end
----------------------------->8=============================

                Jérôme
--
mailto:jeber...@free.fr
http://jeberger.free.fr
Jabber: jeber...@jabber.fr

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to