Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Org-Supertag (github.com/yibie)
91 points by oliverchan2024 2 days ago | hide | past | favorite | 64 comments
Enhance org-mode tag system, borrow idea from tana.





The description is pretty abstract. What concrete problem does this package solve? Some example uses would be helpful.

You're right, I'm working on it.

Org mode is something in emacs, for the rest of us who don't have that context.

Org-mode is not just 'something', it's a powerful Emacs extension that transforms plain text documents into dynamic, interactive, and organized systems for notes, to-do lists, and project management, while seamlessly integrating code execution across multiple programming languages with data flow between embedded computational blocks.

Practical example? You can be annotating a PDF, while having executable code blocks in different languages, e.g., you can run http or sql query, then pass the results into a python, javascript or shell scripting block, and then output the final result into a diagram. So, you'd be reading the book, taking notes and mess around with practical code snippets at the same time.

I have tried so many different note-taking apps, philosophies and techniques over the years. Nothing even comes close to what I can do today in Org-mode. It totally shatters everything else and kicks the shit out of the ballpark.


Avid org user, but I don't do any of the stuff that you mention. I just capture and agenda.

I'll just say that even to another "expert", you didn't explain what's so great about this annotation workflow.


I am absolutely sorry that I have failed to capture the fantastic essence and incredibly powerful qualities of Org-mode so carefully crafted in over twenty years of its existence. My poor writing style simply miserably failed to express it in a single paragraph. I'm sure your seasoned expertise on the matter could do a lot better.

As for the annotation workflow, well, I guess you just don't need it. When you decide to start writing notes while reading books, I'm sure you'll be able to figure it out. For now, just create a TODO item with a deadline, it will keep showing up in the Agenda, but I don't have to explain, that part you know already.


The Tana super tag concept is pretty neat.

I prefer these outlined based notes tools ( org mode, roam, Tana ) over the document based ones (Obsidian, etc) or db ones ( notion ).

It feels like a personal taste thing. I naturally think in lists and to-dos.


I like outliers too! I think the best opensource option, besides emacs, is logseq which is now developing a tag concept very close to Tana's supertag: https://test.logseq.com/

They are looking for a name for the concept, so suggestions are welcome!


From my perspective, they are all derivatives of org-mode.

I've often quipped that anyone who has ever tried implementing a personal knowledge or to-do app, had only done so because they haven't seen Org mode yet.

I suspect many of these tools, including LogSeq, draw inspiration from Emacs and Org mode - the current version of LogSeq even supports org synatx!

But I've tried to dive into Org mode twice in the past five years, each time committing a few weeks to learning it. However, I eventually gave up and returned to Logseq. The steep learning curve was the biggest hurdle for me. Between understanding Lisp, figuring out and choosing between all the possible configurations and workflows, memorizing the keyboard shortcuts, and working through YouTube tutorials, the friction and mental load were just too high.

Logseq, on the other hand, provided most of the features [1] I needed while keeping the barrier to entry much lower - far, far lower than Emacs. But LogSeq is by no means perfect; I fear it will become bloated at some point (e.g., I have no interest in flashcards and spaced repetition learning)

[1] Outliner; data kept local; journal; simple task management; easy to insert quotes, code snippets, images; backlinks; possible to attach files


What did you find difficult to use about Org mode? I just jumped in and started using it, though I had already been familiar with markdown files previously.

I used org-mode for a while, but I wasn't an Emacs user, and using it just for that was not a great fit. No one ever says that, but let me say it:

If you aren't an emacs person, it is not going to be a fit.

Workflowy is a pretty easy-to-use web version of the outline part, which requires zero setup and the other features of org-mode I never got into. Other things extend beyond this into the PKM space ( Roam, Tana, etc ).

Also, Zettelkasten is an interesting thing, but more as a curiosity, some process that worked for a specific researcher in nineteen dickey two, not as some process you should use.

For me, the big great outliner was workflow. Roam improved on that, and things improved for Roam.


> Zettelkasten is an interesting thing, but more as a curiosity

Zettelkasten is just an idea, and a great one. I don't know what you think it is, but all these apps - Obsidian, Roamresearch, Logseq, Org-roam - are based on that idea.


I mean, it was a note taking system using a physical card catalog designed by Niklas Luhmann to help with his social science research.

