If I just type 'ae', how does it know what I want it to replace the 'ae' with??
I'm not sure I follow your question, but below are two attempts at answering how I understood your question:
I guess that CAPshift decides what to replace the 'ae' with by essentially examining what appears to the right of the equals sign in its settings file for the line that begins with:
The default settings file contains the section:ae=æ
and I guess that the first line would match if the selected characters were ae because the first line has ae to the left of the equals sign. The ae is then subsequently replaced with æ -- or in other words, what appears to the right hand side of the equals line.
Much longer answer (warning: may require time and patience to read
The settings file that CAPshift creates ends with what look like
the following lines (actually it depends on which I application I use to view the settings file, but more on that in a bit):
To get these lines to show up here on the forums, copying and pasting lines didn't work (the portions to the right of the equals signs appeared garbled) for me, so I did a search for what I thought were the proper characters at Wikipedia (e.g. æ
). Luckily, searching for ae (that's two characters) did eventually turn something up and I could see æ (one character) in my browser. I tried copying and pasting that with fortunate successful results. For reference, the Wikipedia page had a "See Also" section
which listed the other characters so that was a time-saver. Also, each of the individual Wikipedia pages listed both the lower case versions and the upper case versions.
On the computer I'm using at the moment, depending on the application I use to view the settings file, those lines appear different (e.g. Notepad here doesn't show those lines very nicely, whereas Notepad++
does display them nicely). (I just noticed that I can view the settings file appropriately by dragging it on to a browser window (Firefox and K-Meleon handled it fine, though Internet Explorer asked me whether I wanted to save it).) 
So back to the main point -- please recall the series of steps from before:
1. Open notepad or some other editor
2. Type the two letters a and e
3. Select them both
4. Hold down the CapsLock key until the menu pops up
5. Choose the "Replace user chars" menu item
As I understand it, once step 5 is performed, CAPshift does what amounts to the following sort of thing:
1. Examine which characters have been selected
2. If the selected characters contain matching sequences of characters as specified on the left hand side of the equals signs (from the relevant portion of the settings file), replace them with what appears to the right hand side of the equals sign (for the corresponding settings line).
So as an example, If I select the text:
and use the replace user chars functionality, I get:
I guess this is because ae matches the first of the relevant settings lines:
and oe matches the second relevant settings line:
Note that it appears that the order of the settings lines may make a difference. When I tried the replace user chars functionality on:
Perhaps CAPshift prioritizes for sequences that appear earlier in the settings file -- the settings line starting with ae= precedes the settings line which starts with aa=:ae=æ
I tested this by changing the order of the settings lines to:aa=åae=æ
Subsequently using the replace user chars functionality on:
instead of the original:
I hope at least some of that was useful -- if you have further questions on this matter, please mention it.
 I'm not sure why the results are different, but my suspicion is that it has to do with file encodings and the fact that the programming language which CAPshift is written in doesn't (yet) support the Unicode file encoding. May be someone else can give an appropriate explanation of this