17 Feb 2014, 12:32

[Linux Mint] rbenvで取得したrubyで ruby tkをつかう方法メモ

はじめに

Ruby tkを利用しようとしたところ、エラーがでて使えなかった。

% irb
irb(main):001:0> require 'tk'
LoadError: cannot load such file -- tk
        from /home/tsu-nera/.rbenv/versions/2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /home/tsu-nera/.rbenv/versions/2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from (irb):1
        from /home/tsu-nera/.rbenv/versions/2.1.0/bin/irb:11:in `<main>'

この解決方法についてメモします。

Ruby/TkはTcl/TkのツールキットをRubyから利用するライブラリ。

Rubyの標準ライブラリに入っている。

Ruby/Tk 参考Links

<div class="outline-text-4" id="text-1-0-1">
  <ul class="org-ul">
    <li>
      <a href="http://www.tcl.tk/">Tcl Developer Site</a>
    </li>
    <li>
      <a href="http://ronor.web.fc2.com/rubytk/">Ruby/Tk入門</a>
    </li>
    <li>
      <a href="http://magazine.rubyist.net/?0003-RubyTkMovement">Rubyist Magazine &#8211; Ruby/Tk の動向</a>
    </li>
  </ul>
</div></p>

tk-devを入れてみる

もともと自分のPCに入っていたRubyはrbenvを使ってビルドした。 どうも、Ubuntu(Mint)環境では、tk-devをあらかじめインストールしておかないと、Rubyのビルド時にRuby/Tkがビルドされないようだ。

ということで、

sudo apt-get install tk-dev

他にも、いろいろツールが追加でインストールされる。

libxss-dev tcl tcl-dev tcl-lib tcl8.5-dev tk tk-lib tk8.5 tk8.5-dev tk8.5-lib x11proto-scrnsaver-dev

これで、Rubyを再インストールしてみる。

% rbenv uninstall ruby-2.1.0
% rbenv install ruby-2.1.0 -v

これでOKだろうとおもったけど、やっぱりエラーした。

ビルドログをみると、やっぱりスキップされてしまう。

configuring tk
...........
check struct members..
check libraries....
Use ActiveTcl libraries (if available).
Search tclConfig.sh and tkConfig.sh.....................
WARNING: found "/usr/lib/tclConfig.sh", but cannot find valid Tcl library for the tclConfig.sh. So, ignore it.

WARNING: found "/usr/lib/tkConfig.sh", but cannot find valid Tk library for the tkConfig.sh. So, ignore it.
..........
Fail to find [tclConfig.sh, tkConfig.sh]
Use X11 libraries (or use TK_XINCLUDES/TK_XLIBSW information on tkConfig.sh).

Search tcl.h..
Search tk.h..Search Tcl library..........
Search Tcl library..........
Warning:: cannot find Tcl library. tcltklib will not be compiled (tcltklib is disabled on your Ruby. That is, Ruby/Tk will not work). Please check configure options.

Can't find proper Tcl/Tk libraries. So, can't make tcltklib.so which is required by Ruby/Tk.
If you have Tcl/Tk libraries on your environment, you may be able to use them with configure options (see ext/tk/README.tcltklib).
At present, Tcl/Tk8.6 is not supported. Although you can try to use Tcl/Tk8.6 with configure options, it will not work correctly. I recommend you to use Tcl/Tk8.5 or 8.4.
Failed to configure tk. It will not be installed.
configuring tk/tkutil
Failed to configure tk/tkutil. It will not be installed.
configuring win32
Failed to configure win32. It will not be installed.
configuring win32ole
Failed to configure win32ole. It will not be installed.

Ubuntu特有のバグだったもよう

バグだった模様。バッチを発見。

しかし、パッチの当て方がわからない。30分で挫折。

途方にくれていたが、ズバリ解決する記事を発見!

sudo apt-get remove tk-dev
sudo apt-get install tk8.4-dev tcl8.4-dev

sudo ln -sfn /usr/lib/tcl8.4/tclConfig.sh /usr/lib/tclConfig.sh
sudo ln -sfn /usr/lib/tk8.4/tkConfig.sh /usr/lib/tkConfig.sh

このとおりに実施したら、なんとなくうまくいったっぽい。


configuring tk
........
check struct members..
check libraries....
Use ActiveTcl libraries (if available).
Search tclConfig.sh and tkConfig.sh...............................
Valid [tclConfig.sh, tkConfig.sh] are found in [["/usr/lib", "/usr/lib"]]
Use [tclConfig.sh, tkConfig.sh] == ["/usr/lib/tclConfig.sh", "/usr/lib/tkConfig.sh"]
Use X11 libraries (or use TK_XINCLUDES/TK_XLIBSW information on tkConfig.sh).

Find Tcl/Tk libraries. Make tcltklib.so which is required by Ruby/Tk.
configuring tk/tkutil

成功、よかった ^_^;

% irb
irb(main):001:0> require 'tk'
=> true

ついでに拡張tkも

tkはrequireできたけど、拡張tkをrequireするとエラーする。


require "tkextlib/tkimg/png"
require "tkextlib/tkimg/jpeg"

これは、libtk-imgを入れることで解決。

sudo apt-get install libtk-img

tkextlib/tileがつかえない!

tkextlib/tileをrequireすると、エラーした。tk-tileを入れる。

sudo apt-get install tk-tile

それでもエラーする!これもバグみたい。tcltk 8.5をインストールすればいいよとのこと。

結局8.5を頑張って入れる

tileを利用するには、8.5を入れる必要がある。 しかし、パッチを当てても自分の環境ではうまくいかない。 こまりあぐねていたが、以下のエントリを発見。

Ruby 1.8でも tcltk8.5をいれようという内容。これを真似してRuby2.0でも入れてみる。

tcl/tk8.5をインストール。

sudo apt-get install tcl8.5-dev tk8.5-dev

tk-devをいれていなかったらこれもインストール。(いろいろやりすぎて、どれが正解なのかわからない)

シンボリックリンクも作成。

sudo ln -sfn /usr/lib/tcl8.5/tclConfig.sh /usr/lib/tclConfig.sh
sudo ln -sfn /usr/lib/tk8.5/tkConfig.sh /usr/lib/tkConfig.sh

Ruby公式サイトから2.0をダウンロード。

あとはコンパイルするのみ。


cd ruby2.0.0-p353/ext/tk
CONFIGURE_ARGS='--with-tcl-include=/usr/include/tcl8.5/ --with-tcllib=tcl8.5 --with-tklib=tk8.5' ruby extconf.rb
make

rubyはシステムのrubyを利用してコンパイルする。 mkmfというライブラリをつかっているので、ruby-devか入っていなかったら入れておく。

これで、コンパイルに成功すると、tcl/tk8.5版の tcltklib.soができるはず!

これを、既存のtcltklib.soと置き換える。

cd ~/.rbenv/versions/2.0.0-p353/lib/ruby/2.0.0/x86_64-linux
sudo mv tcltklib.so tcltklib.so.bak
suod cp (コンパイルしたtcltklib.so) .

これで、tkextlib/tileがつかえるようになった。

irb(main):004:0* require 'tkextlib/tile'
=> true

なんか、Mint 64bit環境ででRuby/tkをつかうのがめちゃくちゃ大変なのだけれども。ボクには ruby/tkはレベル高すぎて使いこなせる気がしない。。。

19 Jan 2014, 12:53

タイル型ウィンドウマネージャという新たな世界観に衝撃を受けた!XmonadをつかってワクワクCUI生活

GUIのウィンドウを自由自在に操ることができる タイル型ウィンドウマネージャ、Xmonadを導入しました。

[toc]

タイル型ウィンドウマネージャとは

コマンドラインにこだわりはじめると、なんでもかんでもコマンドラインで完結させたくなる。

screenやtmuxのようなマルチプレクサは、とても快適だがそれをGUIでも実施するにはどうすればいいか調べたところ、タイル型ウィンドウマネージャの存在を知った。

タイル型ウィンドウマネージャとは、ウィンドウをコマンドラインで操ることのできるツール。

説明は、Wikipediaに譲るとして、タイル型ウィンドウマネージャを知ったことは、カルチャーショックだった。初めてコマンドラインの世界にふれて、コンピュータにはこういう側面もあるのか、というような感動を受けた。

タイル型WMには様々な種類があるようだ。XmonadとAwesomeが2大勢力のようなので、XMonadの方を導入してみた。

環境

  • Linux Mint 16 Cinnamon

セットアップ

公式サイトの Documentation – Quick start for the impatientに従いセットアップします。

インストール

Linux MintはUbuntuと同様に3つのパッケージが必要。

$ sudo apt-get xmonad
$ sudo apt-get instasll libghc-xmonad-dev
$ sudo apt-get instasll libghc-xmonad-contrib-dev

設定ファイルの作成

$HOME/.xmonad/xmonad.hsに設定ファイルを新規作成する。

もっとも基本的な設定ファイルは以下。Haskellで記述されている。

import XMonad

main = do
xmonad $ defaultConfig

Xmonadの起動

ログアウトする。ログイン画面で、「セッション」とかかれた部分を選択。「XMonad」を選択し、ログインする。ログインすると、なんと真っ黒な画面!

ここでかなりあせったが、実はこれはXMonadでログインしている証拠。あせらず騒がず【右Alt + Shift + Enter】を入力。これで、ターミナルが起動され、操作が可能になる。

Xmonadの使い方

ここまで着たら、ガイダンスに従って操作を覚えていく。

基本をメモ

– mod-shift-return: ターミナル起動

– mod-shift-q: xmonad終了

– mod-p: dmenu起動

– mod-q: 再起動

– mod-space: レイアウト配置変更

– mod-j/k/m: focus変更

– mod-h/l: サイズ変更

– mod-tab: レイアウト移動

manコマンドでも使い方がわかる。

man xmonad

カスタマイズ

一通り操作を覚えたら、カスタマイズを飽きるまで行う。以下のページをベースにカスタマイズ。

dmenuの導入

アプリケーションランチャーである、dmenuを導入する。

$ sudo apt-get install dmenu

Mod-pで上部にランチャーが表示されるので、適当に検索してツールを実行。例えばchromeで検索すると、google-chromeがすぐに引っかかる。

ショートカットキーの変更

Mod Keyはデフォルト 右Altなので、これをカタカナ・ひらがなキーに変更する。(

~/.Xmodmapを新規作成して、以下を書く。既存のmod3をクリアして、Henkan_Modeを設定。

clear mod3
add mod3 = Hiragana_Katakana

キーに対応する名前は、xevを起動して調べることができる。

xmonad.hsの defaultConfig内に以下を追記。

modMask  = mod3Mask,

最後に、以下で有効にする。

xmodmap $HOME/.Xmodmape

起動時にこの設定を有効にするために、~/.xsessionに追記しておく。

これで、使いやすくなったか???いや・・・微妙だ。

ターミナルの変更

ターミナルはMint defaultのgnome-terminalではなくて、軽量なterminalである、unicode-rvxtを利用。xmonad.hsの defaultConfigに以下を追記。

terminal = "urxvt"

XMobar

ステータスバーを表示させるために、xmobarを入れる。他にも、dzen2というツールがある。

$ sudo apt-get install xmobar

次に、設定ファイル~/.xmobarrcを作成。テンプレートを利用してみる。

$ cp /usr/share/doc/xmobar/examples/xmobar.config ~/.xmobarrc

.xmobar/xmobar.hsの mainのすぐ下の行に以下を追記することで、xmonad起動の延長でxmobarを起動することができる。

xmproc <- spawnPipe "/usr/bin/xmobar /home/tsu-nera/.xmobarrc"

キーボードショートカットの設定

以下のように書くことで、キーボードショートカットが設定できる。ここでは、Winキーとの組み合わせで設定

import XMonad.Actions.WindowGo

-- for keyboard shortcut
modm = mod4Mask

`additionalKeys`
 [
 ((modm, xK_e), runOrRaise "emacs" (className =? "Emacs"))
 , ((modm, xK_t), runOrRaise "urxvt" (className =? "URxvt"))
 , ((modm, xK_g), runOrRaise "chrome" (className =? "Google-chrome-stable"))
 ]

クラス名は、このコマンドを端末から実行して、+ のカーソルで調べたいWindowをクリックする。

xprop | grep WM_CLASS

背景の設定

fehという軽量な画像ビューアーで表示する方法が載っていたので、これを利用。

インストール。

sudo apt-get install feh

以下で背景を設定できる。

feh --bg-scale ~/Pictures/wallpaper/moonlight.png

これを.xsessionに書くと、なぜか動作しなかった。しかたがないので、.profileに記入した。

ファイルマネージャー

Mintのファイルマネージャー、nemoを利用すると、勝手にデスクトップを変更されるので、nemoは –no-desktopモードで起動する。aliasを.zshenvに切る。

alias nemo='nemo --no-display'

ショートカットでフルスクリーン

Mod + Spaceを押したときのデフォルトでは、複数回キーを押さないとフルスクリーンにならないので、これを改善。以下のサイトを参考に設定した。これは便利!

まとめ

ほかにも、いろいろと細かい設定が必要だけれども、きりがないので今日はこんなところで。

いろいろな作業をコマンドラインで実施することができるので、とても快適。しかし、残念ながらマウスを使わざるを得ないところもある。たとえば、ブラウザ操作のコピぺはマウスに頼らざるを得ない。

タイル型WMとの出会いはとても感動的だ。

さらなる精進をつんで、立派なCUIマスターになりたい。

19 Jan 2014, 11:47

省エネ時代の軽快ターミナル!rxvt-unicode(urxvt)でサクサクターミナル生活

軽量なターミナルである、rxvt-unicodeを試してみました

urxvtとは

rxvt-unicode(urxvt)とは、軽量なターミナル。

  • Unicode対応
  • 設定ファイルによって、自由にカスタマイズ可能
  • クラッシュしらず
  • 小メモリ、爆速の軽快さ。

などなどの特徴がある。軽量なためxmonadとの相性がよいと、xmonadのサイトで紹介されていたため、ターミナルを乗りかえてみた。

以下でインストール。

sudo apt-get install rxvt-unicode-256color

カスタマイズ

カスタマイズは、~/.Xdefaultsに設定を記入することで実施する。環境は、Linux Mint.

以下のサイトのXdefaultが大変参考になりました。ありがとうございます。

フォントの設定

Rictyを設定。アンチエイリアスも有効に設定。

URxvt.allow_bold:           false
URxvt*font: xft:Ricty:size=12:antialias=true

背景を透過にする

背景に画像を設定して、ターミナルは半透明にすることにする。以下を参考にした。

以下を追記。

urxvt*shading: 80
URxvt*inheritPixmap: true

色テーマをmolokaiにする

色テーマを鮮やかなmolokaiにする。ここを参照。

.Xdefaults結果

余計なツールバーもないし、軽いし、カスタマイズ自由、なかなかいい感じ。

参考

13 Jan 2014, 05:19

Beautiful Colorful Terminal – Emacsターミナル環境をカラフルに彩る

外見大事! 美しいとテンションが上がって作業効率も向上する。

Emacsターミナル環境をカラフルに改造したので、導入したツールを晒します。

Environment

  • Linux Mint 16
  • Emacs 24

Guake

まずは、ターミナルから。デフォルトのGnome端末でも機能としては十分だが、デフォルトツールというところが気にくわないので、デフォルトでない一番人気をさがしたところ、Guakeを入れることにした。

sudo apt-get install guake

Guakeの利点は、画面のサイズが気軽に切り替えられるところ。上からにょきっと現れる操作感がよい。

  • F12で全画面表示
  • ショートカットで半画面表示

暗めの幻想的な背景を探して設定した。

F12を押したときに端末にフォーカスできないバグがあるらしいので、手動で修正。

Ricty

美しいフォントRictyを設定。

tmux-powerline

tmuxのモードラインをカラフルに彩るツール、tmux-powerlineを導入しました。

導入は、READMEに従って作業。カスタマイズはこれから。

Referenced

カラーテーマ

Emacs Color Theme

カラーテーマを変更。Emacsのカラーテーマを変更するには、そもそも Emacs Color Themeを導入する必要があるので、これを導入。

gnuemacscolorthemetest – GNU Emacs Color Theme Test – Google Project Hostingからダウンロードしてきて、ロードパスの通った場所におく。

init.elに以下を追加した。

(require 'color-theme)
(color-theme-initialize)

Molokai

Vimのカラーテーマで有名な、molokaiを導入してみた。カラフルな装飾がMolokaiの特徴。

molokaiのテーマは派生がいろいろあるようなので、Googleで検索して筆頭に現れたこれをいれる。

molokai-theme-kit.el,molokai-theme.elをダウンロードしてロードパスの通った場所へ配置。ここでは、themsというディレクトリを.emacs.dのしたにつくった。

init.elに以下を追加した。

    (add-to-list 'custom-theme-load-path "~/.emacs.d/themes")
     (setq molokai-theme-kit t)
     (load-theme 'molokai t)

emacs-powerline

Emacsのモードラインをカラフルに彩る Emacs Powerlineを入れる。tmux-powerlineと合わせると、画面がとても賑やかになる。

powerline.elをダウンロードして、ロードパスの通った場所に配置。

ここにも数種類のデザインがあるし、ネット上にもさらに多くのものがある。いろいろと試してみる。

init.elに以下を追加

(require 'powerline)

10 Jan 2014, 15:41

[Linux Mint]xinputでタッチパッドをコマンドラインから有効化・無効化する

Linux Mintを利用していると、ノートPCのタッチパッドの感度がどうもよすぎる。そのため、普段はタッチパッドを無効にして、マウスのみを利用していた。

マウスが利用できないときにノートPCを立ち上げると、タッチパッドが制御不能であるためになにもできなくなる。そんなときに、コマンドラインからタッチパッドを有効化する方法を調べた。

xinputコマンドを利用する。

コマンドラインから制御するためには、まず以下を入力。

gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled true

制御デバイスのID or 名前を調べる。

% xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=11   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Video Bus                                 id=6    [slave  keyboard (3)]
    ↳ Sony Vaio Keys                            id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ USB2.0 Camera                             id=9    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=10   [slave  keyboard (3)]

Touchpadという名前がついているものが該当。ここでは、SynPS/2 Synaptics TouchPad id=11

以下のコマンドで有効・無効を切り替える。

# 無効
% xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 0
% xinput --set-prop 11 "Device Enabled" 0

# 有効
% xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1
% xinput --set-prop 11 "Device Enabled" 1

ログインシェルにaliasを切っておくとよい。.zshenvに定義した。

alias touchpad_disable='xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 0'
alias touchpad_enable='xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1'

参考

02 Jan 2014, 07:29

Linux Mintインストール後の設定メモ

前回、Linux Mintをインストールしたので、今回はその後の設定についてまとめます。

日本語入力環境の構築

デフォルトでは日本語がまず入力できません。なので日本語を入力できるようにします。

ソフトウェアを取得するリポジトリの変更と更新

日本国民ならば、パッケージを取得するための公式リポジトリは日本のミラーサイトに設定するべき。設定のソフトウェアソースを開き、公式リポジトリのミラーサイトを日本の国旗がかかれているものに変更。

http://ftp.jaist.ac.jp/pub/Linux/linuxmint/packages/ 
http://ftp.riken.jp/pub/Linux/ubuntu/

ソフトウェアを更新する。

$ sudo apt-get update

ディレクトリ名の英語表記

ホーム配下にあるディレクトリ(ピクチャやドキュメントなど)は日本語表記だが、コマンドラインとの相性を考えると英語の方がよいので変更する。

$ env LANGUAGE=C LC_MESSAGES=C xdg-user-dirs-gtk-update

WorkSpace数の変更

WorkSpace数はデフォルトで2つだけれども、4つに変更する。

$ gsettings set org.cinnamon number-workspaces 4

テーマと背景を変更する

テーマや背景は趣味で変更。

メニューの色も変更してみる。gtk-theme-configというツールをつかう。

$ sudo apt-get install gtk-theme-config

インストールしたらメニューから Theme Configurationを選択。

Emacsを利用すると、256色つかえなかった。環境変数に以下を設定する必要がある。

$ export TERM=xterm-256color

 

フォントの変更

デフォルトフォントは、Sansというフォント。これをプログラミングフォント、Rictyに変更する。

Windows(NTFS)ファイルシステムをマウントする

Linux側からWindowsのドライブをマウントすれば、Linux側からもWindowsのファイルが利用できて便利です。以下にまとめました。

ディスプレイ明るさの調整

ノートPCなので、バッテリーを利用しているときは、ディスプレイの明るさを落として電力を節約したい。xbacklightdをインストールする。

sudo apt-get install xbacklight

調整は以下のコマンドで実施。setの後ろの数字で調整。

xbacklight -set 80

Applications

各種アプリケーションを入れます。

zsh

端末のシェルをzshにします。

$ sudo apt-get install zsh
$ chsh

git

Gitをインストール

$ sudo apt-get install git

続けて、githubと連携。以下のエントリも参照。

githubで管理しているdotfilesを落としてきます。

Ruby

rbenvを利用してインストール

git clone git://github.com/sstephenson/rbenv.git ~.rbenv
mkdir -p ~/.rbenv/plugins
cd ~/.rbenv/plugins
git clone git://github.com/sstephenson/ruby-build.git
rbenv install 2.1.0
rbenv global 2.1.0 
rbenv rehash

エラーした。

configure: error: in `/tmp/ruby-build.20140102130128.5783/ruby-2.1.0':
configure: error: C compiler cannot create executables

