以下は 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|
f.puts(CMDLINE)
end
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と入力すると、先ほどのプロジェクトの作業ディレクトリに移動する。