Блок кода в нумерованном списке (синтаксис Вики)
в синтаксисе Вики MediaWiki (wikipedia) есть ли способ иметь нумерованный список с блоком кода в середине?
например:
# Number 1 # Number 2 Indented section that will become a code block # Number 3 # Number 4
что происходит в MediaWiki вы в конечном итоге с чем-то вроде этого:
1. Number 1 2. Number 2 Indented section that will become a code block 1. Number 3 2. Number 4
(обратите внимание, как" число 3 "и" число 4 " сбрасываются как 1 и 2... Похоже, что StackOverflow намного умнее MediaWiki, мне пришлось поместить свой пример в предварительные теги, чтобы он испортился!)
Я знаю, что вы можете абзац текст с использованием синтаксиса"#:"...
# Number 1 # Number 2 #: Indented section that will merely be indented # Number 3 # Number 4
...но я действительно хотел бы получить тот же визуальный класс CSS для моего кода, даже если он находится в нумерованном списке.
это становится еще более интересным с вложенными списками. Этот синтаксис...
# MainEntry 1 ## Number 1 ## Number 2 # MainEntry 2 ## Number 1 ## Number 2 Indented section that will become a code block ## Number 3 ## Number 4
...становится...
1. MainEntry 1 1. Number 1 2. Number 2 2. MainEntry 2 1. Number 1 2. Number 2 Indented section that will become a code block 1. 1. Number 3 2. Number 4
(обратите внимание, как "номер 3", Теперь "1. 1.")
7 ответов:
вы можете попробовать следующий синтаксис Вики, он работает для меня на
1.17
# one #:<pre> #::some stuff #::some more stuff</pre> # two
это не идеально, потому что вы в конечном итоге с большим отступом, но это позволяет использовать синтаксис wiki для правильно отформатированных предварительных блоков по нескольким строкам.
как уже упоминалось ранее, другой правильный способ будет использовать HTML разметку.
<ol> <li>one</li> <li>two</li> <pre>some stuff some more stuff</pre> <li>three</li> </ol>
использовать html:
<ol> <li>Coffee</li> <li>Tea</li> <li>Milk</li> </ol>
он будет работать в MediaWiki.
Примечание из примера, который я опубликовал ниже, это
</li>
что делает его работать должным образом.
ваша проблема является предметом двух ошибок, заполненных в MediaWiki bug tracker в конце 2004 и 2005 годов:
ошибка 1115-новая строка как пункт списка Терминатор хлопотно
читая их, вы найдете решение не использовать синтаксис MediaWiki, но полагаться на "чистый" HTML.
Это прекрасно работает в MediaWiki 1.17.0:
===Alternative way of using pre in numbered lists.=== # Numbered line 1. # Numbered line 2.<pre>code line 1 code line 2</pre> # Numbered line 3.
секрет заключается в замене новых строк на сущность и написать все в одной строке.
Я предлагаю другой ответ: Не делай этого.
Я попытался использовать все обходные пути для этой основной проблемы Mediawiki и обнаружил, что все они очень несовершенны. Я научился жить без чисел, а вместо этого:
- используйте splat ( * ) Вместо ( # ) для всех моих списков
- продолжайте использовать ведущее пространство для всех моих блоков кода
Это намного проще и ремонтопригоднее, чем любой обходной путь. Кроме того, использование любая ссылка на номер может быть изменена по мере редактирования шагов-и это становится еще одной проблемой обслуживания.
в приведенном выше примере второй отступ (::) не требуется.
только один отступ отлично работает (:) следующим образом:
# one #:<pre> #:some stuff #:some more stuff</pre> # two
выдает:
1. один some stuff (just one indent level, not two) some more stuff2. два
вы также можете попробовать добавить тег " blockquote "вокруг тега" pre", чтобы он выглядел немного более полированным.
== HAProxy Configuration == #'''File:''' /etc/haproxy/haproxy.cfg <blockquote> <pre> global log 127.0.0.1 local1 notice maxconn 4096 #daemon debug crt-base /usr/local/haproxy/ssl </blockquote> </pre>
который будет отступать серое поле в соответствии с вашими пулями/номерами без использования двоеточий.