[Sony Ericsson XPERIA X10 Mini] ff0000.it:
Hi all,

I've just reverted to 2.1.1.Clean.0.0 v6 because other ROMs seem to be too slow (laggy, ..., whatever) and while I'm configuring It I tweak the keyboard layout (not the keyprint) in order to have the physical keyboard covering all useful characters used in *NIX shells (eg., connect via SSH to a server with your mimmi).

I don't know if there's someone who still use 2.1 based ROM (I don't know if It could work on newest ROMs); in that case here are the changes:

[...]
<key id="16"
primaryNormal="q" primaryShifted="Q"
associatedNormal="[" associatedShifted="{"/>
<key id="17"
primaryNormal="w" primaryShifted="W"
associatedNormal="]" associatedShifted="}"/>
<key id="18"
primaryNormal="e" primaryShifted="E"
associatedNormal="<" associatedShifted=">"/>
[...]
<key id="24"
primaryNormal="o" primaryShifted="O"
associatedNormal="/" associatedShifted="\\"/>
[...]
<key id="30"
primaryNormal="a" primaryShifted="A"
associatedNormal="^" associatedShifted="$"/>
<key id="31"
primaryNormal="s" primaryShifted="S"
associatedNormal="|" associatedShifted="&"/>
<key id="32"
primaryNormal="d" primaryShifted="D"
associatedNormal="`" associatedShifted="%"/>
[...]
<key id="44"
primaryNormal="z" primaryShifted="Z"
associatedNormal="~" associatedShifted="~"/>
[...]
<key id="40"
primaryNormal="&apos;" primaryShifted="""
associatedNormal="-" associatedShifted="_"/>
[...]

You could look the meaning of "&<NAME>;" syntax right here: http://en.wikipedia.org/wiki/List_o...eferences#Character_entity_references_in_HTML.

That's the complete XML:

<?xml version="1.0" encoding="utf-8"?>
<!--
*********************************************************************
* ____ _____ _ *
* / ___| ___ _ __ _ _ | ____|_ __(_) ___ ___ ___ ___ _ __ *
* \___ \ / _ \| '_ \| | | | | _| | '__| |/ __/ __/ __|/ _ \| '_ \ *
* ___) | (_) | | | | |_| | | |___| | | | (__\__ \__ \ (_) | | | | *
* |____/ \___/|_| |_|\__, | |_____|_| |_|\___|___/___/\___/|_| |_| *
* |___/ *
* *
*********************************************************************
* Copyright 2010 Sony Ericsson Mobile Communications AB. *
* All rights, including trade secret rights, reserved. *
*********************************************************************
-->
<!--
Keylayout name: qwerty-en
-->
<keylayout>

<!-- First row -->

<key id="16"
primaryNormal="q" primaryShifted="Q"
associatedNormal="[" associatedShifted="{"/>
<key id="17"
primaryNormal="w" primaryShifted="W"
associatedNormal="]" associatedShifted="}"/>
<key id="18"
primaryNormal="e" primaryShifted="E"
associatedNormal="<" associatedShifted=">"/>
<key id="19"
primaryNormal="r" primaryShifted="R"
associatedNormal="1" associatedShifted="1"/>
<key id="20"
primaryNormal="t" primaryShifted="T"
associatedNormal="2" associatedShifted="2"/>
<key id="21"
primaryNormal="y" primaryShifted="Y"
associatedNormal="3" associatedShifted="3"/>
<key id="22"
primaryNormal="u" primaryShifted="U"
associatedNormal="*" associatedShifted="*"/>
<key id="23"
primaryNormal="i" primaryShifted="I"
associatedNormal="+" associatedShifted="+"/>
<key id="24"
primaryNormal="o" primaryShifted="O"
associatedNormal="/" associatedShifted="\\"/>
<key id="25"
primaryNormal="p" primaryShifted="P"
associatedNormal="prefix:@" associatedShifted="prefix:@"/>

<!-- Second row -->

<key id="30"
primaryNormal="a" primaryShifted="A"
associatedNormal="^" associatedShifted="$"/>
<key id="31"
primaryNormal="s" primaryShifted="S"
associatedNormal="|" associatedShifted="&"/>
<key id="32"
primaryNormal="d" primaryShifted="D"
associatedNormal="`" associatedShifted="%"/>
<key id="33"
primaryNormal="f" primaryShifted="F"
associatedNormal="4" associatedShifted="4"/>
<key id="34"
primaryNormal="g" primaryShifted="G"
associatedNormal="5" associatedShifted="5"/>
<key id="35"
primaryNormal="h" primaryShifted="H"
associatedNormal="6" associatedShifted="6"/>
<key id="36"
primaryNormal="j" primaryShifted="J"
associatedNormal="#" associatedShifted="#"/>
<key id="37"
primaryNormal="k" primaryShifted="K"
associatedNormal="(" associatedShifted="("/>
<key id="38"
primaryNormal="l" primaryShifted="L"
associatedNormal=")" associatedShifted=")"/>
<key id="14"
meta="META_DEL" allowRepeat="true"/>

<!-- Third row -->

<key id="44"
primaryNormal="z" primaryShifted="Z"
associatedNormal="~" associatedShifted="~"/>
<key id="45"
primaryNormal="x" primaryShifted="X"/>
<key id="46"
primaryNormal="c" primaryShifted="C"/>
<key id="47"
primaryNormal="v" primaryShifted="V"
associatedNormal="7" associatedShifted="7"/>
<key id="48"
primaryNormal="b" primaryShifted="B"
associatedNormal="8" associatedShifted="8"/>
<key id="49"
primaryNormal="n" primaryShifted="N"
associatedNormal="9" associatedShifted="9"/>
<key id="50"
primaryNormal="m" primaryShifted="M"
associatedNormal="0" associatedShifted="0"/>
<key id="51"
primaryNormal="," primaryShifted=";"
associatedNormal=";" associatedShifted=";"/>
<key id="52"
primaryNormal="." primaryShifted=":"
associatedNormal=":" associatedShifted=":"/>
<key id="28"
meta="META_ENTER"
primaryNormal="\n" primaryShifted="\n"
associatedNormal="\n" associatedShifted="\n"/>

<!-- Fourth row -->

<key id="56"
meta="META_ALT_LEFT"/>
<key id="42"
meta="META_SHIFT_LEFT"/>
<key id="214"
primaryNormal="prefix:?" primaryShifted="!"
associatedNormal="!" associatedShifted="!"/>
<key id="57"
primaryNormal=" " primaryShifted=" "
associatedNormal=" " associatedShifted=" "/>
<key id="15"
primaryNormal=" " primaryShifted=" "
associatedNormal=" " associatedShifted=" "/>
<key id="40"
primaryNormal="&apos;" primaryShifted="""
associatedNormal="-" associatedShifted="_"/>
<key id="216"
meta="META_SYM"/>

<!-- Extra keys -->

<key id="103"
meta="META_DPAD_LEFT" allowRepeat="true"/>
<key id="108"
meta="META_DPAD_RIGHT" allowRepeat="true"/>
</keylayout>

You could copy It to "/system/usr/keyboard-config/layouts/" directory (backing up the original into current local directory):

pc ~$ adb pull /system/usr/keyboard-config/layouts/qwerty-en.xml .
pc ~$ adb push qwerty-en.xml /sdcard/
pc ~$ adb shell
mimmi /$ su -
mimmi /# ash
mimmi /# mount -o remount,rw /system
mimmi /# cp /sdcard/qwerty-en.xml /system/usr/keyboard-config/layouts/
mimmi /# mount -o remount,ro /system
mimmi /# exit
mimmi /# exit
mimmi /$ exit

"ash" execution is optional: I use It because of the tab-completion :)

I use "qwerty-en.xml" as keyprint, but you could adapt to yours as well ;)

Cheers,

ff0000.it