LATEX - Ajout d'une quantité variable d'espacement horizontal au début de chaque nouvelle ligne dans une séquence [fermée]

StackOverflow https://stackoverflow.com/questions/2212626

  •  19-09-2019
  •  | 
  •  

Question

J'utilise LaTeX pour une mission d'algorithmes et je dois montrer les étapes pour algorithme de Horspool pour chaîne correspondant similaire à ce qui est indiqué dans le manuel. La façon dont il montre l'algorithme montre comment le modèle se déplace le long du texte pour chaque échec de comparaison, avec chaque quart de travail sur une nouvelle ligne. Le motif est affiché en dessous du texte avec un espacement horizontal approprié indiquant que les lettres sont comparées.

Voici un exemple de ce qu'il ressemblerait avec une séquence d'ADN:

GAGTAATCCTTCACTTCAAGGCCAGTCTTCACATCTCATCAGA
ACATCTCA
 ACATCTCA
  ACATCTCA
    ACATCTCA

Je l'ai poussé autour de plusieurs références LaTeX. J'ai essayé d'utiliser \hspace d'ajouter l'espacement au début de chaque ligne, puis en ajoutant \hfill après le motif et avant de créer une nouvelle ligne. Je ne reçois pas d'erreurs, mais il n'y a pas d'espace étant ajouté à l'avant. La ligne est correctement remplie.

Y at-il une autre façon d'ajouter l'espace au début de chaque ligne, ou d'une autre façon de formater ce?

Était-ce utile?

La solution

Je suis assez sûr de vouloir composer vos exemples avec une police à largeur fixe, auquel cas, vous devriez probablement utiliser l'environnement de verbatim. Mieux encore, vous pouvez utiliser package fancyvrb , ce qui vous donne un environnement Verbatim, et vous permet de contrôler le sous-titrage, la coloration, la taille de la police / formes, etc. vous pouvez même faire des blancs plus visibles en leur montrant:

\documentclass{article}
\usepackage{fancyvrb}
\begin{document}
\begin{Verbatim}[showspaces=true,fontsize=\small]
GAGTAATCCTTCACTTCAAGGCCAGTCTTCACATCTCATCAGA
ACATCTCA
 ACATCTCA
  ACATCTCA
    ACATCTCA
\end{Verbatim}
\end{document}

Autres conseils

Il suffit d'utiliser \hspace*{5mm} (à savoir, la forme étoilée) qui fonctionne très bien au début d'une ligne.

Pour cela, j'ajouter toujours un objet « vide » au début de la ligne, par exemple.

${}$\hspace{5em}Foo

il est pas beau, mais sert le but.

Je voudrais simplement utiliser la liste des package et faire la indention avec des espaces ou des tabulations. Je suppose que vous utilisez la police de machine à écrire de toute façon à obtenir des lettres avec une largeur non relative.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top