2011-09-27 11 views
9

¿Alguien ha descubierto una buena manera de copiar el código de la PC Kindle?¿Cómo puedo copiar el código de la PC Kindle y conservar el formato

Acabo de descargar un libro de programación a Kindle PC por primera vez. El código del libro está formateado muy bien, y me gustaría copiar el código directamente desde el libro de la PC de Kindle a Visual Studio sin tener que utilizar el autoguiado. Por alguna razón, cuando copio texto del libro, ninguno de los espacios en blanco, pestañas o líneas nuevas se conservan. Literalmente termino con esto:

usando el Sistema; utilizando System.Collections.Generic; utilizando System.Linq; namespace NumericQuery {class Program {static void Main (string [] args) {List list = new List() {1, 2, 3}; var query = from number in list donde número < 3 seleccionar número; foreach (número de var en la consulta) {Console.WriteLine (número); }}}}

Estoy frustrado porque no puedo descargar el código del sitio web del autor ya que no tengo un ISBN (porque no compré una copia impresa).

+0

El número de ISBN es el mismo para todos. –

+0

En la mayoría de los casos, el ASIN en la URL es el ISBN (que se muestra en la página de todos modos). Esto no está garantizado (a veces hay colisiones, generalmente libros más antiguos en los que un editor reutilizó un ISBN de un libro agotado) pero es correcto la mayor parte del tiempo. –

+0

No se puede copiar pegar texto? Esto es tan absurdo ¿Por qué las personas honestas siempre tienen que pagar por los demás? – franssu

Respuesta

4

Acabo de resolver el problema de copiar fragmentos de código de un libro de Kindle a un editor de texto/código fuente de su elección. Este mismo tema se discutió en una publicación en stackoverflow.com titulada "¿Por qué Chrome representa este HTML como una página completamente en blanco? Desde Node.js, siguiendo The Node Beginner Book [closed]". Esa publicación en particular describe el mismo problema que estaba experimentando (¡el mismo libro de Kindle, el mismo fragmento de código, el mismo síntoma de código!). Lamentablemente, esa publicación se cerró prematuramente antes de que cualquiera de los encuestados pudiera proporcionar la respuesta exacta; de lo contrario, habría respondido a esa publicación.

Sin embargo, profundicé en este tema y descubrí la causa raíz del problema al copiar fragmentos de código de libros Kindle: cuando copias texto de la aplicación Kindle, usa el código hexadecimal 0xA0 para espacios, no 0x20. El código hexadecimal 0xA0 se extiende ASCII para espacios en blanco que no se rompen. Bueno, esto no funciona cuando esperas copiar y pegar cadenas literales HTML, como fue el caso en la publicación mencionada anteriormente.

Y esto explica el comportamiento en la publicación mencionada anteriormente: el cartel original indicaba que podía solucionar el problema volviendo a escribir a mano todo el texto. Es porque el reescribir a mano estaba usando el 0x20 adecuado.

Esto tenía otros síntomas que no entendí al principio, pero ahora los explico: mi editor de texto (Notepad ++) no identificó correctamente las palabras clave reservadas en mi código fuente. De nuevo, esto se debe a que las palabras clave estaban separadas por 0xA0, no por 0x20. El analizador de palabras clave en Notepad ++ debe estar deshabilitando de 0x20.

Solución: después de pegar el texto de Kindle, realice una búsqueda y reemplace usando las capacidades de búsqueda de expresiones regulares en su editor de código fuente. Busque la expresión regular \ xA0 y reemplácela por \ x20 (o, dependiendo de su editor, simplemente escriba un carácter de barra espaciadora única en el campo Reemplazar [así es como funciona Notepad ++)].

0

Me gustaría consultar el sitio web del editor. Descubrí que a menudo publican el código fuente que acompaña a los libros. Si no hacen esto, entonces es menos probable que compre el libro. (En algunos casos, ninguna cantidad de copiar/pegar puede recuperar ningún código, independientemente del formato deficiente, por lo que tratar de obtener el código del editor es la única manera).

0

Descubrí que Kindle para PC simplemente estaba convirtiendo todas las líneas nuevas en \ x20 haciendo que el truco de búsqueda y reemplazo no funcionara. Mi solución no es genial, pero funciona:

Descargué Calibre y comencé a usar eso.Baste decir que puedes encontrar formas de usar Caliber para abrir lo que necesites con Google.

Cuestiones relacionadas