2015-03-18 4 views
4

Не существует способа, чтобы переменные (атрибуты, подстановки) анализировались в литеральном тексте в Asciidoc, иначе я чего-то не хватает. Я хочу, чтобы иметь возможность установить переменную, а затем вызвать его в блок кода или символьной строки, как, например:Замены внутри литералов в Asciidoc

:version: 1.0.1 
[code] 
---- 
tar -xzvf mysoftware-{version}.tar.gz 
---- 

И есть его разобрать, чтобы:

tar -xzvf mysoftware-1.0.1.tar.gz 

Это не может быть невозможно, правильно?

ответ

5

Вы можете включить его для любого блока, используя атрибут subs. Атрибут subs принимает одно из следующих действий (в списке):

  • none - Отключает замену
  • normal - выполняет все замены для выноски
  • verbatim исключения - Заменяет специальные символы и обрабатывает выноску
  • specialchars/specialcharacters - Заменяет <,> и & с соответствующими объектами
  • quotes - Применяет t внутр форматирования
  • attributes - Заменяет ссылки
  • replacements атрибут - ЗАМЕНИТЕЛИ текстовые и ссылочные характер REPLACEMENTS
  • macros - Процессы макросов
  • post_replacements - заменяет символ перевода строки (+)

Более подробную информацию можно можно найти in the User Manual, включая пример, очень близкий к тому, что вы пытаетесь выполнить.

3

Замены внутри листинга блоков по умолчанию отключена, но можно управлять с помощью subs параметра:

:version: 1.0.1 
[code, subs="attributes"] 
---- 
tar -xzvf mysoftware-{version}.tar.gz 
---- 
+0

ответ LightGuard является более полным, но я думаю, что это полезно, чтобы увидеть, как он относится к примеру от вопроса , –

 Смежные вопросы

  • Нет связанных вопросов^_^