Emacs: да-или-нет-р по-русски? - PullRequest
4 голосов
/ 27 января 2012

Я использую

(fset 'yes-or-no-p 'y-or-n-p) ;; Make all "yes or no" prompts show "y or n" instead.

, чтобы ответить на вопросы «да или сейчас».Есть ли способ добавить российские аналоги в качестве возможных ответов?Так что y и русская буква н будут обозначать «да», а n и т будут означать «нет»?

1 Ответ

4 голосов
/ 27 января 2012

Согласно документации y-or-n-p

Задайте пользователю вопрос "у или п".Верните t, если ответ «y».Принимает один аргумент, который является строкой для отображения, чтобы задать вопрос.Это должно заканчиваться пробелом;y-or-n-p' adds (y или n) 'к нему.Подтверждение ответа не требуется;достаточно одного символа.Также принимает пробел, чтобы означать да, или Удалить, чтобы означать нет.(На самом деле он использует привязки в query-replace-map'; see the documentation of that variable for more information. In this case, the useful bindings are act ', skip', recenter' и `quit '.)

Поэтому вам нужно добавить ключи к query-replace-map Что-то вроде этого

;; use the Russian 'н' (which is on the same
;; physical key as 'y') or 'т' (which shares
;; the key with 'n') in query-replace-map
(define-key query-replace-map "н" 'act)
(define-key query-replace-map "т" 'skip)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...