【发布时间】:2012-07-10 12:49:54
【问题描述】:
我是 Clojure 的新手,也是 Emacs 的新手。
是否有 Emacs 快捷方式可以智能地重新缩进整个文件? 如果没有,是否至少有一种方法可以将选定区域向左或向右缩进?
反复按箭头的感觉就像回到了石器时代
【问题讨论】:
我是 Clojure 的新手,也是 Emacs 的新手。
是否有 Emacs 快捷方式可以智能地重新缩进整个文件? 如果没有,是否至少有一种方法可以将选定区域向左或向右缩进?
反复按箭头的感觉就像回到了石器时代
【问题讨论】:
C-x h 选择整个缓冲区。 C-M-\ 重新缩进选定区域。
【讨论】:
C-M-q 运行indent-sexp,我也发现它非常有用,尤其是与beginning-of-defun 结合使用(它存在于C-M-a)。
M-q,它会重新缩进整个defun而不用移动点。
C-x h 用于选择整个缓冲区
indent-region 的映射。选择应该不是必需的。
Ctrl-x,h(全选)后跟Tab(缩进)
【讨论】:
cider-format-buffer 命令(自 cider 0.9.0 起)
【讨论】:
当您从像C-u C-c C-e 这样的序列中捕获数据时
(cider-eval-last-sexp),输出到缓冲区的原始数据可以是
难以检查/使用。和正常的代码缩进命令
(在此处的答案中提到)处理不好。
要处理此类评估表达式的结果,请尝试
cider-format-edn-region.
作为一个具体的例子,您是否尝试过重新格式化您的
~/.lein/profiles.clj?这很难做到和保持
一致,直到您发现cider-format-edn-region。拿
但请注意,它会删除任何 cmets。
【讨论】:
paredit 和aggressive-indent,我从未发现重新格式化我的profiles.clj 很困难。这种方法的优点是不移除cmets,我有很多。
将cljfmt 用于许多可配置的重新格式化/重新缩进方式。它有一个 Emacs 插件,也可以通过lein 运行。
【讨论】: