帮助我快速用颜色和其他辅助工具写出长 LaTeX 方程式

帮助我快速用颜色和其他辅助工具写出长 LaTeX 方程式

我的 LaTeX 打字速度太慢了,例如,对于下面的方程式,我找不到缺少括号的地方。有人能给我提供一些计算方法吗?我使用 Vim,但我对任何你手头上的方法都很满意。

\[
\sum_{n=2}^{\infty}\left( \left(2^{n} \right) 2^{n/k} ln(2^{n})\right)^{-k}=
\sum_{n=2}^{\infty} e^{-k \left(n(1+\frac{1}{k})ln(2)+ln(n)+ln(ln(2)) \right}
\]

或许相关

  1. 关于在 LaTex 中编写数学表达式的视频

  2. Typescript 终端录制成视频

答案1

我强烈推荐vim latex-suite,你可以从

http://vim-latex.sourceforge.net/index.php?subject=manual&title=Manu

或者(在 Ubuntu 机器上)使用

sudo apt-get install vim-latexsuite
sudo vim-addons -w install latex-suite

它提供了很多快捷方式。如果我要输入你的第一个总结

\sum_{n=2}^{\infty}\left( \left(2^{n} \right) 2^{n/k} ln(2^{n})\right)^{-k}

我将使用以下按键

  • \sum__ (两个下划线)

在此处输入图片描述

  • n=2 CTRL+J

在此处输入图片描述

  • ((

在此处输入图片描述

  • ((

在此处输入图片描述

  • 2^{}n CTRL+J CTRL+J

在此处输入图片描述

  • 2^^n/k CTRL+J

在此处输入图片描述

  • \ln()

在此处输入图片描述

  • 2^^n CTRL+J CTRL+J CTRL+J

在此处输入图片描述

  • ^^-k CTRL+J

在此处输入图片描述

当您按下 时CTRL J,光标会将您带到下一个 的位置<++>,删除<++>,并让您处于insert模式,准备输入。一旦您习惯了,它就非常非常有用的设备,节省大量时间。

我发现一些其他非常有用的快捷方式(还有很多我还没有探索过的快捷方式)

  • ()
  • {}
  • enumerate F5
  • itemize F5
  • \ref{} F9
  • `/
  • myenvironmentnameF5

答案2

很长的评论...

我认为您的问题并不针对 Vim 或任何其他编辑器。无论您是否使用代码完成、自动环境关闭工具,在编写代码时减少心理负担都非常重要。如果您可以多花几秒钟时间编写更好的缩进,短期损失可能带来长期收益。我绝对不是程序员,但我为文章等编写了很多 LaTeX 代码,更糟糕的是,我与许多其他使用相同代码的人合作。

您还提到您打字速度很慢,这使得这一点更容易实现,因为您不会像死忠程序员那样加快速度。您可以轻松采用一些编码实践并TAB广泛使用该键。以下是个人示例

\[
\sum_{n=2}^{\infty}
    \left( 
          \left(
                2^{n} 
          \right) 
           2^{n/k} ln(2^{n})
    \right)^{-k}
=
\sum_{n=2}^{\infty} 
    {
     e^{-k \left(
                 n(
                   1+\frac{1}{k}
                  )
                  ln(2)+ln(n)+ln(ln(2)
                ) 
           \right
       }
\]

我有点夸张了,因为通常情况下,你会根据自己的眼光把事情安排得更紧凑一些。我猜经验法则是让你的代码行尽可能多速记

我们很容易就能发现,你缺少一个右花括号和一个圆括号,或者\right在右圆括号后面缺少 is。这远非最佳选择,但至少可以让你对自己的编码有一个概念。

LaTeX 特有的一个细节是%某些行末尾的字符,其中使用的命令对空格和换行符敏感。这也是我容易忘记的事情,但我对需要什么和不需要什么有了更多的经验。然而,它还是值得的,因为我的调试时间大大减少了。(反正我私下里把它放在每行的末尾。)

你可以先搜索可怕的关键词最佳编码实践等等,并阅读真正的程序员的文章。

答案3

当开始撰写一份相当长的文档(书籍、论文等)时,几乎每个人都会先定义各个章节,然后定义各个部分,然后开始某个部分,概述他们想要在其中涵盖的要点,然后填写详细信息。也就是说,他们自上而下而不是自下而上地工作,将每个部分(或至少每个章节)放在单独的文件中。

但是当涉及到数学时,一种常见的倾向是从头到尾按原样输入它们,我相信当公式开始超越基本多项式时,这会带来相当大的麻烦。

所以,当谈到数学时,我相信类似的方法是必要的。

因此,除了代码缩进的做法(即,使自上而下的层次结构清晰可见)之外,我还养成了在打开任何内容的同时关闭它的习惯。因此,\frac我会立即添加{}{},然后返回并填写其中的内容。同样left( right),然后返回并填写其中的内容。如果分数恰好相当复杂,我会从以下开始:

\frac{}
     {}

或者对于更复杂的,我知道会占用很多行:

\frac{
     }
     {
     }

对于我所做的任何环境同样如此

\begin{} 
\end{}

然后去填补中间的内容。

找到合适的缺失括号有时相当困难,仅凭这种做法就大大减少了我犯的错误数量。但是,如果我仍然有错误,并且由于缩进而无法轻易发现它,我会双击左括号(或右括号)并查看匹配的括号在哪里。这应该适用于大多数 IDE - 我知道它适用于 TeXShop 和 TeXWorks。

使用这种匹配技术的一个困难是,\left( \right.当 IDE 无法找到匹配的组件时,事情就会出错。因此,在这种情况下,您可以暂时将结束括号更改为right)并记住返回并修复它,或者使用构建此构造的宏,以便 IDE 只需处理{}。例如,下面我使用\BracRLeft{}\BracRRight{}来获得:

在此处输入图片描述

IDE 仅需处理实际代码中的匹配括号组。

\documentclass{article}
\usepackage{amsmath}

\makeatletter
\newcommand{\@Brac}[3]{\left#1 #2 \right#3}% General \left \right construct
%                                                #1 = bracket type on left
%                                                #2 = argument in brackets
%                                                #3 = bracket type on right
%
\newcommand{\BracR}[1]{\@Brac{(}{#1}{)}}%        \left( \right)
\newcommand{\BracRLeft}[1]{\@Brac{(}{#1}{.}}%    \left( \right.
\newcommand{\BracRRight}[1]{\@Brac{.}{#1}{)}}%   \left. \right)
\makeatother

\begin{document}
\begin{align*}
    f(x) &=      \BracRLeft{\frac{1}{2}} \\
         &\quad -\BracRRight{\frac{3}{4}}
\end{align*}
\end{document}

答案4

在大学天体物理课上,我使用 Kile 直接在 LaTeX 中做笔记。有时我会错过一些东西,而不得不手写,但效果很好。

我使用 Kile 快捷键快速输入公式,需要一点时间来习惯使用它们,但之后就可以学会非常快。它只有 9 或 10 个快捷键,但在同一项工作中,大多数数学都反复使用相同的符号。

相关内容