Unterschied zwischen Hard Wrap und Soft Wrap?


99

Ich bin gerade dabei, einen Texteditor zu schreiben. Nachdem ich mir andere Texteditoren angesehen habe, habe ich festgestellt, dass sich einige von ihnen auf einen "weichen" gegenüber einem "harten" Umbruch beziehen. Was ist der Unterschied? Ich kann die Antwort nicht durch Suchen finden.

Antworten:


136

Bei einem harten Zeilenumbruch werden an Zeilenumbruchpunkten tatsächliche Zeilenumbrüche in den Text eingefügt. Beim weichen Zeilenumbruch befindet sich der tatsächliche Text immer noch in derselben Zeile, sieht jedoch so aus, als wäre er in mehrere Zeilen unterteilt.


19

Es ist üblich, dass Texteditoren Text automatisch in Absätze mit harten Zeilenumbrüchen einbinden. Es ist jedoch weniger üblich, dass der Text in einen schönen Absatz zurückfließt, wenn Sie später wiederkommen und später Wörter bearbeiten / hinzufügen / entfernen. (Sie können dies manuell in Emacs mit Mq tun.)

Dies ist ziemlich ärgerlich, da zwanghafte Leute wie ich dann zurückgehen und die harten Pausen an den entsprechenden Stellen manuell wieder einfügen müssen.

Auf der anderen Seite ist Soft Wrapping ärgerlich, da die meisten Befehlszeilentools zeilenbasiertes Diffing verwenden (bei der Versionskontrolle fällt mir dies am deutlichsten auf). Wenn Sie einen 1/3-seitigen Absatz haben, der weich verpackt ist und einen Tippfehler behebt, ist es im Grunde unmöglich zu erkennen, wo sich die Änderung in einer regulären diffAusgabe oder ähnlichem befindet.


2
Ich weiß, dass Sie "normales" Diff gesagt haben, aber ich möchte darauf hinweisen, dass das Hervorheben ein Glücksfall ist.
SW.

1
@ Will, also welche Art von Lösung empfehlen OCD-Leute wie Sie?
Pacerier

Wenn Sie Vim mit aktivierten Zeilennummern verwenden (: set nu), werden Sie feststellen, dass Zeilen weich umbrochen werden, diese jedoch getrennt bleiben. Wenn also eine einzelne Zeile breiter als der Bildschirm ist, können Sie trotzdem den gesamten Text lesen , aber es wird Ihre Fähigkeit, nach Zeilennummern zu suchen, nicht beeinträchtigen. (Eine sichtbare Linie unterscheidet sich von einer tatsächlichen Linie). Sie können auch direkt zu einer Zeile springen, indem Sie
Folgendes

Wenn Sie Git verwenden, können Sie Änderungen mit Soft Wrapping leicht erkennen. Verwenden Sie git diff --word-diff
Anthony Ebert

13

soft : Der Text im Textbereich wird beim Senden in einem Formular nicht umbrochen. Dies ist die Standardeinstellung

schwer : Der Text im Textbereich wird beim Senden in einem Formular umbrochen (enthält Zeilenumbrüche). Wenn "hard" verwendet wird, muss das Attribut cols angegeben werden

Referenz: W3Schools

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.