Next: , Previous: , Up: Character Attributes   [Contents][Index]


9.1 Introduction

Character attributes provide a global database of information about characters. This facility is similar to, but more general than, the syntax tables of other editors such as EMACS. For example, you should use character attributes for commands that need information regarding whether a character is whitespace or not. Use character attributes for these reasons:

  1. If this information is all in one place, then it is easy the change the behavior of the editor by changing the syntax table, much easier than it would be if character constants were wired into commands.
  2. This centralization of information avoids needless duplication of effort.
  3. The syntax table primitives are probably faster than anything that can be written above the primitive level.

Note that an essential part of the character attribute scheme is that character attributes are global and are there for the user to change. Information about characters which is internal to some set of commands (and which the user should not know about) should not be maintained as a character attribute. For such uses various character searching abilities are provided by the function find-pattern.

Constant: syntax-char-code-limit

The exclusive upper bound on character codes which are significant in the character attribute functions. Font and bits are always ignored.


Next: Character Attribute Names, Previous: Character Attributes, Up: Character Attributes   [Contents][Index]