Hi Soren,

Thanks for your reply.

I believe I have identified the source of the bug: tiddlers with *?* or *::* 
in their titles.

When I rename these tiddlers the plugin works as expected - I guess they 
are treated as special characters in the command line?

I found that I had to actually remove the titles from my wiki. If I try to 
exclude them in Anki with a filter like 
*[all[tiddlers]!is[system]type[]!regexp[(?i)\?]] 
*I get the same error message.

Does this explain the bug?

Just in case you still need to know *tiddlywiki --version* gives the output 
5.1.22 and I'm running Windows 10.



On Tuesday, 26 May 2020 20:55:08 UTC+1, Soren Bjornstad wrote:
>
> Si, this is odd -- for some reason the TiddlyWiki Node app is failing to 
> write out HTML files to a temp folder. A couple things to try:
>
>    - Restart your computer. I doubt this is going to help since your 
>    other wiki was working, but there could be some crud stuck in your temp 
>    folder, and you never know, that can sometimes help.
>    - What's the output of *tiddlywiki --version* at a command prompt? 
>    There might be different behavior than I'm seeing if it's not the latest 
>    version.
>    - What version of Windows are you running?
>    - Open C:\Users\Si\AppData\Roaming\Anki2\addons21\60456529\twimport.py in 
>    Notepad or another text editor on your computer, go to line 185, which 
> says 
>    "render_location = os.path.join(tmpdir, 'render')", and add a new line 
>    right after that which says:
>            os.mkdir(render_location)
>       - Be sure it has the same 8 spaces of indentation ahead of it that 
>       the surrounding lines do.
>       - Then try running again.
>       
> If none of that helps, can you send me a copy of your wiki to see if it 
> happens on my computer with your wiki? You can email me if you don't want 
> to post it publicly (hit sorenbjornstad.com for the address), and feel 
> free to delete content from that copy as long as you're still having the 
> problem.
>
> On Tuesday, May 26, 2020 at 6:18:15 AM UTC-5, si wrote:
>>
>> Hi Soren.
>>
>> When I tested this yesterday I used a new empty Wiki. I've just tried it 
>> with my main Wiki and I get this error message in Anki:
>>
>> Debug info:
>> Anki 2.1.26 (70784154) Python 3.8.0 Qt 5.14.1 PyQt 5.14.1
>> Platform: Windows 10
>> Flags: frz=True ao=True sv=2
>> Add-ons, last update check: 2020-05-25 17:11:24
>>
>> Caught exception:
>> Traceback (most recent call last):
>>   File "C:\Users\Si\AppData\Roaming\Anki2\addons21\60456529\twimport.py", 
>> line 57, in _invoke_tw_command
>>     proc = subprocess.run(cmd, cwd=wiki_path, stdout=subprocess.PIPE,
>>   File "subprocess.py", line 512, in run
>> subprocess.CalledProcessError: Command '['C:\\Users\\Si\\AppData\\Roaming
>> \\npm\\tiddlywiki.cmd', '--output', 'C:\\Users\\Si\\AppData\\Local\\Temp
>> \\tmpbkihbek9\\render', '--render', '[type[text/vnd.tiddlywiki]] [type[]] 
>> +[!is[system]]', '[is[tiddler]addsuffix[.html]]', 'text/html', '$:
>> /plugins/sobjornstad/TiddlyRemember/templates/TiddlyRememberParseable']' 
>> returned non-zero exit status 1.
>>
>> During handling of the above exception, another exception occurred:
>>
>> Traceback (most recent call last):
>>   File "C:\Users\Si\AppData\Roaming\Anki2\addons21\60456529\__init__.py", 
>> line 141, in join_thread
>>     raise self.extract_thread.exception
>>   File "C:\Users\Si\AppData\Roaming\Anki2\addons21\60456529\__init__.py", 
>> line 59, in run
>>     self.notes = twimport.find_notes(
>>   File "C:\Users\Si\AppData\Roaming\Anki2\addons21\60456529\twimport.py", 
>> line 186, in find_notes
>>     _render_wiki(tw_binary, wiki_folder, render_location, filter_)
>>   File "C:\Users\Si\AppData\Roaming\Anki2\addons21\60456529\twimport.py", 
>> line 143, in _render_wiki
>>     _invoke_tw_command(cmd, wiki_path, "render wiki")
>>   File "C:\Users\Si\AppData\Roaming\Anki2\addons21\60456529\twimport.py", 
>> line 68, in _invoke_tw_command
>>     raise Exception(f"Failed to {description}: return code 
>> {proc.returncode}.\n"
>> Exception: Failed to render wiki: return code 1.
>> $ C:\Users\Si\AppData\Roaming\npm\tiddlywiki.cmd --output C:\Users\Si\
>> AppData\Local\Temp\tmpbkihbek9\render --render [type[text/vnd.tiddlywiki
>> ]] [type[]] +[!is[system]] [is[tiddler]addsuffix[.html]] text/html $:
>> /plugins/sobjornstad/TiddlyRemember/templates/TiddlyRememberParseable
>>
>> fs.js:114
>>
>>     throw err;
>>
>>     ^
>>
>>
>> Error: ENOENT: no such file or directory, open 
>> 'C:\Users\Si\AppData\Local\Temp\tmpbkihbek9\render\Aardvark.html'
>>
>>     at Object.openSync (fs.js:438:3)
>>
>>     at Object.writeFileSync (fs.js:1189:35)
>>
>>     at $:/core/modules/commands/render.js:58:6
>>
>>     at Object.$tw.utils.each (C:\Users\Si\AppData\Roaming\npm\
>> node_modules\tiddlywiki\boot\boot.js:126:12)
>>
>>     at Command.execute ($:/core/modules/commands/render.js:43:12)
>>
>>     at Commander.executeNextCommand ($:/core/modules/commander.js:107:14)
>>
>>     at Commander.executeNextCommand ($:/core/modules/commander.js:111:12)
>>
>>     at Commander.execute ($:/core/modules/commander.js:64:7)
>>
>>     at Object.exports.startup ($:/core/modules/startup/commands.js:34:12)
>>
>>     at Object.$tw.boot.executeNextStartupTask (C:\Users\Si\AppData\
>> Roaming\npm\node_modules\tiddlywiki\boot\boot.js:2397:10)
>>
>>
>> It's a single file wiki, the most recent version. TiddlyRemember still 
>> works perfectly with the empty wiki I originally tested it with.
>>
>> I've tried removing all other Anki and TW plugins but still get the same 
>> message. Any idea what's going on here?
>>
>> On Monday, 25 May 2020 03:26:29 UTC+1, Soren Bjornstad wrote:
>>>
>>> I'm pleased to announce the release of version 1.0 of TiddlyRemember, a 
>>> tool to make it easy to remember the most important bits of your notes. You 
>>> call out specific bits of your tiddlers that you want to remember using 
>>> TiddlyWiki macros, and an associated Anki <https://apps.ankiweb.net> 
>>> add-on then pulls these snippets into Anki where you can review them 
>>> regularly. The Anki cards link back to the tiddler they came from so you 
>>> can find the context if you need it, and if you edit the content in 
>>> TiddlyWiki or move it around, your Anki collection gets updated to match on 
>>> your next sync, maintaining your review history.
>>>
>>> Here's a little snip of the syntax, the rendering in a TiddlyWiki, and 
>>> the card in Anki (permalink to this page in the docs 
>>> <https://sobjornstad.github.io/TiddlyRemember/#Question-and-answer+notes>
>>> ):
>>>
>>> [image: syntax.png]
>>>
>>> There are cloze deletion cards too (if you're not a memory geek, you 
>>> might call these "fill in the blanks cards").
>>>
>>> Credit for this idea goes to Andy Matuschak, who reported building a 
>>> private tool that worked similarly for his notes system 
>>> <https://notes.andymatuschak.org/>. I cannot for the life of me find 
>>> this note now (if someone knows where it is, please post the link!).
>>>
>>> Check it out and install from here: 
>>> https://sobjornstad.github.io/TiddlyRemember/.
>>>
>>> I'm hoping this is a reasonably stable and functional version (thus the 
>>> 1.0.0 moniker), but I've only been using it myself for a couple of weeks as 
>>> I've been developing, and there are definitely improvements possible, so 
>>> suggestions and pull requests are welcome! The two biggest areas for 
>>> improvement I see that I'm not sure how to attack are:
>>>
>>>    - You have to have TiddlyWiki installed on Node on your system to 
>>>    use TiddlyRemember. (You can use TiddlyRemember fine with a single-file 
>>>    wiki though. It just has to be there for TiddlyRemember to call out to.) 
>>>    There's no way around this I can think if if you want a fully automated 
>>>    sync (the Anki add-on needs some way to run TiddlyWiki commands unless 
>>> it 
>>>    wants to duplicate the wiki parser), but I could imagine a way to use 
>>> the 
>>>    new browser-based static site generator tool as part of a two-step 
>>> process 
>>>    where you export.
>>>    - In order to extract the questions, TiddlyRemember renders all the 
>>>    tiddlers in your wiki and then parses the resulting HTML, which means it 
>>>    will end up pulling multiple copies of a question if the tiddler 
>>> containing 
>>>    a question is transcluded into another tiddler that's included in the 
>>> sync. 
>>>    It will happily remove duplicates, but there's no way for it to tell 
>>> which 
>>>    tiddler is the "original source", so it picks whichever one it happens 
>>> to 
>>>    process first, which isn't great. I don't tend to use transclusion much 
>>>    aside from adding templates to things and building up system tiddlers 
>>> and 
>>>    sidebar tabs, so this isn't a big deal for me, but it might be for 
>>> others.
>>>       - I originally planned to make each question a tiddler of its 
>>>       own; while this seemed more philosophically pure, I eventually 
>>> decided 
>>>       against this approach because I didn't like the idea of having to 
>>>       separately edit a bunch of subtiddlers for all of my notes, and 
>>> because 
>>>       having the question included in a tiddler allows the source to be 
>>>       automatically determined without having to link back to it and update 
>>> it if 
>>>       you move the question around (aside from the transclusion issue). But 
>>> I 
>>>       could see an argument for doing it as transcluded question tiddlers, 
>>> and 
>>>       maybe we could support that as an alternative method eventually 
>>> (especially 
>>>       if it becomes easier to edit transcluded tiddlers in a future version 
>>> of 
>>>       TiddlyWiki).
>>>    
>>>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/0fd4bcaf-844d-4157-a508-0872b09d05bd%40googlegroups.com.

Reply via email to