Comments (16)
You can use xev
to look at what keycodes are used / triggered for this.
Do you get Left
for AltGr + h
there?
You maybe have to map these additionally.
from awesome.
yes in xev it's work well, all keycodes as i set in xkb layout.
from awesome.
KeyRelease event, serial 33, synthetic NO, window 0x4200001,
root 0x91, subw 0x0, time 149363376, (432,309), root:(434,333),
state 0x80, keycode 44 (keysym 0xff51, Left), same_screen YES,
XKeysymToKeycode returns keycode: 113
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 33, synthetic NO, window 0x4200001,
root 0x91, subw 0x0, time 149363648, (432,309), root:(434,333),
state 0x80, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XKeysymToKeycode returns keycode: 92
XLookupString gives 0 bytes:
so this is xev for AltGr + h, where ISO_Level3_Shift is AltGr and Left is h
keycode 44 is h key
keycode 113 is Left key
constructions with ISO_Level3_Shift like this:
awful.key({ modkey, "ISO_Level3_Shift" }, "Left", awful.tag.viewnext ),
awful.key({ modkey, "ISO_Level3_Shift" }, "#113", awful.tag.viewnext ),
not work
from awesome.
A little hint
https://github.com/awesomeWM/awesome/blob/master/common/xutil.c#L90
from awesome.
@Elv13
Nice try, but I still do not understand what kind of modifier AltGr.
I'm still not sure that I can patch it myself, could you tell a little more detail.
from awesome.
It is not in the list, so I doubt is can work without patching that function and the one below it. I may be wrong
from awesome.
@Elv13
Ok, i understand. Do you think it's bug? Could you tell me the best way to check this solution without reinstall awesome or distributive? Maybe some install to opt? On Arch Linux
from awesome.
This is the C code, so you have to patch and recompile. It is not a bug, just not a feature
from awesome.
@Elv13 i understand, so i can't install it near my awesome like testawesome? Ok i'll try. Thanks.
from awesome.
You don't have to install awesome, just compile it
from awesome.
@Elv13 oh, ok, compile and run, you awesome
from awesome.
@Elv13
Do you think the problem is that awesome does not recognize the modifier and then ignores the key?
I would have thought that it should look just like Left
to awesome.
AltGr-h looks like this for me (keycode 43, not 44):
KeyPress event, serial 28, synthetic NO, window 0x4400001,
root 0x94, subw 0x0, time 150651320, (98,91), root:(99,92),
state 0x0, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XKeysymToKeycode returns keycode: 92
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 28, synthetic NO, window 0x4400001,
root 0x94, subw 0x0, time 150652536, (98,91), root:(99,92),
state 0x80, keycode 43 (keysym 0x2b1, hstroke), same_screen YES,
XLookupString gives 2 bytes: (c4 a7) "ħ"
XmbLookupString gives 2 bytes: (c4 a7) "ħ"
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x4400001,
root 0x94, subw 0x0, time 150652687, (98,91), root:(99,92),
state 0x80, keycode 43 (keysym 0x2b1, hstroke), same_screen YES,
XLookupString gives 2 bytes: (c4 a7) "ħ"
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x4400001,
root 0x94, subw 0x0, time 150654217, (98,91), root:(99,92),
state 0x80, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XKeysymToKeycode returns keycode: 92
XLookupString gives 0 bytes:
XFilterEvent returns: False
And using the following makes awesome somehow grab it, but the function is not called then:
awful.key({ "Any" }, "hstroke", function (c) put_client(c, 0.5, 0.0, 0.5, 0.5) end),
Without the call to awful.key
I get ħ
, but with the call nothing arrives in the app (terminal or (g)vim).
from awesome.
According to a quick google, AlternateGraphic is "Mod5" (2^7), but it doesn't work at all. "Any" work does grab the input and execute the function on my computer. xcb_mod_mask_t
doesn't have anything above that, but any grab all until 2^15 so maybe AltGr is somehow mapped to something above the maximum for xcb_mod_mask_t
, but that would be very, very strange as it conflict with common sense and other implementations. Your not alone to have trouble with AltGr and XCB:
https://bugreports.qt-project.org/browse/QTBUG-34068?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
https://awesome.naquadah.org/bugs/index.php?do=details&task_id=462
from awesome.
Using Mod5
works for me:
awful.key({ "Mod5" }, "h", function() naughty.notify({text="AltGr-h"}) end),
@seniorivn
Have you tried this already?
from awesome.
@blueyed oops...
I tried it just now, and it works, apparently this is exactly what I need, I do not know how it happened that i didn't try it.
from awesome.
Cool, closing the issue then.
I've looked into xmodmap a bit myself yesterday.
from awesome.
Related Issues (20)
- Focus by hover ignored after layout change to max HOT 1
- Border around Firefox developer tools popup HOT 11
- awesomeWM workspaces and skippy-xd HOT 3
- `urgent = false` not working HOT 3
- BUG: `gears.timer {call_now=true}` doesn't pass `self` (`ret`) HOT 1
- Incorrect completion_callback usage example
- Errors returned with luajit but not lua 5.4 HOT 2
- Mouse events ignored by application only when managed by Awesome
- Lgi FFI error on startup HOT 1
- Multiple definition error while compiling on a 32bit machine. HOT 1
- GTK theme breaks if user's locale uses commas instead of dots as decimal separators HOT 11
- How to make new notifications update to existing notifications? HOT 2
- workaround for pystray python tray icon programs HOT 2
- Shell environment not correct while using `awful.spawn_with_shell`? HOT 4
- Stdout not working correctly for awful.spawn.with_line_callback but stderr does HOT 4
- awesomewm freezes occasionally with E: awesome: Failed to load 'userdata: (nil)' HOT 2
- Bluetooth pin accept notification doesn't appear with naughty. HOT 3
- codecov pipeline not responding in PRs HOT 9
- Error while trying to install awesome HOT 3
- What about monthly or quarterly release strategy for minor versions?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from awesome.