На статью меня вдохновил этот комментарий .

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

Это такой своеобразный аналог Notion-таблиц, где можно создать таблицу с бесконечной вложенностью (таблица, внутри одной ячейки, а внутри еще таблица и еще и еще).

На КДПВ как раз собраны разные кейсы реализации функционала плагина Dataview:

  1. Книги с прогрессом чтения

  2. Проекты со счётчиком выполненных и не выполненных задач

  3. Прогресс года, месяца, дня и всей жизни

  4. Фильмы в виде карточек Разбирать каждый кейс я буду под катом.

Установка Dataview

  1. Данная инструкция написана для версии программы 1.1.9. (Перед всеми нижеописанными действиями надо неплохо было бы обновиться: Меню => О программе => Проверить обновления)

  2. Для начала идём в Меню => Сторонние плагины => Включите плагины сообщества

  3. Затем "Обзор"

  4. Затем находим в списке Dataview (Можно написать в поиске, а можно не писать, данный плагин находится вторым в списке)

  5. Жмём "Установить", ждём пару секуд пока плагин скачается и установится

  6. Затем жмём "Включить"

    Как всё это работает в двух словах

    1. Dataview работает на встроенном языке запросов

    2. Все запросы должны писаться внутри подобного блока кода:

    ```dataview
    TABLE|LIST|TASK <Поле1> [AS "Название столбца"], <Поле2>, ..., <Поле3> 
    FROM <Источник>
    WHERE <Выражение>
    SORT <Выражение> [ASC/DESC]
    ... другие команды
    ```

Книги с прогрессом чтения

  1. Данный кейс предназначен для составления своей базы данных книг и отслеживания прогресса чтения

  2. Код запроса выглядит так:

```dataview
TABLE WITHOUT ID 
	file.link AS "Книга",
	Прогресс_Бар AS "Прогресс",
	Автор,
	URL
FROM "Книги"
```
  1. Разбираем код построчно:

    1. TABLE WITHOUT ID - мы указали, что нам нужна таблица

    2. Далее перечисляем столбцы, которые нам нужны, первым столбцом будет ссылка на саму заметку (file.link), а называться этот столбец будет "Книга" (AS Книга)

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

    4. Затем Автор

    5. Затем URL

    6. Затем мы указываем откуда будут собираться и обрабатываться заметки из папки "Книги" (FROM "Книги"). Данный способ отбора заметок подходит для тех, кто хочет отобрать заметки из определённой папки => в вашем хранилище заметки должны быть рассортированы по папкам. В дальнейшем при добавленнии в указанную папку новой заметки она так же отобразится в получившейся таблице.

  2. Сами заметки должны лежать в папке "Книги" и содержать следующий набор параметров:

