使 tabto 包在已经处于 tab 位置时不会跳过

使 tabto 包在已经处于 tab 位置时不会跳过

我正在使用tabto包来插入选项卡,我已经预定义了选项卡位置,一切工作正常,但是当光标已经在tab位置并且我插入\tab命令时,它会跳到下一个选项卡位置。

此错误可以通过输入\tab\tab(连续两次)重新生成。

然而,我想至少避免这种情况,这\tab意味着如果我输入\tab\tab\tab它应该只跳到两个选项卡位置。

答案1

下面读取下一个标记\tab,如果匹配,\tab则不评估此标记,否则将其重新插入\tab执行后。

\documentclass[]{article}

\usepackage{tabto}

\let\tabbak\tab

\makeatletter
\renewcommand\tab[1]{%
  \tabbak%
  \ifx#1\tab%
    \expandafter\@gobble
  \else%
    \expandafter\@firstofone
  \fi%
  #1}
\makeatother

\begin{document}
\noindent
a\tab b\tab c\tab d\\
\tab\tab\tab e
\end{document}

相关内容