emacs - 在 LaTeX 模式 emacs 中缩进 C 代码区域

我的问题是我正在用 emacs 编写一个包含大量 C 代码的 LaTeX 文档。我在各个地方都使用了\minted 和\verbatim 环境。当我编译 LaTeX(使用 pdflatex)时,生成的 pdf 看起来不错。在原始 LaTeX 代码中,我希望能够使用 C 大调模式的规则自动缩进。

例如,我希望能够标记以下区域

\begin{verbatim} 

void main(void)
{
printf("Hello World \n\r");
}

\end{verbatim}

并让 emacs 自动格式化它看起来像

\begin{verbatim}

void main(void)
{
    printf("Hello World \n\r");
}

\end{verbatim}   

换句话说,我希望能够使用 C 模式的规则在实际上是 C 代码的部分上运行 indent-region,即使我处于 LaTeX 模式。

有谁知道这是否可行?

最佳答案

M-x indent-region 只缩进区域,而不是整个缓冲区,所以:

  1. 开启 C 模式
  2. 缩进您的区域
  3. 重新开启 LaTeX 模式

https://stackoverflow.com/questions/8821436/

相关文章:

c# - DataGridViewCheckBoxColumn : FormatException

java - 在字符串模板电子邮件中格式化日期

vim - 使用 Vim,是否有更有效的方法来根据这个最佳实践来格式化 LaTeX 段落?

formatting - Gnuplot 平滑置信区间线而不是误差线

Python 浮点格式 - 类似于 "g",但数字更多

c# - 使用 String.Format 时,如果字符串值不为 null 或为空,是否有一种简单的

ios - iPhone : How to get number from string with

python - 在没有空格或换行符的python中打印变量

forms - 如何在 Laravel 中处理日期输入

formatting - JSON.Net 将 XML 序列化为 JSON 驼峰式案例