I cannot input any words in Steam for Linux #1697

woodelf opened this Issue Feb 14, 2013 · 15 comments


None yet

9 participants


I have Gentoo Linux amd64 with kernel 3.7.5 installed, and I have upgrade steam to latest version. However, I cannot input any words in text box in Steam for Linux.
Some other distros are also tested, such as Ubuntu, Mint and Linux Deepin, all with the same issue. So I suppose this should be your upstream problem.
Please check it.

Valve Software member

What text box are you referring to? A chat window or a search?


According to my test, I cannot input words in login window, search box, and game startup option box. I can only put text into them by pasting the texts.
I did not meet with this issue in earlier versions last year (2012). Guess this is a newly brought bug in latest versions.


What keyboard layout are you using? I encountered one person on Steam forums who was writing in Chinese (Google Translate helped me). He said he couldn't get any text into the login window.


@BurritoBazooka It is en-US keymap, not zh-CN. However, my system locale is zh_CN.UTF-8. I do not think keymap would cause such issue, and in earlier versions, there is no such problem at all.
And also, I did not type Chinese in Steam for Linux, only English words.


Interesting... Here is the thread I was referring to, in case you are interested, or even want to reply

@scottlu scottlu was assigned Feb 14, 2013

The system locale affects all X input so it's critical to your usage. We recently made a change to Steam to stop using locales that X doesn't support, but it's not clear if that's what is hitting you.


@BurritoBazooka I have the same problem like @woodelf . My sys it Xubuntu, keyboard layout is zh_Cn, but i doesn't thought it related to my keyboard layout. And, I come from Chiinese.


Please save this code to test.cpp:

#include <stdio.h>
#include <stdlib.h>
#include <X11/Xlib.h>
#include <locale.h>

int main(int argc, char **argv)
    if ( argc != 2 ) {
        printf( "usage: %s <locale>\n", argv[ 0 ] );
        return 1;

    setlocale(LC_CTYPE, argv[1]);
    if ( !XSupportsLocale() ) {
        printf("X doesn't support locale %s.\n", argv[1]);
    } else {
        printf("X supports locale %s.\n", argv[1]);
    return 0;

Then compile it like this:
g++ test.cpp -lX11

Then run it like this:

./a.out zh_CN.UTF-8

What is the output?


@scottlu it output X supports locale zh_CN.UTF-8.


Any idea ? I have this problem too :(
I'm using ubuntu 12.04 and locale is zh_CN.UTF-8


same here, ubuntu12.10, zh_CN.utf-8


@yihuang I think that the X11 env != $lang in bash so that the input box doesn't work, is it?


How can i check this?


@yihuang Sorry, I don't care it now.


guys... typing any words in other script than latin at linux steam is not possible.
You have to type in gedit, and later copy and paste to window.

in multiplayer games characters are invisible :> (source)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment