以下は Mac OS X および bash 用である。
以下のスクリプト here
を設置する。
このスクリプトは解法で述べた「コマンド」をaliasとして実現する。
aliasの一覧は~/.here
に格納される。
here
#!/usr/bin/env ruby
ALIAS_FILE = '$HOME/.here'
if ARGV.length != 1
puts "Usage: here project-code"
puts "Example: here math"
puts
puts "pwd is clipped."
system("pwd | pbcopy")
abort
end
PROJECT_CODE = ARGV[0]
CMDLINE = "alias #{PROJECT_CODE}='pushd #{Dir.pwd}'"
# CMDLINE = "alias #{PROJECT_CODE}='pushd #{Dir.pwd}; show_todo'"
File::open(ALIAS_FILE, "a+") do |f|
.puts(CMDLINE)
fend
puts "#{ALIAS_FILE} is updated.\n#{CMDLINE}"
system("echo source ~/.here | pbcopy")
puts "Execute Command+V on the command line to execute \"source ~/.here\""
~/.bash_profile
や ~/.bashrc
などに
source ~/.here
を入れておく。
プロジェクトの作業ディレクトリにcd
やpushd
で移動する。
プロジェクトの名前がたとえば math
だとすると
here math
を実行する。
source ~/.here
を実行してaliasを更新する。Command+V
でペーストしてもいい。
他のディレクトリに移動する。
コマンドラインからmath
と入力すると、先ほどのプロジェクトの作業ディレクトリに移動する。