Added alias for initializing vs environment

This commit is contained in:
斟酌 鵬兄 2017-08-23 22:41:01 +08:00
parent 5cea20ae6f
commit c9d0de262c
2 changed files with 40 additions and 2 deletions

View File

@ -1,16 +1,20 @@
#!/bin/bash
IS_CYGWIN=false
case $( uname -a | awk '{ print $1 }' ) in
Darwin) # although this is deprecated, Mac still use it
PERM="+111"
;;
# Linux) ;& // Fall through does not support in OS X
# CYGWIN~) ;&
CYGWIN*)
PERM="/111"
IS_CYGWIN=true
;;
*)
PERM="/111"
;;
esac
function __func_head() {
echo "Usage:" ${FUNCNAME[1]} $1
}

34
bash/bashrc/sources/11_vs_env Executable file
View File

@ -0,0 +1,34 @@
#!/bin/bash
if ! $IS_CYGWIN; then
return
fi
echo $PATH | grep -q MSBuild
if [ -n "$FrameworkVersion" ]; then
alias vsshell='echo "FrameworkVersion $FrameworkVersion"'
return
fi
BAT_DIR=~/.local/lib/bat
mkdir -p $BAT_DIR
VS_SHELL_BAT=$BAT_DIR/vs-env.bat
function vsshell {
_SHELL=$( cygpath -w -a $VS_SHELL_BAT )
cmd /c "$_SHELL"
exit
}
if [ -f "$VS_SHELL_BAT" ]; then
return
fi
START_MENU="$( cygpath $ProgramData )/Microsoft/Windows/Start Menu/"
_PATH=$( find "$START_MENU" -name "*Command Prompt*" | grep "Visual Studio" | grep x64 | grep Native | xargs -I % readshortcut % -r | grep -o "\"\([^\"]\+\)\"" )
echo "@echo off" > "$VS_SHELL_BAT"
echo "CALL $_PATH" >> "$VS_SHELL_BAT"
echo "START $( where mintty ) -i /Cygwin-Terminal.ico -" >> "$VS_SHELL_BAT"