ada-mode: Non-standard file names
3.1 Non-standard file names
===========================
By default, Ada mode is configured to use the GNAT file naming
convention, where file names are a simple modification of the Ada names,
and the extension for specs and bodies are ‘.ads’ and ‘.adb’,
respectively.
Ada mode uses the file extensions to allow moving from a package body
to the corresponding spec and back.
Ada mode supports a list of alternative file extensions for specs and
bodies.
For instance, if your spec and bodies files are called ‘UNIT_s.ada’
and ‘UNIT_b.ada’, respectively, you can add the following to your
‘.emacs’ file:
(ada-add-extensions "_s.ada" "_b.ada")
You can define additional extensions:
(ada-add-extensions ".ads" "_b.ada")
(ada-add-extensions ".ads" ".body")
This means that whenever Ada mode looks for the body for a file whose
extension is ‘.ads’, it will take the first available file that ends
with either ‘.adb’, ‘_b.ada’ or ‘.body’.
Similarly, if Ada mode is looking for a spec, it will look for ‘.ads’
or ‘_s.ada’.
If the filename is not derived from the Ada name following the GNAT
convention, things are a little more complicated. You then need to
rewrite the function ‘ada-make-filename-from-adaname’. Doing that is
beyond the scope of this manual; see the current definitions in
‘ada-mode.el’ and ‘ada-xref.el’ for examples.