1. Встановлення

  1. Встановіть Obsidian з сайту obsidian.md
  2. Увімкніть плагіни спільноти в розділі «Налаштування», «Плагіни спільноти»
  3. Встановіть Better Paste: натисніть «Огляд», знайдіть «Better Paste», а потім натисніть «Встановити»

2. Що це робить

Десять прикладів. Деякі з них виконуються при кожному вставленні, інші — це команди, які потрібно запускати за потреби.

2.1 Налаштовані фрагменти коду

Створіть власні правила пошуку та заміни за допомогою регулярних виразів, і вони будуть виконуватися при кожному вставленні тексту. Це правило видаляє маркери цитування з Perplexity:

The fix shipped last week[1][2] and rollout begins today[3].

стає

The fix shipped last week and rollout begins today.

У комплекті з плагіном надаються два фрагменти коду, які можна редагувати або вимкнути: «Видалити жирний шрифт із заголовків » та «Скласти порожні рядки». На вікі можна знайти й інші фрагменти для імпорту, наприклад, для перетворення математичних виразів із ChatGPT. Про те, як складати правила, йдеться в розділі 3.5.

2.2 Зображення з Safari

Скористайтеся функцією «Копіювати зображення» в Safari — у буфері обміну з’являться дві версії: саме зображення та його веб-адреса. Obsidian вставляє адресу, але ви скопіювали зображення і очікуєте саме його. Better Paste вставляє зображення, збережене у вашому сховищі:

