TiddlyWiki + Dropbox でどこでも同期メモ帳

研究にしろ日常生活にしろ,いろんな場面でメモを取る機会があります.基本的に私はデジタルでメモを取ることにしていて,いつでも全てのメモにアクセスできるようにしたいタイプです.単純に,取ったメモを同期したいということであれば,Dropboxにtextファイルを突っ込んでおけばいいんですが,フォルダの中に何百ものメモがあると,再利用できないですね.

ちょっと前までは,Google Notebookを使っていて,とっくにサポートは切れているものの,まだ使えることをいいことに,ちょっとしたメモをひたすら貼っつけるという使い方をしていました.Google Notebookは未だにメモには十分使えるほど便利なんですが,欠点があるのは,オフラインでは保存できないということ.インターネットにつながっていない環境では,一旦,テキストファイルかなんかにメモを取っておいて,あとで写さなければなりません.他のGoogleのアプリケーション(GmailやGoogle Calendarなど)がオフラインで使えるようになってきているんですが,サポートの切れたGoogle Notebookがオフライン対応になる見込みはありません.そこで,今回はTiddlyWikiとDropboxに置き換えてみました.

TiddlyWikiはJavaスクリプトで動くWikiクローンです.つまりは,Javaスクリプトが書かれたHTMLファイルがあれば,それだけで動きます.なので,TiddlyWikiのHTMLファイルをDropbox内において共有すれば,それだけで同期された個人用Wikiが使えるというわけです.

環境設定(Release 2.6.1)

極めて簡単.

  1. https://www.tiddlywiki.com/ の中程にある,一際目立つdownloadボタンを押します.
  2. ダウンロードされたファイルを解凍すると,emptyというフォルダができるので,まるごとDropboxの中に突っ込みます.
  3. emptyフォルダ内のempty.htmlを開き,設定を行います.

日本語化やプラグインのインストールなどは,紹介してあるページが沢山あるので,割愛します.

注意点

一点だけちょっと嵌った点を.TiddlyWikiの設定はcookieに保存されるので,マシンごとに異なった設定を保存できます.しかし,ブラウザの設定によってはcookieを弾いたりしますし,使うのが自分ひとりであれば,設定はマシンによらず一定であるほうが便利です.(Dropbox内に置いてある以上,保存設定などはマシンごとに変える必要はないし,YourNameなんかも変える必要はない)

そこで,直接TiddlyWikiファイル内の変数を書き換えてしまいます(参考サイト: toshyonのメモ書き).ファイルをテキストエディタで開き,下記の箇所を探します.

ユーザ名の変更

merge(config.options,{
txtUserName: “YourName”});

YourNameを好きな名前に書き換えます.

その他のオプションの変更

// Options that can be set in the options panel and/or cookies
config.options = {
chkRegExpSearch: false,
chkCaseSensitiveSearch: false,
chkIncrementalSearch: true,
chkAnimate: true,
chkSaveBackups: false,
chkAutoSave: true,
chkGenerateAnRssFeed: false,
chkSaveEmptyTemplate: false,
chkOpenInNewWindow: true,
chkToggleLinks: false,
chkHttpReadOnly: true,
chkForceMinorUpdate: false,
chkConfirmDelete: true,
chkInsertTabs: false,
chkUsePreForStorage: true, // Whether to use <pre> format for storage
chkDisplayInstrumentation: false,
txtBackupFolder: “”,
txtEditorFocus: “text”,
txtMainTab: “tabTimeline”,
txtMoreTab: “moreTabAll”,
txtMaxEditRows: “30”,
txtFileSystemCharSet: “UTF-8”,
txtTheme: “”
};

必要に応じて,true/falseを設定します.

ToDoの管理

やり方はいろいろあると思いますが,私なりのやり方です.

導入するプラグイン

  • CalendarPlugin
  • DatePlugin
  • ReminderMacros

管理方法

  • 一つのToDoにつき,一つのTiddlerを作成する.その際,ToDoの性格に応じて,直近のToDoと余裕があるToDoに分類し,タグを付ける(例えばToDoNとToDoLとか).
  • 明確な期限があるものについては,本文内にリマインダーマクロの指定の書式でデッドラインを記載しておく.
<<reminder day:12 month:11 year:2010>>
  • 終了したToDoはタグを書き換える(例えばToDoDとか).
  • ToDoをまとめる表の役割をするTiddlerを作り,それぞれをリスティングする.
<<showReminders leadtime:30>>
<<list filter "[tag[ToDoL]]">>

など.私はMainMenuに上記を記載して,常に確認できるようにしています.