nDiki : 内部リンク

2015年8月12日 (水)

さくらのレンタルサーバ プレミアムでラピッドSSLを申し込んだ

7月30日からさくらインターネットがジオトラストブランドのドメイン認証 SSL 「ラピッドSSL」を提供開始しています。9月30日まではキャンペーン中で、3年3,456円(税込)が1,836円(税込)になるということで、これを機会にドメイン認証証明書を取得して www.naney.org を TLS 接続できるようにしてみました。

以下は自分がやった手順です。

  1. サーバコントロールパネルにログイン。
  2. [ドメイン設定] で naney.org (マルチドメイン) の行の SSL 証明書のところの[登録]をクリック。
  3. 2048ビットで秘密鍵を生成。
  4. 証明書認証局へ申請する情報を入力。
    • ドメイン: [www] [naney.org]
    • 会社名: 設定したい名前
    • 部門名: 空
    • 国コード: JP
    • 都道府県: Tokyo
    • 市区町村: XXX-ku
  5. [CSR の作成]をクリック。
  6. [ラピッドSSL(有料サービス)のお申し込みへ進む]をクリック。
  7. [サーバ証明書のお申込み]をクリック。
  8. [SSLサーバ証明書お申込み画面]でログインし、[新規取得]・[ラピッドSSL]・[3年]を選択。
  9. 支払方法を設定し確認画面などを確認したあと[この内容で申し込む]をクリック。
  10. サーバコントロールパネルの[ドメイン設定]から naney.org の変更をクリックし、[ドメイン詳細設定]画面で[SNI SSL を利用する]に変更。

これで https://www.naney.org/ でアクセスできるようになりました。接続は TLS 1.0 になります。

コンテンツ側での内部リンクが http を指定していたり、スクリプトがうまく対応できたいない部分があるのでその辺りは別途要対応です。

スポンサード リンク
[ 8月12日全て ]

2015年8月13日 (木)

nDiki を HTTPS に対応させる

昨日ラピッドSSLを申し込んで TLS 1.0 接続できるようになったので、ここからはコンテンツ側の対応です。

URL 処理を修正する

nDiki (DiKicker) はかなり昔に作ったので CGI.pm を使っています。CGI.pm の url メソッドで絶対 URL を取得して permalink の生成などをしています。ここでさくらのレンタルサーバでは HTTPS 用の Apache はプロキシとしてとして動いていることもあり https://www.naney.org/diki でアクセスすると CGI.pm の url メソッドが https://naney.org:80/diki を返してしまうようになってしまいました。

ここはいったん設定ファイルでスクリプトの URL を明示的に設定できるようにして対応しました。

内部リンクを修正する

http スキームで書かれた内部リンクは順次 https に修正します。結構な量があるのでおいおいという感じです。画像などのリソースを http で指定しているところは優先して対応した方が良いですね。

外部からのリンクを修正する

外部サイトのプロフィールなどで htts スキームで書いたリンクなども順次修正です。こちらもおいおいという感じで。

[ 8月13日全て ]

2020年7月30日 (木)

ノート間リンクのできるノートアプリを探す

ノートアプリとして使っている iA Writer であるといいなと思っている機能の1つにノート間リンク(内部リンク)がある。テキストファイル管理タイプのノートアプリでノート間リンクのできるものがあるかなといくつか試してみた。

今日のチェックではヒットなし。

PopClip 拡張を自作して、キーワードからターゲットとなるテキストファイルiA Writer で開くようにするのがいいように思えてきたぞ。

[ Mac アプリケーション ]

[ 7月30日全て ]

2020年12月3日 (木)

百科事典型ナレッジベースに向いているナレッジベース Obsidian

以前ノート間リンクのできるノートアプリを探してみた時に触った Obsidian をもう少し試してみた。

Obsidianナレッジベースアプリケーションで、一般的なノートアプリよりも情報間のネットワークを重視している。ローカルホスト上の特定フォルダ以下に置いた個別の Markdown ファイルを [[ファイルベース名]] 形式で内部リンクしていくのが基本。

ファイルの拡張子が md 固定で txt では駄目というのが個人的に不便(拡張子 txt にできないと Google ドライブ的に困る)なのだけれど、過去のノートテキストファイル拡張子を変更してお試ししてみた。

内部リンク

ファイルベース名を指定して内部リンクを文中に書いていくのだが、ファイル名の先頭を日付にする流儀との相性が良くないな。[[ファイルベース名|表示テキスト]] 形式でプレビュー時のテキストを指定できるけど、編集モードだと文章として読みにくい。各ファイルで YAML front matter 形式で別名を宣言しておけばその別名で内部リンクできる機能があるので、丁寧に管理すれば読みやすくはできる。

ただ Obsidian 方言で書きすぎると「ローカルホスト上の Markdown ファイルなので特定アプリケーションに依存しない」良さがスポイルされてしまう。Markdown のショートカット参照リンク形式で内部リンクを張れるようになると良いのになと感じた。

グラフ表示

1ファイル1トピックにしてきちんと内部リンクを張っていかないと価値あるグラフにならない。1日1ファイル + 個別トピックファイルというスタイルだと役に立たないかな。

その他

検索は使いやすい。TaskPaper ほど優れてた UI ではないけれど、フォールディングやアウトライン表示もできたりする。デフォルトのスタイルは個人的に見出しが大きいなと感じるので、常用するなら CSS をいじる必要がありそう。

パーソナルナレッジベースとして

「時間とともに記録・整理しておきたいことが変遷していく」「ナレッジベースを作ること自体が主目的ではない」パーソナルナレッジベースの世界では、静的な情報を丁寧にネットワーク化していく百科事典型よりも日誌/日記型の方が良いと思ってる。内部リンクは編集・維持コストが高いので、パーソナルナレッジベースでは頑張らないのが幸せだ。

Obsidian は百科事典型のナレッジベースが欲しい人にはあいそう。一方自分のような日誌/日記型派にはやはり検索主体の howm 系の方がいいなとあらためて感じた。

[ Mac アプリケーション ] [ ノート・日記はテキストファイルに ] [ ファイル名の先頭を日付にする ]

今日のさえずり: 内部リンクは編集・維持コストが高いので、パーソナルナレッジベースでは頑張らないのが幸せ

[ 12月3日全て ]

2021年1月19日 (火)

Zettlr はテキストファイルノートアプリに適した Markdown エディタ

Zettelkasten メソッドのための機能を備えた Markdown エディタに Zettlr がある。ローカルディレクトリ上に通常の Markdown ファイルとしてデータを保存するタイプで、ロックインの心配が無く他のツールと併用できる好みのアプリだ。インストールして1日使ってみた。

インストール (macOS )

Homebrew では以下で。

 $ brew install --cask Zettlr

今日時点でインストールされるのが 1.8.3 でちょっと古かったので

からバイナリビルドされた 1.8.6 をダウンロードしてインストールした。

Markdown エディタとして

ヘッダを大きめに表示したりリンクの URL を隠したりと一部プリレンダリングされるタイプ。日本語も問題無さそう。

ファイル末のあたりで文字入力するとエディタがガクガク揺れるは今後改善されると嬉しい。

見出し単位で折り畳む機能やサイドバーで目次を表示する機能があり、長めの文章を書くための支援が揃っている。

ファイル管理

ファイルツリー上にディレクトリとファイルの両方を表示する Combined モード以外に、ファイルツリー(ディレクトリツリー)とファイルリストの両方を表示する Expanded モード、ファイルツリーとファイルリストのどちらかを表示する Thin モードがある。

Expanded モードを選ぶと iA WriterUlysses などでもお馴染みのスタイルになりノートアプリとして使いやすくなる。

ファイルシステム上のディレクトリをルートディレクトリとしたワークスペースを複数同時に開いておける。用途別にディレクトリを分けている場合に便利だ。

全文検索はワークスペース単位。内部リンクもワークスペース単位で機能する。 自分は複数のワークスペースを横断的に全文検索したいので、本格的に使うなら1つのディレクトリの下にまとめる必要があるな。

ファイルの拡張子は md ではなく txt でも OK なので、ファイルを同期した Google ドライブ上で全文検索させられるのが嬉しい(Markdown ファイルの拡張子を md にすると Google ドライブで不便)。 md 固定の Obsidian より柔軟だ。

Zettelkasten メソッドと内部リンク

Makrdown ファイルから Markdown ファイルへファイルベース名を指定して 「[[ファイルベース名]]」の形で内部リンクできる(パス名は不要)。

