Function: set-char-table-range

set-char-table-range is a function defined in chartab.c.

Signature

(set-char-table-range CHAR-TABLE RANGE VALUE)

Documentation

Set the value in CHAR-TABLE for a range of characters RANGE to VALUE.

RANGE should be t (for all characters), nil (for the default value), a cons of character codes (for characters in the range), or a character code. Return VALUE.

View in manual

Probably introduced at or before Emacs version 19.30.

Source Code

// Defined in /usr/src/emacs/src/chartab.c
{
  CHECK_CHAR_TABLE (char_table);
  if (EQ (range, Qt))
    {
      int i;

      set_char_table_ascii (char_table, value);
      for (i = 0; i < chartab_size[0]; i++)
	set_char_table_contents (char_table, i, value);
    }
  else if (NILP (range))
    set_char_table_defalt (char_table, value);
  else if (CHARACTERP (range))
    char_table_set (char_table, XFIXNUM (range), value);
  else if (CONSP (range))
    {
      CHECK_CHARACTER_CAR (range);
      CHECK_CHARACTER_CDR (range);
      char_table_set_range (char_table,
			    XFIXNUM (XCAR (range)), XFIXNUM (XCDR (range)), value);
    }
  else
    error ("Invalid RANGE argument to `set-char-table-range'");

  return value;
}