2anki / server

Server to create Anki flashcards faster, easier and better today ⭐️
https://2anki.net
Other
304 stars 33 forks source link

Emoji for reverse cards (feature request) #1132

Open 22-modifier opened 1 year ago

22-modifier commented 1 year ago

Big fan of the 🍒🥑 functionality. I think it is a very simple way to make the platform very powerful if you're making a lot of cards at once (🥑) or doing regular notes that may include toggles and you just want to throw in a card on the fly (🍒).

Issue to overcome Can't have image on the front of the card unless you use either the "Basic and Reversed" or "Just the Reversed" settings. But this pretty much means you have to have a separate deck if you just want a few cards with images on the front.

Describe the solution you'd like I presume (based on 🍒🥑 functionality), that emojis can be used to dictate what happens to the entire card... so I was thinking, what something similar could be done to signal that a toggle should be a reverse card. Thought 🍒-picking made sense, wasn't sure if you just aren't a fan of 🥑, but for reverse cards, I was thinking 🍑 (peach = backside), 🩴 (flip flop), 🔄 (reverse arrows), 🍋 (in English it can signify a car with a lot of issues).

Describe alternatives you've considered I just don't make cards that need images on the front.

Hopefully this improvement could be based on mostly existing code architecture as it seems like much is asked of the devs/Alex and I'm already grateful for the existing functionality!

Bonus thought if the above works Use highlight (background) colors from Notion to indicate which cloze deletions should be grouped together. If there is concern about messing up people's highlights, you could use another emoji for such an occasion (🍇), but most of the time people would just use the code block format as is (sequential clozes).

Example screenshots for reverse cards Screenshot 2023-04-20 at 7 41 34 AM Screenshot 2023-04-20 at 7 41 28 AM

aalemayhu commented 1 year ago

Thanks for the detailed bug report. I tried solving this using column blocks but that was not working well. I like your suggestion around using emojis. For historical context, this is not something originating from me but some of the early users of notion2anki (what it was called before) they wanted more control and we implemented these various emojis as a solution that "normal people" (non technical) would understand. I definitely would like to move away from card options and use emojis all the way if we can come up with good enough rules. As in the emojis defined to be flexible and powerful enough to render the settings page useless. Does that make sense?

If we move to using emojis. Then emojis in the top level page are applied, but the ones on the block take higher precedence (override global) and nested ones make the last changes. I will think about it some more.

22-modifier commented 1 year ago

My personal view is that emojis should be block specific. My reasoning:

  1. You have the functionality working well already.
  2. They stand out from the rest of the text, so are easy to pick out which cards are which type.
  3. They work best when you’re only trying to modify a fraction of your cards, maybe 5%-10% (otherwise you might just need different global settings or an improved workflow using 2Anki).

I work with only non-technical people (juniors doctors) and I can't stress enough how difficult it is to explain ideas like “top level” / “global override” / “nested” features/characteristics. For example, there is an add-on that lets you create Anki cards from GoogleDocs. It was a huge hurdle getting them to understand that the #NoteType: entry applied to all subsequent cards until a new #NoteType was entered. So I could see people finding it very confusing if emojis at the top of the page, or in the parent page, apply global formatting, while those at the block level are card specific formatting; many may not realize what a block is anyways.

Having a settings page separates out the global settings from the card specific settings. Personally I never change the global settings (other than switching the cherry picking on and off). That being said, I could see situations where global formatting with emojis might be helpful (e.g. a global cherry picking or global reverse emoji). But I think those should perhaps be rare. I personally wouldn’t want to have to include a bunch of emojis in all my Notion pages to get the settings right.

Regardless, you’re doing fantastic work, so feel free to stick with what your gut says!



As an aside, my biggest area of confusion (which is also relevant to this discussion) is the use of the term “page” because Notion can have pages within pages.

Used in Settings: Use All Toggle Lists By default we only check for toggle lists in the first page. Use this option to retrieve toggle lists from anywhere in the page.

Used in your comment above: Then emojis in the top level page are applied, but the ones on the block take higher precedence (override global) and nested ones make the last changes.

Haven’t really been sure if it applies to pages within pages or just multi-level toggles. But I just wanted to bring this up as you’re discussing how nested blocks/pages might be effected. All my decks are part of a database in Notion so I just upload one Notion page at a time via HTML and it's been great!