Wie kann ich Code vom Kindle PC kopieren und die Formatierung beibehalten?

9

Hat jemand eine gute Möglichkeit gefunden, Code vom Kindle PC zu kopieren?

Ich habe gerade ein Programmierbuch zum ersten Mal auf den Kindle PC heruntergeladen. Der Code im Buch ist sehr schön formatiert, und ich möchte den Code direkt aus dem Kindle PC-Buch nach Visual Studio kopieren, ohne die automatische Einrückung verwenden zu müssen. Aus irgendeinem Grund, wenn ich Text aus dem Buch kopiere, werden keine Leerzeichen, Tabulatoren oder Zeilenumbrüche beibehalten. Damit habe ich buchstäblich Schluss.

mit System; Verwenden von System.Collections.Generic; Verwenden von System.Linq; Namespace NumericQuery {class Programm {static void Main (string [] args) {Listenliste = new List () {1, 2, 3}; var query = von der Nummer in der Liste, wo die Nummer & lt; 3 Nummer wählen; foreach (var Nummer in Abfrage) {Console.WriteLine (Nummer); }}}}

Ich bin frustriert, weil ich den Code nicht von der Website des Autors herunterladen kann, da ich keine ISBN habe (weil ich keine Hardcopy gekauft habe).

    
Lou Morda 27.09.2011, 08:23
quelle

3 Antworten

4

Ich habe gerade das Problem gelöst, Code-Snippets von einem Kindle-Buch in einen Text- / Quellcode-Editor Ihrer Wahl zu kopieren. Das gleiche Thema wurde in einem Beitrag auf stackoverflow.com mit dem Titel "Warum wird dieser HTML-Code als komplett leere Seite gerendert? Von Node.js nach dem Node Beginner Book [closed]" diskutiert. Dieser spezielle Beitrag beschreibt das genaue gleiche Problem, das ich hatte (dasselbe Kindle-Buch, dasselbe Code-Snippet, dasselbe Codesymptom!). Leider wurde dieser Beitrag vorzeitig geschlossen, bevor einer der Befragten die genaue Antwort geben konnte, ansonsten hätte ich auf diesen Beitrag geantwortet.

Ich habe mich jedoch eingehender mit diesem Problem beschäftigt und die Ursache des Problems beim Kopieren von Codeschnipsel aus Kindle-Büchern entdeckt: Wenn Sie Text aus der Kindle-App kopieren, verwendet er Hexadezimalcode 0xA0 für Leerzeichen, nicht 0x20. Hex-Code 0xA0 ist erweitertes ASCII für nicht brechende Leerzeichen. Nun, das funktioniert nicht, wenn Sie erwarten, HTML-Literal-Strings zu kopieren und einzufügen, wie es in dem oben erwähnten Posting der Fall war.

Und so erklärt sich das Verhalten im oben genannten Posting: Das ursprüngliche Poster deutete an, dass er das Problem umgehen konnte, indem er den gesamten Text von Hand wiederholte. Es ist, weil die Hand, die neu eintippt, richtiges 0x20 verwendete.

Das hatte andere Symptome, die ich zuerst nicht verstand, aber jetzt erklärt werde: Mein Texteditor (Notepad ++) hat die reservierten Schlüsselwörter in meinem Quellcode nicht korrekt identifiziert. Dies liegt auch daran, dass die Schlüsselwörter durch 0xA0 und nicht durch 0x20 getrennt wurden. Der Schlüsselwortparser in Notepad ++ muss von 0x20 entfernt werden.

Lösung: Nachdem Sie Text vom Kindle eingefügt haben, führen Sie eine Suche durch und ersetzen Sie sie mithilfe der regulären Ausdruckssuchfunktionen in Ihrem Quellcode-Editor. Suchen Sie nach dem regulären Ausdruck \ xA0 und ersetzen Sie ihn durch \ x20 (oder geben Sie je nach Editor einfach ein einzelnes Leerzeichen in das Feld Ersetzen ein [so funktioniert Notepad ++]).

    
user2415216 23.05.2013 20:47
quelle
0

Ich würde die Website des Verlags überprüfen. Ich habe festgestellt, dass sie oft den Quellcode veröffentlichen, der Bücher begleitet. Wenn sie das nicht tun, dann macht es mir viel weniger wahrscheinlich, das Buch zu kaufen. (In einigen Fällen kann kein Kopier- / Einfügevorgang Code abrufen, unabhängig von der schlechten Formatierung. Daher kann nur versucht werden, den Code vom Publisher abzurufen.)

    
Michael Ohlrogge 09.06.2016 04:28
quelle
0

Ich habe festgestellt, dass Kindle für PC einfach alle Zeilenumbrüche in \ x20 konvertiert, wodurch der Trick zum Suchen und Ersetzen nicht funktioniert. Meine Lösung ist nicht großartig, aber es funktioniert:

Ich habe Calibre heruntergeladen und damit angefangen. Es genügt zu sagen, dass Sie Wege finden können, Calibre zu verwenden, um mit etwas Googeln zu öffnen, was auch immer Sie benötigen.

    
Grant Curell 16.02.2017 15:34
quelle

Tags und Links