カテゴリ: Mac

会社でつかっていたPCがだいぶ古くなってきたので、新しいPCに交換して貰いました。で、久しぶりに乗り換えでのセットアップしたので、メモがてらに書き残しておきます。

手動でインストールするソフト

まずは、ソフトをばんばん入れて操作しやすいようにしていきます。入れるソフトは以下の通り。

  • Chrome
  • lastpass
  • dropbox
  • emacs
  • Alfred

まぁお馴染みメンバーですね。OSがMavericksになるとlastpassが要らなくなりそうかな。

追記 AlfredはApp Storeからだと、バージョンが古いのしかおとせないみたいなので、v2をダウロードして入れました。


App Storeでインストールするソフト

App Storeから入れられるソフトもだいぶ増えたので、そっちで済むものは極力こっちで。

  • Lime Chat
  • Alfred
  • Keynote
  • Sfufflt Expander
  • Evernote
  • Xcode
  • 夜フクロウ

大体いつも使っているツールばかりなんだけど、Alfredっていうランチャーソフトを初めて使ってみた。以前はQuicksilverつかっていたけど、開発終了してるし、最近はこっちが良いみたいなので。パッと使った感じQuicksilverより簡単に使えそうな感じ。


設定

環境設定 > トラックパッド > ポインタとクリックのタブで、以下の設定をする。

  • タップでクリックを有効に。
  • 2本指でスワイプを別のものに(3本指にした)

タップは好みだけど、2本指スワイプはブラウザで画面をスクロールしようとして、ブラウザバックしたりと誤爆するので。


環境設定 > キーボード > キーボードショートカットで以下の設定をする。

  • Spotlite検索フィールドの表示をctrl + スペースから変更(ctrl+shift +スペースにした)
  • キーボードと文字入力>前の入力ソースを選択を外す(command+スペースを解放)

command+スペースは個人的にはランチャーのショートカットにしてる経緯があるので変更。じゃないにしても、文字入力の切り替えは他にあるので十分な気も。


Alfredの設定

起動をcommand+スペースに変更。とりあえず今のところ設定はこれだけ。有料のパワーツールとか入れると、すごく強力になるんだけど、現状ではclipboardぐらいしか使わないのに、17ポンドと結構するので、保留。


ブラウザ周り

  • Chromeにログインして設定を共有
  • FirefoxSyncで設定を共有

この2つのブラウザをメインで使っているので、設定を古いマシンと共有。Chromeはログインすれば設定共有されるのですぐできる。FirefoxSyncは若干面倒。ChromeのプラグインのSwitchySharpの設定内容はコピーされなかった・・。Webインスペクタが使えるようになるので、今後はSafariを結構使うと思う。


コマンドラインツール

Xcodeを起動してpreferences > Downloads からCommand Line Toolsをダウンロード。大体の開発環境はこれで揃う。


ターミナル

まずターミナル自体の設定しておく。chshでデフォルトのshをzshに変更。まぁこの辺りは好みで。

あとはshやらアプリケーションの設定ファイルを持ってくるんだけど、最近この辺りのファイルはgithubに上げておいて、かつそのファイルをdropboxの中に落として使っている。なので、dropboxのフォルダにsmlinkはって、さらにそこからユーザールートにsmlinkはるスクリプト用意して使っている。git push & pullがめんどくさいので、こんな風にしてるんだけど、dropbox落ちたら面倒な事になってしまう。まぁ定期的にバックアップをサーバ側で取るとか位かなぁ・・。今のところ実際こまったことはまだない。


homebrew

すぐに使わないんだけど、後で必要になるので入れておく。一応最後にbrew doctorもする。

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


Perl環境を設定

plenvで、幾つかPerlのバージョン入れておく

$ git clone git://github.com/tokuhirom/plenv.git ~/.plenv
$ git clone git://github.com/tokuhirom/Perl-Build.git ~/.plenv/plugins/perl-build/
$ plenv install 5.18.0
$ plenv install 5.16.3
$ plenv install 5.8.9
$ plenv global 5.18.0
$ plenv install-cpanm
#一端shellを起動し直して
$cpanm install Task::Amon2


emacsの設定

