Я просто задал связанный с этим вопрос (вопрос setq), но он отчетливо отличался, поэтому я решил ответить на этот вопрос.
В моем .emacs
файле я определяю привязку ключа к команде replace-string
:
(define-key global-map "\C-r" 'replace-string)
replace-string
выполняет основной поиск и заменяет. Предполагая, что первая буква строки поиска имеет строчные буквы, если case-fold-search
- nil
, то replace-string
выполняет поиск с учетом регистра, в противном случае поиск без учета регистра.
Проблема заключается в том, что case-fold-search
управляет "чувствительностью к регистру" как "поиск" (например, команда search-forward
), так и "поиск и замена" (например, команда replace-string
).
Вопрос заключается в том, как сделать команду JUST командой replace-string
(или что-либо связанное с C-r
) с учетом регистра, оставив search-forward
без учета регистра, как это было по умолчанию.
Возможно, мне нужно установить case-fold-search
в nil
только для команды replace-string
, но я не уверен, как это сделать.