Next: , Previous: , Up: Modifying Format Tables   [Contents][Index]

4.3.2 Casing

In the Common Lisp standard, the case of a directive character is ignored. On the contrary, case does matter to FoCus. A format table contains separate entries for upcase and downcase characters (when applicable of course). By the way, this begins as soon as you create a new table (see Creating Format Tables and remember the optional INITIALLY argument to make-format-table).

By default, the behavior of set-format-directive conforms to that of the standard however: when you set a new directive character that has both an upcase and a downcase version, both versions get the definition.

You can change this behavior by passing a nil value to the :both-case keyword argument, hence distinguishing between case versions. As an example, consider the case1 where you find yourself short of directive characters. What you can do is retain the standard meaning for all the upcase versions and define new custom directives for the downcase ones. Or the other way around. yOu gEt tHe iDeA.



so to speak…