Вы можете использовать (set-char-table-parent <newtable> standard-display-table)
для только что созданной таблицы.
Пока я здесь: вы можете упростить свой код, используя define-minor-mode
.Другие виды упрощений:
(let ( (mkhedruli-language nil) )
(if (equal mkhedruli-active nil)
(setq mkhedruli-language "Georgian")
(setq mkhedruli-language nil))
(with-current-buffer (current-buffer)
(if (equal mkhedruli-language nil)
(setq mkhedruli-active nil)
(setq mkhedruli-active t)))
превращается в
(let ( (mkhedruli-language nil) )
(setq mkhedruli-language
(if (equal mkhedruli-active nil)
"Georgian"
nil))
(if (equal mkhedruli-language nil)
(setq mkhedruli-active nil)
(setq mkhedruli-active t))
, что может превратиться в
(let ((mkhedruli-language
(if mkhedruli-active nil "Georgian"))))
(setq mkhedruli-active
(if mkhedruli-language t nil))
, хотя вы можете предпочесть просто переключить два:
(setq mkhedruli-active (not mkhedruli-active))
(let ((mkhedruli-language
(if mkhedruli-active "Georgian"))))
и даже избавиться от mkhedruli-language
в целом, поскольку вы проверяете только, является ли он nil
, и вместо этого вы можете проверить mkhedruli-active
, чтобы получить ту же информацию.