技術の犬小屋

Webプログラミングを餌に生きる犬のメモ帳

Posts in the Macintosh category

前の会社ではMacbook AirにiTerm2(ターミナル環境)、Alfred(アプリケーションランチャ)、Vim(エディタ)などをインストールして開発を行っていたが、転職に伴ってPCがIiyama製のWindowsノートパソコンに変わったので、前の開発環境になるべく近付けるように色々な設定を行った。
 

ターミナル環境

iTerm2の代わりにCygwinをインストールした。Cygwinは仮想的にターミナル環境を実現するツール郡である。Cygwinに付属のMinttyはiTerm2と比べてもほとんど遜色ないが、タブが使えないのが残念である(仕方がないので、tmuxのタブ機能で代替している)。
 

アプリケーションランチャー

Alfredに代わるランチャとしてExecutorをインストールした。Alfredと比べて、Executorは無料であるが、Alfredの備える様々な機能には残念ながら及ばない。しかし、普通にランチャとして使うなら十分に納得のいくものである。
 

メインエディタ

Macbookで開発していたときは、PHPとJavascriptをメインで書いていたこともあって、VimにneosnippetとneocomplcacheとSyntasticとJSLintを導入してやっていたが、転職に伴いメインで使う言語がJavaになってしまった。Javaと言えば、Eclipseが最強過ぎてVimではイマイチ追従出来ないのでEclipseにVrapper(Vimのキーバインディングを実現するプラグイン)を入れることで満足のいくものになった。Vrapperでは、vim-surroundが使えるし、補完はneocomplcacheの代わりにCtrl + Spaceを使えば良い。更にVimでおなじみのCtrlpの代わりにCtrl + Shift + rでファイルの語句検索も出来るし、Taglistが無いと生きられない人の為にCtrl + Alt + hによる階層ジャンプも用意されている。
Vrapperの導入については、こちらの記事にまとめた。
 

マークダウンエディタ

Macのマークダウンエディタと言えば、Macdownの使い勝手が群を抜いて良かったが、あの使い勝手に最も近いであろうマークダウンエディタをWindowsでも見つけることが出来た。アプリケーション名は、Haroopad。なんとMacdownに無かったVimキーバインドまで使える優れものなのだが、惜しいことに少しバグがあるようである。
 

おまけ:タッチパッドをMacbook Airのタッチパッドの触り心地に近付ける試み

メーカーにより設定方法が異なるが、私の環境での設定方法を載せておく。
[コントロールパネル]-[マウス]-[デバイス設定]-[設定]から設定を行う。

  • 1本指でのスクロールを無効にする
  • PalmCheck(タッチパッドの誤操作を防ぐ機能)を最大まで上げる
  • タッチ感度を最大まで軽くする
  • タップ機能を全て無効にする

 
 
以上
 
 
参考
特になし

仕事でMacVim-kaoriyaを使っている。間違って日本語入力の状態でノーマルモード中にh,j,k,lでカーソル移動を行おうとして、MacVim-kaoriyaが誤動作してしまい、辛かったので対処した。
 

対処方法

  • 書類ごとに入力ソースを自動的に切り替える
  • 最新のMacVim-kaoriyaを使用する

 
以下より、それぞれの方法について説明する。
 

書類ごとに入力ソースを自動的に切り替える

キーボード環境設定 を開き、 書類ごとに入力ソースを自動的に切り替える にチェックを付ける。
 
書類ごとに入力ソースを自動的に切り替える
 
このように設定することで、MacVimのノーマルモード時にブラウジングに入り、日本語入力に切り替えてしまったとしても、MacVimに戻ってきた時は英語入力に切り替わる。
 

最新のMacVim-kaoriyaを使用する

最新のMacVim-kaoriyaでは、インサートモードを抜けたときに自動的に英語入力に切り替わるようになっている。
 
 
以上
 
 
参考
独自の調査

tmuxの使い方

tmuxを使い始めたので,導入方法や使い方をメモしておく。
今回は最低限必要な概念や操作だけを覚えた。
 

tmuxとは

tmuxは端末を多重化することができるソフトウェアである。1つのスクリーンから複数の端末を作成,アクセス,制御することを可能にする。
tmuxを使っていれば,例えば,何かのビルド中やDBを設定している最中にsshが切れても安全である。もし使っていない場合,sshが切れるとプロセスがkillされ,最悪の場合,処理が中途半端な状態になり,環境を壊してしまう恐れがある。
 

tmuxのインストール

今回はhomebrewを使用してインストールを行った。homebrewがインストールされた状態で,以下のコマンドをターミナルから入力する。

brew install tmux

 

tmuxの使い方

tmuxの基本的な使い方は以下となる。
 
基本的に,tmuxコマンドでtmuxを起動しておくだけで端末を多重化することができる。

tmux

 
アタッチを行うことで前回デタッチした状態から作業を再開することが出来る。

tmux
tmux a
tmux attach

 
デタッチを行うことで作業を中断することが出来る。また,sshが切れた際には自動的にデタッチが行われる。

tmux detach

 
新しくtmux内でタブを増やすことも出来る。

tmux new-window

 
tmux内でのタブの移動

tmux next-window
tmux previous-window

 
tmuxセッションの確認

tmux ls

 
tmuxセッションの終了
該当するtmuxセッションにてexitコマンドを実行することで,tmuxセッションを終了することが出来るが,全てのセッションを終了したい場合は以下のコマンドで行うことが出来る。

