Дополнение Obsidian. Modal Form

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

Репозиторий: GitHub - danielo515/obsidian-modal-form: Define forms for filling data that you will be able to open from anywhere you can run JS

Документация: Obsidian Modal Form docs

Рекомендации по настройке шаблонов:

Для переименования заметки по данным из формы можно воспользоваться конструкцией (удалить в начале / перед использованием):

/<% await tp.file.rename( "" + result.Name ) %>

Перенести заметку в выбранную папку (удалить в начале / перед использованием):

/<% await tp.file.move(result.FolderPatch + "/" + result.Name); %>

Или в конкретную (удалить в начале / перед использованием):

/<% await tp.file.move("Заметки/" + result.Name); %>

Задание значений по умолчанию:

  // Задаем значения по умолчанию
  const values = {
    type: "docker",
    aliases: "",
    tags: ""
};
  const modalForm = app.plugins.plugins.modalforms.api;
  // Передаем значения в параметры формы
  const result = await modalForm.openForm("<FormName>", { values: values });
  // Вставка начала блока свойств если надо
  tR += "---\n"
  tR += result.asFrontmatterString({ pick: [
          "type",
          "aliases",
          "tags"
] 	});
Attention

В итоговые свойства заметки попадают только заполненные данные формы указанные в блоке получения свойств asFrontmatterString.

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

Больше примеров в шаблонах с именем Modal Form.

Bug

Странный баг, при вызове формы на телефоне форма открывается одновременно и на компе с которым включен Live Sync

Альтернативные варианты: