summaryrefslogtreecommitdiffstats
path: root/completions/mplayer
diff options
context:
space:
mode:
Diffstat (limited to 'completions/mplayer')
-rw-r--r--completions/mplayer203
1 files changed, 99 insertions, 104 deletions
diff --git a/completions/mplayer b/completions/mplayer
index d71ebb8..7ab096a 100644
--- a/completions/mplayer
+++ b/completions/mplayer
@@ -1,120 +1,120 @@
# mplayer(1) completion -*- shell-script -*-
-_mplayer_options_list()
+_comp_cmd_mplayer__options()
{
cur=${cur%\\}
- COMPREPLY=($(compgen -W "$($1 -noconfig all $2 help 2>/dev/null |
- command sed -e '/^Available/,/^$/!d' -e '/^Available/d' | awk '{print $1}' |
- command sed -e 's/:$//' -e 's/^'${2#-}'$//' -e 's/<.*//')" -- "$cur"))
+ _comp_compgen_split -- "$("$1" -noconfig all "$2" help 2>/dev/null |
+ command sed -e '/^Available/,/^$/!d' -e '/^Available/d' | _comp_awk '{print $1}' |
+ command sed -e 's/:$//' -e 's/^'"${2#-}"'$//' -e 's/<.*//')"
}
-_mplayer()
+_comp_cmd_mplayer()
{
- local cur prev words cword
- _init_completion -n : || return
+ local cur prev words cword comp_args
+ _comp_initialize -n : -- "$@" || return
local cmd=${words[0]} i j k=0
case $prev in
-[av][cfo] | -[av]fm | -vop | -fstype | -demuxer | -o[av]c | -of | -profile | \
-audio-demuxer | -sub-demuxer)
- _mplayer_options_list $cmd $prev
+ _comp_cmd_mplayer__options "$cmd" "$prev"
return
;;
-show-profile)
- _mplayer_options_list $cmd -profile
+ _comp_cmd_mplayer__options "$cmd" -profile
return
;;
-audiofile | -audio-file)
- _filedir '@(mp3|mpg|og[ag]|w?(a)v|mid|flac|mka|ac3|ape)'
+ _comp_compgen_filedir '@(mp3|mpg|og[ag]|w?(a)v|mid|flac|mka|ac3|ape)'
return
;;
-font | -subfont)
if [[ $prev == -font ]]; then
- _filedir '@(desc|ttf)'
+ _comp_compgen_filedir '@(desc|ttf)'
else
- _filedir ttf
+ _comp_compgen_filedir ttf
fi
- local IFS=$'\n'
- COMPREPLY+=($(compgen -W '$(fc-list 2>/dev/null)' -- "$cur"))
+ _comp_compgen -a split -l -- "$(fc-list 2>/dev/null)"
return
;;
-sub | -sub-file)
- _filedir '@(srt|sub|txt|utf|rar|mpsub|smi|js|ssa|ass)'
+ _comp_compgen_filedir '@(srt|sub|txt|utf|rar|mpsub|smi|js|ssa|ass)'
return
;;
-vobsub)
- _filedir '@(idx|ifo|sub)'
- local IFS=$'\n'
- COMPREPLY=($(for i in "${COMPREPLY[@]}"; do
- if [[ -f $i && -r $i ]]; then
- printf '%s\n' ${i%.*}
- else
- printf '%s\n' $i
- fi
- done))
+ if _comp_compgen_filedir '@(idx|ifo|sub)'; then
+ for i in "${!COMPREPLY[@]}"; do
+ if [[ -f ${COMPREPLY[i]} && -r ${COMPREPLY[i]} ]]; then
+ COMPREPLY[i]=${COMPREPLY[i]%.*}
+ fi
+ done
+ fi
return
;;
-subcp | -msgcharset)
local cp
- cp=($(iconv --list 2>/dev/null | command sed -e "s@//@@;" 2>/dev/null))
- if [[ $cur == "${cur,,}" ]]; then
- COMPREPLY=($(compgen -W '${cp[@],,}' -- "$cur"))
- else
- COMPREPLY=($(compgen -W '${cp[@]^^}' -- "$cur"))
+ if _comp_split cp "$(iconv --list 2>/dev/null | command sed -e "s@//@@;" 2>/dev/null)"; then
+ if [[ $cur == "${cur,,}" ]]; then
+ _comp_compgen -- -W '"${cp[@],,}"'
+ else
+ _comp_compgen -- -W '"${cp[@]^^}"'
+ fi
fi
return
;;
-ifo)
- _filedir ifo
+ _comp_compgen_filedir ifo
return
;;
-cuefile)
- _filedir '@(bin|cue)'
+ _comp_compgen_filedir '@(bin|cue)'
return
;;
-skin)
# if you don't have installed mplayer in /usr you
# may want to set the MPLAYER_SKINS_DIR global variable
local -a dirs
- if [[ -n $MPLAYER_SKINS_DIR ]]; then
- dirs=($MPLAYER_SKINS_DIR)
+ if [[ $MPLAYER_SKINS_DIR ]]; then
+ _comp_split dirs "$MPLAYER_SKINS_DIR"
else
dirs=(/usr/share/mplayer/skins /usr/local/share/mplayer/skins)
fi
- local IFS=$'\n'
- for i in ~/.mplayer/skins "${dirs[@]}"; do
- if [[ -d $i && -r $i ]]; then
- for j in $(compgen -d -- $i/$cur); do
- COMPREPLY[k++]=${j#$i/}
- done
- fi
- done
+ if ((${#dirs[@]})); then
+ local -a subdirs
+ for i in ~/.mplayer/skins "${dirs[@]}"; do
+ if [[ -d $i && -r $i ]]; then
+ _comp_compgen -v subdirs -c "$i/$cur" -- -d
+ for j in "${subdirs[@]}"; do
+ COMPREPLY[k++]=${j#"$i/"}
+ done
+ fi
+ done
+ fi
return
;;
-cdrom-device)
- _cd_devices
- _dvd_devices
+ _comp_compgen_cd_devices
+ _comp_compgen -a dvd_devices
return
;;
-dvd-device)
- _dvd_devices
- _filedir iso
+ _comp_compgen_dvd_devices
+ _comp_compgen -a filedir iso
return
;;
-bluray-device)
- _filedir -d
+ _comp_compgen_filedir -d
return
;;
-mixer | -dvdauth | -fb | -zrdev)
- cur=${cur:=/dev/}
- _filedir
+ _comp_compgen -c "${cur:-/dev/}" filedir
return
;;
-edl | -edlout | -lircconf | -menu-cfg | -playlist | -csslib | -dumpfile | \
-subfile | -aofile | -fbmodeconfig | -include | -o | -dvdkey | -passlogfile)
- _filedir
+ _comp_compgen_filedir
return
;;
-autoq | -autosync | -loop | -menu-root | -speed | -sstep | -aid | -alang | \
@@ -136,124 +136,119 @@ _mplayer()
return
;;
-channels)
- COMPREPLY=($(compgen -W '2 4 6 8' -- "$cur"))
+ _comp_compgen -- -W '2 4 6 8'
return
;;
-aspect | -monitoraspect)
- COMPREPLY=($(compgen -W '1:1 3:2 4:3 5:4 14:9 14:10 16:9 16:10
- 2.35:1' -- "$cur"))
- __ltrim_colon_completions "$cur"
+ _comp_compgen -- -W '1:1 3:2 4:3 5:4 14:9 14:10 16:9 16:10 2.35:1'
+ _comp_ltrim_colon_completions "$cur"
return
;;
-lavdopts)
- COMPREPLY=($(compgen -W 'bitexact bug= debug= ec= er= fast gray
- idct= lowres= sb= st= skiploopfilter= skipidct= skipframe=
- threads= vismv= vstats' -- "$cur"))
+ _comp_compgen -- -W 'bitexact bug= debug= ec= er= fast gray idct=
+ lowres= sb= st= skiploopfilter= skipidct= skipframe= threads=
+ vismv= vstats'
return
;;
-lavcopts)
- COMPREPLY=($(compgen -W 'vcodec= vqmin= vqscale= vqmax= mbqmin=
- mbqmax= vqdiff= vmax_b_frames= vme= vhq v4mv keyint=
- vb_strategy= vpass= aspect= vbitrate= vratetol= vrc_maxrate=
- vrc_minrate= vrc_buf_size= vb_qfactor= vi_qfactor= vb_qoffset=
- vi_qoffset= vqblur= vqcomp= vrc_eq= vrc_override=
- vrc_init_cplx= vqsquish= vlelim= vcelim= vstrict= vdpart
- vpsize= gray vfdct= idct= lumi_mask= dark_mask= tcplx_mask=
- scplx_mask= naq ildct format= pred qpel precmp= cmp= subcmp=
- predia= dia= trell last_pred= preme= subq= psnr mpeg_quant aic
- umv' -- "$cur"))
+ _comp_compgen -- -W 'vcodec= vqmin= vqscale= vqmax= mbqmin= mbqmax=
+ vqdiff= vmax_b_frames= vme= vhq v4mv keyint= vb_strategy=
+ vpass= aspect= vbitrate= vratetol= vrc_maxrate= vrc_minrate=
+ vrc_buf_size= vb_qfactor= vi_qfactor= vb_qoffset= vi_qoffset=
+ vqblur= vqcomp= vrc_eq= vrc_override= vrc_init_cplx= vqsquish=
+ vlelim= vcelim= vstrict= vdpart vpsize= gray vfdct= idct=
+ lumi_mask= dark_mask= tcplx_mask= scplx_mask= naq ildct format=
+ pred qpel precmp= cmp= subcmp= predia= dia= trell last_pred=
+ preme= subq= psnr mpeg_quant aic umv'
return
;;
-ssf)
- COMPREPLY=($(compgen -W 'lgb= cgb= ls= cs= chs= cvs=' -- "$cur"))
+ _comp_compgen -- -W 'lgb= cgb= ls= cs= chs= cvs='
return
;;
-jpeg)
- COMPREPLY=($(compgen -W 'noprogressive progressive nobaseline
- baseline optimize= smooth= quality= outdir=' -- "$cur"))
+ _comp_compgen -- -W 'noprogressive progressive nobaseline baseline
+ optimize= smooth= quality= outdir='
return
;;
-xvidopts)
- COMPREPLY=($(compgen -W 'dr2 nodr2' -- "$cur"))
+ _comp_compgen -- -W 'dr2 nodr2'
return
;;
-xvidencopts)
- COMPREPLY=($(compgen -W 'pass= bitrate= fixed_quant= me_quality=
- 4mv rc_reaction_delay_factor= rc_averaging_period= rc_buffer=
+ _comp_compgen -- -W 'pass= bitrate= fixed_quant= me_quality= 4mv
+ rc_reaction_delay_factor= rc_averaging_period= rc_buffer=
quant_range= min_key_interval= max_key_interval= mpeg_quant
mod_quant lumi_mask hintedme hintfile debug keyframe_boost=
- kfthreshold= kfreduction=' -- "$cur"))
+ kfthreshold= kfreduction='
return
;;
-divx4opts)
- COMPREPLY=($(compgen -W 'br= key= deinterlace q= min_quant=
- max_quant= rc_period= rc_reaction_period= crispness=
- rc_reaction_ratio= pass= vbrpass= help' -- "$cur"))
+ _comp_compgen -- -W 'br= key= deinterlace q= min_quant= max_quant=
+ rc_period= rc_reaction_period= crispness= rc_reaction_ratio=
+ pass= vbrpass= help'
return
;;
-info)
- COMPREPLY=($(compgen -W 'name= artist= genre= subject=
- copyright= srcform= comment= help' -- "$cur"))
+ _comp_compgen -- -W 'name= artist= genre= subject= copyright=
+ srcform= comment= help'
return
;;
-lameopts)
- COMPREPLY=($(compgen -W 'vbr= abr cbr br= q= aq= ratio= vol=
- mode= padding= fast preset= help' -- "$cur"))
+ _comp_compgen -- -W 'vbr= abr cbr br= q= aq= ratio= vol= mode=
+ padding= fast preset= help'
return
;;
-rawaudio)
- COMPREPLY=($(compgen -W 'on channels= rate= samplesize= format=' \
- -- "$cur"))
+ _comp_compgen -- -W 'on channels= rate= samplesize= format='
return
;;
-rawvideo)
- COMPREPLY=($(compgen -W 'on fps= sqcif qcif cif 4cif pal ntsc w=
- h= y420 yv12 yuy2 y8 format= size=' -- "$cur"))
+ _comp_compgen -- -W 'on fps= sqcif qcif cif 4cif pal ntsc w= h=
+ y420 yv12 yuy2 y8 format= size='
return
;;
-aop)
- COMPREPLY=($(compgen -W 'list= delay= format= fout= volume= mul=
- softclip' -- "$cur"))
+ _comp_compgen -- -W 'list= delay= format= fout= volume= mul=
+ softclip'
return
;;
-dxr2)
- COMPREPLY=($(compgen -W 'ar-mode= iec958-encoded iec958-decoded
- mute ucode= 75ire bw color interlaced macrovision= norm=
+ _comp_compgen -- -W 'ar-mode= iec958-encoded iec958-decoded mute
+ ucode= 75ire bw color interlaced macrovision= norm=
square-pixel ccir601-pixel cr-left= cr-right= cr-top= cr-bot=
ck-rmin= ck-gmin= ck-bmin= ck-rmax= ck-gmax= ck-bmax= ck-r=
ck-g= ck-b= ignore-cache= ol-osd= olh-cor= olw-cor= olx-cor=
- oly-cor= overlay overlay-ratio= update-cache' -- "$cur"))
+ oly-cor= overlay overlay-ratio= update-cache'
return
;;
-tv)
- COMPREPLY=($(compgen -W 'on noaudio driver= device= input= freq=
+ _comp_compgen -- -W 'on noaudio driver= device= input= freq=
outfmt= width= height= buffersize= norm= channel= chanlist=
audiorate= forceaudio alsa amode= forcechan= adevice= audioid=
- volume= bass= treble= balance= fps= channels= immediatemode=' \
- -- "$cur"))
+ volume= bass= treble= balance= fps= channels= immediatemode='
return
;;
-mf)
- COMPREPLY=($(compgen -W 'on w= h= fps= type=' -- "$cur"))
+ _comp_compgen -- -W 'on w= h= fps= type='
return
;;
-cdda)
- COMPREPLY=($(compgen -W 'speed= paranoia= generic-dev=
- sector-size= overlap= toc-bias toc-offset= skip noskip' \
- -- "$cur"))
+ _comp_compgen -- -W 'speed= paranoia= generic-dev= sector-size=
+ overlap= toc-bias toc-offset= skip noskip'
return
;;
-input)
- COMPREPLY=($(compgen -W 'conf= ar-delay ar-rate keylist cmdlist
- js-dev file' -- "$cur"))
+ _comp_compgen -- -W 'conf= ar-delay ar-rate keylist cmdlist js-dev
+ file'
return
;;
-af-adv)
- COMPREPLY=($(compgen -W 'force= list=' -- "$cur"))
+ _comp_compgen -- -W 'force= list='
return
;;
-noconfig)
- COMPREPLY=($(compgen -W 'all gui system user' -- "$cur"))
+ _comp_compgen -- -W 'all gui system user'
return
;;
-*)
@@ -271,17 +266,17 @@ _mplayer()
case $cur in
-*)
- COMPREPLY=($(compgen -W '$($cmd -noconfig all -list-options 2>/dev/null | \
+ _comp_compgen_split -- "$("$cmd" -noconfig all -list-options 2>/dev/null |
command sed -ne "1,/^[[:space:]]*Name/d" \
-e "s/^[[:space:]]*/-/" -e "s/[[:space:]:].*//" \
- -e "/^-\(Total\|.*\*\)\{0,1\}$/!p")' -- "$cur"))
+ -e "/^-\(Total\|.*\*\)\{0,1\}$/!p")"
;;
*)
- _filedir '@(m?(j)p?(e)g|M?(J)P?(E)G|wm[av]|WM[AV]|avi|AVI|asf|ASF|vob|VOB|bin|BIN|dat|DAT|vcd|VCD|ps|PS|pes|PES|fl[iv]|FL[IV]|fxm|FXM|viv|VIV|rm?(j)|RM?(J)|ra?(m)|RA?(M)|yuv|YUV|mov|MOV|qt|QT|mp[234]|MP[234]|m?(p)4[av]|M?(P)4[AV]|og[gmavx]|OG[GMAVX]|w?(a)v|W?(A)V|dump|DUMP|mk[av]|MK[AV]|aac|AAC|m2v|M2V|dv|DV|rmvb|RMVB|mid|MID|t[ps]|T[PS]|3g[p2]|3gpp?(2)|mpc|MPC|flac|FLAC|vro|VRO|divx|DIVX|aif?(f)|AIF?(F)|m2t?(s)|M2T?(S)|mts|MTS|vdr|VDR|xvid|XVID|ape|APE|gif|GIF|nut|NUT|bik|BIK|web[am]|WEB[AM]|amr|AMR|awb|AWB|iso|ISO|opus|OPUS|m[eo]d|M[EO]D|xm|XM|it|IT|s[t3]m|S[T3]M|mtm|MTM|w64|W64)?(.@(crdownload|part))'
+ _comp_compgen_filedir '@(m?(j)p?(e)g|M?(J)P?(E)G|wm[av]|WM[AV]|avi|AVI|asf|ASF|vob|VOB|bin|BIN|dat|DAT|vcd|VCD|ps|PS|pes|PES|fl[iv]|FL[IV]|fxm|FXM|viv|VIV|rm?(j)|RM?(J)|ra?(m)|RA?(M)|yuv|YUV|mov|MOV|qt|QT|mp[234]|MP[234]|m?(p)4[av]|M?(P)4[AV]|og[gmavx]|OG[GMAVX]|w?(a)v|W?(A)V|dump|DUMP|mk[av]|MK[AV]|aac|AAC|m2v|M2V|dv|DV|rmvb|RMVB|mid|MID|t[ps]|T[PS]|3g[p2]|3gpp?(2)|mpc|MPC|flac|FLAC|vro|VRO|divx|DIVX|aif?(f)|AIF?(F)|m2t?(s)|M2T?(S)|mts|MTS|vdr|VDR|xvid|XVID|ape|APE|gif|GIF|nut|NUT|bik|BIK|web[am]|WEB[AM]|amr|AMR|awb|AWB|iso|ISO|opus|OPUS|m[eo]d|M[EO]D|xm|XM|it|IT|s[t3]m|S[T3]M|mtm|MTM|w64|W64)?(.@(crdownload|part))'
;;
esac
} &&
- complete -F _mplayer mplayer mplayer2 mencoder gmplayer kplayer
+ complete -F _comp_cmd_mplayer mplayer mplayer2 mencoder gmplayer kplayer
# ex: filetype=sh