Customizing Input Bindings
Method One: The In-Game Menu
Using the in-game Controls menu you can rebind just about any in-game action to any key/axis you wish.
By enabling and disabling controllers you can choose what type of inputs the game should use.
For more info on advanced editing or adding new controller types, see below.
Method Two: Editing The Bindings File
The game reads the bindings file and uses the actions it contains. You can directly modify the XML file to change how the game responds to input.
Be careful when editing the file as any syntax errors will render it unusable. You can always delete the file to have the game recreate it from the defaults if you get stuck with a broken file.
Using a text editor with XML support will make it easier to work with. Notepad++ is free and works well for this purpose.
Adding support for a new controller