光表paredit环绕着parens

时间:2014-03-15 14:44:19

标签: clojure lighttable

我怎样才能把一个表格作为另一个函数的参数,用一个命令用括号括起来?

对于下面的例子,假设光标从头开始,我不会一直移动它。

(最多1 2 3) - > ((最多1 2 3)) - > (= 3(最多1 2 3))

所以我的命令是: 'magic-key-combination' - > '=' - > '' - > '3'

2 个答案:

答案 0 :(得分:2)

没有单个内置命令可以完成所有这些操作,但是,可以将键绑定到多个命令。

尝试将以下内容放入user.keymap文件中(只需将“ctrl-m”替换为您首选的魔术键组合)。

{:+ {...
     :editor {...
              "ctrl-m" [:paredit.select.parent 
                        (:editor.open-pair "(")
                         :paredit.move.down.backward 
                         :paredit.move.up.backward  
                         :editor.char-right]
              ...}}}

有关每个paredit命令的详细信息,请参阅I can't find a light table cheat sheet,并根据需要进行调整!

答案 1 :(得分:1)

这是我经常使用的另一种选择。从“(最大1 2 3)”开始,我会在开始前输入“= 3”,结果如下:

= 3 (max 1 2 3)

然后,我选择整个表达式并键入一个开头的paren。 LightTable会在选择结束时自动插入关闭窗口:

(= 3 (max 1 2 3))

您可能仍然决定使用键绑定,但这个技巧很有用。