Closed stevencohn closed 10 months ago
@netway-pairote - Thanks for responding!
Redundant? Probably, yes! Page tags are loosely based on OneNoteTaggingKit. I've heard many users not finding page tags entirely useful. This is why I'm exploring a different approach, one that I hope will be more flexible. I expect the end result will be that the best one wins and the weakest one is eventually deprecated.
Typeahead? Unfortunately, no. OneMark dynamically intercepts user input while typing and I've heard from numerous people that it's sluggish and sometimes imperfect. Having considered this type of intercept for OneMore, I can understand why it's not a great solution. Microsoft simply does not provide a very good API for that level of interactive behavior.
I bet it's going to be a thrilling feature! A an end user, I'd like to share my opinion on the expected user interface for tagging GUI. How about using the interface like that of "OneMore Command Palette"? Tags are actually a small collections of user-defined words, likely in the order of hundreds or thousands. Tags should be added/indexed fast, so I think the "launcher style window" would be a good choice.
1. Inputbox
2. Dropdown list Just for user selection to expand the searching scope from this page to this section, this notebook, or all notebooks. For me, I prefer to have the predefined leading char feature, so there is no need for using mouse for selection 3. Indexed list If user type some keywords, incremental search will be done and the results will be shown in the list simultaneously. 4. Preview Panel If the user select one indexed tag in the list, he/she can see the paragraphs with this tag. The results can be clicked to navigated to the corresponding paragraph
Management feature
I chose not to use the current Tag page feauture, because I doubt I could manage them in the long run. In order for me to feel at ease, the tagging system should at least provide Batch renaming functionality.
Batch renaming: Users can choose one or multiple tags and give one new name to them. (rename or merge)
I have loads of thoughts about tags and logical structures and how different people use them, e.g.. Notebook / Section Groups / Sections / Pages / Headings of different levels.
I have lots of thoughts on showing previews of results (i.e. not just page name)
I think the OneMore page tags are good, but I can't use them due to the page update / author issue.
If you can introduce tags that are actually really just plain text it completely sorts my issue with the OM updating the page and updating the author, BUT it will mean extra functionality to manage typos. e.g. legal hashtags or ability to see a list of hashtags used in a section or notebook to spot #impotent vs #Important etc.
For me tags at page level are ok for now. If you know exactly what you are looking for it will be much easier to search for a specific key word or group of words. I think I came across a feature to extract keywords and index documents either in OneNote or OneMore so we (you :-)) ) could build on that. Indexing is an Windows essential feature and advanced search using indexing is going to be a lot more flexible without adding tags to content unless you want to. I used to use dtsearch desktop before Windows Indexing became good enough. It has an advanced yet user friendly search syntax (see here https://support.dtsearch.com/faq/dts0160.htm) If we could have something similar in OneNote (on top of what Windows can do) I would say this would be much better (but far more complex to implement) than custom tagging (hash tagging)
@1001QAdotNET A little tech note... I have an engine that specifically scans for and indexes #hastags (actually, ##hashtags) and uses a Sqlite database for searching and listing, so it's not reliant on the horribly deficient Windows Search.
Some thoughts:
I would want to select some text, of any length, right click and be able to apply the hashtag. This should include both typing a new hashtag and select from a dropdown list of existing, saved hashtags. I would want to be able to generate a page summary with certain hashtag, like you can do with One Note Tags currently. I would want to be able to assign a color to the hashtag, which may or may not apply to the related selected text. In that case, the shade of the hashtag should be darker than that of the text, for ease of visualization.
While my personal believe is that having 100.000 hashtags/tags does absolutely nothing good, I do think that tags/hashtags can belong to specific subjects or "type of text" when these are not universal (i.e. in the case of tags such as # keywords , # dates, # definitions...).
So, to reduce cognitive load and increase efficiency, I would want those hashtags in the dropdown list to be organized in folders/groups, as an initial, thematic organization. For example, assume you are working on a text pertaining law. You may have these hashtags: case law, evidence, state law, federal law, obiter dicta, ratio decidendi and so on. This would not really be of any use in any other context.
While these could be type in a search box prompted by a contextual menu, having them grouped up I think is useful because you are in control of what you use and it serves as an aid to refrain you from adding unnecessarily many tags.
Finally, these hashtags could have shortcuts. We could have shortcuts up to the first 10, for example. Then, to make it simple and reuseable without overcomplicating it, you may use the same shortcut commands for different groups, in this way: select a group of hashtag to be the working one for the text/page at hand (or, even section or notebook), and the shortcut commands will select from that group only. You may make a set of universal hashtags that have set shortcuts, for example, one for keywords, definitions/explanations, dates, insights, names, questions. Then, leave everything else for the user to personalize.
Nick
From my pov, simple inline #tags are ideal because they transfer with the text and are understood by every program that uses them - whether they be rich text or plaintext. I am very wary of any tagging system that is effectively confined to one program. Similar in that respect to wikilinks. It's one reason I don't use YAML in markdown notes.
I'd like a tags panel to see what I am using already and to provide a filter by tag system. Preferably with ability to define the scope. Otherwise the simpler the better.
@stevencohn how are you getting on with this? Also - on the sqllite DB. Are you making it broader than just #Tags, e.g. Notebooks / Sections / Pages / Headings? I ask incremental searching / filter on there things would be great. Esp if you could add "hover preview". Clearly another feature, but just checking on your indexing solution.
Hi @jasonjac2. There are certainly use cases that would fit nicely around a Sqlite backing store. For example, you could envision it be the store for the Navigator history rather than a json file, or for Favorites rather than an XML file....
@1001QAdotNET A little tech note... I have an engine that specifically scans for and indexes #hastags (actually, ##hashtags) and uses a Sqlite database for searching and listing, so it's not reliant on the horribly deficient Windows Search.
look for DTSearch (aussie company if my memory serves me well; that engine has a very nice search syntax borderline between regex and regular search engines syntax) that is the best I have ever seen and I have been at this for a long time. Just curious, why are you considering Windows Indexing deficient ? (you do need to use some light hacks to make it work with various files but it is fantastic for gathering meta info from the OS; as far as the text searching goes it works for me and this is why I stopped using DTSearch)
@1001QAdotNET thanks for the info, I'll take a look. I'm not sure if you are asking me or @stevencohn about the failings of Windows Search? If Me: I haven't used any programming interface against it, but in the interface in ON it is more the syntax and management of results is just too limiting. I love the interface I have for Outlook and being able to say things like subject: "something" AND to: Jason. Plus I love the way you get the results in a grid. Compare that to ON where you type in and only really have quotes to help, then you get a list that if you try and pin it, it explodes into something unusable.
ON: I would love a searchbar with results where I can go: Notebook: "JAC" AND Title: "[GR:1324]" and it would produce a list of pages that matched: Notebooks that name contain JAC and page titles that contain [GR:1324]
I use void tools everything for finding files. I find myself doing monthly ToC's of notebooks and pasting into Excel and then using advanced filters for ON as well as using OM favourites and landing pages with links.
Jason is correct. Windows Search, at least how it's exposed through OneNote, has a limited operator language. You cannot quote spaces within strings, for example "Big Dog" will not search only for that two-word phrase but instead search for "Big" and for "Dog" separately. It's also impossible to search for "#hashtag" as it will ignore the pound sign and show all instances of "hashtag". It falls down in other ways too.
DTSearch looks cool but it's a paid license model which doesn't fit with OneMore's open promise.
@stevencohn are you writing it from scratch or basing it on another repo?
Currently, this is just about #hashtags so writing it from scratch is the best approach. There are no other repos that I know of that provide text search capabilities that can dissect the OneMore XML schema.
See https://onemoreaddin.com/developers/TechNote%20-%20Editing%20Text.htm
Once the text is parsed and stored in the DB, indexing and searching are trivial.
Using OneNote for searching means opting for light searching Windows Indexing can and it will index OneNote files if configured Then the advanced search syntax could be used https://learn.microsoft.com/en-us/windows/win32/lwef/-search-2x-wds-aqsreference
I understand what you're saying but you're missing the point of this conversation. Let's keep it to end user requirements, not implementation.
Personally I see #tags as a simple filter and document management system, that is quite distinct from content search. Might or might not use the same indices or search technology. Most programs that use them also have detailed search.
I use both Onenote and Obsidian so find this proposal interesting as it would close one of the gaps I have observed between these two products. I really don't like Markdown editors and find Obsidian very aggravating at times when creating complex notes, and its unusable for collaboration with my team, but its UI is fantastic and its tagging feature, similar to what is proposed here, is very useful and convenient. For strictly hierarchical organization Onenote is vastly superior to Obsidian, where you rely on a folder hierarchy, but nested tagging does somewhat make up for that deficiency and in Obsidian it is super easy to apply tags so its one feature I would say Onenote could benefit from. Not sure why the core dev team hasn't done this obvious work, so appreciate the thought Steve has put into it.
In Onenote I use both paragraph level tags as well as page level tags offered by Onemore, but I find the former of limited value and am not consistent with the latter as it is somewhat cumbersome to apply them. Writing the hashtag at the top of the note, as is done in Obsidian, is very efficient.
This is a tangential issue, but does relate to the efficiency of using Onemore tagging. I have had the application crash on me when applying tags - I would guess about 1 every 20 times. Normally I can quickly reboot the app, but this happened once during a meeting I was conducting over video and I wasn't able to reboot the app and couldn't get it working until I rebooted my workstation. I haven't been able to come up with a replication pass so have not reported it yet, but to be honest its been an impediment to adopting it more consistently. But there are some pages that I will definitely take the time to tag.
Hello, can i ask for a feature to preserve original image/attatchment filenames when exporting? When i do "save as" i can save photo/attachment with original filename but when i export with OneMore it renames all photos to something like "image001".
@maslos you should add that request here: https://github.com/stevencohn/OneMore/issues
Hi everyone! Steven here. If OneMore had the ability to discover, catalog, and search for #hashtags as explained below, how do you think you would use then? What features would you expect?
The following description is from a preliminary design document I've posted here
And here are some possible user interactions:
What do you think? How would you expect to interact with hashtags?