ひじょうに困ったのと、時間を要したので同じようなめにあうことがないように記しておきます。
少ないと思いますけど。
tiddlywiki a non-linear personal web notebook (2004-2020) version 5.1.22
とはどういうものかというと、情報カードみたいにセルを取り出せるブログみたいな wiki みたいな Zettelkasten ていうらしいですが、そういうやつだとおもいます。なぜかキャラとして猫がどーんと推されています。tiddly って猫のことかな ?と思いましたが、たぶん違うでしょう。いつかわかるかもしれないですね、使っていたら。
html ファイル 1 つだけで完結しているものも出来上がるのでこのように github pages でおいておくこともできます。
この道しるべは、Tiddlywiki を android で nodejs の web サーバーを使っている場合を想定しています。
Android タブレットの場合は、npm からサーバーバージョンをインストールするように公式の tiddlywiki のページにありますから、素直にそうしたという初めての npm インストールから、初めての tiddlywiki なあなたです。
そうそれは、5 日以上前のわたし。
そしてついさっきまでかかってようやく、そこに マークダウンのプラグインをインストールできた今のわたしが、ここにいて、やり方が全然わからなかったし、途中で何回か無理かなとあきらめかけたなと思っているわけです。
そう、 tiddlywiki はマークダウンで書けるわけですが、それには javascript のプラグインをインストールする必要があります。
Nodejs を使わない単体の tiddlywiki であればそのインストールは、なにも知る必要がなくインターネットにつながっていれば、 atom エディターのプラグイン追加のように、例のようにできますし、プラグインのリンクがあれば開いている tiddlywiki の上にドラッグアンドドロップでインストール可能です。それでことたります。
しかし、 npm でインストールした nodejs でコマンドでサーバーによって動いている tiddlywiki の場合はもうちょっとてがかかります。
わかってしまえばそれまでなんですが、わかるまでに tiddlywiki の特性でもある情報カードみたいに細切れにいくつあるのかもしれない公式ドキュメントの断片や github ページをぐるぐる見回ることになります。
という前置き。
みるべきところは 2 つだけ、でした。
そして、それも片方だけです。
これ、
Installing custom plugins on Node.js
と
これ。( こっちダ )
Installing a plugin from the plugin library
tiddlywiki.info を探して書き加える。
何を、
"tiddlywiki/markdown"
を。
前提として、プラグインの名称を前もって知っている必要があります。
どうやって ?
サーバーなしの tiddlywiki を開いてプラグインのライブラリーにアクセスして調べます。
npm からインストールした tiddlywiki ではプラグインのライブラリーになーんにも表示されませんので不可能です。ここで android だけで ローカルホストからでしか tiddlywiki を見たことないで何とかしようとするとな、謎が深まるのです。
謎がなぞをよびます。
いや、見えないんだからおかしいやろ、と思わないともうそこでつんでしまいです。
https://tiddlywiki.com/
ここにアクセスして tools
のタブをクリックし、control panel
のなかの plugins
のなかの Get more plugins
でプラグインを検索できます。
このように。
Nodejs によってローカルホストでたちあがっている tiddlywiki だとアクセスできませんから、プラグインの検索画面でもなーんにも表示されませんから注意してください。
前者のリンクには
Note that including a plugin as an ordinary tiddler (e.g. by dragging and dropping a plugin into the browser) will result in the plugin only being active in the browser, and not available under Node.js.
とあります。
これは、
「プラグインを通常の tiddler として含めると(たとえば、プラグインをブラウザーにドラッグアンドドロップすることにより)、プラグインはブラウザーでのみアクティブになり、 Node.js では使用できないことに注意してください。」
ということですが、じゃあ、だからどうするのよ、とよく読んでもわからないのです。
なので、わかんないわー、どこに実例あるの? youtube でチュートリアルは ?
とならないために実例で、
##プラグインの名前は markdown という実在のプラグインを追加する事だけを説明します。
markdown プラグインは先程見たプラグインライブラリーに登録されているものです。カスタムプラグインはプラグインライブラリーに登録されていないものを含むので、登録されていないものは別に探しだしてダウンロードする必要があります。
Termux のコマンドライン
ctrl + c
で サーバーを止めます。( codeboard や hackerskeyboard などのプログラミングに使える仮想キーボードアプリを使ってコマンドのキーを使えるようにしておく必要があります。)
Termux のコマンドラインで cd
を駆使して( cd
と ls
)探しだした tiddlywiki.info
ファイルに nano とか vi や vim 等のテキストエディターを使ってファイルを開いて、
$ vim tiddlywiki.info
Plugins の 項目のなかに
"plugins": [
"tiddlywiki/markdown"
],
というように一行を書き足して、保存。
tidlywiki.info の中はこのように。
Plugins のディレクトリを mkdir でつくる。(カスタムプラグインファイルをダウンロード可能な場合はここにプラグインファイルを配置するが、 markdown プラグインに関してはここにインストールされるわけではないので必要ない。)
├── plugins
│
├── tiddlers
└── tiddlywiki.info
そうして
Tiddlywiki mynewwiki --init server
でサーバーを再稼働させて、127.0.0.1:8080
をブラウザーで開くとプラグインが読み込まれている。
文章で分かりやすく書けたような気がしないので、youtubeで見るのがいいと思います。こういうことです。
以上です。
もうひとつ。
npm でインストールした tiddlywiki を 127.0.0.1:8080 で起動しようとして port 8080 が address alredy in use となっている場面。
これは、rootじゃない android で nodejs のサーバーが動いている状態で、バッテリー切れになり、再度電源を入れてみると、8080番ポートが何かに占有されています、いました。
2日経ってもおなじです。おなじでした。
リブートしてもおなじです。
root ではないのでプロセスを探そうにもプロセス番号を知ることができませんでした。
これは root 権限のない android だと困る問題です。たぶん。
プロセス番号のわからない、ローカルホストの 8080 番ポートの何かを解放する方法。
$fuser -k -n tcp 8080
これで見えない、なぞの8080ポートのなにかを kill できました。
〈追記〉
が、ダメなときもある。8080ポートに kill は有効に働いているが、すぐに tcp6 で使われている。
何が有効な方法なのか、今のところわかっていません。よく起こるみたい。
解決としては、 wi-fi の接続を切ります。つまりデバイスのインターネット接続を切ります。
wi-fi 接続がない状態で、再度 127.0.0.1:8080 に tiddlywiki をたちあげるとエラーなしに起動します。