The goal of my notes is so far from this that I found the ideas interesting but unrelated to how I use Roam, etc.


No tool can meet everyone’s needs. No matter what the tool is, as long as it has a user base, it proves its effectiveness—it’s just not suitable for you.

I was used many tools, include Workflowy and Roam. For me, org-mode & Emacs is the best tool of all, no tool can compare.


Yup, I can concur. Having tried numerous different note-taking, project-management, PIM solutions over the years - Evernote, Workflowy, Notion, Todoist, rememberthemilk, Trello, etc., I have finally ended up with Org-mode and later Org-Roam. Nothing else even comes close to the versatility, control and liberating and empowering experience.

Sure, learning Emacs and Org-mode is quite some journey. But it's absolutely worth the time and effort.

I even try different new things from time to time - out of curiosity, and because so many times before, I have felt like being stuck in a bubble. And so far, I have not found anything much better than Org-mode.


Just an FYI: org roam is DB based.

Org-roam uses a database, but it is not fully database-based. It only stores the mapping relationships between IDs in the database, but the content itself is not stored in the database.

However, org-supertag is database-based, storing both the content and the relationship mappings in the database.


Org-roam is not "DB-based". All the data remains in the plain text, org-mode format. Org-roam simply adds an indexing layer which sits in sqlite.

Yes, but almost all the features that make Org-roam stand out vs org-mode are via that DB :-)

It still doesn't make it a DB-based solution. Calling it as such is confusing, especially to the long-time Org-mode users. They value the nature of all the data being in plain-text. No valuable data ever goes into that DB, it's purely for indexing. You can safely delete it any time, it just gets recreated.

Saying that Org-roam is DB-based is like characterizing any codebase hosted on GitHub as "written in git". Even though, speaking pedantically, that's true; it still would be nonsensical.


Hey I'm a long term emacs/org mode user. This look super interesting, one quick suggestion, even though I'm confident I can make the installation instructions work, a lot of people just install packages from melpa, i.e. list-packages, cntl-s to find in melpa and then install. I know there's a lot of advantages to some other methods, but people pick and choose where they want to learn the new way or stick with old tried and true way. Again at first glance it looks super interesting.

Thank you for your appreciation and suggestions. I’m not quite sure how to publish it to MELPA, but I’ll figure it out as soon as possible.

It's very normal for a package to remain in its "nursery" for a while. There are various ways to install packages directly from GitHub and other forges.

Publishing to MELPA although is a fairly simple process, it does require certain steps and of course the vetting and approval. Often it takes long time. Sometimes (for various reasons) authors may decide not publish at all.


I'm always curious on how you guys use your note taking apps? I tried multiple (obsidian, notion, logseq ecc..) but always struggled to find a real use/need for them outside of work.

Am I missing something on going straight to applying my knowledge, after having found a solution to whatever problem I'm facing from a variety of sources, and not writing down many notes outside code comments/README.md ecc..? E.g: I'm currently building a mobile app with flutter, would you guys suggest that I log what I'm learning, even considering it's pretty basic stuff due to the fact that it's my first encounter with flutter/dart?

Now that I think about it, writing notes during the process could perhaps help me have more material for my blog posts


I basically live in my notes all day. I have two main categories:

1. General knowledge: Anything I want to be able to look up again, for me mainly how to do certain tasks in software, which is things like keyboard bindings, steps to achieve a result (e.g., something like "remove the background from a photo"), and flags for a command line program. I also add more abstract things, like computer science, and music theory concepts, but I find these concepts are usually easier to recall from memory once you know them (I've read before that memory works like a web, so if you're attaching new concepts to existing concepts, they'll be easier to remember), so I don't have many notes like that.

2. Projects: Tasks related to a project, and things I've learned along the way. For example, if I'm diagnosing a bug, maybe I found an important code snippet, so I'll cut and paste it to the project file. Also useful commands, e.g., if there's a single test I'm working on, I'll save the command to run just that test in isolation.

The general principle here is I usually find it easy to remember if I've ever done something before, but hard to remember exactly how to do it. (Research indicates that if something doesn't fit into the web, then if you don't do it enough, you won't remember it, so the notes compensate for that.)

