当前位置:  开发笔记 > 编程语言 > 正文

如何让Emacs自动缩进我的C代码?

如何解决《如何让Emacs自动缩进我的C代码?》经验,为你挑选了4个好方法。

我刚刚开始感受到emacs,但是当我按下返回键时,我很沮丧.我知道如果我按下它会做它,但我不能养成这个习惯.我不能.我需要回击,我讨厌每次重新标记.

我进入选项并发现C模式钩子和C++模式钩子等 - 他们定义了两个键映射(10和13,我记得0A和0D是CR/LF,因为我在组装中经常使用它们) - - 我想,因为一个说" (lambda nil (define-key lisp-mode-map [13] (quote newline-and-indent))"和另一个相同,但(quote newline)相反,我只是把 - 并 - 缩进在它的末尾,并认为它会工作.

但事实并非如此:我设置并保存它,尝试过但无济于事.重启emacs,仍然没有成功.如何缩进我的代码呢?非常疯狂的是,emacs需要一个lisp学位才能根据你的基本需求进行配置.

另外,作为一个侧面问题:如何从剪贴板复制和粘贴Killing/yanking很方便,除了我讨厌每次我想粘贴到其他地方时都要编辑 - >复制.

- 编辑 -

好吧,我把以下几行放到我的.emacs中并且它有效:

(add-hook 'c-mode-common-hook (lambda ()
      (local-set-key (kbd "RET") 'newline-and-indent)))

谢谢您的帮助



1> 小智..:

我将返回键设置为全局充当我的~/.emacs文件中的新行和意图:

(global-set-key "\C-m" 'newline-and-indent)

适合我.



2> Amol Gawai..:

看看emacswiki - autoindent

正如那里建议的那样,将以下代码放在.emacs中

(defun set-newline-and-indent ()
  (local-set-key (kbd "RET") 'newline-and-indent))
(add-hook 'c-mode 'set-newline-and-indent)

您可以自定义变量C Default Styl.在您的emacs中,转到选项 - >自定义Emacs->特定选项,然后键入c-default-style并设置为您的选择.通过这样做,您不需要点击TAB.从行的开头键入,然后点击";" ,它会自动缩进.

希望这可以帮助



3> wr...:

如果你想缩进整个c/c ++文件,你就可以了

    标记一切:CTRL-x h

    按Tab键

那,顺便说一句,也适用于xml,python代码和其他类型.



4> Jouni K. Sep..:

除了其他建议之外,请尝试C-c C-a切换自动换行功能,以便您的模式读取C/la.那你甚至不需要在大部分时间按Enter键; 相反,当您键入分号或大括号时,会插入换行符并使您的代码缩进.有时你确实需要按Enter键,并且你没有得到自动压缩(除非你RET按照另一个答案的建议重新绑定),但如果你只是开始输入下一行,你可能会注意到当你输入一些标点时它会缩进字符.

要开始使用"Lisp学位",请键入C-h iInfo浏览器并转到"CC模式"节点(它与Emacs的节点分开;键入dDirectory并在那里找到CC模式).

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有