Python的Emacs批量缩进
在Emacs中使用Python,如果我想添加一个try /除了一段代码,我经常会发现我不得不逐行缩进整个块。 在Emacs中,你如何缩小整个区块。
我不是一个有经验的Emacs用户,但只是发现它是通过ssh工作的最佳工具。 我在命令行(Ubuntu)上使用Emacs,而不是gui,如果这有什么区别的话。
如果您使用Emacs编程Python,那么您应该使用python模式。 使用python模式,在标记代码块之后,
Cc >
或Cc Cl
将区域向右移动4个空格
Cc <
或Cc Cr
将该区域向左移动4个空格
如果您需要通过两级缩进或某个任意数量来移动代码,则可以在命令前加上一个参数:
Cu 8 Cc >
将区域向右移动8个空格
Cu 8 Cc <
将区域向左移动8个空格
另一种选择是使用Mx indent-rigidly
绑定到Cx TAB
:
Cu 8 Cx TAB
将区域向右移动8个空格
Cu -8 Cx TAB
将区域向左移动8个空格
矩形命令对文本矩形进行操作,而不是文本行也很有用。
例如,在标记矩形区域之后,
Cx ro
插入空白区域以填充矩形区域(有效地将代码右移)
Cx rk
杀死矩形区域(有效地将代码向左移)
Cx rt
会提示输入字符串以替换矩形。 输入Cu 8 <space>
将输入8个空格。
PS。 使用Ubuntu时,要使python模式成为所有.py文件的默认模式,只需安装python-mode
软件包即可。
除了默认映射到CM-
的indent-region
,矩形编辑命令对于Python非常有用。 将区域标记为正常,然后:
Cx rt
( string-rectangle
):将提示您输入要插入每行的字符; 非常适合插入一定数量的空间 Cx rk
( kill-rectangle
):删除一个矩形区域; 非常适合去除缩进 你也可以Cx ry
( yank-rectangle
),但这只是很少用处。
indent-region
映射到CM-
应该做的伎俩。
上一篇: Emacs bulk indent for Python
下一篇: Clojure Emacs etags