Como uma celebração do bom e velho bloco de notas , trataremos retornos de carro e feeds de linha como o que eles originalmente queriam dizer, e não como eles são usados hoje.
Dada uma sequência que consiste em ASCII imprimível mais alimentações de linha (␊; LF; esc \n
; hex 0A; dec 10) e retornos de carro (␍; CR; esc \r
; hex 0D; dec 13), faça com que o Try It Online mostre como os caracteres imprimíveis seria posicionado se impresso em uma impressora que leva esses dois caracteres de controle literalmente:
- após uma alimentação de linha, continue imprimindo uma linha mais abaixo
- em um retorno de carro, continue imprimindo pela borda esquerda
- vários retornos de carro consecutivos se comportam como um único retorno de carro
Devido aos dispositivos modernos terem problemas com o impacto excessivo , uma execução de um ou mais retornos de carro, exceto no início da entrada, nunca ocorrerá sem pelo menos um avanço de linha anterior e / ou seguinte. No entanto, duas execuções de retorno de carro podem ser separadas por um único avanço de linha.
Qualquer quantidade de espaço em branco à direita adicional é aceitável, tanto no lado direito de todas as linhas quanto abaixo do texto inteiro, desde que pelo menos a quantidade de espaço em branco fornecida na entrada seja preservada.
Exemplos (usando \n
e \r
para avanço de linha e retorno de carro)
Lorem ipsum dolor sit amet,
Lorem ipsum dolor sit amet,
consectetur adipiscing\nelit, sed
consectetur adipiscing
elit, sed
do eiusmod\r\ntempor incididunt\n\n ut labore
do eiusmod
tempor incididunt
ut labore
et dolore\n\rmagna \r\r\naliqua. Ut
(observe os espaços à direita)
et dolore
magna
aliqua. Ut
\nenim ad minim veniam,\n\r quis nostrud
enim ad minim veniam, quis nostrud
\rexercitation\r\n\rullamco laboris\n\r\nnisi ut aliquip ex\n\n\rea commodo consequat.\n\n
exercício ullamco laboris nisi ut aliquip ex e o consequodo.
stty -onlcr;cat
.