MacvimやVimの中からrubyスクリプトを実行したい
誰が使うの?
- エディタとターミナルの行ったり来たりが面倒な人
どのように機能するの?
- 編集中のファイルを保存後rubyで実行するコマンドをショートカットキーに割り当てます
どこで確認したの?
いつ確認したの?
- 2010年3月13日
何が参考になるの?
何か注意点はあるの?
- 設定ファイル.vimrcを変更する前にバックアップを取りましょう。
Xcodeの中で一撃で現在日時(timestamp)を入力したい
何がしたいの?
- 現在日時や時刻の入力を素早く行いたい
- 現在日時や時刻の入力をショートカット化したい
誰が使うの?
- メモをタイムスタンプ付きで取りたい人
- タイムスタンプの入力を素早く行いたい人
何を使うの?
どこで確認したの?
- MacOSX (10.6.2 Snow Leopard) (Darwin Kernel Version 10.2.0)
- Xcode バージョン 3.2.1
いつ確認したの?
- 2010年3月12日
何が参考になるの?
何か注意点はあるの?
- 特にありません。
どんな手順でやるの?
・xcodeを起動します
・メニューバーの[ウィンドウ]と[ヘルプ]の間のスクリプトのアイコンを選択します。
・メニュー[ユーザスクリプトを編集]を選択します。
・左下の[+]を選択してドロップダウンメニューより[新規シェルスクリプト]を選択します。
・コマンド入力画面に下記のコマンドを入力します。
#!/bin/sh echo --------------------------------- LANG=ja_JP.UTF-8;export LANG date echo echo echo
・ドロップダウン[入力]はどれでも結果には関係ありませんが、とりあえず[選択部分]を選択します。
・ドロップダウン[ディレクトリ]はどれでも結果には関係ありませんが、とりあえず[選択部分]を選択します。
・ドロップダウン[出力]は[選択部分の後ろに挿入]を選択します。
・ドロップダウン[エラー]は[選択部分]はどれでも似たような結果が得られますが、とりあえず[スクリプト出力と結合]を選択します。
・スクロールバーの左脇あたりをクリックするとショートカットキーの入力画面になりますので、空いているキーを割り当てます。
・[OK]とか[保存]とかいうボタンはないのでウィンドウ[ユーザスクリプトを編集]を閉じます。
・割り当てたショートカットキーを選択するとタイムスタンプが挿入されます。できましたか?
Vimの中で一撃で現在日時(timestamp)を素早く入力したい
何がしたいの?
- 現在日時や時刻の入力を素早く行いたい
- 現在日時や時刻の入力をショートカット化したい
誰が使うの?
- メモをタイムスタンプ付きで取りたい人
- タイムスタンプの入力を素早く行いたい人
どのように機能するの?
- vimのキーマップにタイムスタンプの入力機能を割り当てます
何を使うの?
- vimまたはMacVim
どこで確認したの?
- MacOSX (10.6.2 Snow Leopard) (Darwin Kernel Version 10.2.0)
- MacVim Custom Version 7.2 (KaoriYa 20090802)
いつ確認したの?
- 2010年3月12日
何が参考になるの?
何か注意点はあるの?
- 設定ファイル.vimrcを変更する前にバックアップを取得しましょう。
どんな手順でやるの?
- .vimrcに追記します
"<F6> 文頭にタイムスタンプを挿入してinsertモードへ移行 nmap <F6> <ESC>ggi----------------------<CR><C-R>=strftime("%Y/%m/%d (%a) %H:%M")<CR><CR><CR><CR><CR><CR><Up><Up><Up>
おわり
MacOSXでターミナルのlsコマンドの表示色を変更したい
何がしたいの?
- ターミナルでlsコマンドを実行した時のディレクトリや実行ファイルの色つけを変更したい
誰が使うの?
- ターミナルの背景色を暗い色に変更したい人
- ターミナルの背景色を暗い色に変更したらlsコマンドの表示が見にくくなって困っている人
どのように機能するの?
- lsコマンドのファイル種別ごとの表示色をカスタマイズします。
何を使うの?
- Terminal.app
どこで確認したの?
- MacOSX (10.6.2 Snow Leopard) (Darwin Kernel Version 10.2.0)
いつ確認したの?
- 2010年3月12日
何が参考になるの?
何か注意点はあるの?
- 設定ファイル.bash_profileを変更する前にバックアップを取りましょう。自己責任でどうぞ。
どんな手順でやるの?
export CLICOLOR="true" export LSCOLORS="Exfxcxdxbxegedabagacad"
- 設定を反映します
$ source .bash_profile
- 確認します。どうですか?
$ ls
MacPortを使用してプログラムをインストールする時に接尾辞(suffix)をコントロールしたい
何がしたいの?
どのように機能するの?
何を使うの?
- MacOSX
- MacPort
どこで確認したの?
- MacOSX (10.6.2 Snow Leopard) (Darwin Kernel Version 10.2.0)
- MacPorts 1.8.2
いつ確認したの?
- 2010年3月6日
何が参考になるの?
何か注意点はあるの?
- 後からインストールした1.8は名前衝突のためインストールに失敗した。
- Macport経由でインストールしたバイナリ共存と、gem経由でインストールしたバイナリの名前衝突は別問題。
- いろいろと自己責任でお願いします。
どんな手順でいろいろやってみたの?
$ which ruby /usr/bin/ruby $ $ /usr/bin/ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0] $
- MacPortの上のインストール可能なrubyを一覧する
$ sudo port search ruby 中略 ruby @1.8.7-p249 (lang, ruby) Powerful and clean object-oriented scripting language ruby186 @1.8.6-p388 (lang, ruby) Powerful and clean object-oriented scripting language ruby19 @1.9.1-p376 (lang, ruby) Powerful and clean object-oriented scripting language 中略
$ sudo port install ruby
- 確認
$ $ which ruby /opt/local/bin/ruby $ $ /opt/local/bin/ruby -v ruby 1.8.7 (2010-01-10 patchlevel 249) [i686-darwin10] $
- 一旦ruby1.8を削除する
$ sudo port uninstall ruby
$ sudo port install ruby19
- 確認
$ $ which ruby /usr/bin/ruby $ $ which ruby1.9 /opt/local/bin/ruby1.9 $
- 一旦ruby19を削除する
$ sudo port uninstall ruby19
$ sudo port install ruby19 +nosuffix
- 確認
インストールは成功しているようだ。
$ which ruby /opt/local/bin/ruby $ $ /opt/local/bin/ruby -v ruby 1.9.1p376 (2009-12-07 revision 26041) [i386-darwin10] $ $ ruby -v ruby 1.9.1p376 (2009-12-07 revision 26041) [i386-darwin10] $ $ gem environment RubyGems Environment: - RUBYGEMS VERSION: 1.3.1 - RUBY VERSION: 1.9.1 (2009-12-07 patchlevel 376) [i386-darwin10] - INSTALLATION DIRECTORY: /opt/local/lib/ruby/gems/1.9.1 - RUBY EXECUTABLE: /opt/local/bin/ruby - EXECUTABLE DIRECTORY: /opt/local/bin - RUBYGEMS PLATFORMS: - ruby - x86-darwin-10 - GEM PATHS: - /opt/local/lib/ruby/gems/1.9.1 - /Users/tsuchiya/.gem/ruby/1.9.1 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - :sources => ["http://gems.rubyforge.org/", "http://gems.github.com"] - REMOTE SOURCES: - http://gems.rubyforge.org/ - http://gems.github.com $
- 接尾辞を「18」と明示指定してMacPortで rubyをインストールする(ruby1.8 がruby18としてインストールされる...に違いなかったのだが.....)
インストール失敗!
なにやら名前衝突を起こしているらしい
$ sudo port install ruby +suffix18 Error: Target org.macports.activate returned: Image error: /opt/local/bin/erb is being used by the active ruby19 port. Please deactivate this port first, or use 'port -f activate ruby' to force the activation. Error: Status 1 encountered during processing. Before reporting a bug, first run the command again with the -d flag to get complete output.
- 確認
1.8は衝突のためインストールされなかった。
なんでだろう?接尾辞1.8が付くんじゃないの?
$ which ruby /opt/local/bin/ruby $ $ ruby -v ruby 1.9.1p376 (2009-12-07 revision 26041) [i386-darwin10] $ $ which ruby18 $ $ which ruby1.8 $ $ ls -al /opt/local/bin | grep ruby -rwxr-xr-x 2 root admin 9416 3 6 14:22 ruby $
MacOSでTerminalの起動時直後からLogが自動的に残るようにしたい
何がしたいの?
- ターミナルの起動時に自動的にログの記録を開始します。
- いつのログか分かるようにログ名の一部に日付やマシン名を含めます。
- ターミナルを複数回または多重に起動してもログを上書きしないようにします。
誰が使うの?
- ターミナルを使用してデンジャラスなシステム変更作業をする人
- あの時どうやったのかなぁ?と頻繁につぶやいている忘れっぽい人
- 自分の作業直後に不具合が発生したときに無実を証明したい人
どのように機能するの?
- Terminal起動時にコマンド実行する機能でscriptコマンドを発行します。
何を使うの?
- Terminal.app
どこで確認したの?
- MacOSX (10.6.2 Snow Leopard) (Darwin Kernel Version 10.2.0)
いつ確認したの?
- 2010年3月7日
何が参考になるの?
- 特にありません
何か注意点はあるの?
- 非常に大量のコンソール出力が出る作業を行うときにはログのサイズに注意しましょう。
- ログのファイル名にターミナル起動時の日付が入ります。作業前にターミナルを起動する習慣をつけましょう。
- 色々と自己責任で行いましょう。
MacOSXでターミナルからGUIアプリケーションを起動したい
何がしたいの?
どのように機能するの?
- open コマンドを呼び出す短い名前の実行ファイルを登録します。
何を使うの?
- Terminal.app
- openコマンド
どこで確認したの?
- MacOSX (10.6.2 Snow Leopard) (Darwin Kernel Version 10.2.0)
いつ確認したの?
- 2010年3月7日
何が参考になるの?
- 特にありません。
何か注意点はあるの?
- 短い名前の実行ファイルを新しく作るときには、既にある重要な実行ファイルと同じ名前にならないように気を付けましょう。
- 管理者権限を使用するので作業には十分気を付けましょう。自己責任でどうぞ。
どんな手順でやるの?
- 実行パスが通っていることろにコマンドを配置します。
mvimという名前でMacVim.appを起動するコマンドを作成します。
mvimへの第一引数をMacVim.appへ第一引数として引渡します。
$ cat /usr/local/bin/mvim open -a /Applications/MacVim.app $1
実行権限を与えます
$ ls -al /usr/local/bin/mvim -rw-r--r-- 1 root wheel 36 3 7 14:29 /usr/local/bin/mvim $ sudo chmod 755 /usr/local/bin/mvim $ ls -al /usr/local/bin/mvim -rwxr-xr-x 1 root wheel 36 3 7 14:29 /usr/local/bin/mvim
引数なしで実行してみます
$ $ mvim $
引数ありで実行してみます
$ $ mvim tmp.txt $
他のアプリ用も色々作ってみます
Xcodeを起動するコマンドとか
$ cat /usr/local/bin/xcode open -a /Developer/Applications/Xcode.app $1 $ $ xcode tmp.txt $
Google Chrome を起動するコマンドとか
$ cat /usr/local/bin/chrome open -a "/Applications/Google Chrome.app" $1 $ $ chrome "http://google.com" $
おわり