この方法を試すとうまくいった Home · sstephenson/ruby-build Wiki

apt-get install build-essential autoconf libssl-dev libyaml-dev libreadline6 libreadline6-dev zlib1g zlib1g-dev
CC=/usr/bin/gcc rbenv install 2.1.0

Eclipse

この記事がとても参孝になりました。ありがとうございます

Linux版のEclipseを公式サイトからインストールします。/opt/eclipse配下に展開。以下で起動確認。

% /opt/eclipse/eclipse

起動できたら、日本語化します。Pleadesプロジェクトから日本語に必要なファイルをダウンロードして、feature,pluginsに上書き。

eclipse.intの最後に以下を追加

-javaagent:/opt/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar

Eclipse環境の引越し方法はEclipse年次バージョンアップ時の移行方法について調べたを参考。

Wine

Windowsから引っ越してきたならば、必須のツール。なんとWindowsアプリがLinuxで利用できるのだ!Cygwinみたいなもの。

$HOME/.wine配下にCドライブのようなものができて、そこにアプリがインストールされる。

Evernote

Wineを利用して、Evernote for windowsをインストール!Winowsのホームディレクトリ/AppDate/Local/Evernote/EvernoteにEvernoteのデータがあるため、ここにシンボリックリンクをはることで、LinuxとWindowsでデータを共用。