また Markdown ファイル内にユニークな ID を書いておき、その ID を指定して「[[ID]]」としてリンクもできる。後者を使えばファイル名変更が気軽にできる。 ID の形式やリンクの開始文字列 [[ ・終了文字列 ]] もカスタマイズできて柔軟なのも良い。

iA Writer では

 ia-writer://open?path=/Locations/path/to/file.txt

のような URL を発行して擬似的にリンクするさせるしかないので比べると圧倒的に便利。

1日使ってみて

今メインで使っている Mac アプリケーションiA Writer に比べると Electron ベースの Zettlr は美しさで負けるのは仕方ないところかな。

Zettlr をテキストファイルノートアプリとして内部リンクを活用しながらパーソナルナレッジベースを作っていくのありだな。

[ ノート・日記はテキストファイルに ] [ Mac アプリケーション ]

[ 1月19日全て ]

2021年1月20日 (水)

Zettlr 2日目

昨日から使い始めZettelkasten メソッドのための機能を備えた Markdown エディタの2日目。昨日の時点で使い続けるかちょっと迷ったんだけれど、もうちょっと使い方を探ってみようと今日も使ってみている。内部リンク(ノート間リンク)の活用方法がちょっと分かってきて楽しい。

内部リンクの使い勝手が良い

エディタ上で内部リンクを「command + クリック」「control + クリック」すると「リンク先のファイルを開く」と同時にその「リンク文字列での検索」が実行される。ファイルを開くと同時にいい感じに関連するファイルのリスト(実質バックリンクリスト)が表示されて便利。内部リンクを充実させたい気持ちが高まってきた。

ID を YAML front matter に埋め込む

アプリケーションに依存する Markdown ファイルを作らないという Zettlr の原則により Markdown ファイル中のどこに ID を書いてもいい仕様になっている。

自分としてはプレビュー時に文中に出ないように、昨日ひとまず ID を HTML コメントの形式で Markdown ファイルに埋め込んでみていた。 Zettlr やメインで使っている iA Writerプレビューに使っている Marked 2 が YAML front matter に対応しているのでそこの方がわかりやすいかな。 front matter に ID を書くことにした。

ID のパターンは初期設定の「%Y%M%D%h%m%s」で

日時については基本「2021-01-20-095836」という書式を使っているので Zettlr の ID のパターンも初日に「%Y-%M-%D-%h%m%s」にカスタマイズしたのだけれど「%Y%M%D%h%m%s」に戻した。過去のノートファイルに現在日時の ID を付与するというズレが心理的に気持ち悪かったので。

Also, our own experiences show that when one doesn't use easy-to-recognise IDs, one is less prone to assume stuff, making them better suited to cross-link files. Just try it yourself! — https://docs.zettlr.com/en/academic/zkn-method/

というの納得。

内部リンクは独立した行に書き、 Marked 2 で消す

内部リンクは Zettlr をナレッジベースとして使う上で便利だが、単独の Markdown ファイルをエクスポートして共有する際には不要だ。

Markdown ファイルを各種フォーマットに変換する Marked 2 に自作のカスタムプリプロセッサを通す機能があるので、 Zettlr で管理している Markdown ファイルを共有する際は Marked 2 を呼び出して

 - [[...]]

を含む行を消してしまうように設定した。ノート関係の宣言のための内部リンクは上記のように独立した行に書いておこう。

これで個人的なナレッジベースとしてノート間リンクの充実させるという要求と、一部はエクスポートして共有したいという要求を満たせそうだ。

[ 1月20日全て ]

2021年1月22日 (金)

Zettlr 4日目、iA Writer に戻す

Zettlr 4日目。18,000 弱テキストファイルがあるディレクトリーツリーをワークスペースとして開いたらかなり重かった。使い込んでいくにはパフォーマンスに問題があるな。

Zettlr をしばらく使ってみて、UI とエディタが美しい iA Writter が恋しくなってきた。 iA Writer ならファイル数が 19,000 超えても問題ないし安心だし iA Writer メインに戻ることにしよう。

ローカルホスト上のテキストファイルで管理していると、アプリケーションを乗り換えやすくていい。

Zettlr を使っていいなと思った内部リンクのための記述方法

  • %Y%M%D%h%m%s 形式の ID を YAML front matter に書く。
  • - [[%Y%M%D%h%m%s]] の形でリンクを書く。

は iA Writter で取り入れてみてもいいな。