基本.emacsそのまま使い回しているので、何もすること無いんだけど、久々にmacのcocoa側のemacsみたら、23系から24系に変わったことで、修正が必要なものが2点あった。

  • modelineが名前が変わってmode-lineになった
  • mac-command-key-is-metaがなくなって、 (setq mac-command-modifier 'meta)になった
  • 追記 (setq mac-option-modifier nil)でoptionをmetaから開放

上のは明らかにエラーになるんだけど、下のは動かすまで気が付かず、操作をして ??な感じになった。

 

このエントリーをはてなブックマークに追加

ブログネタ
「経験したことのない大雨」、どうでした? に参加中!
MacBook Airを買った時に、USキーボードを選んでみたのはいいんだけど、日本語環境でかな入力とローマ字入力の切り替えをどうすれば良いのか解らず調べてたらKeyRemap4MacBookというソフトが良いらしいので設定したメモ。

導入は簡単で、dmgをダウンロードして、インストーラーで導入出来ます。

ダウンロード 

インストールするとシステム環境設定の一番下の段に、KeyRemap4MacBookとして表示されます。
 
 image0

開くとこんな感じ。色々設定があって、カスタマイズしがいがあるんですが、まずやったのはかな入力とローマ字入力の切り替え。

image1
For Japaneseの所に、左右のコマンドキーを「英数/かな」としても使うってのがあって、「コマンドキーの動作を優先モード」にすると右側のコマンドキーが「かな」モードに、左側のコマンドキーが「英数」のキーとして動作します。コマンド+別のキーを押したときには反応しないので、日本語キーボードの時と同じ感覚で使えます。素敵!
「英数/かなキーの動作を優先モード」にするとコマンドキーとして使うときにはコマンドキー長押しが必要になります。コマンドキー単体に何か割り当ててない限りこっちは使わないと思います。

これで日本語環境使いやすくなるんですが、このアプリを使うと、emacsライクなキーバインドにするとかviライクにするとかも出来るので、emacsライクにしてみます。

メニューにEmacs Modeってあるので、それを開くと、emacsユーザーにはお馴染みのキーバインドが並んでいます。

image2
基本これで良いんですけど、Command + VがPageUpにバインドされるので、ついペーストしようとしてスクロールして焦ったりします。Control + Yでyank出来るので、それに慣れていれば大丈夫なんですが、この辺りは好みですね。私はemacsによせちゃってるのでonにしています。

あと追加の設定として、macのデフォルトキーバインドのCommand + w がウィンドウを閉じるなのが、結構やっかいで、emacsキーバインドだと Command + wでコピーなのですよね。コピーするつもりがウィンドウ閉じてしまって「キーーー!」となることが多かったので

image3
Command+W を Command+C(コピー)に割り当てました。これで誤爆が減ります。

8/5追記
Command + wの挙動を換えると、emacs自体やzshのバインディングに影響して逆に使いづらくなったのでやめました。

ウィンドウを閉じるのはC-x kにしたいなーと思っていたらちゃんとそれも[ex] Use Control + X as prefix keyにありました。C-x kで閉じる、C-x C-cでCommand + Qとか動作するので個人的にはかなり快適です。もちろんC-x C-gでC-xモード取り消しとかもできます。

C-xを有効にするとC-xをおすたびに、growlで通知がくるんですが、これは不要だったので、GeneralにあるSuppress Growl warningを有効にしておきました。

image4

ここまでやったら「ReloadXML」して設定を有効にします。だいぶこれで快適になりました。他にも設定色々あるので好みにカスタマイズできます。オススメ
このエントリーをはてなブックマークに追加

久しぶりにMac portsでパッケージインストールしようとしたら・・・・
dlopen(/opt/local/share/macports/Tcl/pextlib1.0/Pextlib.dylib, 10): no suitable image found.  Did find:
	/opt/local/share/macports/Tcl/pextlib1.0/Pextlib.dylib: no matching architecture in universal wrapper
    while executing
"load /opt/local/share/macports/Tcl/pextlib1.0/Pextlib.dylib"
    ("package ifneeded Pextlib 1.0" script)
    invoked from within
"package require Pextlib 1.0"
    (file "/opt/local/bin/port" line 40)
というエラーメッセージが。 何事!?と思ってググってみたら、Mac portsを入れたのがLeoparldの時で、その後OSをSnow Leoarldにしたのでした。 Snow版をインストールして事なきを得たのでした。
このエントリーをはてなブックマークに追加

最近はまったのでメモ書き。

LeopardからApacheのバージョンが2.2.6になっています。
Tigerと違って、Apache1.3+mod_perlが標準ではないので、mod_perl2を自前で入れる必要があるんですね。
今の職場はPerlがメインのWeb開発なので、mod_perlないとお話にならないのですね。

が、普通にインストールすると、
Intel Macだと、アーキテクチャータイプが違うとかで起動してくれない。
(非インテルは未確認)

そこで、mod_perlを入れる際に、環境変数をいじる必要があります。

$ wget http://search.cpan.org/CPAN/authors/id/G/GO/GOZER/mod_perl-1.30.tar.gzmod_perl-1.30.tar.gz
$ tar zxvf mod_perl-1.30.tar.gz
$ cd mod_perl-1.30
$ export ARCHFLAGS="-arch x86_64"
$ export CFLAGS="-arch x86_64"
$ perl Makefile.PL
$ make
$ make install


デフォルトで入っているモジュールだけだと、make testでモジュールが足りないと怒られると思うので、エラーメッセージ見ながら追加してあげて下さい。

このエントリーをはてなブックマークに追加

以前Sledgeについて書いたんですが、サンプルが無くて動作確認して無かったので、「まるごとPerl vol.1」のサンプルを使用して動かして見ました。

実際に動かしてみる際に以前の設定から変更した所があるので、再度エントリします。

Apacheの設定

まず、mod_perlを有効にします。また、apacheのSetEnvを使いたいので、mod_envも有効にしておきます。

$ sudo vi /etc/httpd/httpd.conf
206行目
#LoadModule env_module         libexec/httpd/mod_env.so
コメントを外す
LoadModule env_module         libexec/httpd/mod_env.so
239行目
#LoadModule perl_module        libexec/httpd/libperl.so
コメントを外す
LoadModule perl_module        libexec/httpd/libperl.so
283行目
#AddModule mod_env.c
コメントを外す
AddModule mod_env.c
283行目
#AddModule mod_perl.c
コメントを外す
AddModule mod_perl.c

Sledgeでは、アプリケーション毎にサブドメインを切るのが王道なので、http://localhost/bbsではなくて、http://bbs.localhost/としたい。Apacheのvirtualhostを使えばいいのだが、localhostにサブドメインを加える場合、/etc/hostsの127.0.0.1とサブドメインを紐づける必要があります。

$ sudo vi /etc/hosts
127.0.0.1    localhost
の後ろにサブドメイン追加
127.0.0.1    localhost bbs.localhost

あとはVirtualHostの設定ですが、アプリの配置を終えた後に設定します。

Sledgeの導入

Sledgeの公式ページからダウンロード出来ますが、プラグインや追加モジュールが沢山あるので、下記SorceForgeのCVSから丸ごととってきた方がいいです。

http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/sledge/

画面の下の方にDownload tarbollというリンクがあるので、ここから落とします。(CVSでチェックアウトしてもいいです)

tarbollを解凍すると、Slege本体と追加モジュール、プラグインが沢山できますが、全部入れなくても良いです。必要に応じて追加しましょう。(その都度書こうかと思います)

まずはSledgeの導入です。以前書いた内容とちょっとだけ変わります。SledgeはCPANモジュールを多用していますので、始めにモジュールを追加しておきます。

$ sudo perl cpan_install.pl

今回のサンプルでは、Class::DBIやTime::Pieceを使っていますので、追加しておきます。他にも環境によって足りないモジュールがあるかも知れません。httpのエラーログに足りないモジュールがあった場合はログがかかれますので、もしあれば同様に追加して下さい。

$ sudo perl -MCPAN -e shell
cpan> install Class::DBI
cpan> install Time::Piece

モジュール導入が終わったら、Sledgeのインストールです。

$ perl Makefile.PL
$ make; make test;
$ sudo make install

make testは念の為です。あんまり気にしてません。勉強中なもので・・(ノ´∀`*)

アプリの配置とApacheの設定

まるごとPerl vol.1のサポートページからモジュールをダウンロードします。
何処に置くかは任意ですが、今回は/Users/Sledgeに配置。

この設定はアプリ作る度さわることになるので、/etc/httpd/users/virtualhost.confに切り出しておきました。

$ sudo vi /etc/httpd/users/virtualhost.conf
NameVirtualHost 127.0.0.1
<virtualhost bbs.localhost>
   ServerName bbs.localhost
   DocumentRoot /Users/Sledge/bbs/htdocs
   SetEnv  PERL5LIB /Users/Sledge/bbs/lib
   PerlSetEnv PERL5LIB /Users/Sledge/bbs/lib
   <location>
     SetHandler perl-script
     PerlHandler Apache::Registry
   </location>
   <directory /users/sledge/bbs/htdocs>
       DirectoryIndex index.cgi index.html
       AddHandler cgi-script .cgi
       Options +ExecCGI
       Order deny,allow
       Allow from all
   </directory>
</virtualhost>

設定はそれぞれの環境次第ではありますが、とりあえずコレで動きました。
もう少し色々試して見たい所ではあります。



mod_alias辺りは、他の設定次第で、違うところ見に行ったりします。

ちなみに、SledgeのサンプルはSorceforgeから落としたtarballの中にも3つ程あるので、参考に動かしてみてはいかがでしょう?

shopcartがオススメです。

このエントリーをはてなブックマークに追加

↑このページのトップヘ