nDiki : 検索

2020年10月27日 (火)

2020年10月27日(火)の #nNote

ガラケー版GREE(携帯版GREE / モバイル版GREE)サービス終了のお知らせ

2021年11月25日(木)でサービス終了のお知らせが10月26日から10月27日頃配信されたようだ。

2020年10月7日にはNTTドコモからiモード公式サイト2021年11月30日提供終了が発表されていた。

[ フィーチャーフォン ]

スポンサード リンク
[ 10月27日全て ]

2020年11月8日 (日)

用語統一のために Alfred のスニペット機能を使う

文章を書く時に「名称は正式表記で書く」「用語は統一する」ことにささやかながらこだわっている。初めて書く名称は Web などで正式表記を調べ、初めて書く用語用語集などに当たるようにしている。過去に書いたことのあるものはファイルを全文検索して確認しそれに合わせる。

初めての語を調べるのに時間がかかるのは仕方ないとして、都度過去のファイルを全文検索するのに結構時間を費やしているのはもったいない。

事あるごとに用語リスト管理ツールとして使えるものがないか探してきているのだけれど、 MacAndroid デバイスで安全に同期して使えるものという条件では見当たらなかった(IM の辞書しかりクリップボードマネージャーしかりノートアプリしかり)。

Android デバイスでの同期はいったん諦めて Mac だけでも効率化したい。

ということで Alfred のスニペット機能(Snippets)を使ってみることにした。クリップボード履歴機能(Clipboard History)の呼び出しと使い分けるのが面倒かなと思って使ってこなかったのだけれど、調べてみると

  • クリップボード履歴のインクリメンタル検索時にスニペットも検索される。
  • クリップボード履歴から command + S で簡単にスニペット登録できる。

といい感じに連携できるようになっていた。

過去に書いたことのあるものをファイル全文検索で確認したらコピーし、その後すぐにクリップボード履歴からスニペット登録すれば3回目からはさっと書けるようになるね。

クリップボード履歴が「設定期間経過すると消える」「Mac 間で同期できない」のに対し、スニペットは「登録削除はユーザー管理」「Mac 間で同期される」ので、いい感じに育てていけそうだ。エクスポートは独自形式のみなので依存しすぎずうまく活用していきたい。

[ Mac アプリケーション ]

[ 11月8日全て ]

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日全て ]

2020年12月11日 (金)

iA WriterWeb プレビューGoogle ドキュメントに貼り付けて共有する(画像付きで)

iA Writer の Web プレビューを Google ドキュメントに貼り付けて共有する方法で一緒に貼り付けられる画像はインターネット公開されているものだけなのがちょっと不便だった。iA WriterWeb プレビューのクリップボードコピーには画像データが直接含まれないため。

でいろいろ試したところ iA Writer 側で データ URL として画像を貼り付ければ、コピー & ペーストで Google ドキュメントに貼り付けられることが分かった。

画像データを base64 コマンドなどで base64 で符号化し、 Markdown ファイル上で

 ![](data:image/png;base64,画像データ)

とすれば OK(image/png はメディアタイプに合わせる)。 iA WriterWeb プレビューで表示される。

とても長い URL なので文章中に直接含めておくのは不便。実際には img.png.txt など別のファイルに書いておいて

iA Writer の content block 機能を使って

 /img.png.txt

のような形で include して実用するのが良さそうだ。ロケーションの中にファイルを置くことで検索にひっかかって不便な場合は、別のフォルダに置いて

../img/img.png.txt

のように相対指定かな。

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

[ 12月11日全て ]

2020年12月18日 (金)

今日のさえずり: 「お昼は軽めにパンを食べたいな」と検索しているうちに気が付いたら一番近くで食べられるカレーを食べてた

  • 09:53 この間の Google 障害の影響かな、自分のドメインのメール アカウントから Gmail への読み込み (POP3) が「前回のメール チェック: 4日前」で止まっていた。「メールを今すぐ確認する」を実行したらモリモリ流れてきた。
  • 09:59 人生にかかわるようなメールは来ていなかったので良かった。
  • 13:57 「お昼は軽めにパンを食べたいな」と Google マップ検索しているうちにお腹がすいてきて、気が付いたら一番近くで食べられるカレーを食べてた。
  • 21:06 開いた車窓から吹き込む風が、昨日カットしてこざっぱりした後頭部を激しく冷やす。
[ 12月18日全て ]

2021年1月4日 (月)

iA Writer#nNote

iA Writer for Mac

Markdown

Markdown から HTML への変換に MultiMarkdown を使っているので MultiMarkdown 固有の文法が一部使える。

検索

ファイルリストのフィルタで検索しても探せない文字列がある。検索文字列の最後に * をつけると検索できる場合がある。

iA Writer for Android

フォーカスモード

AndroidiA Writer はフォーカスモードにするとカタカタ上下に画面が動くので逆に集中しにくい。

Dropbox 自動保存

テキストファイルを開いた状態でホームに戻った際に変更があれば自動保存される。ただし再度開いた時に Dropbox 上のファイルが更新されているかのチェックはないので、コンフリクトが起きる可能性はあり。一度編集画面からファイル一覧画面に戻る必要あり。

[ 1月4日全て ]

2021年1月11日 (月)

Google ドライブDropboxUnison で同期する

ノートテキストファイルは全文検索できるよう Google ドライブと同期しておきたい。それと同時に他の PC との同期のため Dropbox とも同期しておきたい。しかしセキュリティを考えてクラウド同期サービスは使いたくない。

Google の「バックアップと同期」アプリと Dropbox アプリの両方を動かしてそれぞれローカルフォルダと動機している MacBook Pro 上で、そのローカルフォルダ間のファイル同期を実行してみることにした。

使うのは普段リモートホストとの同期に使用している Unison File Synchronizer。最近になって repeat = watch というファイル更新をモニタリングするオプションを知ったので試してみる。

unison-fsmonitor を用意する

ファイル更新モニタリングで使う Unison 標準の unison-fsmonitor は macOS では使えないらしいので代替の https://github.com/autozimu/unison-fsmonitor をインストールする。

 $ brew install autozimu/homebrew-formulas/unison-fsmonitor

Unison のプロファイルを作成する

Unison の同期用のプロファイルは以下のような感じ。

 root = /Users/naney/Google ドライブ/folderA
 root = /Users/naney/Dropbox/folderA

 times = true

 repeat = watch
 silent = true

 logfile = /Users/naney/var/log/unison.log

(実際には path や ignore をもう少し指定している。)

同期する

repeat = watch と silent = true をいったんコメントアウトして

 $ unison <プロファイル名>

で手動同期し、期待通りの同期ができているか確認する。問題無ければ

 $ nohup unison <プロファイル名> &

で監視を開始する。

動作確認した感じでは

と安定して使える感じだ。

コンフリクトが起きた場合はスキップされたままになるので、たまに手動で Unison を実行して確認した方が良さそうではある。

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

[ 1月11日全て ]

2021年1月12日 (火)

Google ドライブDropbox とサーバと PC 2台でノートテキストファイルを同期

うまくGoogle ドライブと Dropbox を Unison でリアルタイム同期できるようになったので Google ドライブDropbox と naney.org と MacBook Pro 2台でノートテキストファイルを同期するようにした。

全文検索のために Google ドライブにも置いておきたいのと、サブの MacBook Pro の方で Google ドライブではなく Dropbox で同期する必要があることから変態的な構成になった。

digraph G { rankdir=TB; node [ shape=box ]; subgraph cluster1 { label="メイン PC"; mainGDF [label="Google ドライブフォルダ", style=filled, shape=folder]; mainDBF [label="Dropbox フォルダ", style=filled, shape=folder]; mainBS [label="バックアップと同期", shape=component]; mainUS [label="Unison (リアルタイム)", shape=component]; mainUSn [label="Unison (手動)", shape=component]; mainDB [label="Dropbox アプリ", shape=component]; mainiA [label="iA Writer 等", shape=box]; mainBS -> mainGDF [ dir=both; ]; mainGDF -> mainUSn [ dir=both; ]; mainGDF -> mainUS [ dir=both; ]; mainUS -> mainDBF [ dir=both; ]; mainDBF -> mainDB [ dir=both; ]; mainiA -> mainGDF; } subgraph cluster2 { label="サブ PC"; subDBF [label="Dropbox フォルダ", style=filled, shape=folder]; subUSn [label="Unison (手動)", shape=component]; subDB [label="Dropbox アプリ", shape=component]; subiA [label="iA Writer 等", shape=box]; subDB -> subDBF [ dir=both; ]; subUSn -> subDBF [ dir=both; ]; subiA -> subDBF; } subgraph cluster3 { label="スマートフォン"; spiA [label="iA Writer 等", shape=box]; spGD [label="Google ドライブアプリ(検索・閲覧)", shape=box]; spiA -> DB; } GD [label="Google ドライブ", style=filled]; DB [label="Dropbox", style=filled]; no [label="naney.org", style=filled]; { rank = same; DB; no; } GD -> mainBS [ dir=both; ]; mainDB -> DB [ dir=both; ]; DB -> subDB [ dir=both; ]; mainUSn -> no [ dir=both; ]; no -> subUSn [ dir=both; ]; spGD -> GD; }

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

[ 1月12日全て ]

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 固定の Obisidian より柔軟だ。

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

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

[ 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日全て ]

About Me

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

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

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

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

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