C# 모드에서 자동 완성 버그

Emacs에서 C# 자동완성은 omnisharp-emacs가 제공하는 company-omnisharp를 사용한다. 그런데 얼마 전부터 자동완성은 되는데, 자동완성 뒤의 커서가 잘못된 위치에 있었다. 아래 그림처럼 bonusStat을 완성했는데 커서가 b앞에 있다.

M-x toggle-debug-on-error 를 이용해서 찾아본 결과 yas-minor-mode와 문제가 있는 것 같다. 그래서 yas-minor-mode를 껐다.

(use-package omnisharp
  :bind
  (:map csharp-mode-map
	("<f12>" . omnisharp-go-to-definition)
	("S-<f12>" . omnisharp-find-usages))
  :hook
  (omnisharp-mode . (lambda () (yas-minor-mode -1)))
  :config
  ;;(setq omnisharp-server-executable-path "~/.emacs.d/.cache/omnisharp/server/v1.32.18/run")
  (setq omnisharp-server-executable-path "~/.vscode/extensions/ms-vscode.csharp-1.21.0/.omnisharp/1.34.0/run")
  (add-to-list 'company-backends #'company-omnisharp))

결과적으로 잘 된다.

댓글

Comments powered by Disqus