6/29/11 Update: Add keycodes for EF02's "" and "Sym". Thanks EvilDennisR for providing the new keycodes, eyecannon for confirmation.
5/5/11 Update: Fix handling of ENTER key in fix_dead patch, i.e., make non-printable and emit carriage return. Thanks xbj9000 & Fnorder for pointing out this bug.
1/13/11 Update: Add key_logic patch from git to make ConnectBot use the correct hardware keymap, eliminating the need for the previous '_' & '-' swap workaround. Add fix_dead patch to fully implement combining accent (dead key) support. See note about combining accents on the Epic below.
12/20/10 Update: Add keep local connection patch. Add Tab, Home, End, Page Up/Down keys. Add partial support for Swype's edit keyboard.
12/1/10 Update: Fix use of arrow keys for moving the selection cursor when copying text.
Attached is a build of ConnectBot v1.7.1 modified to better support the Epic's keyboard. Also attached are the source patches against the v1.7.1 sources.
Changes are:
Make "" an alternate dpad-center (one press emits Ctrl, two presses emit Esc).
Make "Sym" emit Tab.
Make ".com" (Fn+"Sym") emit '`' (backtick, the only missing printable ASCII character).
Make arrow keys able to move the copy selection cursor.
Make "" and Enter (to support Swype's edit keyboard) select the copy region.
Make Fn+Left emit Home, Fn+Right emit End, Fn+Up emit Page Up, and Fn+Down emit Page Down.
Enable Tab key in Swype & other virutal keyboards.
Enable Home, End, & Cursor Jump in Swype's edit keyboard. Cursor Jump makes the arrows emit Home, End, Page Up/Down.
Workaround to make Fn+W emit '-' (hyphen/minus) and Fn+E emit '_' (underscore).
Make ConnectBot use the correct hardware keymap for the Epic, fixes the swapping of '-' & '_' and other subtle keymap bugs.
Although the hardware-keyboard changes are specific to supporting the Epic, this build should run fine on other devices--I don't think the keymaps conflict.
About the workaround: in regular ConnectBot v1.7.1, Fn+W emits '_' (underscore) while Fn+E emits '-' (hyphen/minus), which is backwards compared to other applications. I'm not sure why this is, as the key character map appears to be correct from what I can tell. This bug is due to ConnectBot's previous method of decoding key characters where it assumes the hardware keymap is the first one specified in the Android properties database (hw.keyboards.0.devname), which it is not on the Epic. A fixed method of decoding key characters was comitted to ConnectBot's github repo last month in a patch that also partially (brokenly) implements support for combining accents. I've added this patch and another to this release to fix both the swap bug and fully implement support for combining accents.
Note on combining accents: The standard Epic keymap does not include support for combining accents (dead keys). I've posted a modified keymap to add these. See the thread for details.
I've also added a patch to reenable the use of arrow keys (on both hardware and virtual keyboards) to move the selection cursor when copying text. You may use either "" (hardware keyboard) or Enter (both hardware & Swype's edit) to select where the start and end the copy region.
Unfortunately Swype's Select All, Select Text, Cut, Copy, and Paste keys do nothing in ConnectBot as they do not emit keycodes, but copy & paste support is availble via the menu, arrow, and Enter keys. Also, Swype's Page Up/Down keys simply generate 5xUp/Down arrows. Cursor Jump+Up/Down may be used a real Page Up/Down instead.
Enjoy!
Mirror links (does not require forum login):
connectbot-1.7.1-epic-6.apk
connectbot_create_outdir.diff
connectbot_fix_copy.diff
connectbot_keep_local.diff
connectbot_key_logic.diff
connectbot_fix_dead.diff
connectbot_epic_keymap.diff
connectbot_swype_keymap.diff
very nice, thanks much for this.
5 bucks someone makes a comment about how this is in dev and not in the themes and apps board tho
shabbypenguin said:
5 bucks someone makes a comment about how this is in dev and not in the themes and apps board tho
Click to expand...
Click to collapse
Crud, I figured I made a mistake somehwere.
I don't believe I can move the thread myself, would the powers-that-be mind placing this in the appropraite location? Thanks!
Thanks
Wrong forum or not, this is perfect, I was going to change my system keylayout to accomplish this before, but this is a much better solution.
Amazing, thanks for this! ConnectBot was near-perfect for my needs, you just pushed it over the finish line
Haven't tried it yet, but I was just about ready to do keymappings identical to yours at the android layer... I like your solution a lot better, though, thank you!
Thx for this op!!!
Sorry, but im just about a month into the "rooting scene" and am not yet familiar with what this is, can someone please explain?
Sent from my SPH-D700 using XDA App
this will allow you to change what keys do what, it is a very handy app
Will it prevent the Epic from missing keystrokes???
JungleJiujitsu said:
Sorry, but im just about a month into the "rooting scene" and am not yet familiar with what this is, can someone please explain?
Click to expand...
Click to collapse
ConnectBot is an open-source terminal emulator and SSH client for Android. If you're a Windows user, think of it as a combination of the "Command Prompt" and PuTTY programs, but for your phone.
The Epic is an important device for ConnectBot users as it's one of the few programs that really requires (or at least benefits from) a hardware keyboard. Unfortunately, the Epic keyboard, while very good compared to the Droid (and I'd argue the G2 also) is missing a few keys important for ConnectBot, but has other extra keys that are unused. So this is a modified version of the program to better support the Epic's keyboard, making ConnectBot much more convenient to use.
In general ConnectBot is not a particularly important program for "rooting" (although root makes it vastly more useful locally). As suggested earler, this thread should really belong in the Themes & Apps forum.
That said, I imagine ConnectBot is a somewhat popular program among Epic owners as its (near) requirement of a hardware keyboard makes the Epic a much more suitable device to use with it than the Evo, and so those folks interested in using it are more likely to purchase an Epic.
This is awesome. Thanks a lot! Now ConnectBot is pretty much perfect.
shabbypenguin said:
this will allow you to change what keys do what, it is a very handy app
Click to expand...
Click to collapse
So is it like what someone posted a few weeks back on how they changed the smiley face key to place an @ symbol instead, but only now with this app I can change it to whatever I want?... TIA
JungleJiujitsu said:
So is it like what someone posted a few weeks back on how they changed the smiley face key to place an @ symbol instead, but only now with this app I can change it to whatever I want?... TIA
Click to expand...
Click to collapse
shabbypenguin is incorrect. ConnectBot has nothing to do with altering keyboard mapping for the entire system. I just posted a modified version of ConnectBot that has altered keybindings internally.
As a terminal emulator, it is unusual compared to most Android applications in that much of the hardware keyboard support is implemented internally (from the keycode level up) instead of using standard input widgets.
Sorry for the confusion.
Awesome work. Is there a Ctrl shortcut on the regular build? I got stuck the other day because I couldn't Ctrl+C out of an app.
Sent from my SPH-D700
Forcystos said:
Is there a Ctrl shortcut on the regular build? I got stuck the other day because I couldn't Ctrl+C out of an app.
Click to expand...
Click to collapse
Not on the hardware keyboard. But if you tap the screen an icon "Ctrl" and "Esc" appear that you can tap.
Awesome, muchas gracias. Can we donate?
I'm curious... does this version still disconnect in local mode when a call comes in? I like Connectbot, but being disconnected while editing my script locally with vi editor, was something that irritates me with the version I tried from the Market.
After researching the bug, the only fix I saw was a different source tree with a fix included.
If this fix is included, it would finally replace the Android Terminal for me.
Thanks for working on this for the Epic, by the way!
Sent from my SPH-D700 using Tapatalk
DRockstar said:
I'm curious... does this version still disconnect in local mode when a call comes in?
Click to expand...
Click to collapse
The update I just posted fixes this now. Somehow I never managed to run into this, but I was able to reproduce the problem and it's pretty annoying. Thanks for pointing out the patch.
Alt key?
I cannot for the life of me figure or find out how to use the Alt key w/my Epic. What am I missing? It must be supported....
Hello,
i am thinking buying the Nook, but i saw that the standard buttons don't exist.
If the Nook is rooted and without the standard Android buttons, would the overall experience again be ok?
Thanks!
You simply have to install Softkeys and you'll be just fine
Sent from my SAMSUNG-SGH-I897
ok thanks
So in a way it can be altered, thus no big issue in order not to buy the tablet...
I believe there are some tablet tweaks you can download too that add soft keys right along the notification bar.
Root it with CM7 and you'll have your buttons at the bottom of the screen
If you root the stock BN 1.1 build with Autonooter 3.0 it installs softkeys for you. Just set it as your launcher app and you'll always have access to the default buttons when you need them.
The soft key will be installed once you root the tablet.
There is also some tweaks made by a guy here about changing the key mapping of your nook (if you like hard key)
So one of the things I definitely do not like on the Droid 4 was the inclusion of a Caps Lock key. Seriously? WHO NEEDS TO SOUND THIS ANGRY ALL THE TIME? NO ONE. So one of the things I always immediately do when flashing a rom is go into the key layout and change this to a much more appropriate shift key. However, the latest cm9 build (8-15) seems to be giving me some issues.
The caps key is #222
Usually I go into /system/usr/keylayout/ and edit the qwerty.kl file. Sometimes I have to change the key 222 entry, sometimes I have to make my own. This does not seem to work this time though. Does cm9 use a different file for key layouts? I even edited the Generic.kl, which I'm pretty sure doesn't apply to the phone's physical keyboard.
Any advice or solutions would be greatly appreciated. Thanks!
-----Resolved-----
So like 5 minutes after I posted this I realized it was the omap4-keypad.kl file that needed editing. Derp. Sorry!
Sent from my XT894 using Tapatalk 2
Not sure if it was discussed, but didn't find anything specific. If it was - then it wasn't focused too much on that.
I just rooted my HTC One 4.2.2 (Sense) and flashed a custom kernel (tried many of the most recent ones). I was very happy with various wake options as well as making HTC logo to behave as menu key. However I noticed a weird behavior of how custom kernels disable"3 dot menu" bar. They disable not just the bottom menu bar that appears only in some apps (i.e. Facebook), that are not fully designed according to Google guidelines. Menu buttons are disabled everywhere, in any app instead - even if they are placed according to guidelines (i.e. in Gmail app, at the top corner).
It's really annoying.. I don't want to hide all "good menu" buttons, I just want to hide the bottom line menu button. Exactly as it was made by HTC in 4.2.2 update.
Currently used method is just modifying /system/build.prop file by adding the line:
qemu.hw.mainkeys=1
Click to expand...
Click to collapse
Is there any other alternative fix? Is it there is no better alternative, because HTC didn't give latest kernel sources yet? I guess it's also not possible to revert to the stock kernel (without reseting the whole ROM)?..
Hello,
I have a Samsung S1 with a broken home button. He's probably become oxidized and wet. He can no longer respond. A hardware-repair should resign because the risk of destroying the display is too big. In another forum I read that one., As a remedy, if one has CM 10.x or CM11 installed, the on-screen buttons may display As for devices without hardware buttons. For this purpose, one would still adjust the build.prop accordingly with respect to the Home button. Now I do not know about with the Build.prop. Can anyone tell me which parameter I must set differently there, so that CM appears under the Home Button?
Thanks in advance,
Dag
You can set a NavBar on CM10/11 by just adding a single line to your build.prop.
qmenu.hw.maikeys=0