2015-04-28 6 views
44

z jakiegokolwiek powodu, Sundown (dokładniej Snudown, widelec z nim) nie wydaje się linii wyjściowych lubię:Jak mogę dokonać Sundown renderowanie Cytaty (linie zaczynające się od „>”)

> some text 

Jako blockquotes w HTML, tak jak powinien, ponieważ jest to poprawny Markdown. Wiem, że w Sundown są rozszerzenia, które pozwalają na pewne funkcje, ale nie mogę znaleźć jednego dla ofert.

Oto kod używam (jest w Objective-C, ale w większości przypadków jest to C):

struct sd_callbacks callbacks; 
struct html_renderopt options; 
const char *rawMarkdown = [markdownString cStringUsingEncoding:NSUTF8StringEncoding]; 
struct buf *inputBuffer = bufnew(strlen(rawMarkdown)); 
bufputs(inputBuffer, rawMarkdown); 

// Parse the Markdown 
struct buf *outputBuffer = bufnew(64); 
sdhtml_renderer(&callbacks, &options, 0); 
unsigned int extensions = MKDEXT_NO_INTRA_EMPHASIS|MKDEXT_TABLES|MKDEXT_FENCED_CODE|MKDEXT_AUTOLINK|MKDEXT_STRIKETHROUGH|MKDEXT_SUPERSCRIPT|MKDEXT_LAX_SPACING; 
struct sd_markdown *markdown = sd_markdown_new(extensions, 16, 4, &callbacks, &options); 
sd_markdown_render(outputBuffer, inputBuffer->data, inputBuffer->size, markdown); 
sd_markdown_free(markdown); 

NSString *HTML = [NSString stringWithCString:bufcstr(outputBuffer) encoding:NSUTF8StringEncoding]; 

bufrelease(inputBuffer); 
bufrelease(outputBuffer); 

NSLog(@"%@", HTML); 

Jeśli projekt próbka byłoby pomocne, aby pokazać problem, proszę tylko powiedzieć .

+0

Blockquotes są domyślnie włączone w Sundown (nie jestem pewien, czy można je wyłączyć). Czy możesz opublikować cały dokument, z którym pracujesz (lub przynajmniej duży fragment)? Znalazłem to [zgłoszenie błędu] (https://github.com/vmg/sundown/issues/92), które mówi, że Sundown wymaga poprzedniej pustej linii. Czy rozważałeś użycie innej biblioteki Markdown? Sundown jest [zasadniczo porzucony] (https://github.com/vmg/sundown/issues/155). –

+1

@Jordan Niestety nie, używam widma Sundown, którego Reddit używa zwanego [Snudown] (https://github.com/reddit/snudown). Opublikuję blok kodu, którego używam, jest w Objective-C, ale głównie składa się z kodu C. Zasadniczo otrzymuję kod HTML z Markdown, a następnie go wypisuję, ale nadal zawiera on znak> i nie stosuje się cytatów blokowych. –

+2

Nie wiem, co to jest zmierzch, ale może to być usunięcie znaków ">" dla html zabezpieczeń lub powodów czyszczenia. Czy jest możliwe, że możesz spróbować zastąpić znaki ">" w swojej treści jednostką ">"? – Ben

Odpowiedz

2

W HTML '<' i '>' nie może być stosowany bezpośrednio,

Użyj podmiot HTML:

&gt; wyświetlać >

&lt; wyświetlać <

kliknij przycisk Edytuj aby go wyświetlić, użyto kodów jednostek zamiast ">" i "<".

Powiązane problemy