Special characters#
If you define a class with a name having the: character in it – typically when you give the namespace of the class – it may have a conflict with the french (or frenchb or francais) option of the babel package. Indeed, these options add a white-space before the: character if the writer forgot it, that is a problem for the access operator::. If we take the example of class definition, we should obtain:
\umlclass{namespace::A}{
+ n : uint \\
\umlstatic{-- i : int} \\
\# r : const float
}{
+ setA(i : int) : void \\
\umlvirt{\# getA() : A}
}
The solution is to use a specific macro given by these options of babel package you have to use in the preamble of your document:
\frenchbsetup{AutoSpacePunctuation=false}