その他、趣味に合わせてツールをドンドン導入。

  • Google Chrome
  • freemind
  • Emacs

01 Jan 2014, 12:39

デュアルブート時のLinux環境Dropbox導入について(Windows 7/Mint)

デュアルブートでDropboxを利用するとき、すでにDropboxアカウントは持っていて、Windows上にファイル群もある。

そんなときデュアルブートなので、WindowsのボリュームをマウントすればWindows上のDropboxにアクセスできる。なので、Dropboxの同期ファイルはWindows上のフォルダに指定すれば容量がすくなくなりうれしいです。

デュアルブートでのDropbox導入方法についてメモします。

LinuxからWindows(NTFS)をマウントする

ここでは、/mnt/winというマウントポイントにマウントするとします。

$mkdir -p /mnt/win

以下のコマンドでマウントします。マウントさせるボリューム名はGPartedツールを起動して調べるのがよいでしょう。

以下のコマンドでマウントします。マウントさせるボリューム名はGPartedツールを起動して調べるのがよいでしょう。(ここでは/dev/mapper/isw_bfahbhfbaf_Volume0p3)

$ sudo mount -t ntfs /dev/mapper/isw_bfahbhfbaf_Volume0p3 /mnt/win
$ df
Filesystem                           1K-blocks     Used Available Use% Mounted on
/dev/mapper/isw_bfahbhfbaf_Volume0p3  85284860 77874012   7410848  92% /mnt/win

