New Plugin: Always Color Text - Automatically color or highlight words across your entire vault

Tired of manually highlighting key terms? This plugin automatically colors or highlights specific words and phrases across your entire Obsidian vault. Just set it once, and they’ll appear consistently in both Live Preview and Reading modes!

alwayscolortext (1)

I’m excited to share that this plugin is now available in the Community Plugins list! :smiley:


Key Features at a Glance

  • Set and Forget: Color a word once, and it’s colored everywhere—instantly!
  • Multiple Ways to Color: Use the right-click context menu, command palette, or the plugin settings.
  • Color or Highlight: Choose to color the text itself or give it a background highlight.
  • Custom Color Swatches: Replace the default color palette with your own for quick picking.
  • Smart Matching: Toggle case-sensitive and partial-word matching (e.g., color “Art” and “Artist” will match too!).
  • More Control:
    • Blacklist words you don’t want to be colored accidentally.
    • Disable coloring per file via frontmatter.
    • Global Toggle: Easily turn the entire feature on/off from the ribbon icon, status bar, or command palette.

Use Cases

  • Status Tracking: Color TODO, INPROGRESS, and DONE in different colors.
  • Name Highlighting: Color names, words, and sentences to recognize them at a glance from their colors alone!
  • People & Characters: Color names in novels or RPG notes.
  • Priority Systems: Highlight !!!URGENT!!! or Low-Effort.
  • Learning: Color key vocabulary terms in study notes.

I’m pretty new to plugin creation. This is something I made a few months ago for myself, and I still use it daily! Your feedback would be incredibly valuable.

  • Found a bug or have a feature request? Please open an issue on the GitHub Repository.

GitHub Repo: https://github.com/Kazi-Aidah/always-color-text

5 Likes

Is there an option for having the colors just work across one folder? Or is it the whole vault or not at all?

1 Like

Your work is amazing. I’ve been looking for something like this for a long time to replicate Notepad++'s “User Defined Language” feature in Obsidian, but I couldn’t find anything suitable at the time.

I usually try to avoid using third-party plugins, but this is one of those cases where it’s very difficult to do without.
I really hope that I’ll have time soon to take a closer look at this plugin and integrate it into my system properly.

Thank you very much for sharing your wonderful work!

1 Like

There isn’t a feature like that available for now but I’ll add it in the next update!

1 Like

Thanks a lot for your kind words! I was inspired by the warn deprecated texts on the terminal and the colours in VSCode, it’s just so efficient!

No rush at all! Whenever you get time to try it out properly, I’d love to hear how it works in your system. And if you ever have any ideas or run into anything, feel free to reach out!

Thanks again for making my day with this message! :blush:

1 Like

I took it seriously, as you can see! :rofl:

I have my COW :cow_face: system (made up by me, as I use Obsidian for *Coding, Other and Writing) … *personal coding projects I track in Obsidian. As I’m currently merging some work, I decided to give this plugin a try.

With the help of AI, I made a JSON list with tokens and HEX colours … and pasted it directly into the data.json file. It was easier for so many tokens.

  "wordColors": {
    "C:TODO": "#FFD166",
    "O:TODO": "#FFE299",
    "W:TODO": "#FFCA3A",
    "C:DONE": "#06D6A0",
    "O:DONE": "#5BE6B7",
    "W:DONE": "#04B086",
    "C:WAIT": "#FFB703",
    "O:WAIT": "#FFD166",
    "W:WAIT": "#E09F3E",
    "C:BUG": "#D62828",
    "O:BUG": "#EB3B5A",
    "W:BUG": "#BA181B",
    "C:FIXME": "#EF476F",
    "O:FIXME": "#F78DA7",
    "W:FIXME": "#D81159",
    "C:OPTIMIZE": "#F8961E",
    "O:OPTIMIZE": "#FDBA74",
    "W:OPTIMIZE": "#E36414",
    "C:REVIEW": "#FFBE0B",
    "O:REVIEW": "#FFD43B",
    "W:REVIEW": "#E09F3E",
    "C:NOTE": "#8ECAE6",
    "O:NOTE": "#B5E2FA",
    "W:NOTE": "#5FA8D3",
    "C:INFO": "#90E0EF",
    "O:INFO": "#ADE8F4",
    "W:INFO": "#48CAE4",
    "C:IDEA": "#CDB4DB",
    "O:IDEA": "#E4C1F9",
    "W:IDEA": "#B185DB",
    "C:DOC": "#A7C957",
    "O:DOC": "#C1E37C",
    "W:DOC": "#7CB518",
    "C:TEST": "#00B4D8",
    "O:TEST": "#5DD0E3",
    "W:TEST": "#0096C7"
  },

Yes, it is (looks) complex, but I got used to it and I have it in my little finger. And this is what it looks like in Obsidian (list made by AI, so it’s :poop: … but good visual example).

So, this is my short and first story with this plugin :slight_smile:

Cheers, Marko :nerd_face:

1 Like

I’ve added the feature, you can exclude folders from coloring now!

If you disable coloring for a parent folder, all files in that folder and its subfolders won’t show colors. So you could disable coloring for your main folders, then enable it only for the specific subfolder you want colored.

1 Like

THAT IS AMAZING. So happy you’re liking it :heart:
The system sounds & looks really cool, best of luck!!

1 Like

That’s great! Can’t wait to check it out!

1 Like

this is very cool!! …I have to admit I had an immediate instinct to try coloring all instances of the word ‘house’ blue… (iykyk)

1 Like