nDiki : URL

URL - Uniform Resource Locator

URI escape (Perl)

によると

 $str =~ s/(\W)/'%' . unpack('H2', $1)/eg;

 $str =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;

がはやいそうです。

application/x-www-form-urlencoded でのエンコード (Perl)

同じく

によれば、

 $str =~ s/([^\w ])/'%' . unpack('H2', $1)/eg;
 $str =~ tr/ /+/;

 $str =~ tr/+/ /;
 $str =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;

がはやいそうです。

RFC

  • RFC1738 - Uniform Resource Locators (URL).
  • RFC1808 - Relative Uniform Resource Locators.
  • RFC2368 - The mailto URL scheme.
  • RFC2396 - Uniform Resource Identifiers (URI): Generic Syntax.

関連情報

2021年6月14日 (月)

Google ドライブに同期して共有する Markdown ノートテキストファイル に ID を埋め込む

Markdown ノートテキストファイルを rclone で Google ドライブに同期して共有できるようにして、さっそく「共有用の URL をどうしようか」となった。

継続的なノート整理でファイル名変更・フォルダ移動をローカルホスト上でしつつ rclone で同期するので Google ドライブでのファイル ID が変わり URL も変わってしまう。

Zettlr を試した時にやっていた ID を 「yyyymmddHHMMSS」形式で YAML front matter に埋め込んでおくのが妥当かな。で

 https://drive.google.com/drive/search?q=ID

URL を共有すると。

[ ノート・日記はテキストファイルに ] [ Markdown で書いているノートを Google ドライブで共有する ]

[ 6月14日全て ]

2021年6月15日 (火)

今日のさえずり: ユニーク ID を検索する URL をもってファイルの疑似 permalink とする作戦、昔から幾度となくやってる気がする

  • 07:48 Automattic Inc. が Day One を買収か。びっくり。
  • 10:05 Harajuku Station #photography #Pixel4 https://t.co/yk71UmMnSw
  • 10:08 今日は原宿駅から代々木公園を通って渋谷へ。 気温・湿度的に朝歩くのちょっと大変になってきた。
  • 11:50 サラダチキン + 生野菜ランチ生活20日目。 だんだんワカメの甘みがわかってきたので、ワカメを増量気味に。
  • 12:16 ファイルにユニーク ID を書き込んでおいて、そのユニーク ID を検索する URL をもってファイルの疑似 permalink とする作戦、昔から幾度となくやってる気がする。
  • 21:24 朱 #photography RICOH GR III #GR #GRIII #GR3 https://t.co/syjwJXtazp
  • 22:03 小学生の頃、学研の科学のふろくでゲルマニウムラジオを作った記憶がある。
  • 22:06 あとシーモンキーも飼育した。 最終的に干からびさせたような。うろ覚え。
  • 24:52 @maru_kei 火縄銃! 学研の学習の方も子供心をくすぐる付録があったんですねー。
[ 6月15日全て ]

2021年8月13日 (金)

Next.js で nDiki を作り直そうと考えて引っ込めた

Web サイトの移行の話が出た流れで、この Web 日記についてちょっと考えたりした。

Perl で書いた自作の日記システム (CGI プログラム) で問題なく動いているが、手を入れずに使い続けているので将来環境(Perl やライブラリ)のアップデート時にハマるのではというのがあると、このまま記事が増え続けた時に問題が起きるのではというのがあり、気掛かりではある。

配信環境に依存しないように静的サイトジェネレータで生成する形に変えたらいいのではと、以前から思ったりしている。

ちょっとしか使ったことがない JavaScript を学ぶ機会としても Next.js とかどうかなとちょっと調べてみた。

個別記事ページを静的ページとして生成するのはいいとして、自動リンク機能で実現しているキーワード別ページとそのページングがちょっと厄介そう。やれるとしても今の URL 体系も一部変えなければいけないな。

今の日記システムに手を入れるのを再開して、 Markdown 対応させるのが先かな。

[ 8月13日全て ]

2021年8月15日 (日)

Web ブラウザで表示した Obsidian Publish ノートをデスクトップアプリで開くブックマークレット

Obisidian Publish サイトで公開している自分のノートWeb ブラウザで見ていて編集したくなった時に、 Obsidian デスクトップアプリでそのノートを開くのがまどろっこしい。

Obsidian デスクトップアプリは obsidian という URI scheme でファイルを開けるのでブックマークレットを作った。

Obsidian vault 名が nNodes、Obsidian Publish サイトの URLhttps://notes.naney.org/ (独自ドメインを設定)なので以下。

 javascript:window.open("obsidian://open?vault=nNodes&file=" + location.href.replace("https://notes.naney.org/","").replace(/\+/g, " "))

今までどうしてやらなかったのというぐらい便利。

[ 8月15日全て ]

2021年8月22日 (日)

