hypothesis/product-backlog

Highlight in multiple colours

nickstenning opened this issue Β· 62 comments

Another user request came in today (#1969, added to Nick's original comment). Would also like to point out that this is an accessibility issue for those with low vision and/or who are colorblind.

And yet another user request (#1968), added to Nick's card

A new review on the Chrome web store mentions this as well. Unfortunately, I don't see a way to link to reviews, so I am adding a screenshot:
screen shot 2018-01-23 at 12 24 06 pm

Summary

As a user, I want to be able to highlight in colors other than yellow so that:

  • I can categorize annotations by type, topic, or importance (see Zendesk tickets #992, #1968)
  • I can differentiate between text that is highlighted vs text that is highlighted and annotated (Zendesk ticket #2116)
  • I can easily see highlights, even if I am low/no-vision and/or colorblind

User requests

W3C compliance considerations

  • There should be notification of the number of highlights of different types, a way to navigate to each highlight and to choose which type of (color) highlight to navigate between (meaning color of highlight should be reflected in the syntax).
  • Make sure that the contrast between background and foreground has a ratio of 4.5:1 or higher
  • Most common type of color blindness renders greens and blues indistinguishable, so if we are providing color options, that’s something to keep in mind.
  • Furthermore, we might consider differentiating brightness/saturation among options so color is not the only difference between highlight options

Examples

Google Docs & Adobe products offer a palette of default highlight colors to choose from with the option to enter custom RGB or hexadecimal values. There is no limit to how many highlight colors can be used in one document:

Google Docs:
screen shot 2018-02-05 at 4 02 42 pm
screen shot 2018-02-05 at 4 02 54 pm

Adobe Acrobat:
screen shot 2018-02-05 at 4 03 52 pm

Apple's Preview app offers a limited set of options: Yellow, Green, Blue, Pink, Purple (As well as underline and Strikethrough)
screen shot 2018-02-05 at 3 32 59 pm

Yawas (a Chrome extension for highlighting) allows for yellow, red, blue, and green:
screen shot 2018-02-05 at 4 05 15 pm

Questions and Considerations

  • Should highlight options be available only for private highlights? Or perhaps private + within groups (do we want people annotating over the public layer in various colors)?
  • How many colors should we offer? Which colors should we offer?
  • How will we communicate the different highlight colors to screen readers?
dwhly commented

Should highlight options be available only for private highlights? Or perhaps private + within groups (do we want people annotating over the public layer in various colors)

Great question. My instinct suggests the same direction, namely private + within groups. I don't think we want folks annotating in the public channel this way. Or if they do, that their personal color choices aren't necessarily visible to all. Private groups are different matter.

dwhly commented

Old vision issue for reference: hypothesis/vision#123

User Engagement Building Community Level of Effort
3 2 2

F1000 provides this.

FWIW I use them with a personal set of meanings for a few of the colors:

red - i disagree
orange - key idea
yellow - default
green - i concur
blue
pink

possibly simplifying thought...

make color simply an extension of tagging!

So, if an annotation has a tag matching the regexpr /color:(.*)/, then color the region $1.

Conversly, build UI tools to set/reset the value of the annotation'scolor tag.

Notably provide small standard pallette of 5 or 6 named colors when chosen simply set/reset the value of the color tag.

"color:green" anyone?

Came up in a Chrome store review. There isn't a great way to link to reviews, so here's a screenshot:

screen shot 2019-01-28 at 11 23 14 am

+1 for wanting this feature

Great project, but please make this happen!

I don't know if it has been mentioned before, but per-user colors would really do the trick for some of my group use-cases. Perhaps doing it similarly to how it already functions very well in Etherpad would be just fine - users can pick their own (more or less) unique color, that is then seen by all.

Notes from a user in Zendesk on what they'd expect from this implementation:

  1. User can select color of the current highlighting fast from GUI and not from Preferences [i.e., can be selected in context where the user is annotating, rather than making them go to a separate preferences page]
  2. The color for each highlighting/annotation is persistent and kept in DB - at implementation level some predefined tags like: color-red or color-R-G-B-A could be fine;
  3. Last but not least, API to set current color by a side app or 3-rd party app via the local communication like https://developer.chrome.com/extensions/nativeMessaging

I just put in a request for this feature myself (Ticket #7272), and was alerted to this existing ticket. I second malcooks suggestion to associate the different highlighting colors with the tags and not the annotations, so you only see the color in each annotations little id marker near the scrollbar when there is a tag assigned to it. This is a basic feature of qualitative data analysis softwares like ATLAS.ti. The annotations have id's like 2:17 (the 17th annotation in document 2) in the "scrollbar marker," and then the name of the tag(s) are listed and those are back-colored. I think this also brings it down to a project-level feature so there is no private vs. public issue with highlighted text since it's the tags being colored at the project-level.
Screen Shot 2019-11-19 at 2 29 03 PM

As a user who have constant eye fatigue when not using LED screens with low-blue light filter (flux, night shift, etc, whatever you called it). Yellow highlights just own't show up with a white background, it's makes the whole app unusable for me.
I think it's better to implment color changing feature on the display. That is, to record various colors, as COLOR1, COLOR2 written in the data information, and let users decide in what hue they want COLOR1, COLOR2 be defined as.

@IAmNotAJerk I changed the color code for the highlight with some Javascript in the bookmarklet so the highlights would be visible despite f.lux.

The bookmarklet is at https://gist.github.com/jasonkena/862510cef19d78eb0390799e4c4af19c

The important section is rgba(255, 150, 255, 0.5), customize it as you like.

@IAmNotAJerk as part of recent accessibility work we've also increased the opacity of highlights, so that contrast (rather than just color) will show that a section is highlighted - hopefully that will provide some improvement in the shorter term

So it seems there are two separate use cases for multiple highlight colors here which are in some cases in conflict:

  1. Using different colors for different highlights for semantic purposes.
  2. Enabling users to change the color for accessibility reasons. This might include changing the color and/or boosting the contrast

In a private context, there is no conflict. In a group context, the members need to share semantics somehow. Some ideas on how to overcome this:

  1. Separate color hue from contrast/opacity. The color hues may be defined on a per-group basis but contrast is defined by the user according to their needs.
  2. Associate entries in a color palette (per @IAmNotAJerk's suggestion) with semantic labels (eg. tags as suggested above) on a per-group basis. This enables individuals to change the color palette according to their needs while still keeping the semantics within the group. There could still be some confusion if screenshots/videos of annotated documents get shared and different people are seeing different colors, but I guess that's an inevitable trade-off.

Hi all - just starting to use hypothes.is. Wondering if it is possible to use different highlight colours or whether this functionality doesn't yet exist. Apologies for the questions

Hi @andrewg1978 - This functionality does not exist yet. We're using this issue to discuss possibilities and constraints.

@robertknight - thanks - appreciate your rapid response... look forward to seeing how things develop. Ideally I want to be able to highlight a paper according to different contexts - eg methods vs key findings vs smaller findings etc - Each of these would have a colour to enable them to be distinguished. Hopefully it becomes possible to use some sort of alternate colouring over the next short while

@robertknight ,

In a group context, the members need to share semantics somehow.

I don't think you're going to find a solution that works for everyone, especially balancing accessibility considerations with semantic color-coding considerations. But, you can design UX to provide guidance toward best accessibility practices.

How's this approach toward balancing concerns?...

  • introduce tag-color-map as a 1st class thing
  • provide a few tag-color-maps out of the box that are well-thought-out, and take both accessibility and common use-cases into consideration in their design
  • allow users to define custom tag-color-maps, with in-built guidance toward designing them for accessibility (but do not require), guidance to include choosing from well-designed color palettes.
  • provide group admin function to assign a tag-color-map to be used by default by all contributing members, guiding them toward selecting
  • allow group admin to assign such a tag-color map as the default tag-color map
  • allow user to override default tag-color-map for personal use.

https://hypothesis.zendesk.com/agent/tickets/10395

it would be great to have the option to change the highlighting colour. Why? Many websites use yellow to highlight information within their articles. If the colour of hightlights made in hypothes.is using the Chrome extension could be changed (on a per-user basis, meaning public highlights would still look the same to everyone but users have the option to change the color of all highlights made with hypothes.is they see, both their own and those made by others), that would make it easier to differentiate between the websites' highlights and the ones made with hypothes.is.

https://hypothesis.zendesk.com/agent/tickets/14160

I can imagine many ways this could be useful. Asking students to look for 3 different themes in a reading, and each one should be coded with a different color. Or having students work in teams to code a single document during a class, and each team uses a different color. Or one color for instructor comments, and another color for student comments.

@malcook ,

How about an option for a set of default accessibility alternatives, which people which specific issues can select, such as the cividis colormap, or "highlights" of differents quiggly lines.

Highly requested, very important and very simple to implement feature.
Is there any plan on implementing this very simple feature?
There is 3.5 years of discussion and 20-30 user requests for this issue.

Only requires mapping tags to colors and using this colors for the highlight.

@matthiaskoenig we want to enable this eventually but have no immediate plans to do so.

As you can tell from the discussion, it's not as simple as it sounds. There are myriad ways this could be implemented and configured, so significant design thinking and research will be needed.

The complexity of this issue combined with the need to prioritize other features, particularly for our education users, means this remains a "long-term" goal for the time being.

Hi all,
no problem, I understand.

Has anybody else here found another tool which solves the issue. The mentioned use cases look very similar to my use case: I want to do have a labeling/annotation tool for PDF where I can pre-define tags/classes and then highlight these in the pdf. Required features:

  • PDF support
  • collaborative annotation/tagging
  • export of annotations in standard open format (JSON or similar)
  • groups (i.e. visibility for small set of people)
  • open source (extensible)
  • color support (mapping of tags to colors)

Optional features (but nice to have):

  • annotation of other text (txt, html pages)
  • (no need for relationships, just entity tagging)

The tool closest is https://tagtog.net/, but extremely expensive. Hypothes.is has most of the features (besides the colors).
Does anybody know of alternatives? Or how difficult would it be to write a own extension to hypothes.is implementing colors?

Just have to mention this in addition: A good way of prioritizing is based on your user feedback. Just sorting by most discussed issues gives a good feeling of what is requested (with this issue being the most discussed issue of 422 issues)
https://github.com/hypothesis/product-backlog/issues?q=is%3Aissue+is%3Aopen+sort%3Acomments-desc

@malcook Thanks. SciWheel looks great. But I would need an export of the annotation and the possibility to predefine tags. Sciwheel only allows tags on references but not tags for annotations of PDF. Also the annotations do not seem to be accessible., i.e. there is no export of the annotation nor is it possible to query them via the API. I want to work programatically with tags/annotations. (But hypothes.is also does not support export of annotations yet, as far as I can tell; see #566)

@matthiaskoenig Our Director of Integrations, Jon Udell, has created a prototype for exporting Hypothesis data that allows you to easily download your annotations in a variety of formats. [Note: Since this tool is a prototype, we are unable to provide troubleshooting or support beyond these basic instructions. We plan to add a fully-supported export feature to Hypothesis in the future.]

To export all of your Hypothesis annotations, go to https://jonudell.info/h/facet/ and enter your Hypothesis username and API token (required for downloading private annotations). Click β€œSearch” to see all of your annotations appear on the right side of the screen. Above your annotations, you can click one of three buttons to download your annotations in HTML, CSV, or plain text formats.

What a pity that this is still not available. I'll have to stick with Diigo and Marker.to then for the time being

https://app.hubspot.com/contacts/6291320/ticket/440063152/

This user wants to change colors b/c they're on a site that automatically adds yellow highlighting to concepts covered previously, and they want to distinguish their Hypothesis annotations.

What a pity that this is still not available. I'll have to stick with Diigo and Marker.to then for the time being

...and with GetLiner :(

Another request here: #1220

How can one know distinguish mere highlights from annotations that have some notes? Without this feature, the whole annotating thing is pretty useless.

As you can tell from the discussion, it's not as simple as it sounds. There are myriad ways this could be implemented and configured, so significant design thinking and research will be needed.

The complexity of this issue combined with the need to prioritize other features, particularly for our education users, means this remains a "long-term" goal for the time being.

I don't understand why this requires significant design thinking. Wouldn't the simplest solution simply be to provide 4 or 5 different colored boxes to choose from when the user highlights some text similar to Kindle or Zotero's new PDF reader. Instead of looking at the myriad of ways this could be implemented why not adopt the simplest possible solution and improve it incrementally.

Moved on to zotero. Not seeing this being fixed ever after 5 years open. This is one of the highest (if not highest) commented and ranked issues on this repository. You should listen to feature requests of users.

I have to agree with @jonathan-kosgei. If someone wanted this implemented it should be pretty easy to do in a simple first version.

Oh boy, this issue has been open for five and a half years! I would really love this featureβ€”at least if it comes with a few conventional colors commonly used in other PDF readersβ€”as lacking it has prevented me from using Hypothesis more often.

the feature is very very very useful !
hope it to be implemented !

How about the design team amend my proposal to their liking and offer it back to the followers of this issue for comment?

please take a look at how glasp.co does this for an example. they have 4 preset colors. when u choose to highlight you pick the color right there in the popup. it's fast and intuative. i actually use it daily, but wanted to swap over to hypothes.is as you offer some other more advanced features they currently dont. but honestly, the inability to use multiple highlight colors for organization is kind of a deal breaker.

Please add this function, so many people request it. It will be very useful.

+1. I want to use Hypothesis but not having different colors is a deal-breaker for me. Going back to Weava for now unless and until colors are added.

Any movement on this request? Multiple highlight colors would be a great feature to have!

uPagge commented

Wow, I'm looking for it open as early as 2017, it seems that there is not much chance of its implementation. Different colors are a very good idea.

@uPagge just upvote the issue and join the waiting queue. Only 2.5 years for me at this point.

Sadly ridiculous that this is not available after six years.

uPagge commented

Maybe the project is just abandoned by the author?

We do plan to add additional colors at some point, but right now we have other priorities. The majority of those relate to the needs of customers in education, who pay the bills.

The opacity of yellow used for highlighting is very hard to see in dark mode.

It seems multiple highlight colors is not only supported using Weava by default, FURTHER - over there one of the Premium selling points is...unlimited colors. Multiple and even unlimited colors is pretty much a feature of every digital application, certainly every PDF editor, formal editor.

Without multiple colors, the tool is really at a loss. GREAT feature set. HUGE oversight.

STRONGLY encourage the implementation of multiple, if not unlimited colors for highlighting

Hello, I wanted to kindly ask if there are updates.