LINUX.ORG.RU

Emacs + ispell и клавишаTab

 ,


0

1

Суть такова, что при нажатии на Tab запускается проверка орфографии, а меня это крайне нервирует. В файле ~/.emacs есть такие строчки, относящиеся к делу:

(if (executable-find "hunspell")
    (progn
      (setq ispell-program-name "hunspell")
      (setq ispell-really-aspell nil)
      (setq ispell-really-hunspell t)
      (setq ispell-dictionary "en-ru")
    )
)

(global-set-key (kbd "C-i") 'ispell)
Как отключить или переназначить эту гадость с клавиши Tab не нагуглил. Может есть у кого индейки?

Ой-ли, странно всё это, но если C-i заменить на C-l, то проверка по Tab не запускается:

(global-set-key (kbd "C-l") 'ispell)
С чего бы это?

marmeladka89 ()
Ответ на: комментарий от marmeladka89
51.3.9 Named ASCII Control Characters
-------------------------------------

<TAB>, <RET>, <BS>, <LFD>, <ESC> and <DEL> started out as names for
certain ASCII control characters, used so often that they have special
keys of their own.  For instance, <TAB> was another name for ‘C-i’.
Later, users found it convenient to distinguish in Emacs between these
keys and the corresponding control characters typed with the <Ctrl> key.
Therefore, on most modern terminals, they are no longer the same: <TAB>
is different from ‘C-i’.

   Emacs can distinguish these two kinds of input if the keyboard does.
It treats the special keys as function keys named ‘tab’, ‘return’,
‘backspace’, ‘linefeed’, ‘escape’, and ‘delete’.  These function keys
translate automatically into the corresponding ASCII characters _if_
they have no bindings of their own.  As a result, neither users nor Lisp
programs need to pay attention to the distinction unless they care to.

   If you do not want to distinguish between (for example) <TAB> and
‘C-i’, make just one binding, for the ASCII character <TAB> (octal code
011).  If you do want to distinguish, make one binding for this ASCII
character, and another for the function key ‘tab’.

   With an ordinary ASCII terminal, there is no way to distinguish
between <TAB> and ‘C-i’ (and likewise for other such pairs), because the
terminal sends the same character in both cases.

(info "(emacs) Named ASCII Chars")

Zmicier ★★★★★ ()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от ados

как только в emacs переделать Tab в что-то наподобие Ctrl?

Вы спрашиваете как на уровне ГНУ Емакса превратить в модификатор обычную клавишу? Никак.

Zmicier ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.