單字元清單 - 用更少的打字做更多的事情

單字元清單 - 用更少的打字做更多的事情

在 Emacs 或 Markdown 的 Org 模式下,我最喜歡的事情之一是我可以透過執行以下操作快速建立清單:

- Something
- Foo
- Bar

它會自動識別為實際的清單

在 LaTeX 中,我經常發現自己必須輸入:

\begin{itemize}
    \item Something
    \item Foo
    \item Bar
\end{itemize}

不幸的是很多更多打字。這顯然不是一個障礙,但它使得使用 LaTeX 添加/追蹤筆記變得更加困難,同時仍然可以利用它所提供的所有其他功能。

此外,如果我從另一個文件(例如 Org / markdown 甚至其他格式)複製列表,很可能他們也使用-(或類似的單身的字元)來指定清單中的每個項目。

簡單列表

LaTeX 中有沒有一種方法可以建立“類似項目”的“列表”,其中每個項目都用類似的單個字元定義(知道它要么放置在行的開頭,要么在行中僅在其前面添加空格) ?

例如:

\begin{my_list}
- Something
- Foo
- Bar
\end{my_list}

如果它對其他人有幫助,通常 IDE 都有巨集來幫助輸入,這實際上就是我的情況 - 我在 VSCode 中,所以我可以使用片段(~ IDE 巨集)就像bit在乳膠車間這擴展了這個詞bit到逐項環境。然而這仍然需要我做很多打字,而且我什至無法轉換(複製)現有清單(請參閱我報告了這個問題)。

換句話說,理論上,IDE 巨集本身就可以提供幫助,但如果可以在 LaTeX 本身中輕鬆地做到這一點,那就太好了。

答案1

只是為了有趣。您要求的想法是 OpTeX 格式的預設值:

\begitems
* Something
* Foo
* Bar
\enditems

以及包裝中提到的功能easylist實現為OpTeX 技巧 0048

答案2

使用以下方法找到了解決此問題的好方法markdown包裹。只要您不需要在清單中使用其他 LaTeX 命令,它就可以很好地工作。

這是一個例子:

\documentclass{article}
\usepackage{markdown}

\usepackage{lipsum}  

\begin{document}

\lipsum[66]

\begin{markdown}
Here is a Markdown list:

* Create a list by starting a line with `+`, `-`, or `*`
* Sub-lists are made by indenting 2 spaces:
  - Marker character change forces new list start:
    * Ac tristique libero volutpat at
    + Facilisis in pretium nisl aliquet
    - Nulla volutpat aliquam velit
+ Very easy!

\end{markdown}

\lipsum[75]

\end{document}

結果

答案3

正如評論中所述,easylist可以在此處使用該包。該包還支援itemize樣式未編號列表。

微量元素:

\documentclass{article}
\usepackage[sharp]{easylist}

\begin{document}

Here is an Easylist list:
\begin{easylist}[itemize]
# Create a list by starting a line with \#
# Sub-lists are made by adding extra list symbols:
  ## Level two
## Indentation optional
    ## \LaTeX\ symbols possible: $\sum_\infty$
    ### Level 3
# Very easy!
\end{easylist}
\end{document}

結果:

在此輸入影像描述

相關內容