URL:: [LitRes](https://www.litres.ru/stiven-kovi/7-navykov-vysokoeffektivnyh-ludey-moschnye-instrumenty-razviti/)
Автор:: "Кови Стивен"
Прогресс_Бар:: <p> <progress max=100 value=90> </progress> 90% </p>
  1. Разбираем построчно:

    1. Название заметки - Оно отобразится в таблице первым

    2. URL - это ссылка на книгу

    3. Автор - Это автор книги в ковычках, т.к. есть пробел

    4. Прогресс_Бар - Тут мы задаём параметры прогресс бара, максимальное значение (progress max=100), текущее значение (value=90) и текстовое пояснение (90%)

  2. В конечном итоге получается вот такая таблица:

Проекты со счётчиком выполненных и не выполненных задач

  1. Данный кейс предназначен для отслеживания прогресса по проектам

  2. Код запроса выглядит вот так:

```dataview
TABLE WITHOUT ID 
	file.link AS Проект,
	Статус,
	(length(filter(file.tasks.completed, (t) => t = true))) / (length(file.tasks.text)) * 100 AS "% Завершено",
	(length(file.tasks.text)) AS Всего,
	(length(filter(file.tasks.completed, (t) => t = true))) AS Завершённых,
	(length(file.tasks.text)) - (length(filter(file.tasks.completed, (t) => t = true))) AS "Незавршенных"
FROM #проекты
```
  1. Разбираем код построчно:

    1. TABLE WITHOUT ID - мы указали, что нам нужна таблица

    2. Далее перечисляем столбцы, которые нам нужны, первым столбцом будет ссылка на саму заметку (file.link), а называться этот столбец будет "Проект" (AS Проект)

    3. Статус - это статус наших проектов (В процессе, Готово, Не приступал)

    4. Следующей строчкой мы вычисляем кол-во завершённых задач проекте и кол-во незавершённых задач, делим их друг на друга и получаем процент готовности проекта

    5. Данной строчкой мы считаем кол-во всех задач, т.е. берём размер массива file.tasks.text

    6. Этой строчкой мы считаем кол-во завершённых задач

    7. А этой строчкой мы вычитаем из общего кол-ва задач кол-во завершённых задач и таким образом получаем кол-во незавершённых задач

    8. Затем мы указываем откуда будут собираться и обрабатываться заметки. В данном случае будут отбираться все заметки с тегом #проекты (FROM #проекты). Данный способ отбора заметок подходит для тех, кто хочет отобрать заметки с определённым тего => в вашем хранилище заметкам должны быть присвоены соответствующе теги. В дальнейшем при добавленнии в хранилище новой заметки с указанным тегом она так же отобразится в получившейся таблице.

  2. Сами заметки должны содержать следующий набор параметров:

#проекты
Статус:: "Готово"

---
# ToDo:
- [x] Снять размеры с вытяжки
- [x] Нагуглить вытяжки
- [x] Купить вытяжку
- [x] Съездить за вытяжкой в магазин
- [x] Установить вытяжку
  1. Разбираем построчно:

    1. Тег #проекты - чтобы запрос отбирал нужную нам заметки

    2. Статус - чтобы он отображался в таблице. В дальнейшем этот статус можно будет менять в заметке и он будет меняться в таблице

    3. Затем разделитель (---) - для удобства

    4. И затем список задач - которые будут обрабатываться нашей таблицей

  2. В конечном итоге получаем вот такую таблицу:

Прогресс года, месяца, дня и всей жизни

  1. Данный кейс предназначен для наглядной визуализации прошедшего года\месяца\дня\жизни. Нужен этот блок для грусти о потерянном времени

  2. Код запроса выглядит побольше, вот так (в данном коде используется уже JavaScript). Отличается он первой строчкой dataview => dataviewjs

```dataviewjs
const today = DateTime.now()
const endOfYear = {
    year: today.year,
    month: 12,
    day: 31
}

const lifespan = { year: 80 } 
const birthday = DateTime.fromObject({
    year: 1990,
    month: 3,
    day: 11
});
const deathday = birthday.plus(lifespan)

function progress(type) {
    let value;
    
    switch(type) {
        case "lifespan": 
            value = (today.year - birthday.year) / lifespan.year * 100;
            break;
        case "year":
            value = today.month / 12 * 100
            break;
        case "month":
            value = today.day / today.daysInMonth * 100
            break;
        case "day":
            value = today.hour / 24 * 100
            break;
    }
    return `<progress value="${parseInt(value)}" max="100"></progress> | ${parseInt(value)} %`
}


dv.span(`
|  | Прогресс  | Процент |
| --- | --- |:---:|
| **Год** | ${progress("year")}
| **Месяц**| ${progress("month")}
| **День**| ${progress("day")}
| **Жизнь** | ${progress("lifespan")}
`)
```
  1. Разбираем код построчно:

    1. В первом блоке мы задаём константы текущего дня и конца года

    2. Во втором блоке мы задаём прогнозируемую продолжительность жизни (80 лет) и дату рождения

    3. Далее описываем функцию расчёта прогресса

    4. И в конце представляем всё это в виде произвольной markdown таблицы

  2. В конечном итоге получаем вот такую таблицу:

Фильмы в виде карточек

  1. Данный кейс предназначен для составлении своей библиотеки просмотренных или наоборот непросмотренных фильмов. Для реализации данного кейса необходимо сделать еще пару приготовительных действий:

    1. Сначала ставим тему Minimal, для этого идём в настройки => Оформление => Настроить

    2. Там выбираем тему Minimal

    3. Затем идём в сторонние плагины и устанавливаем и включаем плагин Minimal Theme Settings

    4. А затем так же устанавливаем плагин Sortable

  2. Код запроса выглядит вот так:

---
cssClasses: cards, cards-cover, cards-1-1, table-max, cards-cols-4
---

```dataview
TABLE WITHOUT ID 
	("![](" + Постер + ")") as Постер,
	file.link AS Название,
	Год,
	РейтингКП,
	URL
FROM "Фильмы"
```
  1. Разбираем построчно:

    1. Сначала мы присваиваем заметке кастомный css-класс, для этого отбиваем его сверху и снизу разделителями (---), а в между ними пишем cards, cards-cover, cards-1-1, table-max, cards-cols-4, это означает, что у нас будет таблица в виде карточек, карточки будут размером 1к1, таблица будет растянута на всю ширину заметки и фиксируем кол-во столбцов = 4

    2. Затем в блоке dataview мы опять задаём, что это будет таблица (TABLE WITHOUT ID )

    3. Затем вот такой строчкой (("![](" + Постер + ")") as Постер) мы говорим обработчику, что хотим выводить сам постер в виде картинки в таблице

    4. Затем опять название заметки

    5. Затем год фильмы

    6. Затем рейтинг кинопоиска

    7. Затем выводим ссылку на кинопоиск

    8. Всё это мы собираем из папки "Фильмы" (FROM "Фильмы")

  2. Сами заметки должны содержать следующий набор параметров:

Год:: 2003
РейтингКП:: 8.7
URL:: "[Кинопоиск](https://www.kinopoisk.ru/film/3498/)"
Постер:: "https://kinopoisk-ru.clstorage.net/N30iW1384/e515deON/2zI0YN6s508t2KHYsS6u_7YQb9WcfzvbzhmPOPlra6c20ffu3qRaZAQJo-WDAweGjJX5SdfmSPBis5fUXmnHbD_2FBHL6RZb6C10PEDu_jqzJI4VGWvvD0t9zunMvt5VxdN0zEmGOZaGC2Xxt0d2U1kADUiCU8zA4yem43291-vIU5VSn680az8ach9wPy7fZlK7xZ2-Lnivelnaa0qJ5yVh9D6bVHvkpSk0EiVWs5LrI69psdIegdcGtOBfS4VYifM08o7fBpqtOFJNMx2czWVQ-gQPLI5bTeoa6RpoiiVEcYa9yffYJCRZJ8Pnl3KCu6BsmxIzPMFmhOYQfDuH6kkB9lDufrQq7UigbmAeXU2WgRol7twNG-6467j669s1J4MEjBhnutWEaJVQBnVDsctDfQsBAs3AN4b0or9qp9gZ43bQ3M71GV6bYd5ArgwMxoG6lj69fVlvahtJenkoFHchBm3p98pVRml0IaZWIYLLEiwYEwIu0tTGRcGdSoY5yFE2ke7u52uNaoNPAKwNb0cha-YObg147FvZyDlo6vT08xT_OtaJJkfbFSHndNCR-xOfq-Hz3ZCm5abxLcq1ixqD9sLdj9f43iuCTED8jU-XM6v3nw18eax6CLtbSboll7BErsk0OjU2aLYxp1Ugg0rDThngYMzS10RGMJz5FTiJgjcynN6nCf34Uv8xrk8NBFLpJ9x83YotStvJW1lL9zQzlhyYZCqXFFtHkeR2EuCokG1asnH_kfeHxYAvaPb5qcN0oV3v9hnuK4BNcx6NbWTDynYsPi45PvnquMipSvUFYMRt-ffaZ7U7trA2tBMyifOvyIITLMHUVDSyfWmWWogBJrH_3ZTI_8vBjyOcbV_FQytnDo3dW-_LarppaStFNDNFThvmq9SG29RBhQZQINrCjfvR4D0T14WHIC9a9NgbQvXgj76GGv06IkzSnb9f1RF7dE2PDjjtK6s4aKq4NBdC5Y0LZqkmVUpVgNc0cRGJA6_r8rGP0AeGVoHfCWf6SgEH4o5tNlv-iNLcEe5tLpdzaWX9HP1JLWqb2evo-bRUwzZvyGS7F0bpxdBXNXBQe2Fv-oGx70FFVxagLxj1yBmiZGD9jqVJHWpCDNL_3byEEot1rz1eat0KuojJOhpGhuJGTUlUahcUCVax9heCcdlhf4ricg7C1YSmI91K5UnJA4Qh7a7l6S_6MB1g_q4vNnLZlvz-P5r8qCj5Gpm5FMcCRq8YhdqWpjj3k1REEiJ7YG0K4aPu0tf3J_KuypQaidBWgKxshwl_G9Od0R4PLUaS-pcuPf05P9oKSqk5SUcUUDaem_a4xsdqxWAndLIzmbCPC6ITDMBEx7bTH9mXy6sBdtEd7edabXhAbIMvHoy0M3g2Pg7ce30IGQsY2ugXVEJF7qjk-ndlGrUztCcx0vuyr4iB8s6CFGSV8-5bhStqsiYT_o1GyQ26Y56Djv7-dQJLBZ8938ie28vbe8rbhNWyBv97N8qVVrj1IcW2wjGKMB_pUrAfkPTllxJMy2Taq_J0ApzNFyj_udIM876c75fTy9VNLe1Z3GhZCHtbmcSkg4QNeQR6F3To56IWtyCR2DINmQMATnH3dAdRD3qEKZgQReK9nbbpfgpCz2GPHRxmcEinP13uCD6o2mnrucjXlQPkrNtUaacGy6Uj9CbR0xkzvOrh0Y2RJff18P741OhrMDTR_qzG-x1oAhyg_x5u52C4Vn0_34lcyvtJeNnL95dDB9zo5BnkZ_jWcrZG4IK60U9rYCJeUQbVhVGNS7XZGzP10g8_Zjm9KhD8MTxsLbahKlZvjr3L3PmIyKto2lWmQBT-KieploQZVfJUpzDA6DAcy8Mw_aJndGaC3opGG-nA19DPPkVpDUtz7KL-7nzn01g0Tv4euIxqS9jquvlm52PWf_t16zSna1cClydiwvnDraviknzDZTak8l5bdYprA-UBHP1X676LQj6gzYzdpMKpVYyOnKlemkn4OOjLRBRwJ33LJGjlF_kX0PZWMIPY4a8aEyPtMPU2lXMsW2fZenNHUe6uhgqvK5PNUIxOzWfjORbub35IvWmaajnLKYUVcaeuSwQLlZYIx6KGJBHxC7BfyiHQXTAVteVCTNpG6WozpuCuH2UZX2pQ3zLNHu1XEwmVrQyMGd44C4g5iUl05sMlfOpni7aFGSUB93cA0rliTZuT4c8gtZZ2o-5aliirYSaD3g5E6d8aMH7yHO8f5iBLxR5v3etPemvai5n615eiZcx6NguGtxkUIDVVUuPYAE-rsCJuYjbX5PBea6VZiAAUEQ7dVgqOanF-wo3O_7aBmncMr98ZXChImtq5O_bE88WtGgf49Aa61_O1JQPDiUK_moCz3KH3VAYQX9sFaHsDdKCvjYYYvfiR_mId_MylMntmP0yNSW7paMq5KXpmttPXfTomKTSWmceT9tUC89kAHXuxw33C1IQ3cv0K9ipKMCYzHy0War9KkPwyDgxNZXGIR-6cL4mOudvYaxgp9tWzJ9355KpmZlr0MHc3E-FZ4qzYEcPPMJb3J8JNeLbqS_OWoc8vNMvviCFNQ8wevbcBG-b-TD9Z3utLiWhbG-U04aQ-eFb7FSUJNIHGVaPTGdBcOOOyfcN0RlXibRuGKqtD5_KOf9drHRjyLgGt3gzH44l0fh5uWLx5y4kbafp3dINWrxvWCbR0aWVgNXeCIsnA3LuisS5S52Y3gcxZtUmpQAXhb-9WKJ6oAK5jnn-cpJN6p_0-3-veK2nLe1iIdBYCVp_6teqElVtFMhe3MlG7Us8KguINsweG9WMOa-RZe-E0YL-91JscGJF8Yn2uXuRxOUZePs5ZLtiJaOlJ6AUXUya_yfRKBlYq12HkxIHRCQCt-bAwTxFG9rbh_GiGC5tjZdF8PUcqr7phTvI8_z_kgzmULB9tOWyoiZoZycpHd1AGfvlk2mW3SKVgJIYTkNvCLOjTgT1ipvRX0"
  1. В конечном итоге получается вот такая таблица, которую можно на лету сортировать по любому из полей (благодаря плагину Sortable):

Заключение

Надеюсь я смог раскрыть маленькую частичку функционала плагина Dataview.
Возможно разобранные кейсы смогут кого-то вдохновить.

Не успев опубликовать эту статью, уже начал набрасывать статью про задачи в том же плагине Dataview, которые использую активно уже более года и к данному моменту создал уже более 6 тысяч задач себе.

А разбирать каждый кейс будем под катом.

Комментарии (24)


  1. ipgroy
    13.01.2023 05:50

    А куда код вставлять?


    1. CyberMock Автор
      13.01.2023 08:02

      В тело заметки, куда хотите поместить таблицу.

      Вот так

      Это одна и та же заметка, при редактировании она отображается кодом, а когда переключаешь вид на "Просмотр", то она сразу обрабатывается как таблица.


      1. ipgroy
        13.01.2023 21:43

        Я очень туплю, но я вставил код в заметку и ничего не произошло.(Применял и режим редактирование и режим просмотра.


        1. CyberMock Автор
          13.01.2023 23:30

          Не стесняйтесь, всё ок. Не все люди родились со знанием синтаксиса Dataview. Я помогу разобраться.

          Строчка в коде "FROM "Книги"" - это команда взять все заметки из папки "Книги".

          А на вашем скриншоте не видно папки "Книги".

          Так что код по сути отрабатывает всё верно, он показывает вам ничего, т.к. папки у вас нет папки книги.

          Попробуйте вот такой код:

          ```dataview
          TABLE WITHOUT ID 
          	file.link AS "Книга",
          FROM "Dictionary"
          ```

          Это заработает, если в корне папки Dictionary у вас лежат заметки.

          Либо можно сделать иначе, вместо "FROM "Dictionary"" написать "FROM #Заметки"

          А в те заметки, которые вы хотите вывести в таблицу добавить в любое место строчку #Заметки

          Либо можно создать папку Книги и а внутри папки создать несколько заметок и тогда они должны отобразиться в таблице.

          Так же, чтобы в таблице отображались параметры из заметок они должны содержаться в самих заметках.

          Т.е. если нужно показывать прогресс бар, то в самой заметке книги должен быть параметр:

          Прогресс_Бар:: <p> <progress max=100 value=90> </progress> 90% </p>

          Этот параметр можно вставить в любую строчку в любое место заметки.

          В конечном итоге у вас должна быть одна заметка с таблицей, и несколько заметок лежать либо в папке, либо с определённым тегом.

          Надеюсь скриншот не слишком шакальный получился


          1. ipgroy
            14.01.2023 00:12

            Спасибо, разобрался) Извиняюсь еще раз, что пришолось мне вот так разжевывать.


  1. Aquahawk
    13.01.2023 08:27
    +5

    DataView не уверен что мне есть куда применить, но Obsidian вещь божественная. Мощь обсидиана стоит на двух китах: это просто файлы и он есть на компе и на мобиле. Я настроил себе примерно в апреле комбинацию Obsidian, Syncthing, Git. Я поклал на все zettelkasten принципы и стал просто писать заметки. Сейчам у меня их порядка 600, и это супер удобно. Но я пришёл к системе без тегов, когда название это по сути и есть набор тегов и линкую сразу заметки друг на друга. Syncthing синкает между 4 моими компьютерами, телефоном и сервером. На сервере периодически всё жто коммитится в гит, что исключает возможность потери. Это невероятно забустило ведение кучи дел одновременно, я просто включаю страницу с определённой проблемой и там уже всё вписано и можно продолжать работать. Можно дописать вметро или поезде. И всё это без грёбаных облаков, доступно без связи и досинкается как связь появится.


    1. CyberMock Автор
      13.01.2023 13:30

      Не могли бы вы подробнее рассказать про ваш сценарий использования? Как часто вы пишите с разных устройств и какой интервал между смены устройств? SyncThing успевала всё засинкать? Конфликтов не возникало? Если конфликты были - как решали проблему?
      У меня не получилось юзать SyncThing из-за постоянных конфликтов в синхронизации, в конце дня заходишь, а у тебя +5 одинаковых заметок с "sync.conflict"
      Я в итоге нашёл способ оплатить синхронизацию через сам обсидиан, она там что-то в районе 2$\мес стоит


      1. Aquahawk
        13.01.2023 20:03
        +3

        Да конфликты лезут иногда, вообще не смущает, как правило они тупые и один тупо больше чем другой, удаляю лишку, сливать руками ни разу не приходилось. Более того у меня есть плагин который ставит дату создания в табличку в начале каждой заметки, чую из за неё, и того как обсидиан создаёт файлы иногда появляются untitled.md которые лезут в конфликты. Меня это не сильно пугает, может, потому что я программист и часто делаю ревью и всякие мержи с конфликтами не пугают меня, я уверен что ничего не потерялось, а это самое главное. Я понимаю что редактирование с разных мест всегда будет вызывать конфликты, ничего страшного, авторезолва я боюсь больше чем ручного удаления ненужного. Плюс настройка синхронизации syncthing у меня через свой сервер прямо по ip в настройка в обход всех синфинковских сервисов, причём строго звездой, все устройства знают только про сервер, сервер знает про всех. А на мобиле у меня рутованый самсунг на котором отрублены все энергосберегайки, в итоге фоновые процессы разных утилит типа macrodroid, syncthing и прочих не оптимизируются и всё работает очень быстро, в худшем случае это десятки секунд, в лучшем секунды. Это приводит к тому что батареи хватает примерно на 6 часов в моём стиле жизни. К нему сделан чехол с магнитным креплением для powerbank с беспроводной зарядкой и это решает проблему батареи. По факту использования с мобилы удобнее записать что-то небольшое, иногда с мобилы накидываю, потом на компьютере обрабатываю. Я часто думаю о чём-то в поездках или за едой. Возможность записать так чтобы не потерялось важна. По сути у меня два настольника это полноценные рабочие станции и телефон, ноутбуки так, в переговорке потрындеть. Ну и вот прихожу я с ноутом в переговорку, а у меня всё синкануто, тема разговора, все дела, поговорил, записал, закрыл ноут. Пока шел до десктопа всё синканулось. Еще отдельно в syncthing у меня документы засунуты и книги всякие и pdf. Вообще pdf я бы запихивал в obsidian, если бы они позволяли оставлять на них просто ссылки а не предлагали просмотр убогим просмотрщиком который нельзя ни отключить ни открыть в другой программе(с телефона точно). Недавно впервые за 10 лет на домашнем компе с нуля поставил ОС и так кайфанул что просто зашел на серверный syncthing выбрал новый десктоп, протыкал галочки и херак всё приехало, и музыка и фотки и документы и обсидиан. Надо сказать что у меня серверная сторона syncthig ещё и доступна как виндовая шара, и на ноуты и телефон я тяжелые папки не синкаю, но могу на них зайти через свой vpn, благо на андроиде шара доступна через total commander. Ещё иногда использую технику пустой головы, это когда нет идей и надо что-будь придумать я начинаю выписывать все появляющиеся идеи, ключевым является выписать строго всё, ятобы быть уверенным что не забудешь и не надо держать идеи в голове, голова не любит пустоты и начинает генрить новые, типа у меня ещё есть варианты, вот важно мгновенно выписать, поставить внутри себя галочку что всё учтено и дальше сидеть с пустой головой, опять генерится новое. И тут важна возмодность записатьв любой момент. Смотрю ютуб, пришла мысль, записал. Работаю, что-то вспомнил -записал. Раньше использовал почту или мессенджер с собой, но там хуже всё с организацией.


        1. ipgroy
          13.01.2023 23:14

          А что за плагин по добавлению дат заметкам?


          1. Aquahawk
            13.01.2023 23:19

            https://github.com/SilentVoid13/Templater

            в нём дата вставляется, а табличка отображается при помощи

            https://github.com/arnau/obsidian-metatable


            1. ipgroy
              14.01.2023 00:10

              Cпасибо!


        1. CyberMock Автор
          13.01.2023 23:45

          Вообще pdf я бы запихивал в obsidian, если бы они позволяли оставлять на них просто ссылки а не предлагали просмотр убогим просмотрщиком который нельзя ни отключить ни открыть в другой программе

          Попробуйте удалять восклицательный знак перед ссылкой на вставленный PDF-файл, то он будет просто висеть ссылкой на файл, без превью. Возможно это то, что вас устроит.

          Как-то так и в телефоне и на компе можно

          Зелёным выделено то как будет если удалить ! из начала ссылки

          Красным - то что надо удалить

          Плюс затем если кликнуть по зелёной ссылке, а затем три точки и открыть в приложении по умолчанию, то прекрасно всё откроется в приложении по умолчанию

          В телефоне по клике на зелёную ссылку можно сделать так и там выбрать любое приложение PDF-смотрелку:

          Плюс настройка синхронизации syncthing у меня через свой сервер прямо по ip в настройка в обход всех синфинковских сервисов

          Возможно у меня задержки и конфликты в файлах были из-за того, что настройка была через их серверы, надо будет затестить через свой ip, спасибо за развёрнутый ответ.

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

          Недавно нашёл бота, которому пишешь в телегу что-то, а он записывает всё в обсидиан.
          И понял, что это именно то, что позволяет быстро записать что-то. Никогда раньше не был так рад такому простому инструменту. Бот при этом поднимается локально на виндовом компе, на котором стоит обсидиан или располагается его база. Создаётся группа с ботом, в которую можно кидать картинки, ссылки и т.д., а бот по сути просто добавляет всё то, что ему прислали в файл заметки.

          Спасибо еще раз за такой развёрнутый ответ. Syncthing - действительно очень крутая и мощная штука, сам её юзаю по похожему сценарию


          1. Aquahawk
            13.01.2023 23:50

            за share спасибо, реально работает. И ссылка без ! работает, посмотрю как оно будет. Но вообще у меня уже много пдф в другом виде организованы. Ещё бы поиск полнотекстовый по pdf прикрутить, но пока не знаю удобного ничего


            1. CyberMock Автор
              13.01.2023 23:57

              Тут есть что-то подобное, но там костыль с доставанием из PDF и экспорт в markdown


    1. anone18236
      14.01.2023 00:04

      Спасибо большое за комментарий. Меня в notion больше всего и пугает, что без интернета он не работает. Теперь есть чем заняться на выходных :)


  1. kamm
    13.01.2023 11:59

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


    1. CyberMock Автор
      13.01.2023 13:38

      Меня привлёк ноушн в том числе за гибкую настройку всего и вся, в частности там можно было сделать таблицу с бесконечной вложенностью. На тот момент когда я увидел такую возможность я был в восторге, хоть и не понимал как это можно было использовать, но понимал, что если найти этому применение, то должно получиться что-то очень удобное. В итоге после третьего подхода к ноушну я вкурил как всё там устроено и перешёл на него, но в феврале посмотрев сколько всего у меня там и сколько всего я могу потерять за 2 секунды, я понял, что надо мигрировать. А когда открыл для себя плагин Dataview для Обсидиана, то окончательно понял, что вот же он, ноушн, только у себя на компе, все данные пренадлежат тебе. Ну да ноушн побольше юзер-френдли, но я как-то приловчился. Мало того ноушн к тому моменту разросся так, что очень долго открывался, поиск лагал и т.д. На данный момент в обсидиане у меня создано 1825 страниц, 6700 задач и всё летает.


  1. LAG_LAGbI4
    13.01.2023 14:14

    Читаю восторженные отзывы об обсидиане и чувствую себя дебилом.

    Мне вообще не понравился интерфейс обсидиана, что в телефоне, что на компе. Геотегов нет. Веб клипера нет. Интерфейс перегружен какой-то ненужной шляпой. Короче, я остался на еверноуте. Он тоже плох, но хотя бы привычен.


    1. grizzly_8
      13.01.2023 14:31

      Веб клипера нет.

      Есть аддоны для FireFox и Chrome.


    1. CyberMock Автор
      13.01.2023 17:20

      Веб клипера нет.

      Obsidian Clipper
      Markdown Download

      Геотегов нет.

      Опишите кратко ваш сценарий использования геотегов?

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

      Интерфейс перегружен какой-то ненужной шляпой. 

      ЧЯДНТ?

      Интерфейс обычный, полностью настраиваемый.

      Графами и ментальными картами не обязательно пользоваться, то что куча людей используют обсидиан из-за графов - совершенно не означает, что он используется только ради них

      А вообще, чего это я...

      Каждому своё, кто что хочет то и использует, хорошо, что разным людям нравятся разные программы, иначе бы не было такого разнообразия людей и программ


    1. Aquahawk
      13.01.2023 19:42

      Я выше писал насколько меня штырит обсидиан, и моё мнение: лучшее дерьмо на свете! Есть очень много чего что мне не нравится в обсидиане, я даже тему сам поправил, благо css и вот это всё. Но та бесшовность с мобилой и компом и полный котнтроль того, что это на моём сервере плюс навёрнутый сверху гит, и я доволен.


  1. sirri
    13.01.2023 23:31

    Спасибо за статью! Очень полезная инфа. Стало понятнее, как с этим плагином работать. Читаю справку по нему, и, судя по всему, плагин очень мощный. Отличная вещь для анализа информации в заметках, если приучить себя проставлять в них метаданные.


    1. CyberMock Автор
      13.01.2023 23:52

      Советую еще посмотреть плагины Templatter и QuickAdd.

      Первый позволяет сделать шаблоны и гибко их настроить.

      Второй позволяет настроить хоткеи (и даже макросы) с помощью которых можно быстро присвоить нужные теги или параметры, если ранее этого не было сделано. Т.е. например можно забиндить хоткей добавить такой-то тег в заметку и просто выделять в обсидиане заметку, нажимать хоткей и так 100500 раз.


  1. grims
    15.01.2023 12:12

    В картотеке фильмов меня пугает только ссылка на постер, нельзя ли ее как-то укоротить, а так если честно, то я даже не совсем понял как ее найти (взять) с кинопоиска, например для другого фильма.

    Страшная картинка