For example:
NLSPATH="/usr/share/nls/%N.cat"
defines that catopen() should look for all message catalogues in the directory /usr/share/nls, where the catalogue name should be constructed from the name parameter passed to catopen() (%N), with the suffix .cat.
Substitution fields consist of a "%" symbol, followed by a single-letter keyword. The following keywords are currently defined:
An empty string is substituted if the specified value is not currently defined. The separators underscore (_) and period (.) are not included in %t and %c substitutions.
Templates defined in NLSPATH are separated by colons (:). A leading or two adjacent colons :: is equivalent to specifying %N. For example:
NLSPATH=":%N.cat:/usr/share/locale/%L/%N.cat"
indicates to catopen() that it should look for the requested message catalogue in name, name.cat and /usr/share/locale/category/name.cat, where category is the value of the LC_MESSAGES category of the current locale.
Users should not set the NLSPATH variable unless they have a specific reason to override the default system path. Doing so causes undefined behaviour in the standard utilities.