I find this helps me stay in flow because just looking something up quickly from my notes is much less disruptive than searching to find it again (or trying to think to reconstruct it). If you don't mind searching again later for something you know you once figured out, you probably don't need notes, but if that drives you crazy, like it does for me, than notes are helpful. For me, it feels like I'm constantly expanding the number of things I can do easily without having to depend on my memory, which I know from experience is fallible for these tasks.

It's similar for context switching between projects, when switching tasks, being able to look at your note for a project, and being able to see both exactly where you left off, and documentation of everything you've learned so far, makes it easier to move forward again.


I've found its helpful to divide notes into two separate categories: notes & logs. Anything that is not a log is a note. This includes recipes, people, tools, reading list, etc.

Logs are meant to serve as a labnote book. Each entry is saved in a daily journal & with a date and simple description header. What I'm doing, why, how its going, checklist, etc. Basically a dumping ground for everything I could possibly have a use for re-using later. This help eliminates entire categories of notes(e.g. call with mechanic), and give you a chance to leverage smaller notes with backlinks to the individual experiences using it. The effort to keep notes evergreen is very difficult when the content keeps changing.


Cool!

I like how the very act of writing it out led you to draw a new conclusion. Very meta.

Zettelkasten. It's an incredibly simple idea. Obsidian, Logseq, Roamresearch, Org-Roam - they all are based on that simple idea.

I used to spend a lot of time, thinking how should I organize my notes? Tried many different methods - categorizing them; grouping them by dates - years, months, days; putting them in multiple files and folders; using a single file with many (collapsible) headings, etc.

After switching to Zettelkasten method (I use Org-Roam), I realized - whenever I write any note, the only question that I really need to ask: "in what context should I re-discover this stuff later?".

A practical example: I would be discussing a session-related security vulnerability with my teammate, let's call them Jimmy. I would start a note with a meaningful title. Then add links to [[Jimmy]] [[session]] [[vulnerabilities]]. For simplicity, let's assume I already have these nodes in my system. 'Jimmy' is a node that has all the info about my teammate, their role, their contact info, etc. The node may also have its own tags, e.g., [[front-end-team]].

Now, months later, whenever a similar thing comes up, I wouldn't be scratching my head thinking "haven't I discussed that with Jimmy last year in October? Let me go through my October notes...". No, I would open Jimmy's node then lookup for all the backlinks and surely, I would find the relevant notes. I may even forget that I spoke to Jimmy, then I would find the notes through other nodes - [[front-end-team]] [[vulnerabilities]] [[session]].


I don't. Use note taking apps, that is.

I tried Org mode and used it for a year or two. I liked its integration of notes and task tracking. The Org Agenda works well. Ultimately I found it a bit chaotic to have tasks scattered amongst text files though. I acknowledge that I probably could have made Org work for this and my current solution (Omnifocus) is better in some ways, worse in others.

For the notes though, I just write plain text notes using Windows Notepad or Mac TextEdit and I put them in an appropriate folder. I have various folders - some for "projects" and others for "reference". I like the folders because I can put other things in them, such as PDFs, emails, spreadsheets, etc. Sometimes I have a single text file for a project that has chronological notes; other times, it's appropriate to add additional files to capture particular ideas, lists, etc.

The note-taking apps don't wind up doing much for me.


> I just write plain text notes ... and I put them in an appropriate folder

So I guess that means you hardly reuse any of those notes at all? I just can't really imagine the process of having to fish for some creative ideas from those buckets.


I use them every single day. Because I maintain the folder hierarchy, I remember how to descend the folders to find what I need.

Years of experience has taught me that relying on loose tagging webs and searching mechanisms and fancy tools does not work for me, not for notes, not for emails, not for anything else. I organize things into nested hierarchies. This takes maintenance, but so does maintaining tag webs and using the tools to maintain and mine them.

For something that espouses some of these principles (though I do not use this system):

https://johnnydecimal.com


Writing down the simple stuff can be nice if you want to:

* Stop doing stuff in that field for months and have previously processed notes to reload in your head when you come back.

* Give feedback to maintainers on what worked/what didn't when you entered their ecosystem.

* Communicate to newbies how you overcome X problem when learning Y. Not everyone may have your particular insight. You could roll it into a blog post or other communications.

