Hey,
I think the current way of categorizing might be too difficult.
Why can’t I just go to the Top Window Title page and right-click the elements on there to choose their category?
I think that this feature would make the application much easier.
Hey,
I think the current way of categorizing might be too difficult.
Why can’t I just go to the Top Window Title page and right-click the elements on there to choose their category?
I think that this feature would make the application much easier.
I would really like to see a feature like this since most of the programs I use end up “uncategorized” (eg. games).
Something like right-clicking on an activity on the view would be a much quicker way.
Writing regex pipe is also kind of clutter once you have enough items.
Why can’t I just go to the Top Window Title page and right-click the elements on there to choose their category?
That would make this software so much more useful. The inability to easily categorize things makes it useless for analysis. I just keep logging things in the hope that in the future it becomes easy to categorize them and actually see how much time was spent in each area.
I think regex is fairly good enough if you get used to it. However, I guess a huge problem comes with its narrow and unreadable editing UI, which is just a line of input field.
e.g. Below is my random config file snippet using regex in a multiline form.
- id: end-of-file-fixer
exclude: |
(?x)^(
.*\/?cspell\.json|
.*\/?lazyvim\.json|
.*\/dot_wakatime\.cfg|
.*\/dot_warp\/themes\/.+|
.*\/font\-manager\/Collections\.json|
.*\/JetBrains\/.+\/settings\/.+|
.*\/private_dot_docker\/config\.json|
.*\/private_fcitx\/private_conf\/.+\.config|
.*\/private_fcitx\/private_profile|
.*\/(private_Code|vscode\/data\/user-data)\/User\/.+|
.*\/?(-|\.)lock(\.json|\.toml|\.ya?ml)?
)$
At a glance it seems like a huge amount of regex lines, but once you get used to its syntax I’m sure it’s very easy to read and understand.
I think it is a decent starting point with not too much to implement.
What about something like this? Right clicking is not something that Activity Watch does out of the box, so I needed to create a mode button for it. I think this is more flexible than just having an “Add to category” button. Note that the gif below is a little old. Now, it only shows the buttons for uncategorized options.

These changes can be found on my fork: GitHub - RTnhN/aw-webui: Webapp for visualizing and browsing ActivityWatch data, built with Vue.js. · GitHub . If this is something that people like, I can work on adding a new release I have added a release that people can use. With the newest versions of ActivityWatch, you can just add an environment variable to a path and use a different webui instead of using the default one.
This is a copy from Catagorizations which is a duplicate but recent related feature.
It might be possible to also fix categorization regex rules to split on the | and make a list of filters rather than a string with |. I feel that editing that would be more user friendly rather than managing that gnarly long regex string. If I have some more time this week, I might try to implement that too.
EDIT:
It was a lot easier to implement something more user friendly. You can now edit the filter as a list. This just uses the same regex data structure as before, but it just splits on the | (with appropriate checking for escape characters) and creates a more easily manageable list. It then saves this as regex, so there are no major changes to the backend.
