Merging some UI-related add-ons into Anki

@dae I recently saw that Matthias wants to change the UI again. I don’t know if you are going to allow him to do so without first testing his changes as a standalone add-on, but if you are, I was wondering if you could merge some of the AJT add-ons into Anki first. There’s a couple of add-ons that break every time Matthias changes something, so it would be better if instead of being my problem they were his problem. Then, I would be able to focus on creating new features instead of fixing old features, and he would have to make sure the old features work as intended. Also, I won’t need to complain about add-on support anymore. In the past, the anki_frozen_fields add-on was merged into Anki, so this is not a new practice.

The two add-ons that I’d like to merge are:

  • AJT Browser play button. This is just a simple button that lets the user play audio files in the Browser without having to preview the card. Internally works very similarly to anki_frozen_fields. It has other features but they’re not as important.
    screenshot-2023-04-19-10-26-41
  • AJT Flexible Grading. This add-on removes buttons from the bottom toolbar, thus shrinking it down to just a few pixels, which leaves more space for cards. Instead of pressing the buttons, the user is supposed to press keyboard shortcuts (h,j,k,l) for grading cards, e for edit and m for more. In addition this add-on lets the user grade cards without revealing the back side. It can also show the status of the previous review on the top toolbar and disable the “hard” and “easy” buttons (since using “hard” and “easy” in Anki is considered harmful by many).
    screenshot-2023-04-19-10-12-27

PS: I actually left a comment in a GitHub issue telling Matthias to follow my example and introduce new features as add-ons first.

1 Like

I assume that it is beneficial to the discussion and your suggestions if no other community members are attacked.

4 Likes

Sorry.

1 Like

I couldn’t care less about your add-ons and do not feel responsible for breakages on your side, but of course we can implement some of their features into Anki if they are useful.

Instead of a badge that’s always showing, how about making the sound tag a dynamic element that plays when clicked on? That way users who don’t use sound wouldn’t be bothered and it’s probably more intuitive for the audio users too, because they can easily pick the sound they’d like to play.

My main window rework introduces a status bar quite similar to the one you’re showing here. It has an extension API with a left, center and right tray (like the toolbar already got in recent versions). Regarding the features you’re describing - those sound a bit niche and I don’t think they’re worth adding into vanilla Anki. The add-on API is built for exactly that purpose.

4 Likes

The issue in question: Main Window Rework: How should I deprecate unused modules? · Issue #2474 · ankitects/anki · GitHub

I had similar thoughts - maybe a little play icon could be added at the end of each sound tag. A clean implementation that does something like that would be welcome.

That add-on appears to do a number of unrelated things, and I am inclined to agree that at least some of these feel rather niche. Given the pending update to the main window, I think it may make sense to wait and see how that pans out first before considering these further. There is no rush, as the new code will not be on by default to start with.

1 Like

Be honest, you couldn’t care less about any and all Anki add-ons. That’s the reason why all your previous contributions to Anki have lead to at least one of the following:

  • Broken, unusable UI elements. Elements the user can’t click on, are partially occluded or hidden.
  • More ugliness. Controversial themes that some people find repulsive.
  • More bloat. Interfaces that eat away space.
  • Worse end-user experience.
  • Broken add-ons.

I know that Dae praised some of your previous contributions. I understand that, but I can’t say anything positive about them myself at the moment. But I don’t want to dismiss or disparage your work, instead I want to help you.

As such, if you want to continue contributing to Anki, you should do the following:

  • Consider if your changes are better implemented as standalone add-ons. Acknowledge that your ideas are not special and shouldn’t be included in vanilla Anki as soon as you come up with them. Please don’t act as if you’re better than the hundreds of people who are making add-ons.

    If your add-on becomes popular, its functionality can be considered for merging into Anki, like it was done with the frozen fields add-on. Note that the frozen fields add-on wasn’t immediately admitted to Anki, the idea had to mature for many months. First glutanimate made his version, then it was re-implemented by hgiesel, and some time later it was merged.

  • Maintain a fork of Anki. If you post a link to it on this forum, users will be able to install it and test your changes before they can be safely merged. If a particular change in your fork is stable for at least 6 months, afterwards you can create a PR to merge it with the vanilla Anki.

  • Contribute your changes to the https://ankiuser.net/study/ website. After looking at your ideas I can say that the vast majority of them can go there instead. This way the desktop version remains stable and unaffected. Since the web version doesn’t use add-ons, any changes are acceptable.


Though, discussing your work is outside the topic of this discussion. It’s better to do it on github or in a different topic.

1 Like

This probably misses the idea of the play button. Dynamic elements tend to be confusing and difficult to use. At the same time there is vast unused horizontal space to the left of the field name, and utilizing it seems reasonable.

screenshot

1 Like

I’m not a fan of overusing the add-on system and try to implement features in Anki itself if I consider them a net gain in usability. If half of the add-on authors who complain about breakages actually contributed to the project, perhaps development would actually feel nice and not like walking in a glass house filled with tripwires and salty people.

Aren’t you contradicting yourself here? I suggested a UI that shows when people need it and you want to fill space just because it’s there :slight_smile:

1 Like

“Interfaces that eat away space” contain empty unused space. Unused space needs to be filled or reduced for the interface to feel less bloated. That’s exactly what I did with the play button or with the reduced bottom toolbar.

1 Like

Your ideas of what is usable have a potential to clash with what other people consider useful. So it is important to be very careful when introducing changes to the vanilla Anki itself.

Yes, this is true.

1 Like

I’m just some random bystander average Anki user, and I have no reason to be involved in this discussion, but I have to say, you really just seem like you have a vendetta and bias here. If I were you and I read these posts the next day, I would feel so embarrassed at the entitlement and arrogance in them.

8 Likes

Same here, this thread is embarrassing.

4 Likes

(post deleted by author)

Dear forum members, if you do not have anything to say regarding the original topic, please withhold your comment. It’s unnecessary to get emotional and insult each other here.

I’ve asked Damien to lock this thread. Everything of substance has been said in the first few posts. For constructive personal feedback, you can use the DM system.

Thanks for understanding.

2 Likes