Ah, I haven't noticed the thing that Eric has:

пятница, 4 апреля 2014 г., 20:32:54 UTC+4 пользователь Eric Shulman написал:
>
> On Friday, April 4, 2014 3:46:25 AM UTC-7, julien23 wrote:
>>
>> I use SharedTiddlersPlugin 2.4.0  to sync tiddlers betwen projects.
>> My main "contact" TW is very slow to start due to its large [IncludeList]
>>
> <<include "../airbank_tw/index.html" filters:"[tag[AirbankBlankPackage]]" 
>> import:4>>
>> <<include "../airbank_tw/index.html" filters:
>> "[tag[AirbankCataloguePackage]]" import:4>>
>> <<include "../airbank_tw/index.html" filters:
>> "[tag[AirbankContactPackage]]" import:4>>
>> <<include "../airbank_tw/index.html" filters:
>> "[tag[AirbankProspectPackage]]" import:4> ... 
>>
> Is there a way to speed up the process? Maybe be grouping lines with more 
>> clever filter, but I could no find the right syntax...
>
>
> Such a usage of the macro is not optimal. Although the TW is only loaded 
once, on the first macro call (it's the STP behaviour), this still makes 
some extra work. The most slowing factor, as I've mentioned, should be the 
multiple refreshing, but even if you use the noRefresh param, this syntax:

<<include "../airbank_tw/index.html" filters:"[tag[AirbankBlankPackage]] 
[tag[AirbankCataloguePackage]] 
[tag[AirbankContactPackage]] [tag[AirbankProspectPackage]]" import:4noParam>
>

should provide more optimal behaviour (@Eric: yes, STP does use 
store.filterTiddlers, and in this particular case the usage of OR is 
something excessive, but the regexp version looks nicely).

Without usage of the noRefresh param this would increase the speed 
significantly (again, because of less refreshing).

Best regards,
Yakov.
 

> SharedTiddlersPlugin probably uses the TWCore's store.filterTiddlers() 
> function to select the desired tiddlers by tag value.  If this is the case, 
> then you should be able to install:
>    http://www.TiddlyTools.com/#MatchTagsPlugin
>
> which extends the TWCore filterTiddlers() handling to enable matching 
> combinations of tag values, using *boolean* operators (AND,OR,NOT, and 
> parentheses as needed).  For example, you could write this one line:
> <<include "../airbank_tw/index.html" filters:"[tag[AirbankBlankPackage OR 
> AirbankCataloguePackage OR AirbankContactPackage OR 
> [tag[AirbankProspectPackage]]" import:16>
> You can even use text patterns ("regular expressions") within the tag 
> values, like this:
> <<include "../airbank_tw/index.html" filters:"[tag[Airbank.*Package]]" 
> import:16>
> which will match tag values that start with "Airbank" and end with 
> "Package" with any other text in between.
>
> By using MatchTagsPlugin to combine the filters for the same file, you 
> should be able to save some overhead time: it won't re-read the same file 
> contents multiple times, and there's only one loop through the tiddlers to 
> filter them.
>
> Let me know if it helps...
>
> enjoy,
> -e
> Eric Shulman
> TiddlyTools / ELS Design Studios
>
> YOUR DONATIONS ARE VERY IMPORTANT!
> HELP ME TO HELP YOU - MAKE A CONTRIBUTION TO MY "TIP JAR"...
>    http://TiddlyTools.github.com/fundraising.html#MakeADonation
>
> Professional TiddlyWiki Consulting Services...
> Analysis, Design, and Custom Solutions:
>    http://www.TiddlyTools.com/#Contact
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at http://groups.google.com/group/tiddlywiki.
For more options, visit https://groups.google.com/d/optout.

Reply via email to