このままでは、毎回手動でマウントさせないといけないので、Linux起動時に自動でマウントさせるようにします。/etc/fstabに以下の行を追加することで、Linux起動時にマウントするようになります。

/dev/mapper/isw_bfahbhfbaf_Volume0p3 /mnt/win ntfs defaults 1 0

参考: 4.4. ファイルシステムのマウントとアンマウント

Dropboxのインストール

以下からDropboxのアプリをインストールする。

Dropboxデーモンを起動する

~/.dropbox-dist/dropboxd

指示にしたがって進んでいくと、同期用のディレクトリがきかれます。すでにDropboxアカウントは持っていて、Windows上にファイル群もある。デュアルブートなので、WindowsのボリュームをマウントすればWindows上のDropboxにアクセスできる。なので、Dropboxの同期ファイルはWindows上のフォルダを指定します。

/mnt/win/Documents and Settings/TSUNEMICHI/を指定する。すると、以下のように質問されるので、OKを選択。

「Dropbox」という名前のフォルダが既に存在しています。そのフォルダ内にある既存のファイルをすべて、お使いの Dropbox で統合しますか?

ついでに、シンボリックリンクも作成。

ln -s "/mnt/win/Documents and Settings/TSUNEMICHI/Dropbox" ~/

Dropboxデーモンを自動起動

DropboxはLinux起動時に自動起動しないので、自動起動するように /etc/init.d/に起動スクリプトを作成します。

以下のサイトを参考にしました。ありがとうございます。

Install Dropbox In An Entirely Text-Based Linux Environment – The Unofficial Dropbox Wiki

ちゃんと起動したようです

$ ps ax|grep dropbox
 1610 ?        Sl     0:13 /home/tsu-nera/.dropbox-dist/dropbox

31 Dec 2013, 05:49

美は生産性に宿る!プログラマーのためのフォントRictyをLinux Mintに導入した

普段利用しているフォントが美しいと、なにをするにもテンションがあがりますね。

美は生産性に宿る!!

ということで、美しいプログラミングフォント、Rictyを Linux Mintに導入してみました。

以前、Windowsについての導入手順を記事にしましたが、今回はMint Linux環境で導入してみます。

環境

  • Linux Mint 16 64bit cinnamon

Rictyとは

Rictyとは、プログラミング言語を美しく表示するためのフォントです。Top 10 Programming Fontsで1位になった Inconsolataと、日本語用フォントMigu 1Mを合成して作成されています。

Rictyのインストール

FontForgeのインストール

FontForgeとは、フォントのためのエディタです。コンソールから、

$ sudo apt-get install fontforge

Ricty生成スクリプトのダウンロード

githubからRicty生成スクリプトの最新版を落としてきます。

$ mkdir -p /tmp/ricty
$ cd /tmp/ricty
$ mv /home/tsu-nera/Downloads/Ricty-master.zip .
$ unzip Ricty-master.zip 
$ mv Ricty-master/ricty_generator.sh .

Inconsolata のダウンロード

Inconsolata 公式サイトより OpenType file を入手。

$ mv /home/tsu-nera/Downloads/Inconsolata.otf .
  • Inconsolata.otf

Migu 1M のダウンロード

M+とIPAの合成フォントサイトから、Miigu 1Mを入手

$ mv /home/tsu-nera/Downloads/migu-1m-20130617.zip .
$ unzip migu-1m-20130617.zip
$ mv migu-1m-20130617/migu-1m-* .
  • migu-1m-regular.ttf
  • migu-1m-bold.ttf

Ricty生成

準備完了。

$ ll
-rw-r--r-- 1 tsu-nera tsu-nera   58464 12月 31 14:02 Inconsolata.otf
-rw-r--r-- 1 tsu-nera tsu-nera 3440184  6月 17  2013 migu-1m-bold.ttf
-rw-r--r-- 1 tsu-nera tsu-nera 3148684  6月 17  2013 migu-1m-regular.ttf
-rw-r--r-- 1 tsu-nera tsu-nera  115980 12月 31 13:58 ricty_generator.sh

以下でRictyを合成します。

$ sh ricty_generator.sh auto

完成しました。

$ ll
-rw-r--r-- 1 tsu-nera tsu-nera 3538464 12月 31 14:22 Ricty-Bold.ttf
-rw-r--r-- 1 tsu-nera tsu-nera 3228704 12月 31 14:22 Ricty-Regular.ttf

Rictyインストール

最後に、Rictyをシステムにインストールします。

$ mkdir -p ~/.fonts
$ cp -f Ricty*.ttf ~/.fonts/
$ fc-cache -vf

これで、フォントの選択画面にRictyが表示されるようになります。

システムのフォントをおきかえる

メニューからフォントを選択して、Rictyを選択することでシステムのフォントを置き換えることができます。

これで作業完了。Happy Programming!!

30 Dec 2013, 17:43

Fcitx-anthyを使ってLinux Mintで親指シフト日本語入力環境を構築するまでの手順

あたくしは何を隠そう親指シフターなのです。

Linux環境を利用するにあたって最大の不安は、親指シフトが利用できるかどうかというところでした。色々調べてみた結果、利用できたので方法を書いておきます。

Mint日本語対応

まずは、日本公式HPの手順にしたがって、日本語対応を完了させます。

コマンドは以下。

$ wget -q http://linuxmint-jp.net/linuxmint-ja-archive-keyring.gpg -O- | sudo apt-key add -
$ sudo wget http://linuxmint-jp.net/sources.list.d/linuxmint-ja.list -O /etc/apt/sources.list.d/linuxmint-ja.list
$ sudo apt-get update
$ sudo apt-get dist-upgrade

