如何一次性调整整个选定块中c源代码的缩进?

时间:2015-08-16 23:38:19

标签: emacs block indentation

我想在选择一些块后,一次正确调整源代码的缩进。 是否有任何功能或密钥可以用来做括号?

这是原始选择的示例代码块,我想调整缩进。

while(1)
{
    func1();
    if( )
    {
        func2();
       } 
            }

if( x == 0 )
  {
      aa = 1;
  }

这是正确缩进的代码,我只想调整。

while(1)
{
    func1();
    if( )
    {
        func2();
    } 
}

if( x == 0 )
{
    aa = 1;
}

2 个答案:

答案 0 :(得分:3)

选择您的代码并按C-M-\,该C-M-\应绑定到indent-region

  

TAB

     

缩进区域中的所有行,就像在每行的开头键入indent-region一样(import urllib.request with urllib.request.urlopen('https://pinshape.com/shop?page=2') as f: data = str(f.read()).replace('\n', '') myfile = open("TestFile.txt", "r+") myfile.write(data) )。

     

如果提供了数字参数,则将区域中的每一行缩进到该列号。

答案 1 :(得分:0)

我正在使用邪恶模式因为我喜欢vim编辑keymap。 在我的例子中,在选择代码块之后,可以通过等(=)键来完成块自动缩进。 以c-default风格重新排列代码块非常方便。

(1) install evil package
(2) Insert this code into you emacs init file.
; indentation style for c, c++, java
(setq c-default-style "linux"
      c-basic-offset 4)
(3) select block using v and direction key
(4) press '='