簡體   English   中英

kramdown 將制表符轉換為已插入代碼塊中的空格

[英]kramdown turns tabs into spaces in indeted codeblocks

我正在使用 jekyll,后者又使用 kramdown 將 markdown 轉換為 html,但我無法正確呈現以下示例:我使用\t顯示制表符,使用\s顯示空格

*\tHere is some code in a list:

\t```python
\tdef bar():
\t\treturn 4;
```

它應該像

  • 這是列表中的一些代碼:
     def bar(): \treturn 4;

但是我最終得到了

  • 這是列表中的一些代碼:
     def bar(): \s\s\s\sreturn 4;

這里的問題是我想使用 css 屬性tab-size來配置選項卡的寬度,但這顯然不適用於空格。

我假設這與 kramdown 的制表符寬度為 4 個空格的假設有關?

我還嘗試使用不同數量的選項卡縮進列表的標題,因為在 kramdown 中建議使用適當縮進的列表項中嵌入代碼塊,但沒有任何運氣。

是否有一些選項可以禁止 kramdown 用空格替換制表符? 或者其他一些方法來阻止它這樣做?

不是一個完美的解決方案,但可以產生所需的 output:

通過使用空格縮進,可以根據需要保留制表符。

所以

*\sHere is some code in a list:

\s\s```python
\s\sdef bar():
\s\s\treturn 4;
\s\s```

出於某種原因產生所需的 output。 然而,這可能不穩定,因為https://kramdown.gettalong.org/syntax.html#usage-of-tabs明確指出“結果 [of tabs after spaces] 可能是意外的”。

@本傑明w。 GFM的行為與我的測試完全相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM