[fzf-tmux] Allow -w / -h without size argument

This commit is contained in:
Junegunn Choi 2015-03-08 15:08:27 +09:00
parent 5f62d224b0
commit 23dba99eda
2 changed files with 11 additions and 6 deletions

View File

@ -152,7 +152,7 @@ installer-generated source code: `~/.fzf.bash`, `~/.fzf.zsh`, and
[fzf-tmux](bin/fzf-tmux) is a bash script that opens fzf in a tmux pane.
```sh
# usage: fzf-tmux [-h HEIGHT[%]] [-w WIDTH[%]] [--] [FZF OPTIONS]
# usage: fzf-tmux [-h [HEIGHT[%]]] [-w [WIDTH[%]]] [--] [FZF OPTIONS]
# select git branches in horizontal split (15 lines)
git branch | fzf-tmux -h 15

View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash
# fzf-tmux: starts fzf in a tmux pane
# usage: fzf-tmux [-h HEIGHT[%]] [-w WIDTH[%]] [--] [FZF OPTIONS]
# usage: fzf-tmux [-h [HEIGHT[%]]] [-w [WIDTH[%]]] [--] [FZF OPTIONS]
args=()
opt=""
@ -8,15 +8,20 @@ while [ $# -gt 0 ]; do
arg="$1"
case "$arg" in
-w*|-h*)
[[ "$arg" =~ ^-w ]] && opt="-h" || opt=""
if [ ${#arg} -gt 2 ]; then
size="${arg:2}"
else
shift
size="$1"
if [[ "$1" =~ ^[0-9]+%?$ ]]; then
size="$1"
else
[ -n "$1" ] && args+=("$1")
continue
fi
fi
[[ "$arg" =~ ^-w ]] && opt="-h"
[[ "$size" =~ %$ ]] && opt="$opt -p ${size:0:((${#size}-1))}" ||
opt="$opt -l $size"
[[ "$size" =~ %$ ]] && opt="$opt -p ${size:0:((${#size}-1))}" ||
opt="$opt -l $size"
;;
--)
# "--" can be used to separate fzf-tmux options from fzf options to