En informatique, le retour chariot est l’un des caractères de contrôle du code ASCII, Unicode, EBCDIC, et de nombreux autres codes. Il commande à une imprimante, ou à un autre système de sortie tel que l’écran d’une console système, de déplacer la position du curseur vers la première position de la même ligne. Il était généralement utilisé avec le saut de ligne (LF), un déplacement vers la ligne suivante, de sorte qu’ensemble, ils commencent une nouvelle ligne. Ensemble, cette séquence peut être désignée par CRLF.
Les fonctions de retour chariot et de saut de ligne ont été séparées pour des raisons pratiques :
- Le retour chariot par lui-même offrait la possibilité de surimprimer la ligne avec un nouveau texte. Cela pouvait être utilisé pour produire des caractères gras ou accentués, des traits de soulignement, du texte barré et certains symboles composites.
- Les premières imprimantes mécaniques étaient trop lentes pour renvoyer le chariot dans le temps nécessaire au traitement d’un caractère. Par conséquent, le temps passé à envoyer le saut de ligne n’était pas perdu (il fallait souvent envoyer plusieurs autres caractères pour s’assurer que le retour chariot s’était produit avant d’envoyer un caractère d’impression). C’est pourquoi le retour chariot était toujours envoyé en premier.
- Il était alors également possible d’intégrer plusieurs opérations de saut de ligne dans le temps pris pour un seul retour chariot – par exemple pour l’impression de texte à double interligne, d’en-têtes/pieds de page ou de pages de titre – afin de gagner du temps d’impression et de transmission sans avoir besoin de circuits supplémentaires ou de complexité mécanique pour « filtrer » les signaux CR supplémentaires parasites.
Dès 1901, le code Baudot contenait des caractères distincts de retour chariot et de saut de ligne.
De nombreux programmes informatiques utilisent le caractère retour chariot, seul ou avec un saut de ligne, pour signaler la fin d’une ligne de texte, mais d’autres caractères sont également utilisés pour cette fonction (voir nouvelle ligne) ; d’autres ne l’utilisent que pour une rupture de paragraphe (un « retour dur »). Certaines normes qui introduisent leurs propres représentations pour le contrôle des lignes et des paragraphes (par exemple HTML) et de nombreux langages de programmation traitent le retour chariot et le saut de ligne comme des espaces blancs.
En ASCII et Unicode, le retour chariot est défini comme 13 (ou hexadécimal 0D) ; il peut aussi être vu comme control+M ou ^M. Dans le langage de programmation C, et dans de nombreux autres langages (y compris les expressions régulières) influencés par ce dernier, \r
désigne ce caractère.
.