HN公開: Markwhen、タイムラインのためのMarkdown
(markwhen.com)- Markwhenは、時間に沿って発生するログ、予定、ノート、ToDoをプレーンテキストで記録し、タイムラインやカレンダーのように閲覧できるようにするMarkdown風言語
- 文法は単一の日付と日付範囲だけでなく、複数の日付形式、グループ、タグ、チェックリスト、リンク、タイムゾーン、繰り返し予定、frontmatter、属性をサポート
- 同じ入力をJSON、Timeline、Calendar、Oneviewで確認でき、人が読む記録と機械が処理するデータの間を行き来できる
- JSON出力にはイベントツリー、ISO日付範囲、タグ、補足テキスト、パーサーバージョン
1.0.1などが含まれ、パース結果を直接確認できる - 併せて提供される Meridiem は、共同編集、ユーザー定義コマンド、スニペット、可視化、自動補完、イベントハイライトを備えたMarkwhen/Markdownエディタ
Markwhenが扱う時間ベースの記録
- Markwhen は、時間ベースの項目をプレーンテキストで記述するための Markdown風ジャーナル言語
- ログ、ガントチャート、ブログ、フィード、ノート、ジャーナル、日記、ToDo、タイムライン、カレンダーのような形式を対象とする
-
入力構文
- 日付表現:
2025-04-09: Single date,2025-01-22 / 2026-10-24: Date range,Dec 1 2025のように単一日付・範囲・複数の日付形式を使える - グループ:
group Part oneとendGroupで Christmas Eve、Christmas のような項目をまとめる - タグ:
#holiday,#haloweenのようなタグをイベントに付ける - チェックリスト: 年ごとのToDoを
- [x],- []形式で記述する - リンク: Google、DuckDuckGo、Bing のリンクをチェックリスト項目に入れられる
- タイムゾーン:
timezone: America/New_Yorkを指定したうえで2025-01-01 12:00のような時刻を書く - 繰り返し予定:
every year for 10 years,every 60 minutes x12のような表現を使う - frontmatterと属性:
title,description,leader,attendeesなどの値を含められる
- 日付表現:
-
出力とパース結果
- 出力タブは JSON、Timeline、Calendar、Oneview で構成される
- JSONの例にはイベントの
firstLine,properties,textRanges,dateRangeIso,tags,supplemental,matchedListItemsなどが含まれる - JSONの例では
parser.versionが1.0.1と表示され、タイムゾーンを指定していない場合はtimezoneヘッダーの指定を推奨する警告メッセージも含まれる
エディタと関連リソース
- Meridiem は、MarkwhenとMarkdownのための エディタ
- 共同編集、ユーザー定義コマンド、スニペット、ユーザー定義可視化、自動補完、イベントハイライトなどをサポート
- ダウンロードリンクは
Download v1.0.12 2026-07-01と表示される
- Remark.ing は、Markwhenで書かれた各項目を tweet-like remark として扱う方式
- 例として
meridiem.markwhen.com/bella/recipes.rawとremark.ing/bella/recipesが提供されている - 始めるにはMeridiemにログインするよう案内するリンクがある
- 例として
- 開発および利用リソースも併せて提供される
- GitHubリポジトリには landing site、一般的なイシュー追跡、Obsidian Plugin、Markwhen CLI、Timeline、Parser、VS Code Extension、View client library、Calendar、C2、Resume が列挙されている
1件のコメント
Hacker News のコメント
開発者です。markwhenを気に入ってもらえてうれしいです。数年前から取り組んでいて、最初は別のコメントでも触れられている cheeaun の人生タイムラインに着想を得ました。
現在は VS Code 拡張、Obsidian プラグイン、CLI ツール、Meridiem の Web エディタとして提供しています。
最近は Stackblitz の bolt.new をフォークした Dial を作りました。ブラウザ内で既存の markwhen の可視化(タイムラインやカレンダー)を編集したり、自分で作成したりできます。昨日公開したばかりでまだ荒削りですが、大きく拡張していく予定です。
また、各項目に
key: value形式のイベント属性を付けられるようにしました。将来的には iCal との相互運用性を念頭に、参加者や Google Calendar ID のようなメタデータを入れられるようにしたいと考えています。remark.ing はまだかなり未完成ですが、Twitter/Bluesky/Mastodon に似た統合型ブログサイトで、markwhen を使うと各項目が投稿になります。未来の日付を付ければ投稿予約になり、ブログ全体を1つのファイルに収められます。
開発は Obsidian プラグインで行い、配布は静的 HTML にしました。
さらに、デスクトップアプリではまだログイン方法も見つけられていません。
オープンソースとして公開する予定があるのか気になります。GitHub では見つけられませんでした。
このプロジェクトを見ると cheeaun のプロジェクトを思い出します。シンプルなテキストベースの形式で視覚的なタイムラインを作れるようにし、人生の出来事を視覚的に配置することを目的にしたものでした。
https://github.com/cheeaun/life
リポジトリのサンプルファイルはこんな感じです:
@USERNAME's life,24/02/1955 Born,~1968 Summer job,03/1976 Built a computer,01/04/1976 Started a company,04/1976-2011 Whole bunch of interesting eventsMermaid も十分新しいバージョンならタイムラインをサポートしています: https://mermaid.js.org/syntax/timeline.html
Mermaid は GitLab/GitHub や複数の Markdown エディタで、コードブロック内に入れて使えます。
かなり良いですね。私は帆船向けの半自動電子航海日誌システムを作っている開発者です: https://bergie.iki.fi/blog/electronic-logbook/
今は人間にも機械にも読みやすいファイル形式が欲しくて YAML を使っています。Markwhen も相性が良いかもしれず、少なくともエクスポート形式として検討する価値はあります。
ただ、私の項目には風速、船の座標、気圧計の値のような属性がたくさんあります。従来の船舶の航海日誌はこうしたものを記録するために表形式で書かれていたので、Markwhen でやるとかなりごちゃごちゃするかもしれません。
現在の形式で1日分の航海日誌を書いた例はこちらです: https://github.com/meri-imperiumi/log/blob/main/_data/logboo...
こうしたデータは、ビルジポンプの状態や乗員別の航海距離といった分析にも使っています。
注意が必要。Gruber は「Markdown」に対する商標権を持っていて、人々がその名前を使うのを好まないようだ
https://blog.codinghorror.com/standard-markdown-is-now-commo...
Gruber が「商標権」に触れたのは見たことがない気がする。要点は、自分のプロジェクト名を非倫理的に持っていかれたことにあったようだ。誰かがオープンソースプロジェクトの名前を持ち去って、公式であるかのように見せるのに似ている。商標権侵害ではないかもしれないが、良いことでも倫理的なことでもない
「standard」という単語を使えなくなると、すぐに「技術的には守りつつ、どう続けるか」を考え、Standard にできるだけ近い単語を選んで、事実上の決定版であるかのようにほのめかした
自分ならその状況では怒ったと思う。名前を「Atwood Flavoured Markdown」にしていれば問題なかっただろうが、Joel は Markdown の定義を所有したがっていた
技術企業の CEO たちが集まって、他人のアイデアを、本人に問題ないか尋ねもせず持っていくことにしたようなもので、実際には John をプロジェクトから排除すること自体が目的だった
そうすることはできるが、その人が作った名前まで使い続けることはできない
またしても Emacs Org mode を再実装しているのか。よくできている
見た目は素晴らしいが、正直なところ Markdown は文書用のマークアップ言語だ。Org mode は表面的な範囲は似ていても、実際にはデータの保存・交換形式に近い。Org mode の周辺に積み上がっているデータ操作やクエリ機能を Markdown で再現するのは難しそうだ
肝心なのは、VS Code のような使いやすいエディタのサポート、場合によっては専用エディタまでがさらに良くなることにありそうだ
Org-mode ユーザーとこうしたツールは、蛾と火のように引き寄せられているようだ。Org-mode 自体もかなりニッチなソフトウェアのパッケージなのに、その上で作られたパッケージの数にはいつも驚かされる
MediaWiki も似ている。Wiki システムは好きだが、WikiText は本当にいまいちだ
これがファンタジーのタイムラインにも使えるのか気になる
title: History of the World,0: Foo Calendar's civilization founding.,124: Invention of the Foo Calendar,220: Founding of Bar,1310: Invention of GlooblyGock,5621: Demon invasion.のようなタイムラインを作りたかった自分で試してみたところ、この用途には合わないようだ
コメントが空だと変に見えそうなので残しておく。特に言うことは多くないが、本当に良さそうで、いつか使う口実ができるといいなと思う
自分のように知らなかった人のために書いておくと、これは Obsidian プラグインとしても使える: https://obsidian.md/plugins?search=markw
見た目の要素をここから少し取り入れられないだろうか? https://www.chronoflotimeline.com/timeline/shared/3118/Home-...