過去の Web 日記を移行し直す

Web 日記システムを2004年2月22日に今の自作のもの変えたのだが、それ以前の記事の移行が不完全なままで止まっておりでずっと気になっていた。やはりちゃんと移行しよう。

考えると過去に進まなかった原因の1つが「1日単位」の日記エントリから、「トピック単位」の日記エントリに分割することだった。

「移行すると1日の中の順序情報が失われるなー」「分割した記事ごとに URL (ファイル名)を決めるのが大変だなー」「ハイパー日記システム (hns) 時代の日記には Tweet のように短いエントリ(セクション)もいろいろあって、そのまま分割すると細分割しすぎ感が出たりするよなー」あたりがモヤモヤしていた。

自動リンク機能によりキーワードで記事を串刺し表示する今の Web 日記システム的には、1日単位ではなくトピック単位で分割した方が情報構造的にいいのだけれど、まあ「日記」なので記録として残っている(移行済みである)ことの方が大切だな。

「古いものは無理して分割せず1日1エントリにする」「そこから適宜トピックを取り出して別エントリにする」で移行しなおすことにしよ。

[ 8月22日全て ]

2021年11月3日 (水)

KeePass#nNote

KeePassXC で同じフォルダにあるデータベースファイルを簡単に開けるようにする

エントリの URL に kdbx://ファイル名.kdbx と指定し、パスワードフィールドにデータベースパスワードを入力しておく。

参考: KeePassXC: User Guide

KeePassXC でデータベースを開いた時に別のデータベースも自動的に開く

開きたいデータベースのエントリを AutoRun グループの中に作り、エントリの URL にファイルのパス(絶対パス・相対パス)を指定し、パスワードフィールドにデータベースパスワードを入力しておく。

前項の通りエントリの URL の先頭を kdbx: にしておくと、エントリのダブルクリックでも開けるようになる。

参考: KeePassXC: User Guide

KeePass2Androidデータベースを開いた時に別のデータベースも同時に開く

KeePass2Android アプリで子データベースを設定すると親データベースを開いた際に自動的に別のデータベースを開ける。

KeePassXC と同様 AutoRun グループの中にエントリが作成される。 KeePass2Android がサポートしているクラウドストレージ上のデータベースも指定できる。

[ 11月3日全て ]

2021年11月25日 (木)

Google デベロッパー プロフィールを作成した【日記】

Google デベロッパー プロフィール (Google Developer Profile)でカスタム ウェブアドレスが設定できると聞いて、デベロッパー プロフィールを作成し URL をゲットした。

Google デベロッパー プロフィールが何なのかよくわかっていない。

2022年3月1日から Google AdSense の「関連コンテンツ」に関連コンテンツが表示されなくなり広告表示だけになるとのこと。関連記事が表示されるのが面白いなと思って設定していたのでちょっと残念。忘れないうちにと 広告ユニットを外しておいた。

夜ご飯のあとに『あつまれ どうぶつの森』サンクスギビングデー。料理に使えるかなと以前に釣ったアジが家にあったりしたこともあり、最初の各料理食材集めまでをさくっとクリア。

[ 11月25日全て ]

2021年12月16日 (木)

今日のさえずり: くまの子ウーフのビジュアルについての記憶が喪失していたので画像検索した

[ 12月16日全て ]

2022年1月4日 (火)

LINE のグループの「ノート」でちょっとしたノートを共有する

みんなで出掛ける時のちょっとしたノートを共有するのに LINE の「ノート」を初めて使ってみた。今さらだけれどこれで十分だなあ。

自分が投稿したノートは自分のみ編集・削除できるというのが管理するのに都合良い。オリジナルのノートを手元で書いてコピーし、投稿したり更新したりといった運用ができる。

URL がちゃんとリンクになるので表現力も必要十分だ。

グループの「ノート」なら共有範囲は自動的に参加メンバーだけになる。

共有する相手側に別のアプリを使ってもらう必要もない。 やはり皆が使っているプラットフォームというのは強いな。

[ 1月4日全て ]

2022年1月10日 (月)

今日のさえずり: 今日1日で20枚弱のクレジットカードにハサミを入れた

[ 1月10日全て ]

About Me

Naney Naneymx Naney

Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。

About nDiki

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。

#nNote タグがついている記事は他の記事に比べて、より断片的・未整理・不完全なちょっとしたノートです。まだ結論に至っていない考えなども含まれます。頻繁/大幅に更新したり削除したりすることがあります。

※本サイトの内容は個人的見解であり所属組織とは関係ありません。

最近検索されている記事

Other Notes

ナレッジベースアプリケーション Obsidian で書いているノートの一部を notes.naney.org で 公開しています。

月別インデックス
Process Time: 0.100985s / load averages: 0.62, 0.81, 0.82
nDiki by WATANABE Yoshimasa (Naney)
Powered by DiKicker