# completion for diskutil (macOS) function __fish_diskutil_devices set -l mountpoints /dev/disk*; printf '%s\n' $mountpoints end function __fish_diskutil_mounted_volumes set -l mountpoints /Volumes/*; printf '%s\n' $mountpoints end # list complete -f -c diskutil -n '__fish_use_subcommand' -a list -d 'List disks' complete -f -c diskutil -n '__fish_seen_subcommand_from list' -o 'plist' -d 'Return a property list' complete -f -c diskutil -n '__fish_seen_subcommand_from list' -a '(__fish_diskutil_devices)' # info complete -f -c diskutil -n '__fish_use_subcommand' -a info -d 'Get detailed information about a specific whole disk or partition' complete -f -c diskutil -n '__fish_seen_subcommand_from info' -o 'plist' -d 'Return a property list' complete -f -c diskutil -n '__fish_seen_subcommand_from info' -a '(__fish_diskutil_devices)' complete -f -c diskutil -n '__fish_seen_subcommand_from info' -o 'all' -d 'Process all disks' # activity complete -f -c diskutil -n '__fish_use_subcommand' -a activity -d 'Continuously display system-wide disk manipulation activity' # listFilesystems complete -f -c diskutil -n '__fish_use_subcommand' -a listFilesystems -d 'Show the file system personalities available' complete -f -c diskutil -n '__fish_seen_subcommand_from listFilesystems' -o 'plist' -d 'Return a property list' # umount complete -f -c diskutil -n '__fish_use_subcommand' -a umount -d 'Unmount a single volume' complete -f -c diskutil -n '__fish_seen_subcommand_from umount' -a '(__fish_diskutil_mounted_volumes)' # umountDisk complete -f -c diskutil -n '__fish_use_subcommand' -a umountDisk -d 'Unmount an entire disk (all volumes)' complete -f -c diskutil -n '__fish_seen_subcommand_from umountDisk' -a '(__fish_diskutil_mounted_volumes)' # eject complete -f -c diskutil -n '__fish_use_subcommand' -a eject -d 'Eject a disk' complete -f -c diskutil -n '__fish_seen_subcommand_from eject' -a '(__fish_diskutil_devices)' # mount complete -f -c diskutil -n '__fish_use_subcommand' -a mount -d 'Mount a single volume' complete -r -c diskutil -n '__fish_seen_subcommand_from mount' -o 'mountPoint' -d 'Specify mount point' complete -f -c diskutil -n '__fish_seen_subcommand_from mount' -a '(__fish_diskutil_devices)' # mountDisk complete -f -c diskutil -n '__fish_use_subcommand' -a mountDisk -d 'Mount an entire disk (all mountable volumes)' complete -f -c diskutil -n '__fish_seen_subcommand_from mountDisk' -a '(__fish_diskutil_devices)' # rename complete -f -c diskutil -n '__fish_use_subcommand' -a rename -d 'Rename a volume' complete -f -c diskutil -n '__fish_seen_subcommand_from rename' -a '(__fish_diskutil_devices)' # enableJournal complete -f -c diskutil -n '__fish_use_subcommand' -a enableJournal -d 'Enable journaling on an HFS+ volume' complete -f -c diskutil -n '__fish_seen_subcommand_from enableJournal' -a '(__fish_diskutil_devices)' # disableJournal complete -f -c diskutil -n '__fish_use_subcommand' -a disableJournal -d 'Disable journaling on an HFS+ volume' complete -f -c diskutil -n '__fish_seen_subcommand_from disableJournal' -a '(__fish_diskutil_devices)' # moveJournal complete -f -c diskutil -n '__fish_use_subcommand' -a moveJournal -d 'Create a 512MB Apple_Journal partition' complete -f -c diskutil -n '__fish_seen_subcommand_from moveJournal' -a '(__fish_diskutil_devices)' # enableOwnership complete -f -c diskutil -n '__fish_use_subcommand' -a enableOwnership -d 'Enable ownership of a volume' complete -f -c diskutil -n '__fish_seen_subcommand_from enableOwnership' -a '(__fish_diskutil_devices)' # disableOwnership complete -f -c diskutil -n '__fish_use_subcommand' -a disableOwnership -d 'Disable ownership of a volume' complete -f -c diskutil -n '__fish_seen_subcommand_from disableOwnership' -a '(__fish_diskutil_devices)' # verifyVolume complete -f -c diskutil -n '__fish_use_subcommand' -a verifyVolume -d 'Verify the file system data structures of a volume' complete -f -c diskutil -n '__fish_seen_subcommand_from verifyVolume' -a '(__fish_diskutil_devices)' # repairVolume complete -f -c diskutil -n '__fish_use_subcommand' -a repairVolume -d 'Repair the file system data structures of a volume' complete -f -c diskutil -n '__fish_seen_subcommand_from repairVolume' -a '(__fish_diskutil_devices)' # verifyDisk complete -f -c diskutil -n '__fish_use_subcommand' -a verifyDisk -d 'Verify the partition map layout of a whole disk' complete -f -c diskutil -n '__fish_seen_subcommand_from verifyDisk' -a '(__fish_diskutil_devices)' # repairDisk complete -f -c diskutil -n '__fish_use_subcommand' -a repairDisk -d 'Repair the partition map layout of a whole disk' complete -f -c diskutil -n '__fish_seen_subcommand_from repairDisk' -a '(__fish_diskutil_devices)' # eraseDisk complete -f -c diskutil -n '__fish_use_subcommand' -a eraseDisk -d 'Erase an existing disk' complete -f -c diskutil -n '__fish_seen_subcommand_from eraseDisk' -a '(__fish_diskutil_devices)' # eraseVolume complete -f -c diskutil -n '__fish_use_subcommand' -a verifyDisk -d 'Write out a new empty file system volume' complete -f -c diskutil -n '__fish_seen_subcommand_from verifyDisk' -a '(__fish_diskutil_devices)' # reformat complete -f -c diskutil -n '__fish_use_subcommand' -a reformat -d 'Erase an existing volume by writing out a new empty file system' complete -f -c diskutil -n '__fish_seen_subcommand_from reformat' -a '(__fish_diskutil_devices)' # eraseOptical complete -f -c diskutil -n '__fish_use_subcommand' -a eraseOptical -d 'Erase optical media (CD/RW, DVD/RW, etc.)' complete -f -c diskutil -n '__fish_seen_subcommand_from eraseOptical' -a '(__fish_diskutil_devices)' # zeroDisk complete -f -c diskutil -n '__fish_use_subcommand' -a zeroDisk -d 'Erase a device, writing zeros to the media' complete -f -c diskutil -n '__fish_seen_subcommand_from zeroDisk' -a '(__fish_diskutil_devices)' # randomDisk complete -f -c diskutil -n '__fish_use_subcommand' -a randomDisk -d 'Erase a whole disk, writing random data to the media' complete -f -c diskutil -n '__fish_seen_subcommand_from randomDisk' -a '(__fish_diskutil_devices)' # secureErase complete -f -c diskutil -n '__fish_use_subcommand' -a secureErase -d 'Erase, using a secure method' complete -f -c diskutil -n '__fish_seen_subcommand_from secureErase' -a '(__fish_diskutil_devices)' # partitionDisk complete -f -c diskutil -n '__fish_use_subcommand' -a partitionDisk -d '(re)Partition a disk, removing all volumes' complete -f -c diskutil -n '__fish_seen_subcommand_from partitionDisk' -a '(__fish_diskutil_devices)' # resizeVolume complete -f -c diskutil -n '__fish_use_subcommand' -a resizeVolume -d 'Non-destructively resize a volume (partition)' complete -f -c diskutil -n '__fish_seen_subcommand_from resizeVolume' -a '(__fish_diskutil_devices)' # splitPartition complete -f -c diskutil -n '__fish_use_subcommand' -a splitPartition -d 'Destructively split a volume into multiple partitions' complete -f -c diskutil -n '__fish_seen_subcommand_from splitPartition' -a '(__fish_diskutil_devices)' # mergePartitions complete -f -c diskutil -n '__fish_use_subcommand' -a mergePartitions -d 'Merge two or more partitions on a disk' complete -f -c diskutil -n '__fish_seen_subcommand_from mergePartitions' -a '(__fish_diskutil_devices)' # appleRAID complete -f -c diskutil -n '__fish_use_subcommand' -a appleRAID -d 'Create, manipulate and destroy AppleRAID volumes' # coreStorage complete -f -c diskutil -n '__fish_use_subcommand' -a coreStorage -d 'Create, manipulate and destroy CoreStorage volumes'