Einfacher Text

Katze
in einem (n Xterm FensterIm Computer, einfacher Text ist ein loser Begriff für Daten (z. B. Dateiinhalte), die nur darstellen Figuren von lesbarem Material, aber weder seine grafische Darstellung noch andere Objekte (Gleitkommazahlen, Bilder usw.). Es kann auch eine begrenzte Anzahl von "Whitespace" -Scharns enthalten, die die einfache Anordnung des Textes beeinflussen, z. B. Leerzeichen, Zeilenunterbrechungen oder Tabellierungszeichen (obwohl Registerkartenzeichen viele verschiedene Dinge "bedeuten" können, also kaum "einfach"). Einfacher Text unterscheidet sich von Formatierter Text, wo Stilinformationen enthalten sind; aus strukturiertem Text, wo strukturelle Teile des Dokuments wie Absätze, Abschnitte und dergleichen identifiziert werden; und von Binärdateien in denen einige Teile als binäre Objekte interpretiert werden müssen (codierte Ganzzahlen, reelle Zahlen, Bilder usw.).
Der Begriff wird manchmal ziemlich locker verwendet, um Dateien zu bedeuten, die enthalten nur "lesbarer" Inhalt (oder nur Dateien mit nichts, was der Sprecher nicht bevorzugt). Dies könnte beispielsweise jeden Hinweis auf Schriftarten oder Layout (wie Markup, Markdown oder sogar Registerkarten) ausschließen. Charaktere wie lockige Zitate, nicht bahnbrechende Räume, weiche Bindestriche, EM-Striche und/oder Ligaturen; oder andere Dinge.
Im Prinzip kann einfacher Text in jedem sein Codierung, aber gelegentlich wird der Begriff dazu gebracht, zu implizieren ASCII. Wie Unicode-basierte Kodierungen wie z. UTF-8 und UTF-16 Häufiger werden, diese Verwendung kann schrumpfen.
Einfacher Text wird manchmal auch verwendet, um "binäre" Dateien auszuschließen: diejenigen, in denen zumindest einige Teile der Datei nicht über die tatsächlich eigentliche Zeichenkodierung interpretiert werden können. Zum Beispiel eine Datei oder Saite bestehend aus "Hallo" (in welcher Kodierung), folgt von 4 Bytes, die eine binäre Ganzzahl ausdrücken, nämlich nicht Nur ein Zeichen ist eine binäre Datei, nicht einmal der lockerste Gebrauchsgebrauch. Setzen Sie einen anderen Weg und übersetzen Sie eine klare Textdatei in eine Zeichencodierung, die völlig unterschiedliche Zahlen verwendet, um darzustellen Figuren ändert nicht die Bedeutung (solange Sie wissen, was Codierung verwendet wird), sondern für binäre Dateien eine solche Konvertierung tut Ändern Sie die Bedeutung von mindestens einigen Teilen der Datei.
Einfacher Text und reichhaltiger Text
Gemäß dem Unicode -Standard:
- Einfacher Text ist eine reine Folge von Zeichencodes; Einfacher nicht kodierter Text ist daher eine Abfolge von Unicode-Zeichencodes.
- Im Gegensatz, gestylerter Text, auch bekannt als reicher Text, ist jede Textdarstellung mit einfachem Text und hinzugefügten Informationen wie eine Sprachkennung, Schriftgröße, Farbe, Hypertext -Links usw.
SGML, RTF, HTML, XML und Tex sind Beispiele für reichhaltige Text, die vollständig als einfache Textströme dargestellt werden und einfache Textdaten mit Sequenzen von Zeichen, die die zusätzlichen Datenstrukturen darstellen, einmischt. "[1]
Nach anderen Definitionen jedoch Dateien, die enthalten Markup oder andere Meta-Daten werden im Allgemeinen als einfacher Text angesehen, solange sich das Markup auch direkt befindet für Menschen lesbar sich formen (wie in Html, Xml, usw). Somit sind Darstellungen wie z. SGML, RTF, Html, Xml, Wiki Markup, und Texsowie fast alle Programmiersprachenquellcode -Dateien werden als einfacher Text angesehen. Der jeweilige Inhalt ist irrelevant dafür, ob eine Datei nur Text ist. Zum Beispiel eine SVG Die Datei kann Zeichnungen oder sogar bitmapierte Grafiken ausdrücken, ist aber immer noch einfacher Text.
Die Verwendung von Klartext und nicht Binärdateien ermöglicht es Dateien, "in freier Wildbahn" viel besser zu überleben, teilweise, indem sie sie weitgehend gegen Computerarchitektur -Inkompatibilitäten immun machen. Zum Beispiel alle Probleme von Endiangess kann vermieden werden (mit Codierungen wie z. UCS-2 Anstelle von UTF-8 ist Endiangess wichtig, aber für jeden Charakter einheitlich und nicht für potenziell nicht unbekannte Teilmengen davon).
Verwendungszweck
Der Zweck der heutigen Verwendung von einfachem Text ist in erster Linie unabhängig von Programmen, die ihre eigene spezielle Codierung oder Formatierung erfordern oder Datei Format. Klartextdateien können geöffnet, gelesen und mit allgegenwärtiger bearbeitet werden Textredakteure und Dienstprogramme.
A Befehlszeilenschnittstelle Ermöglicht Menschen, Befehle im Klartext zu geben und eine Antwort zu erhalten, die normalerweise auch im Klartext ist.
Viele andere Computerprogramme können auch Klartext verarbeiten oder erstellen, z. B. unzählige Programme in DOS, Fenster, Klassischer Mac OS, und Unix und seine Verwandten; sowie Webbrowser (ein paar Browser wie Luchs und die Linienmodusbrowser Erstellen Sie nur einfache Text für Anzeige) und andere E-Text Leser.
Klartextdateien sind in der Programmierung fast universell. Eine Quellcodedatei mit Anweisungen in a Programmiersprache ist fast immer eine einfache Textdatei. Einfacher Text wird auch üblicherweise für verwendet Konfigurationsdateien, die beim Start eines Programms für gespeicherte Einstellungen gelesen werden.
Einfacher Text wird für viel verwendet Email.
A Kommentar, a ".txt"Datei oder a TXT -Datensatz Im Allgemeinen enthält nur einfache Text (ohne Formatierung), das Menschen lesen soll.
Das beste Format für die Aufbewahrung von Wissen ist anhaltend eher einfacher Text als einige andere Binärformat.[2]
Codierung
Charaktercodierungen
Vor den frühen 1960er Jahren wurden Computer hauptsächlich für die Zahlenkrebs und nicht für Text verwendet, und der Speicher war äußerst teuer. Computer haben häufig nur 6 Bit für jedes Zeichen zugewiesen, was nur 64 Zeichen ermöglichen. Die Abrechnung von Codes für A-Z, A-Z und 0-9 ließen nur 2 Codes: Nirgendwo nahe genug. Die meisten Computer entschieden sich dafür, dass sie keine niedrigeren Buchstaben unterstützen. Somit, frühe Textprojekte wie z. Roberto Busa's Index Thomisticus, das Brown Corpusund andere mussten auf Konventionen zurückgreifen, wie z. B. ein Sternchen vor den Buchstaben, die tatsächlich als obere Fälle beabsichtigt waren.
Fred Brooks von IBM argumentierte stark dafür, dass sie zu 8-Bit-Bytes gehen, weil die Leute eines Tages Text verarbeiten möchten; und gewonnen. Obwohl IBM verwendet Ebcdic, der meiste Text von da an wurde in codiert ASCIIVerwenden von Werten von 0 bis 31 für (nicht düster) Steuerzeichenund Werte von 32 bis 127 für grafische Zeichen wie Buchstaben, Ziffern und Zeichensetzung. Die meisten Maschinen speicherten Charaktere in 8 Bit anstelle von 7, ignorierten das verbleibende Bit oder verwenden es als a Überprüfung.
Die Nahverwaltigkeit von ASCII war eine große Hilfe, konnte jedoch nicht auf internationale und sprachliche Bedenken hinweg angesprochen werden. Das Dollar-Sign ("$") war in England nicht so nützlich, und die in Spanisch, Französisch, Deutsch, Portugiesisch und viele anderen Sprachen verwendeten akzentuierten Charaktere waren in ASCII völlig nicht verfügbar (ganz zu schweigen von Charakteren, die auf Griechisch, Russisch, Russisch verwendet wurden. und die meisten östlichen Sprachen). Viele Einzelpersonen, Unternehmen und Länder definierten zusätzliche Charaktere nach Bedarf - häufig die Kontrollfiguren neu zuweisen oder Werte im Bereich von 128 bis 255 verwenden. Verwenden von Werten über 128 Konflikten mit der Verwendung des 8. Bits als Prüfsumme, aber die Überprüfungssumme -Nutzung starb allmählich aus .
Diese zusätzlichen Zeichen wurden in verschiedenen Ländern unterschiedlich codiert, was die Texte unmöglich machte, ohne die Regeln des Urhebers herauszufinden. Zum Beispiel kann ein Browser angezeigt werden ¬A statt ` Wenn es versuchte, einen Charakter als einen anderen zu interpretieren. Die internationale Organisation für Standardisierung (ISO) entwickelte schließlich mehrere Codeseiten unter ISO 8859, um verschiedene Sprachen aufzunehmen. Der erste davon (ISO 8859-1) ist auch als "Latin-1" bekannt und deckt die Bedürfnisse der meisten (nicht alle) europäischen Sprachen ab, die lateinische Charaktere verwenden (es gab nicht genug Platz, um sie alle abzudecken). ISO 2022 Anschließend stellten Konventionen zum "Schalten" zwischen verschiedenen Zeichensätzen in der Mitte des Datei zur Verfügung. Viele andere Organisationen entwickelten Variationen in diesen und verwendeten seit vielen Jahren Windows und Macintosh -Computer inkompatiblen Variationen.
Die textkodierende Situation wurde immer komplexer und führte zu Bemühungen von ISO und von der Unicode -Konsortium Um eine einzelne, einheitliche Charaktercodierung zu entwickeln, die alle bekannten (oder zumindest derzeit bekannten) Sprachen abdecken könnte. Nach einigen Konflikten waren diese Bemühungen einheitlich. Unicode Ermöglicht derzeit 1.114.112 Codewerte und weist Codes zu, die fast alle modernen Textschreibsysteme sowie viele historische und für viele nichtspringende Zeichen wie Drucker abdecken Dingbats, mathematische Symbole usw.
Der Text wird unabhängig von seiner Codierung als einfacher Text angesehen. Um es richtig zu verstehen oder zu verarbeiten, muss der Empfänger wissen (oder herausfinden können), welche Codierung verwendet wurde. Sie müssen jedoch nichts über die verwendete Computerarchitektur oder über die binären Strukturen wissen, die durch das Programm (falls vorhanden) definiert wurden, die die Daten erstellt haben.
Die vielleicht häufigste Art, die spezifische Codierung von einfachem Text explizit zu sagen, ist mit a Mime Typ. Für E -Mail und HttpDer Standardmime -Typ ist "Text/einfach" - Einfacher Text ohne Markup. Ein anderer MIME -Typ, der häufig sowohl in E -Mail als auch in HTTP verwendet wird."Text/HTML; charSet = utf-8 "-Klartext wird unter Verwendung der UTF-8-Zeichenkodierung mit HTML-Markup dargestellt. Ein weiterer häufiger MIME-Typ ist" Anwendung/JSON "-Klartext wird unter Verwendung der UTF-8-Zeichenkodierung mit dargestellt JSON Markup.
Wenn ein Dokument ohne ausdrückliche Hinweise auf die Charaktercodierung empfangen wird, verwenden einige Anwendungen Charset -Erkennung zu versuchen zu erraten, was Codierung verwendet wurde.
Kontrollcodes
ASCII reserviert die ersten 32 Codes (Nummern 0–31 Dezimalzahl) für Steuerzeichen Bekannt als "C0 -Set": Codes, die ursprünglich nicht druckbare Informationen darstellen, sondern Geräte (wie z. Drucker), die ASCII verwenden oder bereitstellen Meta-Informationen über Datenströme wie die auf Magnetklebeband gespeicherten. Dazu gehören gemeinsame Charaktere wie die Neue Zeile und die Tab -Zeichen.
In 8-Bit-Zeichensätzen wie z. Latein-1 und der andere ISO 8859 Sätze, die ersten 32 Zeichen der "oberen Hälfte" (128 bis 159) sind auch Kontrollcodes, die als "C1 -Set" bezeichnet werden. Sie werden selten direkt verwendet; Wenn sie in Dokumenten auftauchen, die angeblich in einer ISO 8859-Codierung enthalten sind, beziehen sich ihre Codepositionen im Allgemeinen stattdessen auf die Zeichen an dieser Position in einer proprietären, systemspezifischen Codierung, wie z. B. Windows-1252 oder Mac OS RomanDadurch werden die Codes verwendet, um stattdessen zusätzliche grafische Zeichen zu liefern.
Unicode definiert zusätzliche Steuerzeichen, einschließlich bidirektionaler Text Richtungsüberschreibungszeichen (verwendet, um das Schreiben von rechts nach rechts explizit zu markieren und umgekehrt und umgekehrt) und) und Variationswählern Um alternative Formen von auszuwählen CJK -Ideografien, Emoji und andere Charaktere.
Siehe auch
Verweise
- ^ "Der Unicode Standard, Version 14.0" (PDF). S. 18–19.
- ^ Andrew Hunt, David Thomas. "Der pragmatische Programmierer". 1999.Kapitel 14: "Die Kraft des einfachen Textes". p. 73.