On Mon, Sep 14, 2009 at 18:28:27 -0300, Rogério Brito wrote: > OK, now that I just sent the workaround in the earlier message, I dug in > a little further. > > The problem seems to be related to the embedded awk script in the > configure script of the package. > > In its stock version, when fed with my x configuration file, it prints > nothing.
I have an xorg.conf, and get this output from the script: XKBMODEL="pc104" layout_priority=medium XKBLAYOUT="dvorak" This is the relevant section of xorg.conf: Section "InputDevice" Identifier "Generic Keyboard" Driver "kbd" Option "CoreKeyboard" Option "XkbRules" "xfree86" Option "XkbModel" "pc104" Option "XkbLayout" "dvorak" EndSection > When I change > > ,---- > | bin { > | $0 = tolower($0); > | sub("#.*","") > | xkb = ""; > | } > `---- ... I don't have any line starting with "bin". I've attached the awk script I see on my system (I copied the awk_expr literal to a new script and executed 'echo "$awk_expr" > FILE'). > The script does not understand when the section containing the keyboard > has finished and, thus, it also gets the settings for the mouse and > interprets them as the settings for the keyboard also (which is not > always the right thing). I don't see this behaviour, despite also having a mouse InputDevice section with options after the keyboard section. -- Michael
{ $0 = tolower($0); sub("#.*","") xkb = ""; } /^[ \t]*section[ \t]+"inputdevice"/,/^[ \t]*endsection/ { if ($1 == "option") { if ($2 == "\"xkbmodel\"") { xkb = "XKBMODEL"; } else if ($2 == "\"xkblayout\"") { xkb = "XKBLAYOUT"; print "layout_priority=medium"; } else if ($2 == "\"xkbvariant\"") { xkb = "XKBVARIANT"; } else if ($2 == "\"xkboptions\"") { xkb = "XKBOPTIONS"; } $1 = ""; $2 = ""; } } xkb != "" && /^[ \t]*\"[^"]+\"[ \t]*$/ { sub("^[ \t]*\"", ""); sub("\".*", ""); gsub("[ \t]", ""); if ($1 !~ /[()]/) { print xkb "=\"" $0 "\""; } else { if (xkb == "XKBLAYOUT" && $1 ~ /^[^()]+\([^()]+\)$/) { split($1, s, /[()]/); print "XKBLAYOUT=" s[1]; print "XKBVARIANT=" s[2]; } } }
signature.asc
Description: Digital signature