投稿

2014の投稿を表示しています

Ubuntu 14.04 Trusty Tahr で変換・無変換で IME を切り替えるようにする

イメージ
前提Ubuntu 14.04 を普通にインストールすれば iBus と Anthy で日本語が入力できるようになっているが、いくつか不満がある。中でも個人的に強調したい問題点が、直接入力・日本語入力の切り替えがトグル式にしかできないことだ。トグル式である限り常に今の入力モードがどちらであるかを覚えておくか、いちいちインジケーターを目視確認するかしなければならない。そうではなく、オン・オフのキーを個別に設定したい。具体的には Mac のように変換キーと無変換キーをそれぞれ日本語入力と直接入力への切り替えに割り当てたい。fcitx の導入iBus では実現できないようだったので、fcitx を導入する。以下のコマンドでインストールできる。 $ sudo apt-get install fcitx-mozc fcitx の設定[システム設定] の [言語サポート] で [キーボード入力に使う IM システム] を fcitx にする。このままだと iBus のインジケーターも残ってしまう。[システム設定] の [テキスト入力] で、[メニューバーに現在の入力ソースを表示] を外す。fcitx と Mozc のキーバインドが競合しているので、Mozc の方を消さないといけない。[Mozc ツール] の [一般] タブにある [キー設定の選択] を [編集...] し、[入力キー] が "Hankaku/Zenkaku" になっているものをすべて消すfcitx のインジケーターをクリックして [設定] を選ぶと [入力メソッドの設定] が開くので、[全体の設定] タブに切り替えて、一番下の [拡張オプションの表示] にチェックを入れる。[入力メソッドをオンに] と [入力メソッドをオフに] をそれぞれ設定する。参考iBus-1.5 を捨てて fcitx-mozc を使うことにした - どせいけいさんき。

Ubuntu 14.04 Trusty Tahr に Android 開発環境をセットアップする

JDK7 のインストールOpenJDK ではなく Oracle の JDK をインストールする。 $ sudo add-apt-repository ppa:webupd8team/java $ sudo apt-get update $ sudo apt-get install oracle-java7-installer Android Studio のインストール 以下のページからダウンロードして適当なディレクトリに展開する。実行ユーザーが書き込み権限を持ってる場所でないと SDK Manager がうまく動かないので注意。 Getting Started with Android Studio | Android Developers.../android-studio/sdk/build-tools/android-4.2.2/aapt": error=2, No such file or directory試しにプロジェクトを作ったら最初のビルドで上記のエラーが出た。64bit 版の OS を使っていると aapt の実行に失敗するらしい。以下のコマンドで実行できるようになる。 $ sudo dpkg --add-architecture i386 $ sudo apt-get update $ sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386 Android Studio をランチャーに登録するAndroid Studio のメニューから、[Tools] - [Create Desktop Entry...] とすると Unity の検索に Android Studio が出てくるようになるので、ドラッグ アンド ドロップでランチャーに登録できる。参考How to Install Oracle Java 7/8 (JDK and JRE) In Ubuntu 14.04, 13.10, 12.10, 12.04 and 10.04 Via PPA or Linux MintAndroid's aapt not running on 64-bit Ubuntu 13.10 (no ia32-libs). How can I fix this? - S…

Ubuntu 14.04 Trusty Tahr で CapsLock を Ctrl にする

単に CapsLock を Ctrl にするには、/etc/default/keyboard の XKBOPTIONS を "ctrl:nocaps" に書き換える。CapsLock と Ctrl を交換する場合は "ctrl:swapcaps" とする。要リブート。 # Check /usr/share/doc/keyboard-configuration/README.Debian for # documentation on what to do after having modified this file. # The following variables describe your keyboard and can have the same # values as the XkbModel, XkbLayout, XkbVariant and XkbOptions options # in /etc/X11/xorg.conf. XKBMODEL="pc105" XKBLAYOUT="jp" XKBVARIANT="" XKBOPTIONS="ctrl:nocaps" # If you don't want to use the XKB layout on the console, you can # specify an alternative keymap. Make sure it will be accessible # before /usr is mounted. # KMAP=/etc/console-setup/defkeymap.kmap.gz

Ubuntu 12.04 に Redmine をインストールする

Redmine をインストールするだけならすでにいろいろ情報あるけど、以下の様なこだわりでインストールしてみたのでメモ。Ruby は apt-get で入るやつを使うRuby 関連のパッケージはできるだけ gem で入れる (apt-get にあるやつでも)Redmine 自体は svn で取ってきて動かすサブドメイン (redmine.example.com みたいな) で見れるようにするMySQL をインストール以下のコマンドを実行すると root のパスワードを設定するように言われるので適当に設定する。 $ sudo apt-get install mysql-server テキストがデフォルトで utf8 になるように設定する。以下の 2 行を /etc/mysql/my.cnf のそれぞれ適切な位置に追加する。 [mysqld] character-set-server = utf8 [mysql] default-character-set = utf8 ついでにデータベースも作っておく。 $ mysql -uroot -p # パスワード入力 > create database redmine character set utf8; > create user 'redmine'@'localhost' identified by 'password'; > grant all privileges on redmine.* to 'redmine'@'localhost'; Apache をインストール 今回はもう入ってたけどこうやって入れたはず。 $ sudo apt-get install apache2 Passenger をインストール 今回はもう入ってたけどこうやって入れたはず。 $ sudo gem install passenger $ sudo passenger-install-apache2-module # 足りないものがあるからインストールしろと言われる # 言われなくなるまで繰り返し Redmine をインストール今回は /var/redmine に置いた。他の場所でも同じ。 $ svn checkout http…

Volley で同期的にリクエストを実行する

Volley は Android のネットワーク処理をいい感じに非同期で行ってくれる。とても便利だけど時々同期的に実行したい時がある。SyncAdapter の中とか。RequestFuture を使って以下のようにすれば非同期呼び出しが終わるまで待つことができる。 public void someMethod() throws ExecutionException, InterruptedException { RequestFuture<String> future = RequestFuture.newFuture(); StringRequest request = new StringRequest(URL, future, future); RequestQueue queue = Volley.newRequestQueue(getContext()); queue.add(request); String result = future.get();// 非同期呼び出しを join する // result でなんかする } 参考 Can I do a synchronous request with volley? - Stack Overflow