Page MenuHomePhabricator

Xkbswitch module parses the wrong argument to lixkbcommon
Closed, ResolvedPublic

Description

This creates a problem with the Russian layout (and maybe other layouts) resulting in people not being able to type in that layout.

The argument (basic) is added to the layout string (ru (basic) instead of just ru) and libxkbcommon throws an error

https://git.enlightenment.org/core/enlightenment.git/tree/src/modules/xkbswitch/e_mod_parse.c line 196

ApB created this task.May 22 2019, 1:17 AM
ProhtMeyhet triaged this task as Pending on user input priority.Aug 7 2019, 3:29 AM
ProhtMeyhet assigned this task to raster.
ProhtMeyhet added subscribers: raster, ProhtMeyhet.

The argument (basic) is added to the layout string (ru (basic) instead of just ru) and libxkbcommon throws an error

could you please be more specific? for example, what error does libxkbcommon throw?

anyways, the line is from c1699d13a0 from @raster

ApB added a comment.Aug 7 2019, 10:35 AM

The argument (basic) is added to the layout string (ru (basic) instead of just ru) and libxkbcommon throws an error

could you please be more specific? for example, what error does libxkbcommon throw?

anyways, the line is from c1699d13a0 from @raster

from what i remember the error had to do with lixkbcommno not being able to understand the "basic" string that was parsed in the 196 line. i removed that and russian worked. don't know why it did it only with the russian language (or it could be the only on i noticed it). cant understand the code much further.

raster added a comment.Aug 8 2019, 4:44 PM

The below i typed with a xkb layout i added with the basic variant here locally:

руку члисщььщт цщклы цшер ЭифышсЭ фы ф мфкшфтею ш огые екшув шеююю

it worked for me... if basic is an issue then why not just select another variant then? what should i use as the basic/default/normal layout then per language layout if not basic?

raster added a comment.Aug 9 2019, 1:51 AM

ok. have a null layout as default now... and the gui displays it nicer ... and x skips it as well as wayland if basic or null... works for me in both wl and x11.