gpt4 book ai didi

emacs - 如何使 emacs 在 elisp 中正确缩进 if-then-else 构造

转载 作者:行者123 更新时间:2023-12-04 01:28:37 24 4
gpt4 key购买 nike

当我在 emacs lisp 中缩进 if-then-else 构造时,else 块没有正确缩进。我得到的是:

(defun swank-clojure-decygwinify (路径)
“将路径从 CYGWIN UNIX 风格转换为 Windows 风格”
(如果(swank-clojure-cygwin)
(replace-regexp-in-string "\n"""(shell-command-to-string (concat "cygpath -w "path)))
(小路)))

else 表单与 then 表单的缩进级别不同。有没有明显的方法来解决这个问题?

最佳答案

这是正确的缩进。手册中的引用:

The word "else" is not written in the Lisp code; the else-part of an `if' expression comes after the then-part. In the written Lisp, the else-part is usually written to start on a line of its own and is indented less than the then-part:


 (if TRUE-OR-FALSE-TEST
ACTION-TO-CARRY-OUT-IF-THE-TEST-RETURNS-TRUE
ACTION-TO-CARRY-OUT-IF-THE-TEST-RETURNS-FALSE)

例如下面的 if表达式打印消息 4 is
not greater than 5!
当您以通常的方式对其进行评估时:
 (if (> 4 5)                               ; if-part
(message "4 falsely greater than 5!") ; then-part
(message "4 is not greater than 5!")) ; else-part

请注意,不同级别的缩进可以很容易地
区分 then 部分和 else 部分。 (GNU Emacs 有几个
自动缩进的命令 if表达正确。 *笔记
GNU Emacs 帮助您键入列表:键入列表。)

这是一个功能,而不是一个错误:-)

关于emacs - 如何使 emacs 在 elisp 中正确缩进 if-then-else 构造,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2642337/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com