Samsung Galaxy Note 9 with any old bluetooth keyboard. How do I remap the Esc key to Caps Lock? And remap the Caps Lock key to Esc. Swap them basically.

I need this to make it easier to use Vim on Android. I prefer not to root.

2 Answers 2


In Android 4.0 you could do this easy, you would need root permissions though. You most likely still can with root. Just checked can do easy with root. /System/usr/keylayout there are a couple files in there with keyboard layouts that you can edit with root permission. You can veiw but not edit in fx file manager, there are other files that control the same types of things in there.

  • Thanks for info. Prefer not to root though. Nov 13, 2018 at 19:03

It's totally possible without rooting. Check out ExKeyMo (I'm the developer). It has an example with Esc<->Caps mapping. If you need more than one layout take a look at custom-keyboard-layout (I'm the developer).


ExKeyMo web app is not available on Heroku anymore. You'll have to run it locally. See the project's page on GitHub.

  • I tried this scheme with ExKeyMo, and downloaded and installed the app, and enabled the custom layout, but it didn't do anything; what am I doing wrong? pastebin.com/pX01KMcX (I'm on Android 10.) Aug 20, 2022 at 13:27
  • 1
    @Brōtsyorfuzthrāx Unfortunately Android doesn't notify about errors in KCM files. Could you try examples from ExKeyMo (Caps-Lock as Esc and other)? Do they work for you? If so, you could then start with your mappings (one-by-one) to find the issue. Aug 22, 2022 at 7:59
  • @Brōtsyorfuzthrāx you can check your KCM file using validatekeymaps tool. There is web version. Dec 7, 2022 at 10:35
  • It worked! Go to the docs to learn how to set it up: exkeymo.herokuapp.com/docs.html Apr 26, 2023 at 21:13

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .