Что может делать LaTeX без загрузки пакетов?

Что может делать LaTeX без загрузки пакетов?

Мне кажется, что каждый прочитанный мной код LaTeX должен загружать какие-то пакеты.

С тех пор, как я начал изучать LaTeX (я новый пользователь), я смог создавать документы без проблем, не загружая никаких пакетов. Поэтому я немного запутался в основных функциях LaTeX.

Таким образом, мой вопрос: Какие основные задачи LaTeX может выполнять без каких-либо пакетов? Кроме того, не могли бы вы привести пример задачи, которую LaTeX может выполнятьне могуделать, пока пакет не загружен?

решение1

Как упоминалось в комментариях, вам не нужно загружать код пакета с помощью \usepackage. Вы можете скопировать его в свою преамбулу:

\documentclass{article}
\makeatletter
... lots of code lines from various packages
\maketother
\begin{document}

Но имхо это не совсем ответ на ваш вопрос. Вы, вероятно, хотите знать, действительно ли вам нужны эти дополнительные строки кода.

Ядро LaTeX — это ядро, оно как операционная система на вашем ПК. Поэтому оно не содержит код для всего. По историческим причинам довольно много вещей, которые должны быть в ядре, в настоящее время находятся во внешних пакетах, например, поддержка цвета, графика, поддержка языка, поддержка входных кодировок, код amsmath, keyval, основные команды рисования — надеюсь, они будут бродить по ядру в будущих версиях.

Но для особых случаев вам всегда придется загружать внешний код (а класс, который вы загружаете, \documentclassуже является таким внешним кодом), например, если вы хотите нарисовать утку, сидящую на шахматной доске:

\documentclass{article}%
\usepackage{tikzducks}
\usepackage{xskak}

\begin{document}

\begin{tikzpicture}
\newchessgame
\node at (1,1) {\chessboard[showmover=false]};
\duck
\end{tikzpicture}
\end{document}

введите описание изображения здесь

решение2

Вот несколько примеров:

\documentclass{book}

\begin{document}
\tableofcontents
\listoftables
\listoffigures

\chapter{What we can do without packages}
\section{With \texttt{book} we can create table of contents \& Co.}
Taking advantange only of what is defined in a \texttt{documentclass}, for 
example, \texttt{book}, we can produce a table of contents, a list of tables,
and a list of figures. 

\section{We can write formulae}
But with \texttt{amsmath} or \texttt{mathtool} it is easy to make them 
beautiful.
\[
E = mc^{2}
\]

\section{We can list something}
We can create bullet list:
\begin{itemize}
\item Something about ducks
\item Something about lions
\end{itemize}
Enumerated list:
\begin{enumerate}
\item Something about ducks
\item Something about lions
\end{enumerate}
Descriptive list:
\begin{description}
\item [Ducks] very funny birds
\item [Lions] very funny animals, too!
\end{description}
But with \texttt{enumitem} you can easily customize them.

\section{We can create tables}
We can create Table~\ref{tab:mytab}, but with \texttt{booktabs} it'd look 
more beautiful and  professional, and with \texttt{caption} we can easily
costomize its caption and improve its position.
\begin{table}
\centering
\caption{A table\label{tab:mytab}}
\begin{tabular}{cc}
\hline
Ducks & Lions \\
\hline
Lions & Ducks \\
\hline
\end{tabular}
\end{table}

\section{We can draw images}
We can draw a duck, see Figure~\ref{fig:duck}, but with Ti\emph{k}Z or 
\texttt{pstricks} it is easier. 
\begin{figure}
    \centering
    \begin{picture}(100,100)
    \put(50,50){\oval(50,20){}}
    \put(70,65){\circle{20}}
    \put(35,50){\line(1,0){30}}
    \put(70,65){\circle*{2}}
    \put(75,67){\line(6,-1){10}}
    \put(75,63){\line(6,1){10}}
    \end{picture}
    \caption{Duck by David Carlisle\label{fig:duck}}
\end{figure}

\chapter{What we cannot do without packages}
Virtually, you can do everything without packages,
they only simplify your life!

But why do you want to redo what others have already done for you?
\end{document}

введите описание изображения здесь введите описание изображения здесь введите описание изображения здесь введите описание изображения здесь введите описание изображения здесь

решение3

Ответ на ваш второй вопрос фактически также является ответом на ваш первый:

Кроме того, не могли бы вы привести пример задачи, которую LaTeX не сможет выполнить, если не загружен пакет?

Нет буквально ничего, чтотребуетпакет. Пакеты — это просто код, загруженный в LaTeX, тот же код будет делать то же самое, если вы просто вставите его в начало вашего исходника. Если вы достаточно знакомы с LaTeX, вы можете написать все сами вручную; это займет всего лишьоченьдавно! Пакеты предоставляют вам простые интерфейсы, которые позволяют вам использовать время и навыки других людей, чтобы сделать ваш документ лучше. Это не новые функции; это существующие функции, упакованные для более удобного использования.

(Заметим: есть небольшое исключение из этого правила, а именно существование таких пакетов, glossariesкоторые также включают внешний инструмент, который должен быть запущен вместе с LaTeX, но я бы сказал, что внешняя часть этих инструментов сама по себе не является пакетом LaTeX, поскольку ее нужно вызывать отдельно).

Итак, учитывая, что все, что делают пакеты, можно сделать и без пакетов, вы видите, что ответ на ваш первый вопрос: все, просто так гораздо сложнее.

Связанный контент