2009
09.20

Problem występuje przy wklejeniu tekstu (np. kodu źródłowego) z edytora tekstowego do edytora w WordPress.

Skąd się bierze problem?
Otóż niektóre edytory tekstowe wstawiają dwa znaki jako znak nowego wiersza: LF (Line Feed) oraz CR (Carriage Return). Wbrew pozorom nie jest to wyssane z palca czy wymyślone bez powodu. Jest to pozostałość po maszynach do pisanie gdzie aby zacząć pisać od nowego wiersza trzeba było przeskoczyć o 1 linię w dół (LF) a następnie wrócić na początek wiersza (CR). Windows jako jeden z nielicznych systemów wraz ze swoim własnym „wspaniałym” kodowaniem znaków pozostał przy tym „genialnym” pomyśle i wstawia dwa znaki jako znak nowego wiersza. Przy wklejaniu takiego kodu do WordPress’a zamienia on na <br/> zarówno znak LF jak i CR. W efekcie otrzymujemy podwójne łamanie wierszy w poście.

Rozwiązanie?
Najlepszym rozwiązaniem było by pisanie tekstu w edytorze, który łamie wiersze tylko przy pomocy znaku LF. Jeżeli mamy już kod z obydwoma znakami jako enter polecam użyć edytora który pozwala zastępować znaki (również nowych linii) i usunąć wszystkie wystąpienia znaku CR. Otrzymany kod można spokojnie wkleić do edytora WordPress’a otrzymując pojedyncze <br/>.

Przykład?
Otwieramy plik przy pomocy edytora Vim.

vim /sciezka/do/pliku

Wciskamy <Shift>+: i wpisujemy polecenie:

:%s/\r//

Klikamy <Enter> i w ten sposób usuwamy każde wystąpienie znaku CR z pliku.
Wciskamy <Shift>+: i aby zapisać zmiany w pliku wpisujemy polecenie:

:wq

Podobne artykuły:

Brak komentarzy

Dodaj własny komentarz