tmux kill-server

 

tmuxのショートカットキー

tmuxでは,上記で挙げた操作にショートカットキーが用意されているので,こちらを覚えると作業が捗る。
 

キー 動作
Ctrl-b + d セッションのデタッチ
Ctrl-b + c 新しくtmux内でタブを増やす
Ctrl-b + w tmux内のタブを選択移動
Ctrl-b + n tmux内のタブを順移動
Ctrl-b + p tmux内のタブを逆順移動

 
 
以上
 
 
参考
@paselaからの指導と助言
tmuxを使い始めたので基本的な機能の使い方とかを整理してみた – 完熟トマト
デザイナーのための tmux 超入門
Macにtmuxを導入する – Qiita

iTerm2の使い方

iTerm2の概要やショートカットキーを覚えたので,メモしておく。
 

iTerm2とは

iTerm2はMac OS Xで動作するターミナルエミュレータである。Macに標準で搭載されているターミナルと比べて,以下の点が優れている。

  • 画面分割できる
  • ペースト履歴
  • キーワード検索ですべてハイライトする機能がある
  • 設定が細かくできる

 
以下より,ショートカットキーについてまとめる。
 

iTerm2のショートカットキー

ショートカットキー 機能
Command + t 新しいタブを開く
Command + d ウィンドウを縦分割
Command + Shift + d ウィンドウを横分割
Command + [ 分割した画面上の移動
Command + ] 分割した画面上の移動
Command + Shift + + 文字の拡大
Command + − 文字の縮小
Command + Shift + h ペースト履歴の表示
Command + Enter 全画面表示とウィンドウ表示の切り替え

 

iTermをフルスクリーンで起動させる

Preferences.. -> Profiles -> Windowを開き、
StyleでFullscreenを選択する。
 

iTermで新しいタブを開いたときにディレクトリを継続させる

Preferences.. -> Profiles -> Generalを開き、
Working DirectoryでReuse previous session’s directoryを選択する。
 
 
以上
 
 
参考
【図解】ゼロから始めるモダンなコマンドライン環境作り #iTerm2 #tmux #zsh|CodeIQ MAGAZINE

先日,MacBook Airを購入した。Macではyumやapt-getのようなパッケージ管理ツールとしてMacPortsやHomebrewが用意されている。
 
MacPortsとHomebrewのそれぞれの特徴は以下のようになっている。
 

MacPorts

  • 対応しているパッケージ数がHomebrewより多い

 

Homebrew

  • MacPortsよりスピーディ
  • パッケージの依存関係を少なく保つことができる

 

Homebrewをセットアップする

Homebrewの公式サイトにインストール手順が載っているので、まずはこちらを参考にしてインストールしてみる。
 
以下をTerminal.appに貼り付けて実行する。

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

 
エラーが返ってきた場合はエラーの内容を見て、足りないものを適宜インストールする。
おそらく、以下の2つが足りない可能性が高い。

  1. Xcode
  2. Java

XcodeはAppStoreからインストールすることができ,JavaはTerminal.appからjava -versionをするとインストールするかどうか尋ねてくるのでインストールする。
不足していたものをインストールし終わったら,Terminal.appからHomebrewのインストールを行う。
無事にインストールが完了したら、homebrewを使用する上で問題が無いかをチェックする為に以下のコマンドをTerminal.appから実行する。
 

brew doctor

 
ほとんどの場合,問題が無いと思うが,万が一問題があったときはエラーメッセージを読みながら対処しよう。
 

Homebrewを使用する

パッケージを探す

brew search パッケージ名

 
パッケージをインストール

brew install パッケージ名

 
パッケージの有効化と無効化

brew unlink パッケージ名 #無効化
brew link パッケージ名   #有効化

 
パッケージ一覧の更新

brew update  #更新
brew upgrade #更新があるパッケージを再ビルドする

 
インストールされたリストを表示する

brew list

 
パッケージをアンインストール

brew remove パッケージ名

 
homebrewの設定を確認する

brew --config

 

追記

アプリケーションもHomebrewで管理できるようにする

homebrew-caskを導入することで,Google ChromeやVagrant,VirtualBoxといったアプリケーションもHomebrewで管理することが出来るようになる。
 

homebrew-caskのセットアップ

homebrew-caskをHomebrewからインストールする。

brew install caskroom/cask/brew-cask

 

Homebrewとhomebrew-caskでアプリケーションをインストールする

homebrew-caskを導入することでHomebrewからアプリケーションを管理することも出来るようになる。

brew cask install virtualbox
brew cask install vagrant
brew cask install google-chrome
brew cask install dropbox
brew cask install evernote

 

インストールに対応しているアプリケーションのリストを表示する

インストールに対応しているアプリケーションのリストを表示する。

brew cask search

 
このままだと見辛いので,lessに渡して実行する。

brew cask search | less

 
lessでは,/(スラッシュ)で文字列検索が出来るので,これで目当てのアプリケーションを探すことが出来る。
 
 
以上
 
 
参考
Homebrew — MacPortsは酒でも飲みたくなるでしょ?使おうHomeBrew!
MacOSX – パッケージ管理システム Homebrew – Qiita [キータ]
homebrew-caskを使って簡単にMacの環境構築をしよう! | nanapi TechBlog