我有一个C++代码文件,但有一个非常丑陋的indetation。我如何告诉emacs重新应用对文件的缩进?Emacs重新加载整个C++缓冲区
15
A
回答
8
这里的“缩进整个缓冲区”的代码我在~/.emacs.d/defuns.el
文件放置。我采取了额外的步骤,并将其绑定到快捷键C-x \
。这个也会清除所有悬空的空白区域,并将制表符转换为其空间等效表示。
(defun indent-buffer()
"Indents an entire buffer using the default intenting scheme."
(interactive)
(point-to-register 'o)
(delete-trailing-whitespace)
(indent-region (point-min) (point-max) nil)
(untabify (point-min) (point-max))
(jump-to-register 'o))
(global-set-key "\C-x\\" 'indent-buffer)
编辑,下面结合@JSONs建议会给你一个defun定义,看起来像这个:
(defun indent-buffer()
"Indents an entire buffer using the default intenting scheme."
(interactive)
(save-excursion
(delete-trailing-whitespace)
(indent-region (point-min) (point-max) nil)
(untabify (point-min) (point-max))))
我测试了这一点,它的工作原理就像以前一样。感谢您指出了JSON。
4
选择整个缓冲区,做M-X缩进区域
28
C-x h C-M-\
这两个命令选择整个缓冲器和运行indent-region
。
1
(defun iwb()
"indent whole buffer"
(interactive)
(delete-trailing-whitespace)
(indent-region (point-min) (point-max) nil)
(untabify (point-min) (point-max)))
你可以使用这个小宏(我复制这从http://emacsblog.org/2007/01/17/indent-whole-buffer/)
相关问题
- 1. Emacs erlang缓冲区
- 2. Markdownize Emacs缓冲区
- 3. emacs isearch整个缓冲区的延迟加亮
- 4. 如何重新覆盖覆盖区周围的Emacs缓冲区
- 5. 将Emacs缓冲区传递给C
- 6. Cocoa Emacs打印缓冲区
- 7. Emacs缓冲区组/标签
- 8. emacs:非连续缓冲区
- 9. 在Emacs小缓冲区
- 10. 复制整数缓冲区如果缓冲区在C
- 11. Emacs - 多列一个缓冲区
- 12. 为所有活动缓冲区重新装入.emacs
- 13. 打开窗口并加载emacs lisp中的特定缓冲区
- 14. EMACS缓冲区等于文件时如何重置缓冲区修改标志
- 15. 如何防止NERDTree缓冲区删除? (或重新加载)
- 16. 重新加载并滚动所有缓冲区到底部
- 17. 是否有可能在Emacs中评估整个缓冲区?
- 18. 关闭缓冲区后显示Emacs缓冲区
- 19. 如何恢复emacs缓冲区列表中的缓冲区?
- 20. Emacs意外地将缓冲区切换到临时缓冲区
- 21. 让emacs grep缓冲区使用特定的emacs缓冲区来显示命中
- 22. 调整大小从缓冲区JPEG到另一个缓冲区
- 23. C整数到缓冲区RFC 4506
- 24. emacs的扩展做系统调用,睡眠,然后重新加载缓冲器
- 25. 复位定义和重新加载的.emacs无需关闭或重新启动Emacs和重新打开缓冲区
- 26. 在Emacs中立即终止缓冲缓冲区
- 27. Emacs shell输出缓冲区高度
- 28. emacs缓冲区绑定到密钥
- 29. Emacs缓冲区内的OpenGL上下文
- 30. 如何创建Emacs SQL缓冲区?
而不是指向注册表和跳转到注册表,使用save-excursion来包装重新格式化块可能会更好。 – JSON 2010-11-03 23:59:44