iPhone3G-5sまでアップル漬け。
それ以降Android所有。
Googleを信用せずマイクロソフトを信じてる人。
古いiPhoneのバックアップデータ(10年前~4年くらい前)をiBackupbotで読み取り、SafariブックマークをHTMLに書き出す。
iPhoneを定期的に初期化し清潔を保っていたため毎度UUIDが変わるためバックアップもちらかっていた。
およそ20個ほどのUUIDから20個のHTMLを作成。この時点で奇人。
PC上のとっちらかってるエクスポートブックマーク.htmlをEverythingで30個ほど見つける。
Edge, Firefox, Chrome, Ironの最新ブックマークをHTMLに書き出す。
type *.html > merge.txt
で適当に連結。12万行になる。
テキストエディタで掃除、整理整頓、ソート、フォルダ削除。簡易的な重複削除。1万行。
JavascriptでURLが全く同じであれば重複削除。5000行まで圧縮。
10年間で5000ブックマーク。暇人すぎる。
閑話休題。
目標1は
・フォルダ構造をぶっ壊してしまったため機会的にフォルダ分けして動作を軽くしなければならない。
・サブドメインを含めないドメイン名主体で整理。
・互換性のあるフォーマットでHTML出力。
ブックマークバー/アーカイブ/ドメイン頭文字/ドメイン/固有のブックマークという構造
(例)
ブックマークバー/アーカイブ/a/apple.com/<a href="https://music.apple.com">Apple Music</a>
目標2は
フェッチAPIでDNS解決可否、サーバからお返事があるのか聴く。
なければ
ブックマークバー/インターネット・アーカイブ/a/apple.com/<a href="https://web.archive.org/web/*/https://music.apple.com">[IA] Apple Music</a>
のリンクに差し替える。
(フェッチAPIが有用なのかはわからないけれど)
目標は今月末まで。
ざっと調べた限りでは
Location, URLインターフェイス他ネイティブで用意されているパーツも使えそうであるがサブドメインやら扱うのが難しい。
正規表現でやってみようと思ったが汚くなるのでやめた。
document.querySelectorAll("a")[50].hostname;
"foo.bar.com"
見立てでは初心者でもかんたんで少量の記述量で済むjQuery, URI.jsに頼って書くが楽そうだ。
プログラミングに関することも書いておかないと規約上いけませんので
let uri = new URI("http://abcd.efgh.example.org/foo/hello.html");
uri.subdomain();
"abcd.efgh"
uri.domain();
"example.org"
uri.tld();
"org"
uri.domain()[0];
"e"
JR東海のポスターのごとく「ラクだ!」
プロなら30分の仕事かもしれない。
URI.js - https://medialize.github.io/URI.js/docs.html
目標1達成
ブックマークのHTMLフォーマットが厄介で悪戦苦闘