Hey man, this is amazing work. Is there documentation for creating a new 
card (besides cloning existing ones)? 

This is really helpful to my Nihongo studies!

On Friday, February 2, 2018 at 6:58:04 AM UTC+9, Diego Mesa wrote:
>
> Hey all,
>
> I mentioned in other places that I would be working on something like 
> this. Instead of polluting other threads, Ill post updates and misc in here 
> (though specific questions related to other things will still leak outside 
> of this thread!).
>
> So far, I've been reading 
>
> https://apps.ankiweb.net/docs/manual.html
>
> and
>
> https://www.supermemo.com/english/ol/sm2.htm
>
> And have come up with a *basic* design for now which will evolve. Right 
> now, I have questions as cards tagged with "Flash Card", and when you input 
> a new one, they begin with the following fields:
>
> question: 3+1
> answer: 4
> repetition: 1
>
> We then have two major parts:
>
>    - Quizzer
>       - Shows a question
>       - Lets you rate its difficulty
>       - Calculate the next minimum time this question should be shown
>       - Selector
>    - When you're ready to begin quizzing, get all questions whos time is 
>       up and are ready to be shown
>       
>
> So far I've worked on the quizzer (question/answering), and have a 
> template with the following content:
>
> \define againQuality() 0
> \define hardQuality() 1
> \define goodQuality() 2
> \define easyQuality() 3
> \define updateActions()
> <!-- UPDATE question parameters -->
> <$formula-vars eq="$(quality)$ + 1">
>     <$action-setfield $field="eq" $value=<<eq>>/>
>     <$formula-vars repetition="{{!!repetition}} + 1">
>         <$action-setfield $field="repetition" $value=<<repetition>>/>
>         <$formula-vars due="<<repetition>> + 20">
>             <$action-setfield $field="due" $value=<<due>>/>
>         </$formula-vars> 
>     </$formula-vars>
> </$formula-vars>
>
> <!-- REMOVE Answer Button Row -->
> <$action-sendmessage $message="tm-remove-field" $param="state"/>
>
> <!-- CLOSE this question -->
> <$action-sendmessage $message="tm-close-tiddler"/>
> \end
>
> <!-- ACTIVATE this template for all tiddlers tagged Flash Cards -->
> <$list filter="[all[current]tag[Flash Card]]">
>     <$fieldmangler>
>     Question: {{!!question}}
>     
>     <br/>
>
>     <!-- IF it does NOT have the field state: SHOW QUESTION -->
>     <$list filter="[all[current]!has:field[state]]">
>         <$button>
>             Show Answer
>             <!-- ADD the field state -->
>             <$action-sendmessage $message="tm-add-field" $param="state"/>
>         </$button>
>     </$list>
>
>     <!-- IF it DOES have the field state: SHOW ANSWER-->
>     <$list filter="[all[current]has:field[state]]">
>         Answer: {{!!answer}}
>         
>         <!-- SHOW answer buttons -->
>         
>         <br/>
>
>         <$button>
>             Again
>             <!-- Calculate New Parameters -->
>             <$action-setfield $field="quality" $value=<<againQuality>>/>
>             <<updateActions>>
>         </$button>
>         
>         <$button>
>             Hard
>             <!-- Calculate New Parameters -->
>             <$action-setfield $field="quality" $value=<<hardQuality>>/>
>             <<updateActions>>
>         </$button>
>         
>         <$button>
>             Good
>             <!-- Calculate New Parameters -->
>             <$action-setfield $field="quality" $value=<<goodQuality>>/>
>             <<updateActions>>
>         </$button>
>         
>         <$button>
>             Easy
>             <!-- Calculate New Parameters -->
>             <$action-setfield $field="quality" $value=<<easyQuality>>/>
>             <<updateActions>>
>         </$button>
>     </$list>
>
>     </$fieldmangler>
> </$list>
>
> This will at least let you answer a question, and mark how hard/easy it 
> was for you, and calculate the relevant fields for the next time it should 
> be shown. 
>
> I still have to actually implement the correct calculations for due, eq, 
> etc. These are just place holders for right now. 
>
> The next piece is the selector, which will be responsible for going 
> through all questions "due" field and selecting the ones that are ready to 
> be shown - this should very straight forward. 
>
> Any comments/feedback is very welcome!
>
> Diego
>

-- 
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 post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/dd155c24-56f1-4cbd-a6d7-ece3b91bd6f7%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to