2012-03-29 8 views
6

Ho appena iniziato un coding blog e sto utilizzando il plug-in SyntaxHighlighter Evolved Wordpress per l'evidenziazione della sintassi dei miei snippet.Come evitare il carattere xc2 o   nei miei snippet di codice?

Ho appena finito di scrivere un post Pythonic e ho voluto testare i frammenti di codice prima della pubblicazione.

Se si fa doppio clic sul codice all'interno dei miei snippet, il plug-in smetterà di evidenziare il codice, consentendo di selezionarlo come testo normale. Tuttavia, se copi ed incolli del codice Python dai miei frammenti, include \xc2 o   chracters in Questo fa sì che Python per winge circa la codifica:.

SyntaxError: Non-ASCII character '\xc2' in file ex2.py on line 3, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

io non voglio essere particolarmente dichiarando codifiche per ogni singolo snippet Python che scrivo - e non so nemmeno se questo risolverà il problema.

La soluzione migliore sarebbe ovviamente quella di ottenere che il mio plug-in non utilizzi i caratteri   nella versione di testo normale. O lo farebbe?

Qualcuno ha qualche idea su come posso aggirare questo problema?

risposta

2

Ah, capito. Solo un po 'di rovistando nella sorgente del plugin risolto questo problema per me ...

Se beautify il file syntaxhighlighter3/scripts/shCore.js, allora si può vedere c'è una variabile di configurazione, che comprende:

space: " " 

Tutto Ho dovuto fare era cambiarlo a space: " " e reimballarlo.

0

NBSP non è comunque considerato spazio bianco ai fini dell'indentazione, quindi è necessario dare un'occhiata a ciò che fa pre select user script e mimarlo.

0

Mi sono imbattuto in questo problema quando il codice Python era stato copiato da Skype. Da quando uso vim per modificare, sono andato avanti e ho trovato tutti questi in questo modo:

:hls 
/<space> 

questa mostra dove questi caratteri di spazio strani non sono perché non sono evidenziati.
Prendere uno dei caratteri che lo memorizzerà nel registro 0.
Utilizzare il comando di sostituzione e utilizzare <ctrl-R> <0> per incollarlo nel prompt dei comandi.

:%s/<ctrl-R><0>/ /g 

Sembrerà

:%s///g 

ma quando viene eseguito, verrà correggere il problema.

Problemi correlati