If it doesn't work you can change by hand in ...Ubisoft\SilentHunterIII\data\Cfg\commands_??.cf g.
There are plenty of commands hungry to be asigned to a key.
[Cmd343]
Name=WP_Identify_target
Ctxt=1
MnID=0x3F130002
Str=1073
Key0=0x58,Cs,"X"

<= add this line to get the identification pressing Shift+X
Reads: Key 0x58 (code for X), executed by crew (C) Shift (s), "X"
Keycodes can be found at the other commands or from "Out of Game resources"
[Cmd344]
Name=WP_Solution_to_target
Ctxt=1
MnID=0x3F130003
Str=1074
Key0=0x58,Cc,"X"

<= add this line to get targetsolution pressing CTRL+X
Reads: Key 0x58, executed by crew (C) CTRL (c), "X"
Pressing X toggles your snorkel up and down afair. This will work further on!
Btw someone wants to max TC by pressing a key only once?
Nice to race the Kiel Channel.
[Cmd5]
Name=Time_compr_increase
Ctxt=1,2,6,9
MnID=0x3F010001
Key0=0x6B,,"Npad +"
Key1=0x56,R,"V"

<= add this line to press V for max TC
Reads: 2nd Key 0x56 (code for V), Repeated (R), "V"
IMPORTANT: to make it work disable the "focus on event camera" to free "V" !! Ever used it?
[Cmd30]
Name=Focus_on_event_cam
Ctxt=1
;Key0=0x56,,"V"

<= adding ";" tells the game to ignore the line
You may even add a second command to "Npad +" - I didn't try this because the Shift key is far away from Npad +
[Cmd5]
Name=Time_compr_increase
Ctxt=1,2,6,9
MnID=0x3F010001
Key0=0x6B,,"Npad +"
Key1=0x6B,Rs,"Npad +" <= add this to max TC by pressing Shift+Npad +
Reads: 2nd Key 0x6B ,Repeated (R) Shift (s), "Npad +"
As allways: bacdafucup!
Shall I call it the "SingleKeyMaxTCMod"? SKMTC by Mittelwaechter :p
Don't know weather someone came up with this before. If not one of the cracks may make it JSGME compatible. I never did some research on how to feed JSGME.
Edit: added red

to mark the lines for you to copy and paste!
(Including a ";" to be copied at the right place

)