Простой и быстрый способ получения хайлайтов для Tana с помощью Raycast и Hypothesis

использование raycast для запуска скрипта, который копирует хайлайты из сервиса Hypothesis и оформляет их для вставки с помощью Tana Paste

Anton Maslak
Applicator
3 min readMar 31, 2023

--

Вчера у меня наконец заработал скрипт, с помощью которого я теперь получаю данные из Hypothesis и преобразую в удобную форму для вставки в Tana, использую функцию Tana Paste.

хайлайты сформированные в raycast с помощью расширения

Скрипты запускаются через Raycast. Есть целый набор скриптов: для Твиттера, Readwise, Github.

Решение проблемы с отсутствующими пакетами

Поначалу скрипт не работал. Выдавал вот такие ошибки:

node:internal/errors:491
ErrorCaptureStackTrace(err);
^

Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'isomorphic-fetch' imported from /Users/user/Documents/scripts/tana-paste-raycast-main/hypothesis.mjs
at new NodeError (node:internal/errors:400:5)
at packageResolve (node:internal/modules/esm/resolve:889:9)
at moduleResolve (node:internal/modules/esm/resolve:938:20)
at defaultResolve (node:internal/modules/esm/resolve:1153:11)
at nextResolve (node:internal/modules/esm/loader:163:28)
at ESMLoader.resolve (node:internal/modules/esm/loader:842:30)
at ESMLoader.getModuleJob (node:internal/modules/esm/loader:424:18)
at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:77:40)
at link (node:internal/modules/esm/module_job:76:36) {
code: 'ERR_MODULE_NOT_FOUND'
}

Node.js v18.13.0

Помог ChatGPT, который подсказал что нужно доустановить пакеты и как это сделать. Можно было и самому догадаться, но с ним было проще.

не хватало трёх пакетов

Memex и Raindrop

Пользовался до этого Memex, но он оказался с ограничением на количество добавленных страниц с хайлайтами. Хотя был удобным. В Hypothesis таких ограничений нет.

Отличный вариант Raindrop. Это в первую очередь сервис для сохранения и организации закладок, но он ещё и текст помечает.

Для получения хайлайтов перейдите в приложение или на страницу сервиса.

Использование Hypothesis

В Hypothesis никуда переходить не надо, после запуска он торчит справа от страницы и сворачивается по нажатию.

Работает Hypothesis так: запускаешь расширение и выделяешь текст на странице, выделяете текст и ставите пометки.

Чтобы получить все хайлайты разом, копируешь адрес страницы и отправляешь в скрипт. Текст выводится в формате для вставки в Tana.

панель raycast с вызовом расширения

Можно даже просматривать хайлайты других людей.

просмотрел хайлайты постороннего человека

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

В Hypothesis ограничений вроде нет, он бесплатный.

Чтобы запускать Hypothesis не в хромиумных браузерах, надо сохранить скрипт-ссылку в закладку и когда сервис понадобится, нажать на эту закладку. В Safari я настроил кнопку Домашняя страница, и добавил скрипт туда.

Сам скрипт:

javascript:(function()%7Bwindow.hypothesisConfig=function()%7Breturn%7BshowHighlights:true,appType:'bookmarklet'%7D;%7D;var%20d=document,s=d.createElement('script');s.setAttribute('src','https://hypothes.is/embed.js');d.body.appendChild(s)%7D)();

--

--