Anki/rslib/src/backend
RumovZ 3e0c9dc866
New TTS/AV tag handling (#1559)
* Add new `card_rendering` mod

Parses a text with av/tts tags and strips or extracts tags.

* Replace old `extract_av_tags` and `strip_av_tags`

... with new `card_rendering` mod

* ressource -> resource

* Add AV prettifier for use in browser table

* Accept String in av tag routines

... and avoid redundant writes if no changes need to be made.

* add benchmarking with criterion; make links test optional (dae)

cargo install cargo-criterion, then run ./bench.sh

* performance comparison: creating HashMap up front (dae)

the previous solution:

anki_tag_parse          time:   [1.8401 us 1.8437 us 1.8476 us]

this solution:

anki_tag_parse          time:   [2.2420 us 2.2447 us 2.2477 us]
                        change: [+21.477% +21.770% +22.066%] (p = 0.00 < 0.05)
                        Performance has regressed.

* Revert "performance comparison: creating HashMap up front" (dae)

This reverts commit f19126a2f1.

* add missing header

* Write error message if tts lang is missing

* `Tag` -> `Directive`
2021-12-17 19:04:42 +10:00
..
scheduler rename Config in protobuf to avoid conflict with module name 2021-07-11 19:27:08 +10:00
search update to edition 2021 2021-11-18 20:51:10 +10:00
sync add a builder for Collection 2021-11-06 14:43:41 +10:00
adding.rs tidy up Rust imports 2021-04-18 18:38:54 +10:00
card.rs update to edition 2021 2021-11-18 20:51:10 +10:00
cardrendering.rs New TTS/AV tag handling (#1559) 2021-12-17 19:04:42 +10:00
collection.rs add a builder for Collection 2021-11-06 14:43:41 +10:00
config.rs configs.proto plural workaround no longer necessary 2021-07-11 19:35:18 +10:00
dbproxy.rs update to latest rusqlite 2021-06-25 16:22:21 +10:00
deckconfig.rs expose scheduler js option in deck config 2021-06-24 14:38:10 +10:00
decks.rs Use backend for getting deck children (#1465) 2021-10-29 19:43:17 +10:00
error.rs handle notes with missing cards in browser 2021-07-22 14:58:57 +10:00
generic.rs new change notetype implementation for the frontend 2021-06-10 22:19:24 +10:00
i18n.rs in/out -> request/response 2021-06-20 15:49:20 +10:00
links.rs Remove native HelpPage enum 2021-07-22 16:32:49 +02:00
media.rs in/out -> request/response 2021-06-20 15:49:20 +10:00
mod.rs Add links.proto and backend module 2021-07-22 10:05:38 +02:00
notes.rs support updating multiple notes in one transaction/undo op 2021-08-02 17:07:26 +10:00
notetypes.rs Change Notetype UI Rework (#1499) 2021-11-24 12:09:55 +10:00
ops.rs fix note changes triggering a queue rebuild 2021-06-08 12:09:35 +10:00
progress.rs fix clippy lints for latest Rust 2021-06-21 13:09:36 +10:00
stats.rs Switch CardInfoDialog to ts page (#1414) 2021-10-14 19:22:47 +10:00
tags.rs bikeshedding: amount -> match_limit 2021-09-12 11:57:49 +10:00