![](https://images.example.com/2026/05/skyline-8f21a.jpg?auto=format&w=2400)

стає

![[skyline-8f21a.jpg]]

2.3 Параметри відстеження

Посилання, які ви копіюєте з інформаційних розсилок та соціальних мереж, містять багато непотрібних елементів відстеження. Better Paste очищає їх:

https://www.theverge.com/2026/1/9/story?utm_source=newsletter&utm_medium=email&fbclid=IwAR2x9

стає

https://www.theverge.com/2026/1/9/story

2.4 Назви посилань

Вставте простий URL-адресу, і вона перетвориться на посилання у форматі Markdown із справжнім заголовком сторінки:

https://obsidian.md

стає

[Obsidian - Sharpen your thinking](https://obsidian.md)

URL-адреса вставляється одразу й оновлюється, коли з’являється заголовок, тому ніщо не затримує процес.

Список посилань також працює. Вставте кілька URL-адрес, кожну в окремому рядку, і кожна з них отримає свій заголовок.

Отримані заголовки часто закінчуються назвою сайту, наприклад · GitHub або - YouTube. Включений фрагмент коду «Видалити назви сайтів із заголовків» видаляє ці назви, і ви можете додати власні правила — див. розділ 3.5.

Reddit, YouTube, TikTok та Loom блокують звичайний перегляд сторінок, тому їхні заголовки замість цього отримуються з власних сервісів вбудовування кожного сайту, а заголовки Stack Overflow та інших сайтів Stack Exchange — через API Stack Exchange. У посиланнях на Dropbox на ім’я файлу або папки використовується як заголовок, а в URL-адресах Obsidian — назва нотатки.

2.5 Вкладені списки

Скопіюйте вкладене списку, вставте його глибоко всередину іншого списку — і старий рівень відступу збережеться, що порушить структуру дерева. Функція «Better Paste» переформатує відступи всього списку, щоб він відповідав елементу, до якого ви вставляєте новий елемент. Ось так:

- [ ] Trip planning
    - [ ] Book hotel
    - [ ] Pack
        - [ ] Chargers

вставлено в порожній елемент у

- Projects
    - Summer
        -

стає

- Projects
    - Summer
        - [ ] Trip planning
            - [ ] Book hotel
            - [ ] Pack
                - [ ] Chargers

Ця функція працює з маркованими та нумерованими списками, а також з прапорцями, незалежно від рівня вкладеності елемента, куди вставляється текст, і від того, чи використовуються в тексті табуляції чи пробіли. Текст, який не є суто списком або не вставляється в елемент списку, відображається так само, як і раніше. Натомість багатоформатний текст із веб-сторінок проходить конвертацію в HTML за допомогою Obsidian.

2.6 Цитування цілих абзаців

Якщо вставити кілька абзаців у блок цитати, цитується лише перший рядок — це проблема Obsidian, яка існує вже багато років. Краще, щоб програма вставляла кожну вставлену лінію в цитату, щоб весь вставлений текст залишався в межах цитати. Ось так:

We started in a garage.

Two years later we were forty people.

вставлено у підписі

> [!quote] From the interview
>

стає

> [!quote] From the interview
> We started in a garage.
>
> Two years later we were forty people.

Це працює як у звичайних блокових цитатах, так і у виносках.

2.7 Вихідні дані терміналу

Термінали розбивають довгі рядки на краю вікна. Коди Escape видаляються під час кожного вставлення, а коли ви виділяєте вставлений вивід і запускаєте функцію «Очистити вивід терміналу», рядки знову об’єднуються:

npm warn deprecated inflight@1.0.6: This module is not supported and leaks memory. Do
  not use it. Check out lru-cache instead.

стає

npm warn deprecated inflight@1.0.6: This module is not supported and leaks memory. Do not use it. Check out lru-cache instead.

2.8 Текст із PDF-файлів

У PDF-файлах абзаци розбиваються на короткі рядки, а слова розділяються дефісами. Виділіть вставлений текст і запустіть функцію «Очищення тексту PDF»:

The findings suggest that long-term expo-
sure has a measurable effect on the out-
come in both groups.

стає

The findings suggest that long-term exposure has a measurable effect on the outcome in both groups.

Лігатури, такі як fi, також стають повноцінними літерами, тому пошук знову знаходить ці слова.

Ця команда відкриває діалогове вікно з попереднім переглядом, тож ви бачите результат ще до його застосування. Два перемикачі дозволяють зробити те, чого не може передбачити жодне правило: видалити номери сторінок або об’єднати все в один абзац. Ваші налаштування запам’ятовуються для наступного разу.

2.9 Очищення тексту, згенерованого штучним інтелектом

Текст чат-бота містить фігурні лапки, довгі тире та невидимі символи. Невидимі символи видаляються при кожному вставленні, а при увімкнених налаштуваннях «Лапки» та «Тире» решта тексту також перетворюється на звичайний текст:

“It works,” she said — finally.

стає

"It works," she said - finally.

2.10 Коми та лапки

Віддаєте перевагу розміщенню ком за лапками? Виділіть текст і запустіть функцію «Перемістити коми за лапки»:

She called it "finished," then left.

стає

She called it "finished", then left.

У лапках коми ставляться навпаки.


3 Налаштування

Ось налаштування, які вам насправді знадобляться.

3.1 Поведінка

  • Очищення всіх вставлених фрагментів: головний перемикач. Вимкніть його, щоб використовувати лише команди або очищати лише ноти, позначені тегом « bp: true » (див. розділ 4).
  • Властивість «Note» (за замовчуванням — « bp »): перемикач для кожної ноти з розділу 4. Перейменуйте його, якщо він конфліктує з чимось у вашому сховищі, або залиште поле порожнім, щоб вимкнути цю функцію.

3.2 Додатки

  • Веб-зображення: що відбувається, коли вставлене посилання веде на зображення в Інтернеті — як простий URL-адресу зображення або як частину скопійованого веб-вмісту. Опція «Посилання з попереднім переглядом» (за замовчуванням) вставляє вбудований елемент, що відображає зображення безпосередньо з Інтернету. Опція «Завантажити з попереднім переглядом» зберігає копію у вашому сховищі (у папці, вказаній у налаштуваннях вкладень) під назвою, що відповідає імені вихідного файлу, тож більше не буде посилань типу image.png. Опція «Нічого не робити» залишає обробку вставлених зображень на розсуд Obsidian. Зображення, скопійоване в браузері, містить фактичне зображення у буфері обміну, тому воно зберігається у вашому сховищі як у режимі «Посилання з попереднім переглядом», так і в режимі «Завантажити з попереднім переглядом» (див. приклад 2.2).
  • Вставлені файли: що відбувається, коли ви вставляєте файли зі свого пристрою, наприклад PDF-файли та скріншоти. Варіант «Не робити нічого» (за замовчуванням) доручає Obsidian вставку файлів, включаючи попередній перегляд. Варіант «Посилання без попереднього перегляду» замість цього вставляє звичайне посилання, тобто ![[Document.pdf]] перетворюється на [[Document.pdf]]. Файли все одно зберігаються відповідно до ваших налаштувань вкладень в Obsidian.
  • Імена файлів: використовуйте власний формат, наприклад {{name}}-YYYY-MM-DD. Також можна використовувати {{noteName}} для імені нотатки, {{property:xyz}} для будь-якої властивості frontmatter, а також {{counter}} або {{counter:2}} для номера, що послідовно збільшується. Знімок екрана не має імені джерела, тому отримує назву Pasted image плюс мітку часу — саме таку назву йому присвоює Obsidian. Якщо в нотатці вказано attachName: demo, а формат має вигляд {{property:attachName}}-{{counter}}, вставлені знімки екрана стають demo-1.png, demo-2.png, demo-3.png. Цей формат застосовується до всіх зображень, які зберігає Better Paste, включаючи знімки екрана.
  • Розмір і стиль: присвойте кожному збереженому зображенню ширину, клас або й те, й інше, щоб при вставці воно виглядало так: ![[photo.jpg#invert|400]]. Створіть власні списки, розділені комами, наприклад: 200, 400, 600 та invert, invertW, а потім застосуйте одне значення до всіх зображень або виберіть опцію «Запитувати при кожній вставці», щоб щоразу обирати параметри у невеликому діалоговому вікні (клавіша Enter підтверджує вибір, а останній вибір буде попередньо позначений). Класи, такі як #invert, визначаються темами та фрагментами CSS, наприклад, для інверсії зображення в темному режимі. Властивість «Ширина зображення» (за замовчуванням image-width) встановлює ширину для кожної ноти, див. розділ 4.

Альтернативний текст зберігається, і якщо завантаження не вдалося, у вашій нотатці залишається оригінальне посилання. Зображення розміром понад 50 МБ або час завантаження яких перевищує 30 секунд, залишаються у вигляді посилань. Нотатка, що має власне властивість image-width (див. розділ 4), має пріоритет над налаштуванням розміру.

3.3 Посилання

  • Отримати назви для вставлених посилань: увімкнено за замовчуванням, див. приклад 2.4 вище.
  • Очищення вставлених посилань: видаляє типові трекери з усіх посилань, а також відомі зайві елементи з таких сайтів, як YouTube, Google та Amazon.
  • Видалення посилань: вкажіть назви параметрів, які також потрібно видалити скрізь або на певних сайтах. Тестер у режимі реального часу показує результат ще до того, як ви вставите текст:
https://www.youtube.com/watch?v=dQw4w9WgXcQ&list=PLxAbC123&si=8f2a1c&utm_source=share&t=42
https://www.amazon.com/dp/B0CHX1W1XY/ref=sr_1_3?crid=2ABCDE&keywords=usb+hub&qid=1735689600&sr=8-3
https://www.google.co.uk/search?q=obsidian+plugins&client=safari&sca_esv=9f1&sourceid=chrome

стає

https://www.youtube.com/watch?v=dQw4w9WgXcQ&list=PLxAbC123&t=42
https://www.amazon.com/dp/B0CHX1W1XY/ref=sr_1_3?keywords=usb+hub
https://www.google.co.uk/search?q=obsidian+plugins

Видалення виглядає так:

fbclid
mine.example | source, ref

fbclid видаляє цей параметр на кожному сайті. Файл mine.example | source, ref видаляє source та ref на mine.example та його піддоменах, тоді як усі інші параметри залишаються. А файл google.* підходить як для google.com, так і для google.se. Ви можете переглянути всі вбудовані правила видалення, а оновлення цього файлу надходять разом із випусками плагіна. Щоб запропонувати свої правила видалення, відкрийте файл betterpaste.md із вже заповненим списком. Перегляньте його там, а потім створіть чернетку у вашій поштовій програмі. Криптографічно підписані посилання залишаються без змін. Спільні файли та подарункові статті зберігають свої параметри доступу.

Введіть рядок, що починається з « ! », щоб вимкнути вбудовані функції видалення для одного сайту:

!youtube.com

3.4 Обробка тексту

  • Видалити зайві пробіли навколо тексту: видаляє порожні рядки та зайві пробіли навколо вставленого тексту. Порожні рядки посередині залишаються.
  • Невидимі символи: видаляє пробіли нульової ширини та перетворює нерозривні пробіли на звичайні. Емодзі, перські та арабські сполучні символи, а також пробіли CJK залишаються без змін.
  • Лапки: перетворює фігурні лапки та апострофи на прямі, тож « “don’t” » перетворюється на « "don't" ». За замовчуванням ця функція вимкнена, тож ваші символи зберігаються доти, доки ви не увімкнете її.
  • Тире: перетворює довгі та середні тире на короткі. Також за замовчуванням вимкнено. Лапки та тире всередині коду, посилань та назв нот залишаються без змін.

3.5 Індивідуальна обробка

  • Фрагменти тексту: ваші власні правила на основі регулярних виразів, які застосовуються до всього вставленого тексту після вбудованих правил. Кожен фрагмент має власний перемикач, і вони виконуються у порядку, вказаному у списку, тому перетягніть їх, щоб змінити порядок. Функції «Видалити жирний шрифт із заголовків» та «Сховати порожні рядки» входять до складу плагіна.
  • Фрагменти посилань: аналогічні правила, що застосовуються до кожного вставленого посилання після формування його заголовка. Правило обробляє готове посилання у форматі Markdown, при цьому адреса залишається незмінною. Функція «Видалити назви сайтів із заголовків» входить до складу плагіна та видаляє такі закінчення, як · GitHub та - YouTube.
  • Кожне правило — це один вираз регулярного виразу JavaScript на заміну в одному рядку у форматі s/find/replace/flags. Рядки, що починаються з #, є коментарями:
# Remove Perplexity citations
s/\[\d+\]//g
  • Спробуйте: введіть зразок тексту та спостерігайте, як кожен увімкнений фрагмент коду виконується на ньому в режимі реального часу. Фрагменти з посиланнями мають власний тестер, який приймає посилання у форматі Markdown. Редактор фрагментів коду має такий самий попередній перегляд для фрагмента, який ви створюєте.
  • Імпорт та експорт фрагментів: переміщуйте фрагменти між сховищами за допомогою буфера обміну. Готові фрагменти розміщені на вікі; скопіюйте один із них звідти та вставте його.
  • Відкритий майданчик для роботи з регулярними виразами: відкриває сторінку regex101, на якій описано, як працюють правила, для створення та тестування шаблонів пошуку.

3.6 Структура

  • Зберегти вкладеність списків під час вставки: увімкнено за замовчуванням, див. приклад 2.5 вище.
  • Продовжувати цитування блоків при вставці: також увімкнено за замовчуванням, див. приклад 2.6 вище.

Правила структури виконуються після правил тексту, оскільки вони аналізують примітку навколо курсора та змінюють форму очищеного тексту, щоб він умістився в неї.


4 Регулювання для кожної ноти

Додайте рядок « bp: false » до початкової частини нотатки, і Better Paste не буде її змінювати. Ідеально підходить для журналів та стенограм:

---
bp: false
---

Це працює і в зворотному напрямку: команда « bp: true » очищає ноту навіть тоді, коли опція «Clean up every paste» вимкнена.

Очистити кожну вставку Відсутність властивості « bp » bp: true bp: false
Увімкнено очищено очищено залишено без змін
Вимкнено залишено в спокої почищено залишено в спокої

А файл « image-width » визначає ширину зображень, вставлених у цю нотатку:

---
image-width: 400
---

Зображення зберігаються у форматі ![[picture.png|400]] — це власний синтаксис Obsidian для вказівки розміру. Також працює формат 400x300.


5 команд

Дев’ять команд, для яких можна призначити власні гарячі клавіші (Налаштування, Гарячі клавіші). Ідентифікатори призначені для схем URI та плагінів, таких як Commander, і мають префікс better-paste:.

  • Вставити (paste): вставити з урахуванням правил, навіть у ноту, для якої було відключено цю функцію.
  • Вставити без обробки (paste-raw): вставити саме те, що знаходиться в буфері обміну.
  • Очистити виділення (selection-clean): застосувати правила до виділеного тексту.
  • Очищення виводу терміналу (selection-clean-terminal): об’єднати розбиті на рядки фрагменти, видалити відступ на початку рядка та перетворити маркерні списки • у списки Markdown у виділеному фрагменті. За бажанням, оскільки лише ви знаєте, що текст походить із терміналу.
  • Очищення тексту в PDF (selection-clean-pdf): об'єднання коротких рядків, що утворюються внаслідок форматування PDF, виправлення слів, розбитих дефісами, та розгортання лігатур у виділеному фрагменті. У діалоговому вікні можна переглянути результат, а також налаштувати параметри нумерації сторінок та абзаців.
  • Виконати фрагмент коду (selection-run-snippet): вибрати фрагмент і застосувати його до виділеного тексту, навіть якщо цей фрагмент вимкнено для вставки.
  • «Перемістити коми всередину лапок» (selection-commas-inside) та «Перемістити коми за лапки» (selection-commas-outside): стиль розміщення коми поруч із закриваючою лапкою, застосовано до виділеного фрагмента.
  • Увімкнути/вимкнути автоматичне очищення (toggle-cleanup): переведіть головний вимикач у потрібне положення.

6. Корисно знати

  • Текст, вставлений у блоки коду, вбудований код або передню частину, залишається без змін, а код у огороджених блоках, вставлений у текст, зберігається без змін. Єдиний виняток: якщо для веб-зображень встановлено параметр «Завантажити з попереднім переглядом», вставлення адреси зображення в порожнє поле в режимі джерела призведе до збереження зображення у вашому сховищі з властивістю, встановленою на « "[[skyline-8f21a.jpg]]" ». Obsidian Bases може відображати це як обкладинку, а локальна копія працює в автономному режимі.
  • Знімки екрана зберігаються програмою Better Paste під тими ж іменами, які їм присвоює Obsidian, якщо ви не встановили власний формат імен файлів.
  • Спочатку Obsidian перетворює багатий контент (HTML) у формат Markdown; потім Better Paste очищає посилання та застосовує налаштування веб-зображень до зображень у кінцевому результаті.

7 мов

Better Paste підтримує 21 мову: арабську, китайську (спрощену), китайську (традиційну), нідерландську, англійську, французьку, німецьку, індонезійську, італійську, японську, корейську, перську, польську, португальську, португальську (Бразилія), російську, іспанську, тайську, турецьку, українську та в’єтнамську. Вона використовує ту мову, на яку налаштований Obsidian (зміни набувають чинності після перезапуску).


8. Конфіденційність

Better Paste працює локально і надсилає мережеві запити лише у трьох випадках:

  • завантаження зображення, яке ви вставили
  • отримання заголовка вставленого посилання (щоб це вимкнути, вимкніть опцію «Отримувати заголовки для вставлених посилань »)
  • завантаження ілюстрацій для діалогових вікон «Привітання» та «Що нового» з GitHub

Жодної телеметрії, жодної аналітики, і ніщо ніколи не завантажується. Налаштування зберігаються за адресою .obsidian/plugins/better-paste/data.json і залишаються у вашому сховищі.

Кожен реліз перевіряється за допомогою TypeScript, ESLint з офіційним плагіном Obsidian для ESLint, Stylelint, Prettier, Vitest та перевірки на наявність мертвого коду. Поява попереджень призводить до зриву збірки.


9 Про

Мене звати Йохан Саннеблад. Я маю ступінь доктора наук у галузі розробки програмного забезпечення та працював над впровадженням інновацій у таких компаніях, як Apple, Electronic Arts, Google, Microsoft, Lego, SKF, Volvo Cars, Volvo Group та Yamaha. Крім того, я розробляю Notebook Navigator — найпопулярніший плагін-файловий менеджер для Obsidian.

Не соромтеся додавати мене в контакти на LinkedIn!


10 питань чи проблем?

Створіть запит у репозиторії GitHub. У разі помилок, пов’язаних із вставкою тексту, найкориснішою інформацією, яку ви можете надати, є вміст вашого буфера обміну: відкрийте сторінку https://dynalist.io/clipboard у програмі, з якої ви скопіювали текст, вставте його туди та вкажіть, що там відображається.

Запити на злиття не приймаються; замість цього пропонуйте свої ідеї у вигляді запитів на додавання нових функцій. Детальніше див. у файлі CONTRIBUTING.md.


11 Ліцензія

Загальна публічна ліцензія GNU, версія 3.0. Див. файл LICENSE.