我正在使用 MikTeX 和 Texmaker 来写入。
我的问题是我们是一群编写同一份报告的人,我想从单独的文件或类似的方法加载我们正在使用的包。
我正在运行的主要文档如下所示:
\PassOptionsToPackage{svgnames}{xcolor}
\documentclass[11pt]{article}
\usepackage{graphicx} %Grafiske ting
\usepackage{epstopdf}
\usepackage{psfrag}
\usepackage{color, colortbl} %SKAL STÅ FØR LISTINGS
\usepackage[table]{xcolor}
\usepackage{fullpage}
\usepackage{lastpage}
\usepackage{a4wide} %Smalle marginer
\usepackage{pdfpages}
\usepackage{hyperref}
\usepackage[latin1]{inputenc} %Latin tegn
%\usepackage[Danish]{babel} % æ ø å %Sætter overskrifter engelsk
\usepackage{booktabs, multicol, multirow} %Multirows osv i tabeller
\usepackage{fixltx2e} %excel til latex
\usepackage{subfig} %Flere figurer
\usepackage{float} %Gør det muligt at placere figurene det rigtige sted.
\usepackage{subfloat}
\usepackage{amsmath} %Math - Align osv.
\usepackage{amsfonts}
\usepackage{amssymb}
\numberwithin{equation}{section}
\numberwithin{table}{section}
\numberwithin{figure}{section}
\usepackage{caption}
\usepackage{fancyhdr}
\usepackage{listings}
\lstset{language=Matlab}
\usepackage[numbers]{natbib}
\usepackage{url}
\newcommand{\vis}[1]{\textit{\citeauthor{#1}, \citeyear{#1}} \cite{#1}}
\usepackage{cleveref}
\begin{document}
\makeatletter
\renewcommand\section{\@startsection {section}{1}{0mm}
{-\baselineskip}{0.1\baselineskip}{\bfseries\large}}
\renewcommand\subsection{\@startsection{subsection}{2}{0mm}%
{-\baselineskip}{0.1\baselineskip}{\bfseries\normalsize}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{0mm}%
{-\baselineskip}{0.1\baselineskip}{\bfseries\small}}
\makeatother
\setlength{\belowcaptionskip}{-5pt}
\parindent=0pt
\parskip=1.0ex
\newcommand{\topspace}{\vrule height 15pt width 0pt}
\newcommand{\notetitle}[4]{
\begin{center}
{\Large \bf #1} \\[9pt]
{\Large \bf #2} \\[12pt]
{\large #3} \\[6pt]
{\normalsize #4} \\[36pt]
\end{center}}
\input{T/Frontpage.tex}
%\input{T/Abstract.tex}
%\input{T/Commandoes_Figures.tex}
%\input{T/Commandoes_Math.tex}
%\input{T/Commandoes_Other.tex}
%\input{T/Commandoes_Tables.tex}
\input{T/Preface.tex}
\input{T/Introduction.tex}
%\input{T/Part1.tex}
%\input{T/Part2.tex}
%\input{T/Part3.tex}
\input{T/Part4.tex}
%\input{T/Part5.tex}
%\input{T/Part6.tex}
%\input{T/Part7.tex}
%\input{T/Part8.tex}
%\input{T/Part9.tex}
%\input{T/Part10.tex}
\input{T/Conclusion.tex}
\nocite{*}
\bibliographystyle{unsrtnat}
\bibliography{bibtex}
%\input{T/Appendix.tex}
\end{document}
现在每个人都有自己的主文件,因此可以只运行他们正在处理的报告部分。我想要做的是有一个主文件,其中放入在开始文档部分之前加载的所有包等,这样如果一个人想添加另一个包,每个人都不必更改它。
如果这种做法完全荒谬,那么其他解决方案也非常受欢迎。这样做的主要目的是每个人都可以独立写作,但仍然能够看到其他人在写什么。
希望问题能够得到正确澄清。
答案1
你可以让你的文档看起来像
\documentclass{mylocal}
\begin{document}
\input{T/Frontpage}
...
\end{document}
然后共享一个mylocal.cls
文件,如下所示
\LoadClass[11pt]{article}
\PassOptionsToPackage{svgnames}{xcolor}
\usepackage{graphicx} %Grafiske ting
\usepackage{epstopdf}
\usepackage{psfrag}
\usepackage{color, colortbl} %SKAL STÅ FØR LISTINGS
\usepackage[table]{xcolor}
\usepackage{fullpage}
\usepackage{lastpage}
\usepackage{a4wide} %Smalle marginer
\usepackage{pdfpages}
\usepackage{hyperref}
\usepackage[latin1]{inputenc} %Latin tegn
%\usepackage[Danish]{babel} % æ ø å %Sætter overskrifter engelsk
\usepackage{booktabs, multicol, multirow} %Multirows osv i tabeller
\usepackage{fixltx2e} %excel til latex
\usepackage{subfig} %Flere figurer
\usepackage{float} %Gør det muligt at placere figurene det rigtige sted.
\usepackage{subfloat}
\usepackage{amsmath} %Math - Align osv.
\usepackage{amsfonts}
\usepackage{amssymb}
\numberwithin{equation}{section}
\numberwithin{table}{section}
\numberwithin{figure}{section}
\usepackage{caption}
\usepackage{fancyhdr}
\usepackage{listings}
\lstset{language=Matlab}
\usepackage[numbers]{natbib}
\usepackage{url}
\newcommand{\vis}[1]{\textit{\citeauthor{#1}, \citeyear{#1}} \cite{#1}}
\usepackage{cleveref}
\renewcommand\section{\@startsection {section}{1}{0mm}
{-\baselineskip}{0.1\baselineskip}{\bfseries\large}}
\renewcommand\subsection{\@startsection{subsection}{2}{0mm}%
{-\baselineskip}{0.1\baselineskip}{\bfseries\normalsize}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{0mm}%
{-\baselineskip}{0.1\baselineskip}{\bfseries\small}}
\makeatother
\setlength{\belowcaptionskip}{-5pt}
\parindent=0pt
\parskip=1.0ex
\newcommand{\topspace}{\vrule height 15pt width 0pt}
\newcommand{\notetitle}[4]{
\begin{center}
{\Large \bf #1} \\[9pt]
{\Large \bf #2} \\[12pt]
{\large #3} \\[6pt]
{\normalsize #4} \\[36pt]
\end{center}}
答案2
\input
也适用于序言。您可以在工作目录中创建一个包含序言所有行的formatsAndDefs.tex文件,并\input{formatsAndDefs}
在之前使用\begin{document}
。
formatAndDefs.tex 文件如下所示:
\usepackage{graphicx} %Grafiske ting
\usepackage{epstopdf}
\usepackage{psfrag}
\usepackage{color, colortbl} %SKAL STÅ FØR LISTINGS
\usepackage[table]{xcolor}
\usepackage{fullpage}
\usepackage{lastpage}
\usepackage{a4wide} %Smalle marginer
\usepackage{pdfpages}
\usepackage{hyperref}
\usepackage[latin1]{inputenc} %Latin tegn
%\usepackage[Danish]{babel} % æ ø å %Sætter overskrifter engelsk
\usepackage{booktabs, multicol, multirow} %Multirows osv i tabeller
\usepackage{fixltx2e} %excel til latex
\usepackage{subfig} %Flere figurer
\usepackage{float} %Gør det muligt at placere figurene det rigtige sted.
\usepackage{subfloat}
\usepackage{amsmath} %Math - Align osv.
\usepackage{amsfonts}
\usepackage{amssymb}
\numberwithin{equation}{section}
\numberwithin{table}{section}
\numberwithin{figure}{section}
\usepackage{caption}
\usepackage{fancyhdr}
\usepackage{listings}
\lstset{language=Matlab}
\usepackage[numbers]{natbib}
\usepackage{url}
\newcommand{\vis}[1]{\textit{\citeauthor{#1}, \citeyear{#1}} \cite{#1}}
\usepackage{cleveref}
您的主文件如下(在您的目录结构中):
\PassOptionsToPackage{svgnames}{xcolor}
\documentclass[11pt]{article}
\input{T/formatsAndDefs.tex}
\begin{document}
%insert your \include or \input chapters here
\end{document}
另外,你可能想看看这个话题并可能考虑将\input
主文档中的命令(即\begin{document}
和之间\end{document}
)切换为\include
命令。
虽然速度稍慢一些,但它们的优点是只需切换到一个命令\includeonly
,这样编译就只关注您正在处理的章节。