From 36ac08f3fa5e1d078151fc7f7e7f31d77e242380 Mon Sep 17 00:00:00 2001 From: Marcelo dos Santos Date: Sun, 12 Aug 2018 13:13:25 -0300 Subject: [PATCH 1/4] Company-capf needs to be the first --- modules/lang/racket/config.el | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/modules/lang/racket/config.el b/modules/lang/racket/config.el index 3d0d9c4a8..42efe2b52 100644 --- a/modules/lang/racket/config.el +++ b/modules/lang/racket/config.el @@ -5,8 +5,6 @@ :config (set-popup-rule! "^\\*Racket REPL" :size 10 :select t) (set-repl-handler! 'racket-mode #'+racket/repl) - (set-company-backend! 'racket-mode - '(company-abbrev company-dabbrev-code company-dabbrev company-files)) (set-lookup-handlers! 'racket-mode :definition #'racket-describe :documentation #'racket-doc) @@ -19,6 +17,14 @@ :symbols '(("#true" "#false"))) (setq racket-smart-open-bracket-enable t) + (when (featurep! :completion company) + (setq-local company-backends + '(company-capf + company-abbrev + company-dabbrev-code + company-dabbrev + company-files + company-yasnippet))) (add-hook! racket-mode #'(;; 3rd-party functionality From 2f7282af12e1624a2b29ab75e0669794ab174701 Mon Sep 17 00:00:00 2001 From: Marcelo dos Santos Date: Sun, 12 Aug 2018 13:52:35 -0300 Subject: [PATCH 2/4] Input-method optional --- modules/lang/racket/config.el | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/lang/racket/config.el b/modules/lang/racket/config.el index 42efe2b52..fe4b3770e 100644 --- a/modules/lang/racket/config.el +++ b/modules/lang/racket/config.el @@ -1,7 +1,7 @@ ;;; lang/racket/config.el -*- lexical-binding: t; -*- (def-package! racket-mode - :hook ((racket-mode racket-repl-mode) . racket-unicode-input-method-enable) + :hook (racket-repl-mode . racket-unicode-input-method-enable) :config (set-popup-rule! "^\\*Racket REPL" :size 10 :select t) (set-repl-handler! 'racket-mode #'+racket/repl) @@ -70,4 +70,5 @@ :n "a" #'racket-align :n "A" #'racket-unalign :nv ";" #'comment-dwim - :nv "\\" #'indent-region)) + :nv "\\" #'indent-region + :n "i" #'racket-unicode-input-method-enable)) From f143a03221d66e2451e17f7907aea5977e53eda6 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Mon, 13 Aug 2018 02:59:38 +0200 Subject: [PATCH 3/4] Use set-company-backend! Fixes incorrect usage of setq-local in a global context. --- modules/lang/racket/config.el | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/modules/lang/racket/config.el b/modules/lang/racket/config.el index fe4b3770e..5d75f8300 100644 --- a/modules/lang/racket/config.el +++ b/modules/lang/racket/config.el @@ -5,6 +5,8 @@ :config (set-popup-rule! "^\\*Racket REPL" :size 10 :select t) (set-repl-handler! 'racket-mode #'+racket/repl) + (set-company-backend! 'racket-mode + '(company-capf company-abbrev company-dabbrev-code company-dabbrev company-files company-yasnippet)) (set-lookup-handlers! 'racket-mode :definition #'racket-describe :documentation #'racket-doc) @@ -17,14 +19,6 @@ :symbols '(("#true" "#false"))) (setq racket-smart-open-bracket-enable t) - (when (featurep! :completion company) - (setq-local company-backends - '(company-capf - company-abbrev - company-dabbrev-code - company-dabbrev - company-files - company-yasnippet))) (add-hook! racket-mode #'(;; 3rd-party functionality From b8f1b90744144e5bfcdef81fa3b5840e29c79c09 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Mon, 13 Aug 2018 23:57:10 +0200 Subject: [PATCH 4/4] Remove set-company-backend! Since racket-mode uses company-capf, it isn't necessary to set any default backends for it. --- modules/lang/racket/config.el | 2 -- 1 file changed, 2 deletions(-) diff --git a/modules/lang/racket/config.el b/modules/lang/racket/config.el index 5d75f8300..18a896d1f 100644 --- a/modules/lang/racket/config.el +++ b/modules/lang/racket/config.el @@ -5,8 +5,6 @@ :config (set-popup-rule! "^\\*Racket REPL" :size 10 :select t) (set-repl-handler! 'racket-mode #'+racket/repl) - (set-company-backend! 'racket-mode - '(company-capf company-abbrev company-dabbrev-code company-dabbrev company-files company-yasnippet)) (set-lookup-handlers! 'racket-mode :definition #'racket-describe :documentation #'racket-doc)