Respostas:
Encontrei uma solução.
Funciona se eu colocar isso na minha configuração:
(setq neo-window-fixed-size nil)
A única desvantagem é que o neotree não se lembra da largura da janela. Quando você alterna os buffers, ela redefine a largura para o valor padrão. Há um problema relacionado no github.
Coloque isso no seu arquivo de configuração do emacs:
;; Set the neo-window-width to the current width of the
;; neotree window, to trick neotree into resetting the
;; width back to the actual window width.
;; Fixes: https://github.com/jaypei/emacs-neotree/issues/262
(eval-after-load "neotree"
'(add-to-list 'window-size-change-functions
(lambda (frame)
(let ((neo-window (neo-global--get-window)))
(unless (null neo-window)
(setq neo-window-width (window-width neo-window)))))))
(setq neo-window-width 20)
a qual o neotree reabrirá - portanto, deve haver uma maneira de alterar o valor de acordo com a largura usada anteriormente, se você tiver tempo, inclinação e costeletas emacs-lisp.