srfi.193
- コマンドライン ¶このsrfiは、R7RSのcommand-line
が返す値についての仕様を
明確化し、またいくつかのサポートAPIを定義しています。
次の手続きは組み込みになっています。 コマンドライン引数を参照してください。
command-line script-file
[SRFI-193]{srfi.193
}
command-line
の最初の要素が空文字列であれば#f
を、
そうでなければcommand-line
の最初の要素からディレクトリパスと
典型的な拡張子(.scm
、.exe
)を除いた名前を返します。
例えば、Schemeスクリプトを/usr/local/bin/foo.scm
を
プログラムとして走らせたら、この手続きはfoo
を返します。
このスクリプトをWindows実行可能形式にコンパイルして
/usr/local/bin/foo.exe
に置いたとしても、やはりこの手続きはfoo
を返します。
一般に、Schemeプログラムを何らかの形で「コマンド」として走らせた場合、
その「コマンド名」にふさわしいものが返されます。例外はREPLを走らせている場合で、
#f
が返されます。
これは診断メッセージ等に便利です。
[SRFI-193]{srfi.193
}
(commnand-line)
のcdrを返します。
[SRFI-193]{srfi.193
}
(script-file)
の値が文字列なら、そのディレクトリ部分を返します。
この場合、返される文字列の末尾は必ずディレクトリ区切り文字になっています。
(script-file)
が#f
なら#f
が返されます。
これは例えば、補助ファイルをスクリプトからの相対位置で探すのに便利です。