現在日時で %Y%M%D%h%m%s 文字列を生成する Alfred ワークフローを作った。それから

 cd ~/notebook
 pt -l -e "^ID:\\s+$query" . | head -n 1

で見つかったファイルを iA Writter で開く Alfred ワークフローを作成し、ID を指定して iA Writer を開けるようにした。 もっとサクッと開けるように PopClip のエクステンション化もしておきたいな。

2021年2月3日追記

キーを「ID」ではなく「ZID」に変更した。

[ ノート・日記はテキストファイルに ] [ Zettelkasten ]

[ 1月22日全て ]

2021年1月27日 (水)

Markdown リンク定義にリンク先ノートの ID を書く

Markdown エディタ Zettlr で内部リンク(ノート間リンク)を

 - [[yyyymmddHHMMSS]] タイトル

のように書き、エクスポートする時は Marked 2 のカスタムプリプロセッサで消す(記事)というマイルールを作った(yyyymmddHHMMSS は ID)。が Zettlr から iA Writer に戻し、ノート間リンクは自作の PopClip エクステンションで開けるようにした(記事)ので、必ずしも [[yyyymmddHHMMSS]] 形式で内部リンクを表現しなくても良くなった。であれば、最初から変換した時にドキュメントに現れない形式で Markdown ファイルに内部リンクを書いておきたい。

Markdown ファイル中に HTML コメント形式で内部リンクを書いておけば、 HTML 等に変換した時にドキュメントに出現しなくて済むのだが iA Writer だと全文検索にひっかからないので却下。

ドキュメントに出現しない表記にはもう1つ「リンク定義」があるのでこれを使うことにした。

 [yyyymmddHHMMSS]: <> "title"

として内部リンクを書いておけばプレビューしたドキュメントには現れない。若干やぼったい感じもするがなかなかいいんじゃない。

[ ノート・日記はテキストファイルに ] [ Zettelkasten ]

[ 1月27日全て ]

2021年2月8日 (月)

Obsidian やっぱり使ってみる

去年の夏12月と試したあと距離を置いていたナレッジベースアプリケーション Obsidian が気になってまた使ってみることにした。

Roam Research も気になるけれどやはりデータがテキストファイルじゃないというのがね。

Obsidian を躊躇していた点については以下のように考え運用してみることにする。

特定ドメインの知識整理用として使う

過去の全部のノートテキストファイルを対象とするのではなく、特定ドメインの知識整理用としてゆるく切り離して使う。

Obsidian拡張子が md 固定でそのまま Google ドライブに同期しても全文検索できない問題については、Google ドライブで全文検索したい拡張子 txt の日記/日誌系 Markdown ファイルを Obsidian vault には入れず、今まで通り別で管理することで回避することにした。

[[ファイルベース名]] や [[ファイルベース名|表示テキスト]] という内部リンク方言についても、 Obsidian の vault 内でノートでは許容しよう(許容しないと Obsidian を使う意味が無いので)。エクスポートする時は[[・]]を消すプリプロセッサを用意して Marked 2 で使うようにする。

[ ノート・日記はテキストファイルに ] [ Mac アプリケーション ]

[ 2月8日全て ]

2021年2月13日 (土)

Obsidian Publish 買った

ノートを整理すると公開したくなるし、公開すると思うとノートを整理する気になる。 Obsidian で書いたノートもやはり公開できるようにしたい。Gatby・Hugo・MkDocs などの静的サイトジェネレータでサイト生成して公開することも考えたけれど、 Obsidian仕様に合わせた内部リンク対応を書く必要があり開発保守コストが高いな。4日前に様子見と思った Obsidian Publish を結局買ってしまうことにした。$96/年。クレジットカード決済での換算レート107.514円で、支払い額は10,321円となった。

独自ドメインで公開もできるけれど HTTPS にしようとするとまだ大変なので当面 publish.obsidian.md の下でいいことにする。将来独自ドメインに移した際に URL が変わってクールじゃないかなというのはあるが、そもそも頻繁に更新するパーソナルナレッジベースの公開サイトという点で URL がどんどん変わるので気にしても仕方ないよね。

[ サブスクリプションサービス ]

[ 2月13日全て ]

About Me

Naney Naney

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

About nDiki

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

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

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

Other Notes

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

最近検索されている記事

月別インデックス
Process Time: 0.059815s / load averages: 0.47, 0.49, 0.44
nDiki by WATANABE Yoshimasa (Naney)
Powered by DiKicker