diff --git a/git.scmbrc.example b/git.scmbrc.example index 89a29b5..875c630 100644 --- a/git.scmbrc.example +++ b/git.scmbrc.example @@ -76,8 +76,12 @@ git_show_alias="gsh" # Git Keyboard Shortcuts # --------------------------------------------- # Keyboard shortcuts are off by default. Set this to 'true' to enable them. -git_keyboard_shortcuts_enabled="false" -git_status_shortcuts_keys="\C- " # CTRL+SPACE +git_keyboard_shortcuts_enabled="true" git_commit_all_keys="\C-x " # CTRL+x, SPACE git_add_and_commit_keys="\C-xc" # CTRL+x, c + +# Bash Command Wrapping +# --------------------------------------------- +# Expand numbered args for common bash commands +bash_command_wrapping_enabled="true" diff --git a/lib/git/aliases_and_bindings.sh b/lib/git/aliases_and_bindings.sh index ff72ae7..ddc175e 100644 --- a/lib/git/aliases_and_bindings.sh +++ b/lib/git/aliases_and_bindings.sh @@ -155,11 +155,10 @@ _bind(){ fi } -# If keyboard shortcuts are enabled +# Keyboard shortcuts for commits if [[ "$git_keyboard_shortcuts_enabled" = "true" ]]; then case "$TERM" in xterm*|rxvt*) - _bind "$git_status_shortcuts_keys" " git_status_shortcuts\n" _bind "$git_commit_all_keys" " git_commit_all\n" _bind "$git_add_and_commit_keys" "\e[1~ git_add_and_commit \n" @@ -170,3 +169,10 @@ if [[ "$git_keyboard_shortcuts_enabled" = "true" ]]; then esac fi +# Bash command wrapping +# (Tested with RVM's cd() wrapper) +if [[ "$bash_command_wrapping_enabled" = "true" ]]; then + for cmd in vim cd rm cp mv ln; do + alias $cmd="exec_git_expand_args $cmd" + done +fi \ No newline at end of file