scrod / nv

Notational Velocity: modeless, mouseless Mac OS X note-taking application
http://notational.net
GNU General Public License v3.0
2.07k stars 405 forks source link

Tag names are not auto-completed #295

Closed robertpolson closed 12 years ago

robertpolson commented 12 years ago

I apologize if I am creating repeated messages but you closed the bug #289 without looking into it. I am not sure if you read comments posted about the bug once it has been closed. I think that this is an important bug that must be taken care of.

Here is what I wrote in reply to https://github.com/scrod/nv/issues/289

NV only auto-cmpletes tags with regular words, but if I add "@" or "#" at the beginning of the word auto-completion is broken. If I tag something with "tag" and next time I start typing "ta" NV will auto-compelte the tag. However, if I will tag something with "@tag", next time I want to take a not and type "@t" nothing pops up.

Please check this. This is a bug.

Once again, I apologize for repeated content. I really want this to be fixed and I am not sure if you will read my reply once the bug has been closed.

scrod commented 12 years ago

Why would you prefix your tags with punctuation? Any text in the tags field is understood by NV to be a tag; that is the entire purpose of having a separate field. Adding punctuation there will only make it that much more difficult to reference those same tags externally once other proposed tag-related features are implemented.

robertpolson commented 12 years ago

The answer is very simple. If I make a note that requires me to take action, I tag it with "@action". If I will tag this note with a simple word "action", next time I search for all the notes that require me to take action and I will use the word action NV will give all the notes that contain the word action and not just the notes with the word in the tag field.

Think about how Twitter works. If I want to find a specific person I use @TheirName. If I want to find a specific topic on twitter I use #TopicName. If I search for something in Twitter without @ or # I will get thousands of irrelevant results.

NV has no option to search tags only. For example, Evernote has the option to search for just tags using "tag: tagname" string.

Adding "@" to any tag allows me to quickly find all the notes related to that tag. If I do not do this NV comes up with results of the word that I am searching for in note's name, body content, and tag. It is extremely hard to find anything like this for me.

Unique tags help me and many other people organize their notes properly. There are a number of blog posts highlighting this problem in NV. That is why people use "@" or "#" with their tags to quickly organize and find their notes.

I hope that you or or @ttscoff will resolve in problem soon. Right now I have to rely on TextExpander software to auto-complete tags that I have setup manually.

Here is an additional example from someone else - "To group similar notes, I put a unique piece of text in the body of each related note. I use the # symbol to make it extra unique. Like #tag." - http://goo.gl/8UVaJ

I hope that this explains the problem.

scrod commented 12 years ago

NV has no option to search tags only.

This is also one of the planned features I mentioned that will interfere with your tagging system. With an explicit tag browsing system there is no need to use ad-hoc tags such as these in order to guarantee uniqueness. Please remember that NV is beta software in that its planned features are incomplete. You really shouldn't be relying on any kind of tagging at all right now. Given that twitter-like tags are essentially a hack to work around a feature that's already planned, I'm not going to commit to supporting this way of using NV.

robertpolson commented 12 years ago

"hack to work around a feature that's already planned"

When you say a feature that's already planned are you referring to unique search string such as "tag:tag_name" ?

robertpolson commented 12 years ago

I disagree with @scrod and do not understand why it is that hard to implement a simple fix for auto-completion of tags with "@" but then again, I am not a programmer.

Think about the neurones in the brain. One neurone has many connections to other neurones. Together these neurones form a neuronet. I may not always remember the name of the note that I made but I may remember the the note relates to "@technique" or "@theory" or "@brain'. When I type a keyword with "@" at the beginning of the word I instantly get all notes associated with that tag. If I just type a tag without "@" I will get all notes containing that word, which creates more work for my brain because I have to sort relevant from the irrelevant.

Here is a real life workflow scenario:

I do not remember the title of the note but I do remember that it relates to health. If I type the word health in NV I get 108 results but if I type @health I get only 12 notes and I can easily see the note that I was looking for. If I only see 12 notes it is easier for me to skim through the titles and allow the note title trigger my memory recognition.

I think that @scrod looks at NV only form his perspective. It seems to me that he has great memory where he always remembers the title of all his notes. This is good for him but this is not useful for people who can't remember every single title of thousands of notes that they create. Unique tags allow me narrow down to results that are easier to process for my brain and trigger my memory.

It is a shame that @scrod does not want to look at this problem from a different perspective. Hopefully @ttscoff can take care of it in nvALT.

scrod commented 12 years ago

@robertpolson, We're dealing the concept of indexed fields vs unique string searching. I've explained it well enough already and the issue is now closed. Please remember: I released NV as a free and open source project so that anyone, including you, could modify it and change the way it worked. You're free to add any feature you want; there's no need to convince me or anyone else. However, if you are adamant that I personally implement some feature for you, then we can discuss hourly contracting rates over email.

robertpolson commented 12 years ago

Zachary, I am only trying to find the best workflow and understand how your system works. I really appreciate what you have created and do not mean to persuade you. I was just trying to understand how to make the best use of NV.

I have read other comments on GitHub but I am not clear if you plan to implement "tag:tag_name" search string or not. My main goal is to find a way to have some form of unique search for tags rather than tags with notes. Current implementation of search in NV works well for a few hundred notes, but once I get more than a thousand notes it becomes hard to search for information without a unique tag string or a tag search line.

I understand that you have a solid philosophy behind NV and I respect that. You mentioned that you plan to implement other proposed tag-related features. If this means that in the near future NV will support some form of tag search that is better than the current one, I will be fine with that and may switch from "@tag" string to whatever implementation that you have in mind as long as it allows for a more narrow search of notes.

Thank you for your replies Zachary.

scrod commented 12 years ago

You mentioned that you plan to implement other proposed tag-related features. If this means that in the near future NV will support some form of tag search that is better than the current one

I'm sorry I wasn't more clear; yes, I've been wanting to do this from the beginning; there will definitely be some form of tag-specific searching if I can help it.

robertpolson commented 12 years ago

That is the answer I have been looking for. Looking forward to better tag searching and tagging of multiple notes.

Thank you.