Linux で延命措置した Mac のためにマウスも復活

仕事でもプライベートでもパソコン操作はトラックパッドかトラックボールなので、マウスを使わない生活が何年も続いているが、こないだ Linux(Ubuntu)で延命措置を施した古い MacBook Pro (13 inch – Mid 2009)のトラックパッドが敏感すぎて不用意に動くことが多く、扱いにくいので、この際マウスに切り替えた方がいいかなと思い立った。

そういえば何年か前にディーラーでもらった Peugeot RCZ レプリカマウスが家にあった筈だというのを思い出し、自宅で発掘したので、とりあえず持って行って繋いでみた。

繋いで Mac の電源を入れたら、ヘッドランプとテールランプが点灯 (^^) 。そもそも、このマウスは自宅でも一度も使ったことがなかったので、こんなギミックがあることも知らなかった (^^; 。

OS が起動したら既にマウスが使える状態になってたので、あとはコントロールパネルでトラックパッドを機能停止するだけ。右クリックもスクロールホイールも問題なく使えて快適。しかも追加コスト無し (^_^) 。

まだまた使い倒しますよ。



2017 年 5 月 12 日現在のエディタ環境

結局テキストエディタがどうなったかというと、

  • Mac OSX: CotEditor に戻った
  • Linux (Ubuntu): medit
  • Windows 10:サクラエディタ

こうなった最大の理由は、Atom の重さがだんだん気になるようになってきたから。



Mac ではそうでもなかったのだが、Linux はそもそも Mac の使い古しだからもともと厳しいし、Windows も(こちらはさほど古いマシンでもないはずなんだが)意外と重くて、日本語入力がイチイチ引っかかる(キーストロークから文字の表示までに微妙な間が空く)のが、だんだん酷くなってくるような気がした。

一方で LaTeX の方は BibTeX のコンパイルまで latexmk で一発でできるようになったので、エディタを含めて統合的な環境を用意する必要が無くなった。それなら OS ごとに最も軽くて使いやすいエディタを使えば良いわけで、Mac はすんなりもともと使っていた CotEditor。Linux は 3 種類くらい試して medit が機能的にも必要十分で使いやすいように思えた。

再び難儀したのが Windows でのエディタ選び。Web で調べて人気のありそうなやつをいくつか試してみたが、Sublime Text はエディタと日本語入力との間でフォントサイズが合わなかったのが致命的で使用を断念(原因不明)、Notepad++ は日本語テキストのワードラップがおかしい問題がどうしても解決できず、結局国産のサクラエディタに落ち着いた。インターフェイスといい見た目といい、昔の Windows のフリーウェアっぽい雰囲気がプンプンしていて印象が悪かった(というか、なかなか使おうという気にならなかった)が、割り切って使い始めたら、軽くスムースに使えるし、機能も自分にとっては必要十分だし、仕事用と割り切って使うには合理的かなという感じがしている。できれば別ウィンドウを開く機能があれば文句ないんだが。


テキストエディタを全面的に乗り換えた話

今年 1 月の転職を契機に検討を始め、昨日ようやく結論が出た。結果的に結構な長旅になったので、この辺でまとめておこうと思う。結論から書くと、Mac / Windows / Linux とも Atom に落ち着いた。



検討を始めたきっかけと検討候補

昨年まで勤めていた会社では PC へのソフトウェアのインストールが制限されていたが、1 月に転職し、現在の会社ではソフトウェアのインストールに制限がないことが分かったので、どうせなら使いやすいエディタを探して使おうと思った。
しかし、そもそも Windows のソフトウェアに全く興味がなく、Windows のエディタをほとんど知らないので、Web でいろいろ探しているうちに、どうせなら Mac と Windows 両方で使えた方がいいし、ちょうど 1 月に、大学院に置いてある古い MacBook Pro に Linux を入れたので、3 つのマシンで同じエディタが使えるといいな、などと欲も出てきた。
そして Mac / Windows / Linux に対応している無料のエディタ、というだけで候補は次の 3 つに絞られた。

  • Atom (何にも考えずに使える普通の GUI テキストエディタ)
  • Vim (20 年以上前に UNIX でプログラミングする仕事で常用してたので慣れてる)
  • Emacs (全く未経験)

ある程度使ってみないと分からないので、とりあえず 3 台に全部インストールしてしばらく使ってみることにしたが、Emacs は環境整備さえ上手くできれば LaTeX での作業が劇的に楽になるらしい、という捨てがたい魅力があったので、この時点では Emacs が本命になってた。

結論にたどり着いた経緯

先人の知恵を Web で探しまくって 3 台のマシンに Emacs と Vim をインストールして、日本語が使える状態にし、Mac と Linux に関しては YaTeX が使える状態まで持っていった。すっかり Emacs をメインにするつもりになっていたが、ここまでできたところで、Atom のプラグインで LaTeX が便利に使えるようになるらしい、という記事をたまたま見つけた。

そもそも Atom は多少カスタマイズがいろいろ出来るエディタ、という程度の認識で、LaTeX に対応してるなんて夢にも思ってなかったので、全く調べてもいなかった。
試しにやってみたらあっさり成功。最初からこれにしていれば良かった。やっぱりこういうのは変な先入観を持たず、初期段階でしっかり調査すべきだと改めて思った。

負け惜しみ

結果的には壮大な回り道をしたが、今まで使ったことのなかった Emacs を使えるようになったし(ついでに環境設定のしかたも分かったし)、Mac で Homebrew を使えるようになったし、勉強になったので、今回の長旅にかけた時間は無駄ではなかった。


Atom で快適な LaTeX 文書作成環境ができてしまった

Emacs + YaTeX で日本語を含めた文書のコンパイルが通るようになって、いよいよ実戦投入しようかと思っていたところで、Atom で LaTeX のコンパイルができるようになるプラグインがあることをたまたま知った。



とりあえず下記のサイトに書いてある通りに作業したら、割とあっさり出来てしまった。なんだ最初からこれにすれば良かったじゃん、という話。

「atomで快適LaTeX編集環境」
http://ayihis.hatenablog.com/entry/2016/09/24/143641

ただし Atom のインストールは Homebrew Cask (Mac)や apt (Ubuntu)で行い、TeX Live は既に導入済みなので、上記サイトの記載内容の中で実行したのは Atom のプラグインの部分のみ。

Ubuntu の方はこれだけで日本語を含む文書のコンパイルが通った。

Mac の方では、コンパイルが始まった後に「! LaTeX Error: This file needs format pLaTeX2e' but this isLaTeX2e’.」というエラーが出て正常にコンパイルされない。しかしこれも先人の知恵を下記リンク先で見つけてあっさり解決 (^_^) 。

TeX Wiki「TeXworks などの統合環境でタイプセットをすると,“! LaTeX Error: This file needs format `pLaTeX2e’ but this is `LaTeX2e’.” となって日本語が出ない」
https://texwiki.texjp.org/?%E3%82%88%E3%81%8F%E3%81%82%E3%82%8B%E8%B3%AA%E5%95%8F#cb7a8a28

この文書には Atom での解決方法が直接書かれていないが、Atom では「latex」パッケージの設定で、「Engine」を「uplatex」に切り替えたら、問題なく日本語もコンパイルされるようになった。

簡単な文書で文書の編集・コンパイルを試してみたが、シンプルで使いやすいエディタで編集できて、ホットキー一発(Mac だと Command + i、Ubuntu だと Shift + Ctrl + b)で PDF に変換できて、しかも Atom の別タブに表示してある PDF に編集結果が即反映される。これは先日まで Mac で使ってた TeXShop より快適なのではないだろうか?

今後、実際に論文執筆に使ってみて、図の挿入とか Bibtex なんかの使い勝手も追々確認していきたい。


諸々アップデート用コマンド一覧

またまた自分用メモ。こういうの覚えるの苦手だし、いちいち検索するのもナニなので。



TeX Live アップデート

sudo tlmgr update --self --all

Mac OSX の homebrew のアップデート

brew update
brew upgrade
brew file cask_upgrade -C

Mac OSX anaconda のアップデート(最初から全部 homebrew で入れれば良かった)

conda update conda
conda update anaconda

Ubuntu の apt アップデート

sudo apt-get update
sudo apt-get upgrade


Ubuntu への YaTeX(野鳥)導入メモ

大学院側のマシンは Ubuntu を入れた時に既に LaTeX を導入済みだし、Emacs も apt で導入済みだったので、YaTeX のみ追加導入した。



基本的には Mac に導入した時と同じ。ただし ~/.emacs.d/init.el の記述内容は OS や使用するアプリケーションによって変える必要があるので、次の箇所のみ変更した。

  • 「(add-to-list ‘load-path “~/.emacs.d/lisp/yatex”)」という記述を削除(単に削除するだけでいいのかどうか確証が無いが、とりあえず自分のマシンにこのようなディレクトリが無いため)
  • 「(setq dvi2-command “open -a Preview”)」で、呼び出すプログラムのファイル名を「”evince”」に変更(PDF ビューワー)

とりあえずこちらでも、簡単なテスト文書のコンパイルと PDF ファイルの表示はできたので OK とする。あとは実際の論文のファイルを使って他の機能が問題ないかどうか、追々テストする。


Emacs 操作方法メモ

ソコソコの頻度で使う割には、なかなか頭に入らないけど CheatSheet に載ってない操作方法のメモ(必要に応じて随時更新)。




古い MacBookPro に Linux で延命措置

処理能力が落ちてしまって一旦お蔵入りにしていた古い MacBookPro を、論文書き用と割りきって必要最低限の構成でインストールしなおして、研究室に置いて使っていたが、いよいよ OS のアップデートを躊躇するような状況になってきた。



OS をアップデートしないのはセキュリティ上よくない(他人に迷惑をかける可能性もある)し、論文書きを LaTeX で、データ処理とグラフ作成を Python + pandas + MatPlotLib で行うようになってきたので、この際 Linux にしたほうが合理的なのではないかと考えた。

一応 OSX の環境も残せるに越したことはないので、OSX と Ubuntu のデュアルブートにしようと思ったが、ディスクに何らかのエラーがあるようで、Mac のディスクユーティリティでパーティションを切れない(かつエラーも修復できない)。どうせ HDD に問題があるなら、と思い切って OSX を消して Ubuntsu 専用機にした。

ちなみに Mac の仕様は次の通り。

動作確認も兼ねて、年明け以降の 3 日間はできるだけ(twitter や Facebook なんかも含めて)メインの Mac を使わずに Linux だけで生活してみたが、概ね問題なさそう。今のところちょっと残念なのは次の 2 点くらい。

  • 1Password が使えない。
  • トラックパッドの感度が良すぎて、タイピング中に親指の付け根に反応してカーソルが変なところに飛んでしまう。

前者については Linux 対応アプリが無いので止むを得ない。今までが便利すぎたと割りきるしか無い。
後者については、とりあえず紙を貼ってトラックパッドの有効面積を狭くしてみた (^_^; 。いまいちスマートじゃないし、これでも完全に解決できたわけではないが、無いよりマシ。

きっと Mac では OS(というかドライバ?)の方で、ハードウェアの感度が高くても使いにくくならないように、うまくチューニングしてたのだと思う。Apple ってこういうところを真面目に作りこんでるんだな、と改めて感心した。

でも全体的に動きは軽くなったし、起動もシャットダウンも速くなったので、これら 2 つのデメリットを上回るメリットを感じている。

備忘も兼ねて、今回実施した作業をまとめると次の通り。例によって先人の知恵を全面的にお借りして、無事に作業完了。

  1. SD カードに Ubuntu インストール用ディスクイメージを書き込む
  2. rEFIrd をインストールして SD カードから起動できるようにする
  3. SD カードから起動して Ubuntu をインストールする
  4. Ubuntu 起動後に SD カードから WiFi のドライバを探してコピーする
  5. 再起動して WiFi が使えるようになったら自宅無線 LAN に繋ぐ
  6. 全てのパッケージをアップデートする(sudo apt-get update && sudo apt-get upgrade)(これだけで1時間くらいかかった)
  7. Chrome をインストールして、これをデフォルトブラウザにする
  8. 日本語入力とキーマッピングを設定するキーボードレイアウトが US 仕様(例えば「@」が Shift+2 になってる)から変えられなくて、しばらく困った。下記サイトに書いてある方法を参考にしながら、設定 –> 再起動を何度か繰り返して試行錯誤したら、いつのまにか解決してた (^_^; 。最終的に何が問題だったのかは不明。
  9. Dropbox のインストール
    公式サイトに書いてあった手順に従う。ただし .deb ファイルをダウンロードして開いても何も起きなかったので、公式サイトに書いてある「コマンド ラインを使った Dropbox のヘッドレス インストール」を実施した。あっさり成功。
    サーバとの接続も、既存アカウントのメールアドレスとパスワードを入力し、iPhone の認証コードアプリで取得した 6 桁コードを入れれば問題なく完了。
    ホームディレクトリの .profile に dropbox デーモンを起動する行を追加。
  10. Anaconda をインストールするUbuntu をインストールした時点で既に Python はインストールされていたので、IPython や各種ライブラリを入手するために Anaconda をインストールする。公式サイトから 3.5 version の 64-bit installer をダウンロードして実行。
    https://www.continuum.io/downloads#linux
  11. LaTeX をインストールする
  12. IPA 日本語フォントをインストールして LaTeX と Python(MatPlotLib)で使えるように設定する
  13. GIMP をインストールする

以下、今回の作業で活用させていただいた先人の知恵(おおむね参照順)。こうして見ると、いかにキーマッピングでハマったかが分かる (^_^; 。

OS X El CapitanとUbuntu 16.04 LTSのデュアルブート環境を構築する
http://ottan.xyz/el-capitan-ubuntu-dual-boot-4020/

El capitanにrEFIndを導入するとき – Qiita
http://qiita.com/yuki_bg/items/61ecf0b8a2d84823c365

MacBookでUbuntuを使うためにしたことまとめ – Qiita
http://qiita.com/shima_529/items/43ef699215f9cec48fd2

UbuntuのmozcでUSキーボード入力/JISキーボード入力を簡単に切り替える方法
http://qiita.com/AnchorBlues/items/beeb40593fd4c579dbe5

Qiita: MacでUbuntuを快適に使う
http://qiita.com/RyoheiMorimoto/items/a82369a83c100a646cce

Qiita: ubuntuで日本語入力を行う
http://qiita.com/shishamo_dev/items/238f6e5060fb838827f6

UbuntuでMacのキーボードを使う時の設定
http://qiita.com/DeliciousBar/items/4db21c3d66dc65f9e78b

Dropbox を Linuxサーバでも使うときにやるべき設定
http://qiita.com/yudoufu/items/163f9c9b6b9fa2f4bf9e

Ubuntu 16.04LTS にLaTeX をインストール
http://qiita.com/seki0913/items/fe9a50ea11c716d76514

Qiita: モダンな日本語 TeX 環境を整える
http://qiita.com/ynakayama/items/706ae9e59c1b6fd3e3d2

Ubuntuで端末からスクリーンショットを撮る方法まとめ
http://qiita.com/yas-nyan/items/80f2db8c4bdf4c8e87b8

keisukeのブログ【matplotlib】日本語の設定
http://kaisk.hatenadiary.com/entry/2015/02/15/215831

 


(2017.1.9 追記)
大学院のネットワークに接続したらアップデートで「ハッシュサムが適合しません」というエラーが連発して、アップデートができなくなったが、これまた先人の知恵を借りて速攻解決 (^_^) 。

「Ubuntuのapt-get updateで「ハッシュサムが適合しません」と出た時の対処法」
http://www.nemotos.net/?p=1428