Special onebox for hypothes.is

Discourse supports hypothes.is oneboxing out of the box, but it is the default onebox:

It puts the annotated text as the title and the annotation as the content. It’s an ok solution but it’s not intuitive. Someone who sees that onebox has no clue that what it’s referring to is actually a web annotation, i.e. a piece of text on the net plus a comment on that piece of text.

It would be great to have a special onebox for this. Perhaps something that looks more like how the annotation is displayed by hypothes.is itself:

image

3 лайка

I don’t think Discourse Core is going to want to add this, but maybe this could go into Marketplace and make a plugin for it? Is it possible to make a plugin that provides a overridden custom onebox?

2 лайка

I suppose this can be done in a plugin, but let me explain a bit more. I suppose I misframed this topic by describing it as a onebox question. Yes, a better onebox for hypothes.is would be nice. But I think there is much, much more to be gained for discourse from a closer integration of hypothesis (or supporting Open Annotation more generally). Honestly, I think this is huge:

But let’s stay focused and figure out how discourse might use hypothesis. The most obvious use seems to be that it allows for a much smoother quoting of external webpages. Not the url but any specific piece of text on that page.

Concretely: I navigate to some website that I want to refer to in my discourse post, I highlight the snippet I want to quote and save it. Hypothesis gives me a link to that specific annotation and I simply paste it into my post. Currently, it is rendered like this:

(Note the misleading url and image)

But it should be very easy to make it render like this:

From: The Day The Trackbacks Died at https://blog.codinghorror.com:
I want to read your response to my posts, whether it’s on your site, or mine as a comment. So rather than relying on direct peer-to-peer links, I’m exploring the use of external indexing services.

By default, hypothesis only provides public links for annotations, not for highlights, which means you have to write a comment into hypothesis even if you just want to share the text snippet you are commenting on, but nobody forces discourse to display that comment. (The UX problem remains, though, that it doesn’t make sense to type the same comment both into hypothesis and into discourse, but I think a solution could be found here.) So I in my mockup, I have stripped the annotation that is shown in the onebox.

So that would be discourse referring to the world. The other way around would, of course, also be nice. In principle this already works: a discourse post can be annotated just like any other website (or pdf, BTW). The problem is, it only works if you have the Hypothesis Extension for Chrome installed because Discourse doesn’t like being shown in an iframe which means the hypothesis’ proxy solution (called “via”) doesn’t work with discourse forums. Which is a pity.

This can be solved in at least two ways:

  1. Let discourse be iframed by via.hypothes.is
  2. Customize discourse to include this JS snippet: <script src="https://hypothes.is/embed.js" async></script>

The problem with the embedded JS is that you will have the hypothesis sidebar displayed on the right edge of your screen (though perhaps it can be configured so that it is only displayed when some explicitly requests to see a specific annotation, i.e. people following an annotation link.)

So there is some food for thought…

PS: Not only does discourse need hypothesis, hypothesis obviously needs a discourse forum :wink:

1 лайк

You can have someone submit a PR to add an engine: onebox/lib/onebox/engine at main · discourse/onebox · GitHub

5 лайков

Do you have some rough indication of how much work/money this would require?

Certainly less than a plugin. I remember when writing a onebox engine that it was fairly straightforward, with only a few confusing parts.

1 лайк

Привет

Я вижу, что это обсуждение уже старое.
Я активный пользователь Hypothesis: за 2 года создал более 5 тысяч аннотаций.

Discourse — один из немногих сайтов, с которыми у меня возникли проблемы.

Странно, что форум, созданный для обсуждения, плохо совместим с Hypothesis.

Сейчас аннотаций в интернете в десять раз больше, чем три года назад.

Мне очень нравится Discourse, и я действительно хотел бы иметь возможность использовать Hypothesis для аннотирования интересных или примечательных фрагментов, а также делиться ссылками на эти аннотации.

В настоящее время я использую обходной путь: открываю страницу через ссылку «Поделиться ссылкой на это сообщение» в первом посте вверху страницы, затем делаю аннотацию — и всё работает.

Аннотации Hypothesis могут значительно повысить виральную обнаруживаемость контента и платформ, которые их агрегируют.

2 лайка

Попытался использовать Hypothesis здесь.

Похоже, что всё работает.
Так что, возможно, это просто какая-то настройка? Версия?

Один из форумов, где я сталкивался с проблемами: https://forum.openglobalmind.com/

Ну, это не публичный форум. Hypothesis работает только на страницах, к которым у него есть доступ, что исключает частные форумы, верно?

Я считаю, что Hypothesis может получать доступ к закрытым страницам, если пользователь вошел в систему.
Добавить аннотацию можно, но правильный путь к странице будет указан только в том случае, если сначала открыть её через функцию «Поделиться ссылкой на эту страницу».

Если сделать так, аннотация создается корректно. В противном случае аннотации становятся «сиротами».

Вот пример:

По ссылке, как здесь:

Если сначала удалить параметр запроса

Ссылка на аннотацию тогда работает

https://hyp.is/oGzhgi2SEeu6ypOSaqf4kQ/meta.discourse.org/t/special-onebox-for-hypothes-is/70946

Я подозреваю, @tophee, что мы с вами мыслим схожим образом, поскольку в последнее время я, кажется, слежу за вашими темами на Meta. :smiley:

Действительно, и я считаю, что это обсуждение могло бы получить больше отклика, если переименовать тему или создать новую, сделав акцент более непосредственно на более широких и (на мой взгляд) более интересных концепциях.

Это кажется потенциально излишним обходным путём. Surely, должно быть (или может быть) более общее решение для этого.

Здесь обсуждается как минимум три отдельные вещи, и я считаю, что все три заслуживают рассмотрения, аргументированно — в отдельных темах.

Во-первых, способность Discourse лучше отображать контент Onebox от Hypothesis. Это было бы приятно, но, на мой взгляд, имеет несколько ограниченное применение, если рассматривать более общий случай (изложенный в пункте 3 ниже).

Во-вторых, способность Hypothesis аннотировать форумы Discourse. Судя по некоторым ответам выше, это, возможно, уже решённая проблема, но если нет, то было бы здорово, если бы это работало. Аргументированно, это может быть более важным/полезным, чем Oneboxing в Hypothesis, позволяющий цитировать конкретные части страницы, учитывая…

В-третьих, более общая идея возможности цитировать что угодно на любой странице с любого сайта, используя Discourse, что, на мой взгляд, не должно быть привязано конкретно к Hypothesis. Я на самом деле считаю, что Discourse имеет одно из лучших реализаций цитирования в любой системе: от сохранения и простоты цитирования из нескольких сообщений до опционального расширения контекста и быстрого перехода к источнику — это элегантная реализация. Было бы действительно примечательно, на мой взгляд, если бы Discourse мог делать это на любом сайте, а не только на самом форуме Discourse. Интересно, что можно утверждать, что это может быть особенно полезно в контексте Discourse for Teams, например, в исследовательских проектах, конкурентном анализе и т. д.

Очевидно, что для этого потребовался бы либо браузерный плагин, либо какой-то встроенный браузер страниц, либо какой-то другой подход, о котором я не знаю, и это, вероятно, будет нетривиальной задачей. Но я считаю, что это имеет достаточно перспектив, чтобы стоит изучить. Я думаю, я мог бы сделать более убедительный аргумент в его собственной теме, если это будет оправдано…

4 лайка