-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.bashrc
98 lines (87 loc) · 2.9 KB
/
.bashrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
alias ls='ls --color=auto'
alias grep='grep --color'
PS1='[\u@\h \W]\$ '
set -o vi
eval "$(starship init bash)"
eval $(dircolors ~/.dir_colors)
if [ -d "$HOME/.bookmarks" ]; then
export CDPATH=".:$HOME/.bookmarks"
alias goto="cd -P"
_goto()
{
local IFS=$'\n'
COMPREPLY=( $(compgen -W "$(/bin/ls ~/.bookmarks)" -- "${COMP_WORDS[COMP_CWORD]}") )
} && complete -F _goto goto
fi
export PATH=$PATH:~/bin:/opt/google-cloud-cli/bin
export GOPATH=~/go
export PATH="$GOPATH/bin:$PATH"
export QSYS_ROOTDIR="/home/hoku/.cache/paru/clone/quartus-free/pkg/quartus-free-quartus/opt/intelFPGA/23.1/quartus/sopc_builder/bin"
source /usr/share/git/completion/git-completion.bash
export FCITX_CONFIG_DIR="/home/hoku/.config/fcitx5"
# Swagger ui preview
function swagger_yaml2json() {
TMP_DIR="/tmp/vim-swagger-preview/"
LOG=$TMP_DIR"validate.log"
docker run --rm -v $(pwd):/docs openapitools/openapi-generator-cli validate -i /docs/"$1" > $LOG 2>&1
count=$(wc -l < $LOG)
if [[ $count -gt 2 ]]; then
# File exists and has a size greater than zero
return 1
else
if grep -q "docker daemon running" $LOG; then
return 2
else
# dump the stdout stderr to file otherwise the caller function complains
docker run -v $(pwd):/docs -v $TMP_DIR:/out openapitools/openapi-generator-cli generate -i /docs/"$1" -g openapi -o /out > $LOG 2>&1
# clear the log file
cp /dev/null $LOG
# https://github.com/swagger-api/swagger-codegen/issues/9140
# docker run -v $(pwd):/docs -v $TMP_DIR:/out swaggerapi/swagger-codegen-cli-v3:3.0.9 generate -i /docs/"$1" -l openapi -o /out > /dev/null 2>&1
return 0
fi
fi
}
export -f swagger_yaml2json
function swagger_ui_start() {
CONTAINER_NAME=${1:-swagger-ui-preview}
TMP_DIR="/tmp/vim-swagger-preview/"
# VOLUME=$(echo $(pwd) | tr "/" "_")
if [ ! "$(docker ps -q -f name=$CONTAINER_NAME)" ]; then
if [ "$(docker ps -aq -f status=exited -f name=$CONTAINER_NAME)" ]; then
echo $CONTAINER_NAME "exited, cleaning"
# cleanup
# echo removing:
docker rm $CONTAINER_NAME
fi
# run the container
docker run --name $CONTAINER_NAME -d -p 8017:8080 -e SWAGGER_JSON=/docs/openapi.json -v $TMP_DIR:/docs swaggerapi/swagger-ui
elif [ "$(docker ps -aq -f status=running -f name=$CONTAINER_NAME)" ]; then
echo $CONTAINER_NAME "is already running"
fi
}
export -f swagger_ui_start
function swagger_preview() {
TMP_DIR="/tmp/vim-swagger-preview/"
LOG=$TMP_DIR"validate.log"
#SOURCE=${1:-swagger.yaml}
SOURCE=${1:-openapi3.yaml}
$(swagger_yaml2json $SOURCE)
YAML2JSON_RETURN_CODE=$?
if [ "$YAML2JSON_RETURN_CODE" -eq "0" ]; then
swagger_ui_start
else
cat $LOG
echo "Converting to json failed!"
fi
}
export -f swagger_preview
eval $(opam env)
export YACC_LANGUAGE_SERVER=/home/hoku/projects/yacc-language-server/
export WINEPREFIX=~/.wine
export OPENAI_API_KEY=$(secret-tool lookup api openai)