summaryrefslogtreecommitdiff
path: root/doc/note/bash/bashrc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/note/bash/bashrc')
-rw-r--r--doc/note/bash/bashrc53
1 files changed, 53 insertions, 0 deletions
diff --git a/doc/note/bash/bashrc b/doc/note/bash/bashrc
new file mode 100644
index 0000000..ca3aaa2
--- /dev/null
+++ b/doc/note/bash/bashrc
@@ -0,0 +1,53 @@
+
+WINDOOF=$(if [ -d /c/Windows ]; then echo true; else echo false; fi)
+
+# Disable annoying "features", so that exclamation marks become usable again.
+set +o histexpand
+
+# Do NOT store duplicates in history. Do NOT store in history if
+# starts-with-space.
+HISTCONTROL=ignoreboth
+
+if [ $SHLVL -eq 1 ]; then
+ set -o ignoreeof # Require explicit 'exit' cmd to exit shell.
+else
+ set +o ignoreeof
+fi
+
+export PS1='\033[1;32m[\033[0m$? \033[1;30m\u\033[0m\033[1;32m@\033[1;30m\h \033[1;34m\w\033[1;32m]\033[0m\n\$ '
+
+# Add global node modules to path
+#PATH=/opt/node-6.10.1/lib/node_modules/.bin:$PATH
+# bash completion for npm
+#source /opt/node-6.10.1/etc/npm-completion.sh
+
+if test -d ~/.local/bin; then export PATH=~/.local/bin:$PATH; fi
+
+###############################################################################
+#
+# Auto-launching ssh-agent on Git for Windoofs
+# (See: https://docs.github.com/en/github/authenticating-to-github/working-with-ssh-key-passphrases#auto-launching-ssh-agent-on-git-for-windows)
+#
+if $WINDOOF; then
+ env=~/.ssh/agent.env
+
+ agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; }
+ agent_start () { (umask 077; ssh-agent >| "$env"); . "$env" >| /dev/null ; }
+
+ agent_load_env
+
+ # agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2= agent not running
+ agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?)
+
+ if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then
+ agent_start
+ #ssh-add
+ #elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then
+ # ssh-add
+ fi
+
+ unset env
+fi
+#
+###############################################################################
+