Этот вопрос прямо противоположен приведенному ниже вопросу.
Когда я использую Slime внутри Doom Emacs, я не могу ввести
(defun square (x)
(* x x))
Когда я набираю (defun square (x))
, автоматически заполняются две скобки, а когда я набираю enter
, отображается slime REPL
:
CL-USER> (defun square (x))
; in: DEFUN SQUARE
; (SB-INT:NAMED-LAMBDA SQUARE
; (X)
; (BLOCK SQUARE))
;
; caught STYLE-WARNING:
; The variable X is defined but never used.
;
; compilation unit finished
; caught 1 STYLE-WARNING condition
SQUARE
Я не знаю, какой пакет DOOM использует для автозаполнения и как его отключить?
smartparens
, так что попробуйтеM-x smartparens-mode
в буфере слизи. Кроме того, вы должны иметь возможность использоватьopen-line
, привязанный кC-o
в обычном emacs, чтобы получить новую строку даже с помощью smartparens. - person Rorschach   schedule 11.01.2021C-j
, чтобы добавить новые строки, см. stackoverflow.com/q/47283937/124319 - person coredump   schedule 11.01.2021C-o
у меня не работает. НоC-j
работает. Для третьего ответа, когда мы отключаем глобально с помощью(after! smartparens (smartparens-global-mode -1))
, я не получаю умные скобки даже в обычном редакторе lisp. Я предпочитаю первый ответ. - person Sreekumar R   schedule 11.01.2021after!
, поскольку это устаревший метод. Ссылка предлагает вместо этого использовать(remove-hook 'doom-first-buffer-hook #'smartparens-global-mode)
. - person ad absurdum   schedule 11.01.2021