$ sudo apt-get install mint-gnome-ja --install-recommends

fctix-anthyを選ぶ

IMとは、インプットメソッドの略でコンピュータに文字を入力するためのソフトウェア。IMEとは、IMのエンジン(Engine)。かな漢字変換を制御するソフトウエア。文字入力は、キーボードからの文字列をIMEで変換してIMでアプリケーションに渡します。

Mintで利用できるものでメジャーなものは、

  • IM
    • iBus
    • Fcitx
  • IME
    • Mozc
    • Anthy

ネットて調べたところ、うれしいことにAnthyが親指シフト対応しているようだ。MozcはGoogle日本語入力で利用されている技術がオープンソースになったもので、Anthyよりも変換能力が高いが、親指シフトが残念ながら利用できない。

iBusは評判が悪そうなので(本の虫: iBus 1.5がクソすぎる)、対抗馬として最近出てきたFcitxをIMに選択。

よって、fctix-anthyを試してみることにしました。

fctix-anthyのインストール

以下の記事を参考にしました。ありがとうございます。

以下からインストールします。

$ wget -q https://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -O- | sudo apt-key add -
$ wget -q https://www.ubuntulinux.jp/ubuntu-jp-ppa-keyring.gpg -O- | sudo apt-key add -
$ sudo wget https://www.ubuntulinux.jp/sources.list.d/saucy.list -O /etc/apt/sources.list.d/ubuntu-ja.list
$ sudo apt-get update

記事でのfcitx-mozcの部分をanthyに変更しています。

$ apt-get install fcitx fcitx-anthy fcitx-libs-qt5 fcitx-frontend-qt5

また、fctix設定を開こうとするとエラーしたので以下もインストール。

$ apt-get install fcitx-config-gtk

最後におまじないをして、ログアウト・ログインしなおし。

$ gsettings set org.gnome.settings-daemon.plugins.keyboard active false
$ im-config -n fcitx

これで利用できるようになったはず。`パネルの右下にキーボードが表示されていればOK.

Fctixの設定

メニューからFctix設定を選択。Anthyをダブルクリックして選択。

全般->入力方式から nicolaを選択して完了。

変換機能はMozcに劣る。しかし、変換候補がタブで次次表示できるのはよい。こんなに簡単に親指シフトが実現できるなんて、素晴らしい!!