From: Kevin Locke Date: Thu, 19 Sep 2019 13:40:13 +0000 (-0600) Subject: bash-completion: Add fallback for symlinks/images X-Git-Tag: v2.35-rc1~189^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6ead91ce1e8431bec5b6f10c37b54a82f0be078a;p=thirdparty%2Futil-linux.git bash-completion: Add fallback for symlinks/images For commands which support operating on files (i.e. disk images), it is desirable for bash-completion to complete matching file names. It is also desirable to complete on block device symlinks (e.g. under /dev/disk). To complete common use cases, often on canonical device names, continue to try completion using canonical device names, then fall back to matching any file incrementally as Bash does by default.[1] [1]: https://github.com/karelzak/util-linux/issues/842#issuecomment-523450243 Signed-off-by: Kevin Locke --- diff --git a/bash-completion/cfdisk b/bash-completion/cfdisk index 8921fa344b..180d987f8a 100644 --- a/bash-completion/cfdisk +++ b/bash-completion/cfdisk @@ -23,6 +23,7 @@ _cfdisk_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/fdisk b/bash-completion/fdisk index 855de1468d..a29b5f6865 100644 --- a/bash-completion/fdisk +++ b/bash-completion/fdisk @@ -91,6 +91,7 @@ _fdisk_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/fsck b/bash-completion/fsck index 301bb5d00e..16ae9bde8c 100644 --- a/bash-completion/fsck +++ b/bash-completion/fsck @@ -32,6 +32,7 @@ _fsck_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/fsck.cramfs b/bash-completion/fsck.cramfs index c92a6bd466..bf00505b01 100644 --- a/bash-completion/fsck.cramfs +++ b/bash-completion/fsck.cramfs @@ -25,6 +25,7 @@ _fsck.cramfs_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/fsck.minix b/bash-completion/fsck.minix index ac4571e712..99cbf0df17 100644 --- a/bash-completion/fsck.minix +++ b/bash-completion/fsck.minix @@ -10,6 +10,7 @@ _fsck.minix_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/mkfs b/bash-completion/mkfs index 173f7e58b1..7f9d962aee 100644 --- a/bash-completion/mkfs +++ b/bash-completion/mkfs @@ -21,6 +21,7 @@ _mkfs_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/mkfs.bfs b/bash-completion/mkfs.bfs index 1faeb446b1..4f590519ff 100644 --- a/bash-completion/mkfs.bfs +++ b/bash-completion/mkfs.bfs @@ -24,6 +24,7 @@ _mkfs.bfs_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/mkfs.cramfs b/bash-completion/mkfs.cramfs index 23e1d66f81..fa74d4c113 100644 --- a/bash-completion/mkfs.cramfs +++ b/bash-completion/mkfs.cramfs @@ -36,6 +36,7 @@ _mkfs.cramfs_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/mkfs.minix b/bash-completion/mkfs.minix index e725fd6df0..e9413f7a9b 100644 --- a/bash-completion/mkfs.minix +++ b/bash-completion/mkfs.minix @@ -26,6 +26,7 @@ _mkfs.minix_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/mkswap b/bash-completion/mkswap index ad8b51e66b..3fc5ca574f 100644 --- a/bash-completion/mkswap +++ b/bash-completion/mkswap @@ -32,6 +32,7 @@ _mkswap_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/partx b/bash-completion/partx index 028146b0ff..2430e40fec 100644 --- a/bash-completion/partx +++ b/bash-completion/partx @@ -59,6 +59,7 @@ _partx_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/sfdisk b/bash-completion/sfdisk index 9401f89ac0..8386c9fb52 100644 --- a/bash-completion/sfdisk +++ b/bash-completion/sfdisk @@ -6,6 +6,7 @@ _sfdisk_module() prev="${COMP_WORDS[COMP_CWORD-1]}" case $prev in '-d'|'--dump'|'-J'|'--json'|'-l'|'--list'|'-F'|'--list-free'|'-r'|'--reorder'|'-s'|'--show-size'|'-V'|'--verify'|'-A'|'--activate'|'--delete') + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -dpnro name)" -- $cur) ) return 0 ;; @@ -90,6 +91,7 @@ _sfdisk_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 } diff --git a/bash-completion/wipefs b/bash-completion/wipefs index 13568ca325..8c31fba4a6 100644 --- a/bash-completion/wipefs +++ b/bash-completion/wipefs @@ -54,6 +54,7 @@ _wipefs_module() return 0 ;; esac + compopt -o bashdefault -o default COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) ) return 0 }