Comments (9)
... could you surround them with ` to avoid confusion please?
Sure thing -- all set.
Unrelated, but while MMS 1 is slowed to a janky crawl under the test, MMS 2 works with almost no stutter or slowdown.
Yeah that seems one of those most unappreciated of all developer tasks: improving speed and nobody sees it :) Either way I'm very glad to have it.
from mark-my-search.
To add my own sidenote, thank you for all the ideas, and don't worry about providing info! I am very happy to think about features and how they might connect on my own.
Firstly, I think this is a good idea which is worth looking into. As you said it links to #65 nicely, since they are both ways (as I see it) to reduce visual complexity and increase clarity where many keywords are appearing; you can more quickly find areas of more relevance to your search.
I am a generalisation fanatic, and I can think of a few ways this might be made less specific in order to work for more use cases. I prefer not to let the order or even content of keywords matter to the algorithms using them, and details such as whether or not they originated from a "search" (e.g. on DuckDuckGo) are completely abstracted. Perhaps such groups could be determined simply by where words next to each other are highlighted, such as clock 12 strikes
or strikes strikes
? I feel like this will be simpler and more useful in many cases, but feel free to give your opinion on this.
I hot-patched this into my working version of Mark My Search 2:
'Alphabet Test' without grouping
Normal operation with grouping
Most likely, this would normally activate when highlights have either no gap or a gap of only whitespace. This would benefit from being more visible as well of course, so when experimenting I would try out different types of borders and/or backgrounds.
from mark-my-search.
Note: the Alphabet Test is currently my favourite stress test for MMS, in which I highlight every letter in the alphabet. If it looks horrendous it's meant to, but I would love to see a method that manages to clean even it up. Unrelated, but while MMS 1 is slowed to a janky crawl under the test, MMS 2 works with almost no stutter or slowdown.
from mark-my-search.
By the way, you have accidentally pulled in some issues with #1
etc, could you surround them with ` to avoid confusion please? No worries though (:
from mark-my-search.
Yeah that seems one of those most unappreciated of all developer tasks: improving speed and nobody sees it :)
This is very true, thank you for appreciating it (:
I don't mind too much with MMS because I find it very satisfying to see a whole page filled with colour but running smoothly. Sadly Firefox doesn't support the API needed for version 2, so the new algorithm is slowed down and will probably be disabled by default even when v2 releases. I'll let you know when the situation changes!
from mark-my-search.
Perhaps such groups could be determined simply by where words next to each other are highlighted, such as
clock 12 strikes
orstrikes strikes
?
Grouping similar terms that appear together does sound like an interesting feature and I'd be interested to have that available.
A few quick thoughts on this:
Use case for enabling this feature:
Research - when digging around on pages seeing words grouped together would save time and effort to gather ideas and pull you in directions. Looking at 27 documents for some mention of "blue laser" or similar reference would be greatly improved by something like this.
Use case for leaving this feature off:
A word repetition check. It's a very narrow group (I don't know anyone else who does this) but it's something I do to highlight each instance of a word with a specific color. Its something that helps me catch word duplication within a document. It's often unconscious but people do it all the time and it hurts readability moreso than long sentences or word complexity.
Anyway, I can walk through my process of gathering common words and searching for them, but in essence having each word with a separate color is crucial for this kind of check. Similar colors jump out at you and similar words being used over and over again sticks out like a bright neon sign.
Anyway, that's just an aside. More to the point I think that suggestion is a good a answer to the "exact phrase" prompt. Thanks!
from mark-my-search.
Sounds good, and I'm glad you like the idea! Context is definitely important, often more than individual words, and grouping should add another layer of understanding. I think it won't impact word repetition checks luckily - that's another use case I never thought of by the way, which is always interesting to me.
from mark-my-search.
Quick note: if you search using "
(e.g. "everything everything" band
), all enclosed words translate to a single keyword/phrase, which is useful as that's often what you want (and may help while waiting for this feature).
from mark-my-search.
Considering the great complexity and nuance of this task, and the fact that it is a very specialised operation, this will only be implemented as a 'plug-in' add-on for MMS: an add-on that communicates with MMS but presents its own interface. The plug-in will be named along the lines of 'research tools for MMS', and will contain multiple related features.
Current plan as outlined in this issue:
UI
- Popup, page 1
- Sidebar containing keywords of the current tab
- 2 areas into which you can drag the keywords (hopefully with a keyboard alternative e.g. number aliases), forming 2 lists of keyword groups
- Exact phrase (keyword order matters)
- Keywords in flow (keywords are distinct per group) #66
- Popup, page 2
- Exact-phrase and keywords-in-flow matches found in the tab are listed in order, each match providing a little in-page context and being clickable to jump to that point
- Matches are fetched for the current tab every time this page of the popup is opened
Highlighting
- Exact-phrase matches are not planned to affect style, since this would introduce too much complexity for little gain
- Keywords-in-flow matches will cause entire flow containers to be picked out, with backgrounds based on the colours of the included phrases
Options
- Show exact-phrase area, default on
- Show keywords-in-flow area, default on
- Fetch special keyword matches dynamically (as the page changes OR at regular intervals if infeasible), default off
- Count exact-phrase matches as keywords-in-flow matches in special highlighting
Edit 2023-04-01: Still planned, but for-plugin implies being actioned. I will be able to start work on these in approximately 3 months.
from mark-my-search.
Related Issues (20)
- Improve handling of deactivated highlighting when still on the original 'search page' HOT 2
- [Feature Request] PDF highlighting
- [Feature Request] Search results menu HOT 1
- Not working nicely with Notion HOT 9
- Scrolling to the wrong position HOT 1
- As a user I want highlight parity across text/image/video search pages ENHANCEMENT HOT 8
- Restore keywords when restoring last browser session
- [Feature Request] Go to previous match when Shift clicking word HOT 2
- [Bug] lag on some pages? HOT 10
- [Feature Request] Do not inherit searchs on some pages HOT 1
- [Bug] Auto remove _ from highlight candidate HOT 2
- [Feature Request] Add new search candidate to current highlight one? HOT 4
- It breaks LinkedIn search page. HOT 4
- Not working on Chrome and Brave HOT 7
- QOL Suggestions HOT 4
- Background removed with painter
- Do these lines have their parameters crossed? HOT 1
- New highlight method HOT 6
- Refreshing searching words HOT 4
- No scroll markers in scrollbar HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mark-my-search.