【问题标题】:Emacs + cider: Autocomplete defprotocol methods. Possible or not?Emacs + cider:自动完成 defprotocol 方法。可能与否?
【发布时间】:2020-10-25 13:12:54
【问题描述】:

是否可以在 Emacs 中自动完成 defprotocol 方法?

一个例子:

(defprotocol Foo
  (bar [this])
  (baz [this])

(deftype Qux [a b c]
  Foo
  (bar [this] a)
  (baz [this] b))

(bar (Qux. 1 2 3))
(baz (Qux. 1 2 3))

我正在寻找这样的东西(在伪代码中):

;; (1)
(`M-Tab` (Qux. 1 2 3)) 
;;
;; or (2):
(-> (Qux. 1 2 3) `M-Tab`)

使用barbaz 选项触发下拉菜单。 作为一种解决方法,我目前正在使用 (2),但它至少需要存在第一个字符(自动完成所有选项不起作用)。

有没有更好的方法呢? 谢谢

【问题讨论】:

  • 对我来说,自动完成也适用于情况 (1) 当一个字符存在时。它似乎并没有具体了解属于该协议的功能,CIDER 只是了解范围内的功能。如果没有第一个字符,completion-at-point 似乎不会切换。也许您可以尝试在 clojurians.slack.org 的 #cider 上提问?
  • @ErwinRooijakkers 如果您想发表您的评论作为答案,我会接受它,因为好吧.. 它回答了问题:)
  • 耶!谢谢你。积分!

标签: emacs clojure autocomplete cider


【解决方案1】:

对我来说,自动完成也适用于情况 (1) 当一个字符存在时。它似乎并没有具体了解属于该协议的功能,CIDER 只知道范围内的功能。如果没有第一个字符,completion-at-point 似乎不会切换。也许您可以尝试在 clojurians.slack.org 的 #cider 上提问?

?

【讨论】:

    猜你喜欢
    • 2014-07-09
    • 2020-10-24
    • 1970-01-01
    • 1970-01-01
    • 2011-05-04
    • 2015-08-07
    • 2014-05-17
    • 1970-01-01
    • 2013-11-01
    相关资源
    最近更新 更多