有没有人知道如何或是否可以在drScheme/Racket中使用括号自动完成
发布于 2011-04-11 05:13:48
DrRacket不会自动完成闭括号(我假设这就是您所问的),但它会插入正确的paren形状--因此您可以快速按]]]几次,直到您关闭正确的关卡。
但是作为附带说明,如果始终保持括号(所有形状)和双引号等的平衡,则在任何sexpr语言(或实际上任何其他语言)中工作都会容易得多。通过让Alt-(插入一对括号并将光标留在中间,DrRacket很容易做到这一点。DrRacket也做同样的事情,但是Emacs对方括号、花括号和双引号有类似的键。这种风格的工作非常有效,因为你永远不需要计算花边,甚至不需要查看高亮部分。处理代码也很容易,因为这也是一样的--只要代码缩进正确(这意味着括号会淡化为您不会有意识地看到的内容)。
发布于 2015-03-08 01:22:38
我同意Eli的观点,即始终保持双亲平衡更容易,并且想补充说,实现内置行为并从那里开始定制所有你想要的东西是很容易的。在DrRacket中,通过“编辑/快捷键绑定/添加用户定义的快捷键绑定”,你可以像下面这样添加一个文件,它将一个绑定添加到“could #”中,以便在光标(或当前选择项周围,如果有的话)插入一对括号。在此之后,您必须重新启动DrRacket。
#lang s-exp framework/keybinding-lang
(keybinding "c:#"
(λ (text evt)
(define a (send text get-start-position))
(define b (send text get-end-position))
(send text insert #\( a)
(send text insert #\) (+ b 1))
(send text move-position 'left)))https://stackoverflow.com/questions/5614154
复制相似问题