Use of tags

Hi, all.

First, I would like to thank the developers for this nice piece of software. I have been looking for a while for an opensource to-do app that would be able to sync between my devices. I am pretty happy that Joplin came out!

To the point: I was wondering how do you effectively use tags? I am having a hard time to adapt to Joplin’s approach. I used to use tags to define the context of my tasks. I do development, so I have a “@develop” tag for this kind of work. And I work for different places, so I would use “_jobX” for each job. Then, if I am in the correct mood for developments, and it is time to work for jobX, I just need to activate 2 tags to see all my tasks under that context. This approach still would allow me me to see all my development tasks (independent of who is paying) or all the tasks related to jobX (independent of which types they are), as needed. However, I understand that this is not possible, yet, in Joplin.

Do you have any suggestions for me? I would be very interested to understand how you use tags. =)

1 Like

OK, so I ended up created “my own tagging system” after fighting with Joplin for a while. I was planning to use the search system to be able to see the messages that are related to a tag, but it seems that the tag name itself is not part of the searchable content. Then I started replicating the tag in the title or body of the note, but the search system ignores special characters, which prevents tags to be “easily” unique.

In the end, I am using my password system to create and store hashes that I relate to each tag, so I can use them as searchable strings (in my setup this is quite easy to reach). As a plus, I can use more then one of those hashes in the search, which works like constraining the search to specific tags.

I am writing all of this here because of:

  1. It might help to think about the implementation of the tags/search

  2. Suggest a feature where we could have “saved searches”. With that it would be very easy to use my hashes as “tags”.

1 Like

There are plans to improve the search engine in order to include a tag key: See GitHub issue.
There’s also been a discussion on the forum about improving the tagging system.
Maybe @laurent can tell you more about the state of these changes.

1 Like

Can you pls explain "(...) I am using my password system to create and store hashes that I relate to each tag (...)"? I am not an native english speaker... Thanks.

Hi, @Emcee. Nothing special about that, it was only my initial solution to be able to generate “random” strings that would unique for each tag. You can do that in several ways (even just typing random keys in your keyboard, but remember to store it somewhere =). Anyway, it is not very practical if you need to check “tags” in a note because it is hard to relate the hash to the tag.

1 Like

Thanks, tcpaiva!

OK, I don’t know javascript but I can scratch a bit of python.

I created a script that keeps all the my pseudo-tags and related hash in a dictionary. Then, it sweeps all the note files looking for my pseudo-tags on the form of tag:<tag name> and write the hash after it in case it is not already there, which gives me tag:<tag name> <tag hash>. The script also updates the modification time of the note so that Joplin sees it.

Now, I just need to write the tag name in my “human readable” format above in the body of the notes and I then run the script to automatically add the hashes. For searches, I still use the hashes as mentioned in the 2nd reply of this thread.

Surprisingly, it seems that no information about the tags are kept in the notes themselves for the current system of Joplin.