shellで日本語を無効にする

年寄なので圧倒的にshellで作業してますが、そこでIMが有効になって意図せずに日本語が入力されてしまうと頭に来ます。

gnome-terminalでもkonsoleでも日本語を入力できなくなる設定をさんざん探したけどみつからず。普通に考えれば

XMODIFIERS=”@im=none”
とか
GTK_IM_MODULE=none
とか
QT_IM_MODULE=none

とかすれば良さそうなんだけど、なんか効かない。唯一 
QT_IM_MODULE=none konsole
だけはうまくいったのだけど、毎回これを別のターミナルから実行するのもダサい。

そこで gnome-panel を入れて、
gnome-desktop-item-edit  ~/Desktop/mykonsole.desktop  –create-new
として新しいアプリを作ります。事前に

#!/bin/sh
QT_IM_MODULE=none konsole

などという内容の mykonsole.sh を作って、それを呼ぶようにするのです。

しかし、これもダサいと言えばダサい。他にもっといい方法はないもんですかねえ。

追記:
emacsのほうは

XMODIFIERS=”@im=none”  emacs

じゃないとだめみたい。





KeeWebサーバの構築

また間があいてしまったけど、KeeWebについて書きます。

パスワード管理にはKeePassを使ってます。けれどそのデータベースを外部クラウドに置くのは不安なので、Raspberry PiにownCloudのサーバ立てて、家の中だけで使えるようにしてます。これでLinux、Windows、Android、iOSから使えます。

しかし、Chromebook/ChromiumOSにはKeePassクライアントがないのでちょっと困ります(厳密に言えばないこともないのだけど、うまく設定できなかった)。そこでKeeWebの登場。

これはHTMLで作ったKeePassクライアント。KeePassのデータベース自体はWebDavに置きます。KeeWebのサーバとWebDavのサーバはべつにどこにあってもいいのだけど、今回はどっちもownCloudサーバと同じRaspberry Piに置きます。

KeeWebのインストール自体は簡単で、ここを見ながらやってください。ただし、https経由じゃないといろいろ不都合があるので、サーバのApacheの設定はややめんどう(ここを参考にしましょう https://www.deep-blog.jp/engineer/archives/11612/ )。

そして、もっとやっかいなのはWebDavの設定のほうで、読むのは簡単なんだけど、パスワードを変更や追加したときにデータベースに反映させる(同期)のがうまくできませんでした。

いろいろ調べた末、Apacheで以下のモジュールを有効にして、WebDAV関係のApacheの設定を追加すると解決しました。

sudo a2enmod rewrite
sudo a2enmod header

<Directory "/var/www/html/webdav">
  DAV On
  AuthType Basic
  AuthName "webdav"
  Require all granted
  Options Indexes FollowSymLinks
  Header always set Access-Control-Allow-Origin "*"
  Header always set Access-Control-Allow-Headers "origin, content-type, cache-control, 
    accept, authorization, if-match, destination, overwrite"
  Header always set Access-Control-Expose-Headers "ETag"
  Header always set Access-Control-Allow-Methods "GET, HEAD, POST, PUT, OPTIONS, MOVE, 
    DELETE, COPY, LOCK, UNLOCK"
  Header always set Access-Control-Allow-Credentials "true"
  RewriteEngine on
  RewriteCond %{REQUEST_METHOD} OPTIONS
  RewriteRule ^(.*)$ blank.html [R=200,L,E=HTTP_ORIGIN:%{HTTP:ORIGIN}]
</Directory>