2015-04-28 7 views
44

Per qualsiasi motivo, Sundown (più precisamente Snudown, un fork di esso) non sembra linee di output come:Come posso fare Sundown rendere blockquotes (linee che iniziano con ">")

> some text 

Come blockquotes in HTML, come dovrebbe, in quanto è Markdown valido. So che ci sono estensioni in Sundown che consentono determinate funzionalità, ma non riesco a trovarne una per le citazioni.

Ecco il codice che sto usando (è in Objective-C, ma per la maggior parte si tratta di 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); 

Se un progetto di esempio sarebbe utile per mostrare il problema, solo che così .

+0

Le note di blocco sono attive di default in Sundown (non sono sicuro che sia possibile disabilitarle). Potresti postare l'intero documento con cui stai lavorando (o almeno un estratto)? Ho trovato questo [bug report] (https://github.com/vmg/sundown/issues/92) che dice che Sundown richiede che le blockquotes siano precedute da una riga vuota. Hai preso in considerazione l'utilizzo di una diversa libreria Markdown? Il tramonto è [in pratica abbandonato] (https://github.com/vmg/sundown/issues/155). –

+1

@Jordan Sfortunatamente no, sto usando un fork di Sundown che usa Reddit chiamato [Snudown] (https://github.com/reddit/snudown). Pubblicherò il blocco di codice che sto usando, è in Objective-C ma principalmente composto da codice C. Praticamente ottengo l'HTML dal Markdown, quindi lo stampo, ma include ancora il carattere> e non vengono applicati blockquotes. –

+2

Non so quale sia il tramonto, ma potrebbe essere strippaggio ">" caratteri per sicurezza html o motivi di pulizia. È possibile provare a sostituire i caratteri ">" nel contenuto con l'entità ">"? – Ben

risposta

2

In HTML, '<' e '>' non può essere utilizzato direttamente,

Utilizzare un'entità HTML:

&gt; per visualizzare >

&lt; per visualizzare <

fare clic su Modifica per vederlo, sono stati utilizzati i codici entità invece di ">" e "<".

Problemi correlati