2010-04-01 11 views
7

Próbuję ustawić tabulatory w LaTeX w środowisku tabulacji. Mój problem polega na tym, że chcę ustawić tabulator po wielu białych znakach. Problem polega na tym, że LaTeX oczywiście ignoruje wiele białych znaków i wydaje się, że obsługuje tylko tabulatory tabulacji po rzeczywistym tekście.Jak ustawić tabulatory po białych znakach w LaTeX?

To, co chciałbym móc zrobić, to sformatować poniższe strzałki, tak aby były ze sobą połączone.

A -> B 
CD -> A 
BDD -> F 

Problem polega na tym, że dodatkowe miejsca po znaków na lewo od strzałki są ignorowane dla celów ustawienie tabulatora. Jakie jest rozwiązanie?

+0

Nieostre. Czy chcesz zastąpić znaczenie białych znaków znakiem tab-stop? Czy chcesz zastąpić znaczenie par (trzech, ...) białych znaków za pomocą polecenia tab-stop? Czym jest '->'? Czy to '$ \ to $'? Dlaczego dodatkowe miejsce po "A" jest problemem? Nie chcesz ignorować wielu białych znaków? –

+0

Jeśli umieścisz tabulatory po "A", to siedzi bezpośrednio po "A", gdy chcę zrobić tylko zatrzymać tabulator, który znajduje się tuż za pozycją, która jest najbardziej prawą postacią po lewej stronie. Rozszerzyłem przykład, czy to sprawia, że ​​jest jaśniejszy? – nedned

+0

Może powinieneś użyć '\ halign',' \ begin {table}} ... \ end {tabular} 'lub czegoś podobnego zamiast' tabbing'? –

Odpowiedz

13

Środowisko tabbing pozwala ustawić odpowiednio tabulatory i pozycję tekstu; może być użyty do symulacji prostych tabel.

\= w pierwszym wierszu ustawia zatrzymanie tabulatora, \> przesuwa się do następnego zatrzymania tabulacji w drugim wierszu i poniżej.

Należy pamiętać, że tabbing nie rozszerza pozycji tabulacji, dlatego należy się upewnić, że są one wystarczająco szeroko rozstawione. Na przykład, umieścić kilka nonbreakable spacji po A w pierwszej linii:

\begin{tabbing} 
A~~~~ \= $\to$ \= B \\ 
CD \> $\to$ \> A \\ 
BDD \> $\to$ \> F \\ 
\end{tabbing} 

wynik wygląda jak

result screenshot

Korzystanie z tabel (np tabular) jest często łatwiejsze, ale tabbing pozwala przedefiniować punkty tabulacji później, więc może być użyty do symulacji wcięcia tekstu, np. kodu źródłowego.

Zobacz także: LaTeX: tabbing.

+0

To jest dokładnie takie rozwiązanie, jakie miałem na myśli. Chociaż użycie polecenia '\ hskip' sugerowanego przez Charlesa Stewarta jest prawdopodobnie jeszcze prostsze. Zaakceptowałem to, ponieważ wyjaśnia, jak sprawić, by działało w środowisku kart. – nedned

9

Jeśli chcesz to w trybie matematyki, umieścić \usepackage{amsmath} w preambule i spróbuj

\begin{align*} 
    A &\to B \\ 
    CD &\to A 
\end{align*} 

W ampersandy są niewidoczne i są wyrównane ze sobą, więc strzały będą wyrównane.

Można to również zrobić w trybie tekstowym w postaci tabeli (bez konieczności pakiet amsmath):

\begin{tabular}{r @{$\to$} l} 
    A & B \\ 
    CD & A 
\end{tabular} 

Z wypowiedzi w opisie kolumny @, kolumny zostaną oddzielone od jakiegokolwiek symbolu chcesz - - w tym przypadku strzałka - w ten sposób wyrównując ten symbol między wierszami.

+0

+1 dobra odpowiedź, lepsza niż inne. –

7

Użyj parametru {\hskip 4em}, aby określić białą przestrzeń o szerokości czterech szerokości znaków lub jaka jest twoja. Istnieje wiele predefiniowanych znaków białych znaków w lateksie, takich jak \qquad dla \hskip2em.

\hskip odstępy określone w ten sposób jest nieelastyczny, czyli Tex nie zmieni się ilość białych znaków, ale można użyć czegoś podobnego {\hskip 3em plus 1em minus 1em} do przestrzeni, która stara się być 3ems długo, ale można rozciągnąć lub skrócić do między 2ems i 4ems.

+0

IMHO, odpowiadasz na inne pytanie. –

+1

@Alexey: Nie. Środowisko klatek Latex ustawi tabulatory po wygenerowaniu białych znaków przy użyciu hskip, więc ta odpowiedź dostarcza informacji, jak rozwiązać problem. –

+1

Tak, to odpowiedziała na pytanie, w rzeczywistości uważam, że jest to bardziej eleganckie rozwiązanie niż to, które przyjąłem. Ale biorąc pod uwagę, że ten ma również ładny mały opis, jak to wszystko odbywa się w środowisku tabulacji, jest to bardziej przydatne dla osób lądujących na tej stronie. – nedned