Cuando hago M-x query-replace
para reemplazar todas las apariciones de v
by w
, entonces también coincide V
(mayúscula V
). ¿Cómo forzar a emacs a encontrar solo minúsculas v
?
query-replace
case-folding
Nombre
fuente
fuente
Respuestas:
O vincule esa variable (opción) en su propio comando que, de lo contrario, es solo un contenedor
query-replace
. Esto tiene la ventaja de que no cambia el valor de la variable para uso general, fuera del reemplazo de consultas.Vea también variable
case-replace
, que controla el caso para el texto de reemplazo.Vea también
C-h f query-replace
, donde dice, por ejemplo:Vea también los comentarios a continuación, y el error Emacs # 20687 , donde muestra cómo puede parchar
perform-replace
para permitirle alternar el plegado de la caja durantequery-replace
.Tenga en cuenta también que el código existente para
perform-replace
enlacescase-fold-search
de esta manera (tenga en cuenta las variables de las que depende):fuente
case-fold-search
sobre la marcha como podemos hacer durante elisearch
uso de laM-c
unión. Pero desafortunadamentequery-replace
tiene su mapa de modos.query-replace-map
:(defun toggle-case () (interactive) (setq case-fold-search (not case-fold-search)))
y(define-key query-replace-map "C" 'toggle-case)
. Pero el manejo de claves en ese mapa está codificadoperform-replace
. Es posible que deseeM-x report-emacs-bug
, para que elperform-replace
código sea más abierto, de modo que se puedan agregar claves al mapa. Al menos debería tener una cláusula alternativa que solo invoque el cmd vinculado a la clave.query-replace-map
antes.perform-replace
para agregar unacond
cláusula adicional que invoque la clave que ha definidoquery-replace-map
. Ponga la nueva cláusula justo antes de lat
cláusula general. Esta es la nueva cláusula:(def (call-interactively def))
. No podría ser más simple.(customize-set-variable case-fold-search nil)
da el errorcustomize-set-variable: Attempt to set a constant symbol: nil
. También probé tanto(setq case-fold-search nil)
, y(setq case-replace nil)
aunque la consulta aún coincidir con el V. mayúscula