Emacsのorg-modeをアウトラインプロセッサーとして愛用している。org-modeで書いた文書を手持ちのiPadで閲覧・編集できれば便利だと思い、iOSでorg-mode文書を扱えるというアプリ「beorg」を見つけた。
iCloudやDropboxで簡単に同期できるとのことだが、私的なファイルのため、できればローカルで同期をさせたい。
ローカル同期させるにはWebDAVが使えるようだが、beorgのWebDAVの設定がよく分からず、同期に失敗してしまう。Web上を調べても日本語での設定例は見当たらず、お蔵入りとなっていた。
今回時間ができたので再度設定を試みたところ、無事同期できるようになったのでメモとして残しておく。
beorgの設定
Settingsの「FILE SYNCHRONIZATION」の項目を以下のようにした。
PC側のDocumentRootは「org」としてある。
WebDAV URLを「https://localhost/org」としていたところ同期できなかった。
Sync method WebDAV Folder /org File extension .org WebDAV URL https://localhost Username (apache2の設定ファイル内 AuthUserFileに登録したユーザー名) Password (apache2の設定ファイル内 AuthUserFileに登録したパスワード) Allow untrustd certificate ON
日本語ファイル名が文字化けする
ただし、orgファイル名が日本語の場合、Filesタブに表示されるファイル名は手元のUbuntu16.04だとパーセントエンコードされた表記になってしまう。beorgに文字コードを指定するような項目は見当たらない。
apacheの設定で、mod_encodingを利用すれば良いとのことでlibapache2-mod-encodingパッケージをインストール、他のモジュールの例にならって/etc/apache2/mods-available/encoding.confを作成して以下のように記述、a2enmod encoding、service apache2 restartしてみたが文字化けは改善されない。
なお、上記パッケージのインストール前でも、iOSアプリ「Documents」(Readdle)のWebDAVでは日本語ファイル名が文字化けすることなく表示されていた。
<IfModule mod_encoding.c> EncodingEngine on SetServerEncoding UTF-8 DefaultClientEncoding UTF-8 MSSJIS EUC-JP AddClientEncoding UTF-8 "*beorg*" </IfModule>
どうにかすれば直るのかもしれないが、今回は同期したいファイルが一つだけなので、ひとまずこのまま使うこととした。
参照サイト
- Ubuntu 16.04: ファイルサーバのWebDAVをインストールする - Narrow Escape
Ubuntu16.04でのWebDAVの設定方法。
- beorg - Task management for iPhone and iPad
iOSアプリ「beorg」の公式サイト。
- Apache2.2でWebDAV - jitsu102's blog
mod_encodingについて記載がある。