尝试在tcl中使用gvim.exe打开文件。我已正确安装gvim但无法使用以下2命令打开它:
exec gvim.exe $file_path
exec ./gvim.exe $file_path
但是,可以使用以下2个命令打开文件:
exec notepad.exe $file_path
exec "C:/Program Files/vim/vim74/gvim.exe
有人可以告诉我发生了什么以及我应该在这做什么吗?
答案 0 :(得分:2)
当Tcl exec
是一个程序时,它会使用操作系统的常规规则在PATH
(即$::env(PATH)
)上搜索程序。不在PATH
上的程序(而不是在Windows上的当前目录中)根本找不到。
更新PATH
;我相信您可以通过控制面板基于每个用户或所有用户(具有适当的权限)来执行此操作。
更新脚本中的PATH
。请注意,Windows路径分隔符是Tcl中的命令分隔符(即,需要转义或来自替换),PATH
中的元素必须是本机目录名。< / p>
append ::env(PATH) $::tcl_platform(pathSeparator) \
[file nativename "C:/Program Files/vim/vim74"]
## This will do the same thing...
# append ::env(PATH) {;C:\Program Files\vim\vim74}