* Provide stepping stones for you to relate other frameworks and languages back to what you've already seen and know, to solve challenges in different domains.

I find that most more specific ideas for using the data come at random periods throughout my life. The questions are usually non-obvious when just staring at the data. I write them down as little notes themselves and come back to them when I have interest/motivation.


I use it for:

* Reminders

* Checklists

* Idea collation

* Fleshing out and prioritizing personal tasks

* Reference notes - e.g. passport number, tax numbers, frequent flier numbers, anything else I might want to input into a form one day.

* Calendar

* As a place to draft emails/letters/documents.

There's so much crossover between all of these things that it helps to keep them all together.


I live in org-roam nearly all day, every day, and the #1 feature on my wishlist is tagging. org-roam actually has a tagging feature, but it's very limited. org-supertag looks much better. Can't wait to try it. Great job, OP!

I have never used that tagging feature and instead have created nodes like [TODO], [INPROGRESS], [COMPLETED], etc. And then I've added a simple function that checks if a tag/link collides with another, i.e., I can't ever have [TODO] and [COMPLETED] in the same heading - adding one just removes another.

I wonder what would tagging get me here beside just showing up in the node search dialogs?


I saw this on /r/emacs and made a note to install and use it, it looks amazing. Thanks !

Thank you.

I have a pet project to integrate org mode with LLMs via tags, and the hardest part has been interfacing with the base org-mode tags to provide all the functionality I want. This library is exactly the thing I need to pick it back up!

Looks great!

Would be interested to hear how people are getting on with Tana (https://tana.inc/), the tool from which this idea was borrowed.


Just tried to signup for tana - but their waitlist form (interestingly) didn't ask me for an email to contact me with followup steps and I can't seem to create an account :(. How did ya get access?

(Tana eng) That's not good!

Someone is looking into it now.

You can go through the back-door currently here: https://app.tana.inc/create-account (currently requires credit card to get in directly, but you can cancel it directly after).


I think it could be because your email is cached in the form provider (type form).

Not the case, it doesn't ask even in a private window

Ahh gotcha - thank you

Looks like pretty much the same idea around Org-Roam, which is already well established set of packages. There already exists a vibrant community with things that extend Org-Roam itself. Not sure how this would be any better than that, yet I cheer and appreciate any interesting ideas on that front.

Also, briefly checked https://tana.inc - which inspired the package, chuckled at: "The world's most powerful notes", and got the same question: "How is it more 'powerful' than Logseq, Obsidian, Org-Roam?"


Is org-roam still alive? Last release almost 3 years ago. Could be because it's nearly perfect, which, if so, great.

Org-roam just adds a thin layer of indexing nodes, nothing more. There's not much to it, so there's no churn.

Org-supertag isn't another version org-roam, it's totally differnt way. And, org-supertag can work with org-roram or Denote.

Your words suggest that you haven’t looked into org-supertag.


I didn't say "another version of org-roam", I said "looks like pretty much the same idea". My words suggest nothing of what you're accusing me, but rather suggest of what I thought it was, after reading the description in the readme. I'm not alone in that, other commenters have noted that as well: "the description is pretty abstract", says one of them.

To me, a long-time Org-Roam user, "TODO" is just adding a link to an org-roam node with the same name - which, again, after reading the description of the package, kinda, sorta feels like "pretty much the same idea". If you want to avoid unwarranted criticism (which my original comment was not), I suggest perhaps try explaining it better. I'm still not sure how org-supertag can complement Org-roam and Denote workflows.


You appear to have omitted adding a license to your repo

Oh wow, fun. It looks like it might supercede org-capture templates too by some of those actions.

Great idea.

I’m interested in this but I have no idea how I would use it in a workflow

Looks cool. It might be helpful to mention somewhere that it's for Emacs. I have never used Emacs before and had no idea what note-taking app this was for till I googled "org mode".

fwiw there are several vim and nvim org-mode attempts. Naturally, there is a lot more tooling built out for emacs.

Though I pretty much live in VIM and VI-like things, I find Org mode with Evil to be good enough to not need a reimplemention of Org mode in VIM.

Get it.

Are you the GitHub user yibie?

Yep, it's me.

That‘s cool, I think I‘ll try it. Thanks!

Thanky you, hope you like it, and feel free to submit issues, if anything wrong happens.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: