Typing Chinese like English

I’ve long wished that typing Chinese could be as intuitive as typing English. By that, I mean that you should be able to approach a Chinese keyboard for the first time in your life and type any character you know, regardless of what dialect you speak. You shouldn’t need prior study of an input method like 倉頡. You shouldn’t need to know Mandarin. You shouldn’t even need to know Chinese beyond a cursory study of the writing system. I wanted there to be a Chinese equivalent of hunt-and-peck typing. 看見打字.

For about 15 years now, I’ve attempted a solution to this problem. I’ve had a few periods where I’ve worked on it intensely, but it’s mostly been a background hobby. To be honest, if I had known how long it was going to take, I might never have started.

I’m making it available for use today. Is it perfect? No. But I think it’s good enough to show other people. Also, I’m kinda sick of working on it.

So introducing: http://wuhou.im

I named it after Empress Wu, the only female ruler of imperial China, and somewhat relevant to the issue of Chinese input for the fact that she invented her own new Chinese characters.

For a long time I was stuck on the fact that HTML didn’t provide a way to know exactly which physical key the user is pressing when typing on a website, but thanks to Firefox’s support of DOM Level 3 key events, that is now possible. (If you’re using a different browser, the website might not work properly if you have a non-QWERTY keyboard layout.)

My current employer doesn’t let me work on Open Source projects or personal projects without prior permission, so let me be clear that this is something I developed prior to my current employment. And if I made any minor tweaks recently, you have no proof of that.

I myself do not know Chinese well (my interest in Chinese is mostly as a historical language of Vietnam and a liturgical language of Buddhism), so if you want to leave any comments, I’m gonna need them in English (or French).

Edit: You gotta press SHIFT to see more radicals. I’m sorry that’s not obvious. I’ll try to make that more intuitive.

32 thoughts on “Typing Chinese like English

  1. Wuhou?! Jesus Christ. Why not Empress, which is:

    1. Much more brandable name
    2. Contains word `Press` — makes a lot of sense when it comes to keyboards
    3. Empress = Impress

    Liked by 2 people

    • Ha! Oh my god, you’re right.

      You know, I actually looked at getting empresswu.com a few years ago, but it was already owned by Martha Stewart. I’m not kidding. (She wasn’t doing anything with it.) But now it seems to be owned by cybersquatters who want $2695 for it.

      I might grab empresswu.im right now.


    • I don’t know if you noticed, but I referred to Cangjie (倉頡) in my first paragraph. I don’t think Cangjie is easy to use at all. I’ve seen people carry pocket reference books so they can use Cangjie. That’s the sort of thing I want to avoid.

      No, I don’t have a great memory. The radicals are in Kangxi order, which helps a bit. Also, I used to use laser-cut key stickers that I made. Maybe I’ll make some more of those stickers and make them available to order if people really want 🙂

      Thanks for the feedback!


      • They use pocket reference books because they don’t practice enough. Even with Wuhou IM, the situation won’t change.
        And keep users pressing SHIFT for alternative set of strokes is not good as Cangjie to me.


      • > They use pocket reference books because they don’t practice enough.

        No, they use reference books because it’s sometimes impossible to figure out how to decompose a character into its Cangjie components unless you’ve already been told. And Cangjie is very unforgiving. There is only one way to type each character, and you must get it exactly right.

        My method allows multiple ways to type some characters. For example, if the Japanese shape of a character differs from the Chinese shape, I’ve tried to allow both ways of typing it.

        > And keep users pressing SHIFT for alternative set of strokes is not good as Cangjie to me.

        Some other standard keyboards, like Thai or Hindi, require you to hit SHIFT a lot too. But hey, no one’s stopping you from using Cangjie if that’s what you prefer.


  2. Impressively, it uses the correct key locations in Firefox, though the keys themselves are still mislabeled (“QWERTY”, etc). Is there a way to determine key locations from the DOM API?


  3. This remind me of “五笔”.(https://en.wikipedia.org/wiki/Wubi_method)
    With which, you could ” type any character you know, regardless of what dialect you speak.” easy and really fast. But I never managed learn it, however my mother did. Yes, once for a very long time, she could type faster than me as I use commen phonetic-based input method.

    But the key point could be the keyboard itself, there are “QWER” – the The Latin alphabet – which is phonetic, it could never be “Nature” to use it for something like Chinese character.I think something like digital handwriting pad could be the right thing.

    It is realy impressive as a background hobby product anyway!


    • Yes, I’m familiar with Wubi. Wubi is fast, but it’s very complicated and takes a lot of study to learn. It was designed for professional typists at a time when very few people used computers except for professional typists, for whom speed was critical. Nowadays, I think most people would find Wubi a serious barrier.

      My input method is designed to be usable without any training. I don’t really think it’s anything like Wubi.


  4. 1. You are trying to solve a problem that has been solved well enough for many years and many times.
    2. Use Pinyin input method if you know how to speak Mandarin (Putonghua), otherwise, use handwriting input method if you know how to write.
    3. Other methods all require users taking a long time memorizing a mapping keyboard to achieve a sufficient typing speed.

    Liked by 1 person

    • > otherwise, use handwriting input method if you know how to write.

      Yeah, handwriting input is okay if you have a touchscreen or a trackpad. I still think typing on a keyboard is more comfortable and ergonomic.

      > Other methods all require users taking a long time memorizing a mapping keyboard to achieve a sufficient typing speed.

      Yeah, but that’s true for any keyboard in any language, isn’t it? If you don’t already know QWERTY, typing English or pinyin is slow.

      It’s called hunt-and-peck typing when you don’t know where the keys are. My method makes hunt-and-peck typing possible for Chinese speakers who don’t know Mandarin.

      And the thing about hunt-and-peck typing is that some people can get quite fast at it.


  5. As a native Chinese speaker, I believe people do need some training before starting to use Wuhou.im.

    The problem here is typing with Wuhou is quite different from writing Chinese characters by hand, to the extent that you need a different mindset. For example, 由 = 丨田 in Wuhou, but we actually write it in the same way as 田, simply make the last stroke (丨) longer. It actually takes time to learn how to split Chinese characters in your way (I agree it’s very intuitive, but for those who actually knows how to write Chinese, it is pretty weird and needs to be learned just like Wubi).

    Compared to Pinyin, for those who learned Mandarin along with Pinyin, typing with Pinyin IME is very intutive that you don’t need to actually think about it, it is roughly the same as speaking it out.

    And there are various handwriting IMEs and Stroke IMEs (https://en.wikipedia.org/wiki/Stroke_count_method). My father do speak Mandarin but can’t get Pinyin right, he used these IMEs daily.

    Liked by 1 person

    • > For example, 由 = 丨田 in Wuhou

      But you figured that out on your own, didn’t you? That’s what I was aiming for.

      You would never be able to figure out how to use Wubi on your own without instruction.

      Yes, Wuhou is based on a visual decomposition of the characters (usually from top-to-bottom). It’s not based on stroke order. Don’t worry, you’ll get the hang of it in no time.

      People who are saying that Wuhou is like Wubi have never used Wubi.


  6. It’s quite impressing!
    Although instead of using stroke sequence is more common for a native writer,
    Wuhou IM here uses some common parts in Chinese character.
    Changie IM’s creator, at his early developments, also uses common parts.
    But his goal makes him blind(in those years, they are competative), he take efficiency but not the idea of characters itself.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s