El smartparens-mode
no se adapta a mi estilo de edición. Sin embargo, si intento deshabilitarlo globalmente en spacemacs, el modo se vuelve a habilitar:
(smartparens-global-mode -1)
¿Cómo desactivo el modo smartparens?
fuente
El smartparens-mode
no se adapta a mi estilo de edición. Sin embargo, si intento deshabilitarlo globalmente en spacemacs, el modo se vuelve a habilitar:
(smartparens-global-mode -1)
¿Cómo desactivo el modo smartparens?
Puede agregar smartparens
a la dotspacemacs-excluded-packages
lista de su archivo de puntos.
Spacemacs utiliza el concepto de alternar para habilitar / deshabilitar modos menores por búfer. Las palancas se agrupan en SPC ty SPC T, pero solo cambian por el búfer actual. Puede deshabilitar temporalmente los smartparens para el búfer actual presionando SPC t p( spacemacs/toggle-smartparens
).
Pero si desea deshabilitar smartparens para cada búfer de forma permanente, configure spacemacs/toggle-smartparens-globally-off
su dotspacemacs/user-config
función. Para hacer eso, presione SPC f e d, esto abrirá su .spacemacs
archivo. Luego, asegúrese de tener algo como esto:
(defun dotspacemacs/user-config ()
"Configuration function for user code.
This function is called at the very end of Spacemacs initialization after
layers configuration. You are free to put any user code."
; other code
(spacemacs/toggle-smartparens-globally-off)
; other code
)
Desde https://github.com/syl20bnr/spacemacs/issues/1603#issuecomment-213553034 :
smartparens-global-mode es un modo global. Si está habilitado, obtiene el modo smartparens en cada búfer. Desactivarlo no le impide activar el modo smartparens en cualquier lugar. (Eso sería una tontería, porque si eso fuera cierto, no habría forma de habilitar selectivamente smartparens. Sería en todas partes o en ninguna parte, dependiendo de ese modo). De hecho, smartparens-global-mode ya está desactivado por defecto.
Spacemacs habilita el modo smartparens en todas las memorias intermedias de programación activándolo en el gancho. Por lo tanto, debe eliminar la función de prog-mode-hook.
Para eliminar la función de prog-mode-hook
, agregue la siguiente línea dotspacemacs/user-config
en .spacemacs
:
(remove-hook 'prog-mode-hook #'smartparens-mode)
Si no tiene el modo smartparens desactivado de forma predeterminada, también puede agregar la siguiente línea:
(spacemacs/toggle-smartparens-globally-off)
Tenga en cuenta que si excluye el smartparens
paquete como se sugiere en otra respuesta, perderá algunas otras características como SPC j n
( sp-newline
).
Agregue ganchos de entrada / salida para el modo de inserción malvado:
;; Defeat smartparens-mode in evil mode
(add-hook 'evil-insert-state-entry-hook 'turn-off-smartparens-mode)
(add-hook 'evil-insert-state-exit-hook 'turn-on-smartparens-mode)
En el modo híbrido de spacemacs, aplique a los ganchos de mal estado híbrido:
;; Alternative way to defeat smartparens-mode in hybrid mode
(add-hook 'evil-hybrid-state-entry-hook 'turn-off-smartparens-mode)
(add-hook 'evil-hybrid-state-exit-hook 'turn-on-smartparens-mode)
Aquí se explica cómo habilitar selectivamente los smartparens solo en modos específicos
(defun dotspacemacs/user-config ()
(require 'smartparens)
(remove-hook 'prog-mode-hook #'smartparens-mode)
(remove-hook 'markdown-mode-hook #'smartparens-mode)
(spacemacs/toggle-smartparens-globally-off)
(add-hook 'clojure-mode-hook '(lambda () (smartparens-mode 1)) t))