自动列出段落

自动列出段落

我想用 LaTeX 做课堂笔记,但我大量使用项目符号列表,而 LaTeX 中的 itemize 宏对于课堂笔记来说太耗时了。但如果我能教 LaTeX 如何帮我做这件事,那就太好了!(在开发办公室很烦人……)

如果我在 LaTeX 中输入常规段落,则每个新行都会被标记。会有一个命令来表示项目符号段落之外的项目。最后,像 这样的命令\up\down在列表中提升/降级其后的所有文本行。

一个例子:

\title{this would be the title of a slide}
this is a line of text
this is another line of text
\up
this is a subpoint
another
\down
last line

要得到:

这将是幻灯片的标题

  • 这是一行文本
  • 这是另一行文字
    • 这是一个子要点
    • 其他
  • 最后一行

在下面的评论中,Werner 对此进行了更具体的描述。我想“避免\item对每个段落都使用,而是让段落分隔符“相当于” \item,同时\up启动一个新itemize环境,然后\down关闭它。”\title然后关闭全部 itemize环境(我希望自动加粗但不一定与问题相关)。

答案1

我确信有软件包可以实现这个功能,但是可能它太简单了,无法形成专门的软件包来实现这个功能。

这是一个简单的解决方案,可能需要扩展才能真正有用。

\documentclass{article}

\makeatletter

\newcommand\startitems
{%
  \begingroup
  \parindent\z@
  \@itemdepth\@ne
  \@totalleftmargin\csname leftmargin\romannumeral\the\@itemdepth\endcsname
  \leftskip\@totalleftmargin
  \everypar
  {%
    \llap{%
      \makebox[\labelsep][l]
      {%
        \csname labelitem\romannumeral\the\@itemdepth\endcsname
      }
    }%
  }%
  \obeylines
}
\newcommand\stopitems
{%
  \bottom
  \par\endgroup
}

\newcommand\up
{%
  \par
  \begingroup
    \advance\@itemdepth\@ne
    \advance\@totalleftmargin\csname leftmargin\romannumeral\the\@itemdepth\endcsname
    \leftskip\@totalleftmargin
}

\newcommand\down{\par\endgroup}

\newcommand\bottom
{%
  \ifnum\@itemdepth>\@ne
    \down\bottom
  \fi
}

\makeatother

\begin{document}

\section*{title}
\startitems
this is a line of text
this is another line of text
\up
this is a subpoint
another
\up
sub-sub  point
\bottom
back to first level
\stopitems

\noindent Normal text
\end{document}

必须有一些方法来封装列表效果,所以我添加了\startitems \stopitems

例子

答案2

您可能需要熟悉以下之一轻量级标记语言。 我最喜欢的是txt2tags。这是您的 MWE 的样子txt转tgs

How to type LaTeX using txt2tgs
Predrag Punosevac
4/20/2012

                   = This would be the title of a slide =

- this is a line of text
- this is another line of text
 - this is subpoint
 - another 
- last line

现在使用以下命令处理文档

txt2tags -t tex myfilename.txt
pdflatex myfilename.tex

得到以下输出

在此处输入图片描述

看来你还需要某种文本演示程序。我非常推荐跨太平洋伙伴关系。它非常适合计算机科学演示。听起来可能有点讽刺,但我用过跨太平洋伙伴关系为初学者提供 TeX 的入门知识。

相关内容