Imported from injurka/obsidian-mark (
Personal Note/Travel/.agents/skills/travel-itinerary-enricher/SKILL.md). Install upstream withnpx skills add injurka/obsidian-mark --skill travel-itinerary-enricher. Copyright stays with the author.
✍️ Travel Itinerary Enricher: Обогащение и Оформление Дневных Заметок
Создавай выполнимый день, а не максимально плотный каталог. Сначала проверяй географию, часы работы, длительность переездов, сезонность и необходимость бронирования; затем добавляй оформление.
Семантическая проверка
- Сохраняй порядок городов и ключевые активности пользователя.
- Закладывай дорогу от двери до двери, очереди, питание, заселение и запас перед билетными событиями.
- Не заполняй каждый промежуток: оставляй блоки для отдыха и спонтанности.
- Проверяй времязависимые факты на даты поездки и сохраняй источник с датой.
- Карта точки не доказывает существование маршрута между точками.
🎨 1. Анатомия Эталонного Дневного Файла
Каждый дневной файл строится из 5 обязательных слоев с четким правилом позиционирования коллаутов:
# 🗓️ День DD: ДеньНедели (🌴 Отпуск / 💻 Воркейшн / 🐢 Уикенд)
> **Локация:** <Цепочка локаций через стрелочки ➔>.
> **Фаза тура:** <Описание фазы, хайлайты дня>.
> **Проживание:** <Отель, цена за ночь в ₽, номер ночи в городе>.
> **Ключевой хайлайт:** <1-2 ярких предложения о главном впечатлении дня>.
---
## Важная подготовка и городская / скоростная логистика
> [!IMPORTANT] Билеты, карточки, правила входа, тайминг переезда
> * **Какой поезд / транспорт:** <Название, номер поезда, время в пути, стоимость>.
> * **Как бронировать:** <Сайт/приложение, сроки, способ валидации>.
> * **Где сидеть:** <Панорамная сторона, отсеки для чемоданов>.
> [!CAUTION] Критические запреты, штрафы, безопасность
> ...
---
## Маршрут
### Часть 1: <Название блока>
* **HH:MM - HH:MM** — <Название локации (Англ / Местный язык)>:
* *Контекст*: <Историческая и культурная справка, почему это место уникально>.
* *Маршрут и навигация*: <Откуда выйти, какой номер выхода метро, пересадки>.
* *Ключевые точки и хайлайты:*
1. **<Точка 1>**: <Что посмотреть внутри>.
2. 🎁 **Попутный ритуал:** <Специфический гастрономический или культурный опыт, например, чайное яйцо в 7-11 или заказ пудинга>.
* _Ссылка на локацию_: [Google Maps: Название](https://maps.google.com/?q=Запрос)<iframe src="https://maps.google.com/maps?q=Запрос&output=embed" style="width: 100%; min-width: 100%; height: 350px; display: block; border: 0; border-radius: 8px; margin-top: 10px; margin-bottom: 15px;" loading="lazy"></iframe>
> [!TIP] Практический совет / Лайфхак к этой активности
> Секретный ракурс, обход очереди, формула заказа, защита от насекомых, лучшая терраса или действие при усталости.
> [!INFO]- Картинки
> ![[Имя_картинки.jpg]]
> ![[Pasted image YYYYMMDDHHMMSS.png]]
---
## 💰 Финансовые затраты на день
* <Транспорт>: `~XXX ₽`.
* <Билеты / Активности>: `~XXX ₽`.
* <Питание / Ночной рынок>: `~XXX ₽`.
* **Итого за день (без отеля):** около `~X XXX ₽`.
[!IMPORTANT] 📌 Правило позиционирования Callouts и оформление активностей:
- В блоке «Важная подготовка» размещаются только глобальные системные правила дня:
[!IMPORTANT](билеты, тайминги, логистика переезда, бронь отеля) и[!CAUTION]/[!WARNING](таможня, строгие запреты, безопасность на побережье).- Коллауты
[!TIP]размещаются строго контекстно ПОД АКТИВНОСТЬЮ — прямо под пунктом маршрута, смотровой, рестораном или хайкингом, к которому относится совет (очередь в кафе, правильный ракурс, упаковка рюкзака, выбор столика, формула заказа блюда).- Длина строки активности строго <= 80 символов: Вся строка активности (таймкод, тире, название и двоеточие) обязана быть не длиннее 80 символов. Все подробности, китайские иероглифы, маршруты и списки декомпозируются и выносятся в блок описания (
* ...).- Синтаксис без точек и без пустых блоков: По STYLE-стандарту заголовок оканчивается двоеточием
:, а содержательные строки описания имеют 4-пробельный отступ (* ...). Совместимость подтверждай актуальным CLI, поскольку это не полностью совпадает с допустимым regex парсера.- Бесшовная логистика (No Teleportation): Запрещено создавать разрывы между удаленными точками (> 1.5 км). Каждое перемещение между ними оформляется отдельной активностью с собственным таймкодом и видом транспорта (
* **HH:MM - HH:MM** — Трансфер к ...:). Не объединяйте его в одном заголовке или временном слоте с кофе, завтраком, едой, чек-аутом, заселением, сдачей багажа, арендой транспорта, душем либо осмотром места — даже если действия идут подряд. Для соседних точек в пределах 1.5 км допустима первая строка активности*Трансфер:* пешком ....- Обязательное замыкание дня (Return to Hotel): Если вечерний слот проходит вне отеля (ночной рынок, ресторан, набережная), день ОБЯЗАН завершаться активностью возвращения в отель и отдыха/сна (
* **23:45 - 00:15** — Возвращение в отель и отдых:). Запрещено обрывать день на ночном рынке без шага возврата.
🛠️ 2. Стандарты Интерактивных Элементов
А. Встраивание Карт Google Maps
Добавляй iframe, когда он помогает ориентированию. Для второстепенной точки достаточна Markdown-ссылка; не дублируй карту ради декоративной полноты. Для каждой ключевой остановки, отеля, вокзала или рынка генерируется связка:
- Текстовая ссылка на Google Maps.
- Встроенный responsive iframe (350px, border-radius 8px, lazy loading):
* _Ссылка на локацию_: [Google Maps: Taipei 101](https://maps.google.com/?q=Taipei+101)<iframe src="https://maps.google.com/maps?q=Taipei+101&output=embed" style="width: 100%; min-width: 100%; height: 350px; display: block; border: 0; border-radius: 8px; margin-top: 10px; margin-bottom: 15px;" loading="lazy"></iframe>
Б. Сворачиваемая Галерея Изображений
Картинки оборачиваются в свернутый callout [!INFO]- Картинки, чтобы не перегружать чтение текста:
> [!INFO]- Картинки
> ![[01_dihua_street.jpg]]
> ![[Pasted image 20260825142540.png]]
В. Бейджи Рейтингов в Заметках (01 - Заметки)
Для списков Must-See мест используются кастомные HTML-бейджи:
- <span class="tp-rate r-top"><b class="tp-score">9.7</b><span class="tp-tag">MUST</span></span> **Название локации:** Описание...