Ubuntu 16.04+fcitx+mozcで、viでインサートモードになる時は、mozcは起動させず、作業後にESCを押した時には、自動でmozcをOFFにする設定

私は、Ubuntu 16.04 (をカスタマイズしたLin4Neuro 16.04)でfcitx+mozcで日本語入力を行っています。
エディタはvimを利用しています。

多くの方がネットに記載されていますので、詳細は書きませんが、私がvimで日本語文書を書くとき、

  • 日本語で入力している時、入力が終わった後、ESCキーを押しても日本語入力の状態のままなので、一度mozcを切ってからでないと、ノーマルモードになれない。

という問題がありました。

この点に関して、私がよく参考にさせていただいている「いくやの斬鉄日記」にまさにこれに関する記事があり、中国語ですが、この問題を解決する .vimrc に記載する設定のリンクが紹介されていました。

早速、以下を ~/.vimrc に記載しました。(中国語のコメントは、英語に変換してあります)

"##### auto fcitx  ###########
let g:input_toggle = 1
function! Fcitx2en()
   let s:input_status = system("fcitx-remote")
   if s:input_status == 2
      let g:input_toggle = 1
      let l:a = system("fcitx-remote -c")
   endif
endfunction

function! Fcitx2zh()
   let s:input_status = system("fcitx-remote")
   if s:input_status != 2 && g:input_toggle == 1
      let l:a = system("fcitx-remote -o")
      let g:input_toggle = 0
   endif
endfunction

set ttimeoutlen=150
"Leave Insert mode
autocmd InsertLeave * call Fcitx2en()
"Enter Insert mode
autocmd InsertEnter * call Fcitx2zh()
"##### auto fcitx end ######

これでvimを起動したところ、日本語でいろいろ書いた後に、ESCを押してノーマルモードに戻ると、自動でmozcがoffになりました。やった!という感じです。

しかし、もう少し使っていて、不便に感じることがありました。それは、vimを起動して最初の挿入モードになるときに必ず mozc が立ち上がってしまうことです。日本語の文章を書くときはいいのですが、スクリプトを書くときは邪魔になります。ここは自動じゃないほうがいいなと思いました。

で、上の記載をよくよく見ると

Fcitx2en() というファンクションと
Fcitx2zh() というファンクションがあり、

前者はESCが押された時に自動でinput method (IM)をoffにする機能であり
後者は挿入モードになった時に自動でIMをonにする機能のようです。

私は後者の機能がいらないんだと気づきました。

なので、以下のように、Fcitx2zh()のところを削除しました。

"##### auto fcitx  ###########
let g:input_toggle = 1
function! Fcitx2en()
   let s:input_status = system("fcitx-remote")
   if s:input_status == 2
      let g:input_toggle = 1
      let l:a = system("fcitx-remote -c")
   endif
endfunction

set ttimeoutlen=150
"Leave Insert mode
autocmd InsertLeave * call Fcitx2en()
"##### auto fcitx end ######

こうしたところ、私の期待していたように

  • vimでノーマルモード→挿入モードになった時にはIMは起動しない
  • 必要時に手動でIMを起動
  • ESCを押すと自動でIMをoff

となりました。

これでvimがさらに便利になりました。
自分の備忘録として記載しておきます。

Ubuntu14.04以降へのFreeSurfer 6.0のインストール

2014年12月にFreeSurfer 5.3のインストールの方法を記載しましたが、しばらく時間が経ちました。最近、FreeSurfer 6.0がリリースされましたので、コピペでもいけるぐらいにまとめてみます。

英語でのFreesurferをLinuxにインストールするときの具体的な方法は、
こちらに書いてあります。以下は英語を読むのがつらい方のためです。

なお、楽をしたい人は、一番最後にある【楽をするためのスクリプト】をご覧ください。

続きを読む

Ubuntuのapt-get updateで「ハッシュサムが適合しません」と出た時の対処法

先日、Ubuntuでapt-get updateを行った所、以下のエラーに遭遇しました。

W: http://jp.archive.ubuntu.com/ubuntu/dists/trusty-updates/main/source/Sources 
の取得に失敗しました  
ハッシュサムが適合しません

このような場合の解決法がいくつか提示されています。よくみられているもののひとつに、Ubuntuフォーラム内の投稿があります。

これでいいのですが、本質は何か考えてみました。

本質は、

/var/lib/apt/lists

の中にあるファイルとの比較で失敗しているようです。

したがって、消せばいいのは、この中身で、apt-getはその下にあるpartialディレクトリがなかったら自動で作成してくれます。

なので、やればいいのは、たった一つです。

$ sudo rm -r /var/lib/apt/lists/*

これでapt-get updateを行えば問題は解決するはずです。

自分の備忘録として残しておきます。

Ubuntu 16.04 における plymouth

Ubuntu 16.04になってから、Plymouthの挙動が変なので、いろいろ調べたところ、以下のことがわかりました。

これまでは、テーマは、/lib/plymouth/themesの下に保存されていましたが、これからは、/usr/share/plymouth/themesの下に保存されるようになったようです。

したがって、自作のテーマを使いたい場合、以下を行う必要があります。今、テーマはmytheme/mytheme.plymouthと仮定します。

  • 自作の mytheme.plymouth の中のファイルのパスを “/lib/plymouth” -> “/usr/share/plymouth” に変更
  • update-alternativesで新たにdefault.plymouthを設定
  • $ sudo update-alternatives --install \
    /usr/share/plymouth/themes/default.plymouth 
    default.plymouth \
    /usr/share/plymouth/themes/mytheme/mytheme.plymouth 100
    
  • テーマの変更
  • $ sudo update-alternatives --config default.plymouth
    
  • システムに反映
  • $ sudo update-initramfs -u
    

場所が変更になったことだけ頭においておけば、そこまで悩む必要はなさそうです。

Thinkpad X250でUbuntu 14.04を動かすときに、タッチパッドを無効にする方法

私は、今、Thinkpad X250とT430を使っています。Thinkpad T430では、BIOSで、タッチパッドを無効にすれば、そのままタッチパッドが無効になったので、よかったのですが、同じことをX250でやっても効果がありません。

それでいろいろ調べてみました。

結論は、以下の方法が一番早いかと思います。

ターミナルで以下をタイプします。

$ synclient TouchpadOff=1

ただ、これは、一時的なもので、ずっとそうしたくない場合は、自動でこれが動くようにしてあげればいいわけです。

私はXFCE環境なので、XFCEでどうするかを調べました。

2つのファイルを準備する必要があります。

  • disable-touchpad.sh (名前はなんでもいいです)
  • これには、以下の2行だけ記載されています。

    #!/bin/sh
    synclient TouchpadOff=1
    

    これを実行権限をつけた後、パスの通っているディレクトリに保存します。私は、~/binに起きました。

  • disable-touchpad.desktop (これも拡張子が.desktopであれば名前はなんでもいいです)
  • これには、以下の3行だけ記載されています。

    [Desktop Entry]
    Type=Application
    Exec=disable-touchpad.sh
    

    この保存場所が大事なのですが、

    ~/.config/autostart

    に保存します。autostartがなければ自分で作れば大丈夫です。

    これで、ログアウトし、再度ログインすると、めでたく、Touchpadが無効になっています。

ちなみに、検索するとよく出てくる

/usr/share/X11/xorg.conf.d/50-synaptics.conf

の一番最後に、以下を記載

Section "InputClass"
Identifier "no need for accelerometers in X"
MatchProduct "SynPS/2 Synaptics TouchPad"
Option "Ignore" "on"
EndSection

というのは、ひとつ間違えるとシステムが起動しなくなることもあり得るので、注意が必要です。

Packages to install to run MITK-2015.05.2 on Ubuntu 14.04

MITK-2015.05.2 depends on Qt5, which makes users to install some additional packages.
With trials and errors, below is what you need to do to run MITK-2015.05.2 on Ubuntu 14.04.

  1. build-essential
  2. You need this to run Qt5

    $ sudo apt-get install build-essential
    
  3. Core of Qt5
  4. $ sudo apt-get install qt5-default qttools5-dev-tools
    

    With this command bunch of software packages will be installed on your system.

  5. Two more libraries…
  6. You need two more libraries to run MITK-2015.05.2

    sudo apt-get install libqt5webkit5 libqt5svg5
    
  7. Set environment variable
  8. As the official site points out, you need to set envirament variable as below (when you use bash). I put this in ~/.bashrc

    export QT_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins 
    

Now it works!

Thinkpad X250, X201s, T430s上のUbuntu 14.04に対して、lm-sensorsとthinkfanを用いて熱対策を行う方法

しばらく前から気になっていたのですが、Thinkpad X201sやThinkpad X250にUbuntu 14.04を入れると、妙に熱くなる時がありました。
lm-sensorsをインストールして、温度を見たところ、CPUの温度が77℃に達していました!これは大変と思いました。
調べたところ、”Thinkpad overheating with Ubuntu”といった感じの記事がいろいろ見つかりました。
それらを見てみると、どうもファンの制御がうまくいっていないようです。

そんな中、”Ubuntu 11.10 on ThinkPad X220 でファン制御“という投稿を見つけました。

続きを読む

Ubuntu 14.04でLibreOfficeを4.xから5.xにアップグレードする方法

この記事は、もともとは、Ubuntu 12.04でLibreOfficeを3.xから4.xにアップグレードする方法に記載していたものですが、Ubuntu 14.04においても同様の方法でいけますので、改めて記載します。

Ubuntu 14.04を利用していると、LibreOfiiceは4.xのままです。
しかし、LibreOfficeは5.xにアップグレードされ、互換性なども以前にまして高まっています。
以下の方法で、簡単にLibreOfficeを4.xから5.xにアップグレードできます。

sudo add-apt-repository ppa:libreoffice/ppa
sudo apt-get update
sudo apt-get dist-upgrade

ここでポイントは、apt-get updateの後にapt-get dist-upgradeを行うことです。

apt-get upgradeとapt-get dist-upgradeの違いは、man apt-getに以下の記載があります。

upgrade
upgrade は、現在システムにインストールされている全パッケージの最新バージョンを、/etc/apt/sources.list に列挙した取得元からインストールするのに使用します。現在インストール中のパッケージに新しいバージョンがあれば更新しますが、いかなる時も現在インストール中のパッケージの削除は行いません。対象のパッケージが、他のパッケージのインストール状態を変更せずに更新できない場合は、現在のバージョンのままとなります。最初に update を実行しておき、apt-get にパッケージの新しいバージョンがあることを知らせる必要があります。

dist-upgrade
dist-upgrade は、upgrade の機能に加え、新バージョンのパッケージに対する依存関係の変更を知的に操作します。apt-get は「洗練された」競合解決システムを持ち、必要とあらば比較的重要でないパッケージを犠牲にして、最重要パッケージの更新を試みます。そのため dist-upgradeは、いくつかのパッケージを削除する可能性があります。/etc/apt/sources.list ファイルには、必要なパッケージファイルを検索する場所のリストが含まれています。

upgradeは全く削除されることなく、dist-upgradeは必要あらばファイルを削除する可能性があるわけですね。今回、LibreOfficeの3.xから4.xへのアップグレードには、いくつかのファイルが削除される必要もあるので、dist-upgradeを利用することとなります。

何はともあれ、この3つのコマンドで、LibreOfficeを安定した最新版にアップグレードできます。

UbuntuでXPSファイルをPDFに変換する方法

Windowsでは、PDFに対抗してXPS形式という形式でファイルを出力することができます。
今はMicrosoft OfficeならばPDFに直接書き出すことができますが、それ以外のソフトウェアでは、WindowsではAdobe Acrobatやその他のPDFに出力することができるソフトウェアを使わないと直接PDF出力ができません。その点、XPS形式ならばどんなソフトウェアからも出力することができます。

出張先で、プリンタがなく、アクセスできるWindowsにPDF出力機能がない場合、XPSをとりあえず出力して、
Ubuntu側でXPSをPDFに変えられるのではないだろうか?と思いました。

そうしましたら、見つけました。その名もxpstopdfというコマンドです。
これは、libgxps-utilsというソフトウェアに入っています。

続きを読む

(筑波大関係者専用)Ubuntuで筑波大のVPNサービスに接続する方法

筑波大の学術情報メディアセンターはVPNサービスを運用してくださっています。
非常にわかりやすいマニュアルを提供してくださっていますが、残念ながら、Linuxのマニュアルはまだ提供されていません。

そこで、私の環境(Xubuntu 14.04)でOpenVPNを使ってうまくVPN接続に成功しましたので、備忘録を兼ねて書いておきます。

続きを読む

Ubuntu12.04以降に本家TeX Liveの最新版を簡単にインストールする方法

先日、私のシステムをXubuntu 12.04からXubuntu 14.04にアップグレードしました。
私はLaTeXに関しては、本家のTeX Liveを使っています。インストーラーは十分に使いやすいのですが、怠け者なので、より簡単にできないかと方法を探してみました。

なぜかというと、本家を使う場合、リンクにあるように、少し設定が必要だからです。

そのリンクをひとつずつ確認していたところ、ある方が、Ubuntu用の本家TeX Liveのインストールスクリプトを公開しているということを知りました。最新版にリンクされています。

早速トライしてみたら便利だったので、紹介します。

続きを読む

Grubで困った時にまずすること

先日、デュアルブートのマシンでXubuntuのアップデートをした時にGrubがアップデートされ、質問に適当に答えていたら、Grubのエントリーが消えてしまうという事件がありました。

Grubの設定をいろいろするのはめんどくさい、何かいい方法がないかなと探していました。
そうしたら、ありました。めんどくさがりにぴったりなコマンドが。

$ sudo update-grub

これで、システムに入っているOSを探し出し、自動でメニューにエントリーしてくれます。

ということで、Grubで困ったら、焦らず、まずはupdate-grubをタイプしてみてはどうでしょうか。

XubuntuでPlayOnLinux経由でMS Office 2010をインストールし、日本語入力を問題なくする方法

Ubuntuにしてたいていは満足なのですが、職場で利用となると足かせになるのがOfficeの問題です。LibreOfficeでたいていは間に合うのですが、Wordの校閲機能やPowerpointのレイアウトの問題などはいかんともしがたい問題です。これは少しずつストレスになっていきます。

Wine経由でMS Office 2010をインストールできると聞いていましたが、試してみてもエラーが多い状態でした。

その後、調べていたら、PlayOnLinuxを使うとあっさりいけるよという書き込みを複数見ました。やってみたらすんなりできました。

しかし、日本語を入力すると、入力しているのに消えてしまうという問題がありました。これもいろいろ調べて、対処をしてみたのですが、うまく動かず…。
でも、よく考えてみたら、PlayOnLinux経由なのだから、設定ファイルが別なのではないか?と思ったところ、それがあたりでした。

以下に方法をまとめます。

  1. ベースのOS
  2. Xubuntu 12.04です。

  3. MS Officeのバージョン
  4. Office 2010の32bitを準備します。Office 2013は動作しません。また、Office 2010の64bit版も動作しません。

  5. Wineのインストール
  6. PlayOnLinuxはWineのフロントエンドなのでWineが必要です。オフィシャルのWineはバージョンが若干古いので、私は下記でWine-teamのPPAからWineをインストールしました。これでwine 1.6がインストールされます。これを書いている時点での最新版は1.7ですが、1.6で一連の流れに問題はありませんでした。

    sudo add-apt-repository ppa:ubuntu-wine/ppa
    sudo apt-get update
    sudo apt-get install wine

  7. PlayOnLinuxのインストール
  8. PlayOnLinux(POL)もUbuntuのデフォルト(4.0.14)では、Office 2010のインストールに対応していません。なので、POLのサイトから、最新版(4.2.2)をダウンロードします。
    詳細はhttp://www.playonlinux.com/en/download.htmlに記載してありますが、とりあえず、12.04の場合は下記のとおりです。

    wget -q "http://deb.playonlinux.com/public.gpg" -O- | sudo apt-key add -
    sudo wget http://deb.playonlinux.com/playonlinux_precise.list -O /etc/apt/sources.list.d/playonlinux.list
    sudo apt-get update
    sudo apt-get install playonlinux

  9. PlayOnLinuxの起動
  10. メニューのゲーム→PlayOnLinuxでPlayOnLinuxが起動します。
    そこで、「インストール」をクリックします。

    そうすると、下図のようになりますので、SearchからOffice 2010と入れると候補が出てきますので、選択し、右下の「インストール」をクリックします。

    POL_install01

    その後は私は既にインストールしてしまったので、スクリーンショットは示せませんが、指示された通りに従っていけば、必要なファイルなどを全部ダウンロードしてくれます。なお、インストールする場所は変更するとうまくいかないということですので、とりあえずデフォルトのまま入れてしまうのが無難なようです。

    ひと通り終わると、以下のようになります。

    POL_install02

    これでインストールは完了です。これまでの苦労は何だったんだろうと思うぐらい簡単でした。

  11. 日本語入力の設定
  12. しかし、このままだと、日本語入力の問題があります。様々なサイトが、

    ~/.wine/user.regに

    [Software\\Wine\\X11 Driver]
    “Inputstyle”=”offthespot”

    のように記載しなさい

    と書いてあります。しかし、POLを使用した場合は、それではうまくいきません。

    Officeの日本語設定は、ホームディレクトリの下の以下の場所にあります。

    ~/.PlayOnLinux/wineprefix/Office2010/user.reg

    したがって、適当なエディタでこのファイルを開けます。今はLeafpadにしましょう。(なんでもいいですが)

    leafpad ~/.PlayOnLinux/wineprefix/Office2010/user.reg

    そして、このファイルの一番下に以下の記述を追加します。

    [Software\\Wine\\X11 Driver]
    "InputStyle"="root"

    (環境によってはバックスラッシュは¥に見えると思います)

    その後、その後、POLを再起動すると、ファイルの設定を読み込み直します。

    これで日本語をうつと、インライン変換まではいかないのですが、日本語変換が画面の左下の方にあらわれ、確定した文字がきちんと表示されます。

これでさらによい環境ができあがりました。

Make battery-life of Ubuntu 12.04 longer on ThinkPad T430s

It’s been months since I swithed completely to Xubuntu 12.04 from MS Windows on my ThinkPad T430s. Basically I’m satisfied with Xubuntu 12.04, but there are some points which need tweaks. They are…

  • Battery Life
  • Somehow battery on ThinkPad T430s lasts only around 2hours on Xubuntu, which is much shorter than Windows.

  • Projector
  • XFCE is not so good at dealing with projectors or external monitors. I’m still struggling with this matter, so I don’t make any comments now.

As of battery life, I found a very good tool, which is TLP.

By installing TLP, the battery life gets longer by one hour without any modification, which is great.

You can find how to install TLP here.

Thinkpad T430sでUbuntu 12.04ファミリーがフリーズする時

Thinkpad T430sにXubuntu 12.04を入れました。インストール自体は何の問題もなかったのですが、入れてから1日の間に10回以上システムがフリーズしました。マウスもキーボードも何の操作も受け付けなくなってしまうのです。

これでは、信頼できないマシンになってしまいます…。

いろいろ調べたところ、カーネルを3.4にアップデートしたところ、問題が解決したという記事をみつけました。

実際にやってみました。

  1. http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.4-precise/にアクセスします。
  2. 64bitの場合ここから3つのファイルをダウンロードします。
    • linux-headers-3.4.0-030400-generic_3.4.0-030400.201205210521_amd64.deb
    • linux-headers-3.4.0-030400_3.4.0-030400.201205210521_all.deb
    • linux-image-3.4.0-030400-generic_3.4.0-030400.201205210521_amd64.deb

    つまり、後ろにamd64.debとあるものとall.debとあるものです。32bitの場合でしたらi386.debとall.debになります。

  3. ダウンロードしたあとで、次のコマンドでカーネルをインストールします。

    sudo dpkg -i linux-*

  4. カーネルがインストールされたあと、古いカーネルを削除します。そのためには、apt-get autoremoveがよいと思います。
    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get autoremove
  5. マシンを再起動します。
  6. ターミナルを立ち上げ、次のようにタイプします。

    uname -r

    これで3.4.0-030400-genericと表示されれば新しいカーネルになったことを確認できます。

こうしたところ、私のThinkpad T430sは全くフリーズしなくなりました。カーネルの問題だったということですね。これで安心して解析ができます。

Ubuntuのキーボードセッティング

Ubuntuではキーボードのレイアウトを簡単に変えることはできますが、「システムデフォルト」はコマンドラインでしか変えられないようです。

keyboard

変えたい時は以下をタイプすれば大丈夫です。

$ sudo dpkg-reconfigure keyboard-configuration

ちなみに、私はThinkapd 430sの英語キーボードを使っているので、Generic 101に変更しました。

TeX Live 2012 on Ubuntu 12.04

Windows 8.1を試しに使ってみたら、あまりにも不適応を起こしたので、この際、思い切ってメイン環境をLinuxに切り替えることにしました。

OSはXubuntu 12.04ベースのLin4Neuroです。自分が使いやすいようにカスタマイズしているので、一番自分にぴったりあっています。
Latexに関しては、TeX Live 2012を入れたいと思っていたのですが、検索したら、こちらのサイトに非常にわかりやすく解説されていました。やるべきことは下記のとおりです。

$ sudo apt-add-repository ppa:texlive-backports/ppa
$ sudo apt-get update; sudo apt-get upgrade; sudo apt-get install texlive-lang-cjk

こんなに簡単にできるのは感動ものです。

Neurodebianのミラーサイト

このブログでも今までに紹介し、そしてLin4Neuroでも採用させていただいてきたNeurodebianですが、開発者のYarsolav Halchenkoといろいろやりとりした結果、日本でミラーサイトを立ち上げました。最近はファイルサイズの大きなものもありますので、日本からの場合、このミラーサイトを使っていただいたら、ダウンロード時間を短縮できる可能性があります。

方法を簡単に説明します。

まず、http://neuro.debian.netにいきます。

トップページにある、”How to use this repository”を見ます。

そこに、下図にあるような感じでDebianかUbuntuのリリースとダウンロードサイトを選ぶドロップダウンメニューが出てきます。

そこに出てくる2行を端末にコピペします。Ubuntu 12.04の場合は以下の2行になります。

wget -O- http://neuro.debian.net/lists/precise.jp | sudo tee etc/apt/sources.list.d/neurodebian.sources.list
sudo apt-key adv --recv-keys --keyserver pgp.mit.edu 2649A5A9

その後、apt-get updateと、apt-get upgradeを行い、さらにapt-get installで必要なソフトをインストールします。

それだけで設定はおしまいです。便利ですよね。

いろいろな画像解析関連ソフトが簡単にいれられますので、どうぞ利用してみてください。
日本語版Lin4Neuroでもこの日本のミラーサイトがデフォルトになっています。