Ability to mark any post as unread

Continuing the discussion from How Coinbase Uses Discourse to Educate Customers and Improve SEO:

The interviewee of the referenced blog article states the following dislike:

If a post on a topic can be “unread”, why can’t I mark it unread again after reading it?

and I’d like to talk a bit about that and the workflow that is not possible at the moment.


Concept

In email clients, you can mark any email as “unread”, even in a longer discussion or thread, and return to it later. Most clients allow you to filter or navigate unread emails only, so this workflow is a breeze for when you decide you need to work on something again later, such as prepare a reply.

The same holds true for RSS readers, where you find a post that deserves more attention than what you give currently and you want to save it for later.

In Discourse, however, the concept of marking specific posts as unread is not a thing and unread posts can only occur at the end of a thread that you didn’t scroll into the view yet. Additionally, the algorithm that chooses to automatically mark posts as read can be inaccurate depending on your reading habits (i.e. whether you use mouse scrolling or j/k keys).

Why Not Bookmarks?

I understand that bookmarks are a possible workaround for this situation. But “bookmarks” semantically mean something different in most situations because I only intend to (re-)read the “unread” posts once and not save it for recurring occasions. Thus, one-time bookmarks and long-term bookmarks would get mixed and you’ll have to remember to unbookmark each “unread” post when you access it. They would also not get displayed in the “Unread” front page tab.


Required Changes for Discourse

  • The unread indicator (currently blue dot next to relative post timestamp) needs to be toggleable, which likely requires repositioning and redesign. Also with a keyboard shortcut, suggesting m (already used for topic track state).
  • There needs to be a way to traverse between unread posts within a thread, up and down.

It’s not high priority for me, but it deserves to be discussed imo.

3 « J'aime »

A much higher priority for us is to have a cleaner way of dealing with “reading holes” eg: topics where you read post 1-10, 50 but did not read 11-49. If what you are describing would likely create reading holes and not behave in a very intuitive way cause you could only do it effectively for the last post in a topic.

2 « J'aime »

Yes, it would (or rather should) be possible to create these “reading holes” that way.

My second suggested change is supposed to hint at the reading holes issue. I suppose there are generally two ways to solve this:

  1. Hide read posts.
  2. Do not hide read posts and instead provide buttons/key binds to traverse to next or previous unread post.

I can not evaluate how gray and blue unread counters are relevant here, because I don’t clearly understand how they work at this moment, however.

I like it and asked before

3 « J'aime »

yeah I use Discourse as a teacher and there are topics I need to come back to in like 4 months (Bookmark) and there are topics I need to remember to answer in a few days (mark as undread).

3 « J'aime »

Agreed! I need a feature like this. Any workaround with a plug-in?

Any progress on this? Is it on the roadmap?

It is not on any roadmap I am aware of. Use bookmarks.

3 « J'aime »

Assuming that the Discourse Calendar plugin will also work in PMs, perhaps you can work around it by creating a calendar PM to yourself and adding replies with links to posts you want to come back to at a certain point in time?

That sounds awfully complex when we already have several means to track notable threads.

4 « J'aime »

Absolutely. It was just an idea for those who are not happy with existing functionality.

A theme component can now allow you to do this per:

https://meta.discourse.org/t/defer-topic-button-mark-topic-unread/110951

7 « J'aime »

Pourriez-vous peut-être préciser comment faire ?Le sujet lié n’existe pas ou n’est pas accessible.

1 « J'aime »

Je pense que c’est parce que cette fonction est désormais standard, plutôt que d’être incluse dans un composant de thème.

Si vous ouvrez « Contrôles du sujet » en bas d’un sujet, vous devriez voir l’option s’y trouver :

3 « J'aime »

Est-ce que cela doit être activé ?
Je ne le vois ni ici, ni sur discuss.gradle.org.

1 « J'aime »

Vous devez d’abord l’activer dans les paramètres de votre profil à l’adresse Discourse Meta - The Official Support Forum for Discourse. Il peut également être activé par défaut pour les nouveaux utilisateurs en utilisant le paramètre du site à l’adresse /admin/site_settings/category/all_results?filter=defer.

4 « J'aime »

Ah, merci.
Je ne m’attendais pas à ce que ce soit quelque chose dont vous avez besoin ou que vous puissiez activer.
Si vous ne le voulez pas, vous pouvez simplement éviter d’appuyer sur le bouton, tout comme pour le bouton de signet, etc.

1 « J'aime »

La logique initiale derrière ces paramètres est qu’ils ajoutent de l’encombrement en bas du sujet, en particulier sur ordinateur de bureau. Cette fonctionnalité s’adresse également principalement aux adeptes de la méthode « inbox zero », qui représentent une population plus restreinte que celle qui utilise les signets et les autres boutons situés dans la même zone.

2 « J'aime »

Je ne suis pas d’accord pour dire que cela n’est utile que pour « l’inbox zéro ».
Je suis plutôt du genre « inbox 10 000 » et je souhaite toujours marquer des sujets comme non lus.
J’ai vraiment regretté l’absence de cette fonctionnalité et j’ai souvent déploré que Discourse ne propose pas une fonctionnalité aussi basique.
Jusqu’à ce que je décide de signaler le problème et que je découvre alors que cette fonctionnalité était toujours là, simplement très bien cachée. :slight_smile:

2 « J'aime »

Curieux, utilisez-vous des rappels de favoris ?