Fortlaufend mit Registerkarten oder tabellarisch mit Umbruch

Fortlaufend mit Registerkarten oder tabellarisch mit Umbruch

Ich bin zum ersten Mal hier und entschuldige mich, wenn ich falsch frage.

Ich habe derzeit eine tabellarische Umgebung in meinem Dokument, die ungefähr so ​​aussieht: Liste mit Registerkarten
mit dem folgenden Code

{\scriptsize\begin{tabular}{|p{.5in}|p{.5in}|p{.5in}|p{.5in}|p{.5in}|} \hline 
Alpha & Bravo & Charlie & Delta & Echo \\ \hline 
Foxtrot & Gulf & Hotel & India & Juliett \\ \hline 
Kilo & Lima & November & Oscar & Papa \\ \hline 
\end{tabular}}\\

Es ist nicht wichtig, spezifisch zu sein tabular, und auch die Linien um die Elemente sind es nicht (tatsächlich werde ich sie wahrscheinlich irgendwann entfernen ...). Was ich aber möchte, ist, dass ich Elemente dieser Liste einfach hinzufügen oder daraus entfernen kann, um beispielsweise „Mike“ an der richtigen Stelle einzufügen, ohne die Platzierung aller folgenden Elemente manuell anpassen zu müssen, während die Liste trotzdem auf ein Blatt Papier passt. Seitenumbrüche oder deren Verhinderung sind nicht wichtig, da diese Liste in der Mitte eines Formulars liegt und niemals so nah an einen Rand gelangen darf.

Das ultimative Ziel besteht darin, eine alphabetische Liste mit Elementen zu erstellen, die je nach Bedarf eingekreist oder hervorgehoben werden können. Ich weiß, dass ich auch an der vertikalen Abstände arbeiten muss und dass eine zentrierte Liste wahrscheinlich besser aussehen würde, aber mir ist zunächst wichtiger, dass die Liste leicht bearbeitet werden kann.

Antwort1

Ich glaube, Sie suchen so etwas wie

Bildbeschreibung hier eingeben

\documentclass{article}

\begin{document}

\newcommand\zz[1]{\makebox[.5in][l]{\scriptsize#1}\hfill\ignorespaces}

\begin{minipage}{2.5in}\raggedright
\zz{Alpha} \zz{Bravo} \zz{Charlie} \zz{Delta} \zz{Echo} 
\zz{Foxtrot} \zz{Gulf} \zz{Hotel} \zz{India} \zz{Juliett} 
\zz{Kilo} \zz{Lima}
\zz{Mike}
 \zz{November} \zz{Oscar} \zz{Papa} 
\end{minipage}


\end{document}

Antwort2

Hier ist eine weitere Idee. Davids ist viel einfacher und wenn sie für Sie funktioniert, großartig! Diese Version ist je nach Ihren Anforderungen etwas flexibler. Ich habe ausführliche Kommentare hinzugefügt, um zu erklären, wie es funktioniert. Bessere TeXies als ich könnten möglicherweise Verbesserungen für meinen Code vorschlagen, aber hier ist sie:

\documentclass{article}
\usepackage{array} % required for `>` in tabular preamble
\newcount\myfield  % keep track of how many fields across we are
\newcount\maxfield % maximum number of fields
\def\z{% use \z as a separator inside mylist instead of & or \\
  \ifnum \myfield < \maxfield% we haven't made it across the row yet
    \def\mydefer{&}% insert a standard column separator
  \else% we have made it across the row
    \def\mydefer{%
      \global\myfield 0\relax% reset field counter
      \\\hline% go to next row
    }%
  \fi%
  \mydefer% insert the appropriate column or row separator
}
\newenvironment{mylist}[2][l]% two arguments: #1 = column-spec (optional, default `l`); #2 = number of fields per row
{% opening of environment
  \myfield 0\relax% initialize at the "zeroeth" field
  \maxfield #2\relax% set max fields for this environment
  \scriptsize% choose font if desired
  \begin{tabular}{|*{#2}{>{\global\advance\myfield 1\relax}#1|}}% #2 copies of column #1, advance field count before each cell
  \hline% horizontal rule if desired
}{% closing of environment (much simpler if you decide to drop the rules)
  \ifnum\myfield=0\hline\else\\\cline{1-\myfield}\fi% draw a partial rule or full rule depending on number of fields in the last row
  \end{tabular}
}

\begin{document}
\begin{mylist}{5}
Alpha \z 
Bravo \z 
Charlie \z Delta \z Echo \z Foxtrot \z
Gulf \z Hotel \z
India \z Juliett \z Kilo \z Lima \z Mike \z November \z Oscar \z Papa
\end{mylist}

\begin{mylist}{3}
A \z Test \z for \z different \z parameters
\end{mylist}

\begin{mylist}[c]{2}
A \z Test \z for \z different \z parameters
\end{mylist}

\begin{mylist}[p{0.75in}]{2}
A \z Test \z for \z different \z parameters
\end{mylist}

\begin{mylist}[l]{7}
Alpha \z 
Bravo \z 
Charlie \z Delta \z Echo \z Foxtrot \z
Gulf \z Hotel \z
India \z Juliett \z Kilo \z Lima \z Mike \z November \z Oscar \z Papa
\end{mylist}

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen