2014-11-30 4 views
1

Для фильтра, такого как [tag[introduction]], как изменить форматирование отображаемых результатов, например, как добавить пробелы между ними, или создать из них список пули?Tiddlywiki5, результаты фильтра форматирования

Here для получения дополнительной информации о фильтрах TiddlyWiki.

ответ

5

Вы, скорее всего, получите быстрый ответ на google groups.

A filter сам по себе ничего не делает, виджеты делают ... и впоследствии макросы.

Так, проще говоря, нужный элемент-формат внутри list widget, что делает его:

<$list filter="[tag[TableOfContents]]"> 
<$link to=<<currentTiddler>>><$view field=title/></$link>&nbsp; 
</$list> 

Совет: Попробуйте все это создает тест колюшка непосредственно на http://tiddlywiki.com.

Это дает ссылку на каждый итерированный элемент в списке с указанием его названия. Обратите внимание на &nbsp; в конце, чтобы обеспечить простой интервал.

Когда внутренний текст виджета списка начинается с пустой строки, TiddlyWiki понимает ваш код как желающий иметь элементы абзаца уровня блока, а не встроенный список.

<$list filter="[tag[TableOfContents]]"> 

<$link to=<<currentTiddler>>><$view field=title/></$link> 
</$list> 

Однако, я иногда предпочитаю использовать хороший » &raquo; и символ новой строки через <br> ...

<$list filter="[tag[TableOfContents]]"> 
&raquo; <$link to=<<currentTiddler>>><$view field=title/></$link><br> 
</$list> 

В качестве альтернативы вы можете использовать шаблон колюшка, определяющий шаблон элемента, т.е.

<$list filter="[tag[GettingStarted]]" template="$:/.sagado/templates/my-list"/> 

С standard template ...

<$list filter="[tag[TableOfContents]]" template="$:/core/ui/ListItemTemplate"/> 

Это, пожалуй, самый чистый подход, поскольку он позволяет повторно использовать этот шаблон в другом месте.

В качестве альтернативы, используйте list-links макрос для вывода простых списков ссылок, например:

<<list-links filter:"[tag[TableOfContents]]">> 

Примечание: Обратите внимание на синтаксические различия между макро и вызова виджета, то есть двойной угол brakets и колоны для (необязательно named), а не атрибут = "значение".

Вы можете легко обернуть это в свой custom css class, например.

@@.my-class 
<<list-links filter:"[tag[TableOfContents]]">> 
@@ 

Чтобы правильно отображать таблицы или списки определений, использовать HTML-теги снаружи и внутри ...

<dl> 
<$list filter="[has[url]]"> 
<dt><$link to=<<currentTiddler>>><$view field=title/></$link></dt> 
<dd>{{!!url}}</dd> 
</$list> 
</dl> 

Вот немного более сложный синтаксис таблицы с помощью макроса, чтобы сгенерировать ссылку ...

\define link(url) [ext[>>|$url$]] 
<table> 
<tr><th>Title</th><th>Link</th></tr> 
<$list filter="[has[url]]"> 
<tr> 
<td><$link to=<<currentTiddler>>><$view field=title/></$link></td> 
<td><$macrocall $name=link url={{!!url}}></td> 
</tr> 
</$list> 
</table> 

Подробнее см. ...

http://tb5.tiddlyspot.com/#How%20to%20style%20lists

+0

Можно ли сделать это по-разному ведут себя на определенных итераций списка, например, для создания выходных файлов, таких как '[[Foo]], [[Bar]] и [[Baz]]'? Или мне нужно заглянуть в макросы Javascript для этого? –

+0

Кстати, это может измениться недавно, но кажется, что явный ' ' не нужен в первом подходе, по крайней мере, когда 'filter' является простым списком заголовков, который поступает из переменной. –

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