From 0867c7fe938c0338d675c66af52cf4567f8e24dc Mon Sep 17 00:00:00 2001 From: Aditi76117 Date: Sun, 3 Aug 2025 19:08:01 +0530 Subject: [PATCH 01/13] Add completions for lsblk, cal, blkid, and fallocate (util-linux) --- src/_blkid | 59 +++++++++++++++++++++++++++++++++ src/_cal | 69 ++++++++++++++++++++++++++++++++++++++ src/_fallocate | 58 ++++++++++++++++++++++++++++++++ src/_lsblk | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 275 insertions(+) create mode 100644 src/_blkid create mode 100644 src/_cal create mode 100644 src/_fallocate create mode 100644 src/_lsblk diff --git a/src/_blkid b/src/_blkid new file mode 100644 index 0000000..7afccc6 --- /dev/null +++ b/src/_blkid @@ -0,0 +1,59 @@ +#compdef blkid +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# Description +# ----------- +# +# Completion for blkid (locate/print block device attributes) from util-linux +# https://man7.org/linux/man-pages/man8/blkid.8.html +# ------------------------------------------------------------------------------ +# Authors +# ------- +# * Aditi Sharma (https://github.com/Aditi76117) +# ------------------------------------------------------------------------------ + +_arguments \ + '(-h --help)'{-h,--help}'[display help message and exit]' \ + '(-V --version)'{-V,--version}'[display version information and exit]' \ + '(-c --cache)'{-c+,--cache=}'[specify cache file]:cache file:_files' \ + '(-o --output)'{-o+,--output=}'[specify output format]:format:(full value device export udev)' \ + '--output-uuid[print only UUIDs]' \ + '--output-label[print only labels]' \ + '--match-token=[search for devices with specific tokens]:token (e.g. UUID= or LABEL=)' \ + '--match-tag=[search for devices with a tag name]:tag name' \ + '--probe[use low-level probing on devices]' \ + '--match-types=[limit probing to specific filesystem types]:filesystem types' \ + '(-d --no-encoding)'{-d,--no-encoding}'[do not encode non-printable characters]' \ + '--list-one[print only the first device found]' \ + '*:device:_files -g /dev' + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et diff --git a/src/_cal b/src/_cal new file mode 100644 index 0000000..821f9af --- /dev/null +++ b/src/_cal @@ -0,0 +1,69 @@ +#compdef cal +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# Description +# ----------- +# +# Completion for cal (calendar display) from util-linux +# https://man7.org/linux/man-pages/man1/cal.1.html +# ------------------------------------------------------------------------------ +# Authors +# ------- +# * Aditi Sharma (https://github.com/Aditi76117) +# ------------------------------------------------------------------------------ + +_arguments \ + '(-h --help)'{-h,--help}'[display help message and exit]' \ + '(-V --version)'{-V,--version}'[display version information and exit]' \ + '(-j --julian)'{-j,--julian}'[display Julian days (days numbered from Jan 1)]' \ + '(-m --monday)'{-m,--monday}'[weeks start on Monday]' \ + '(-s --sunday)'{-s,--sunday}'[weeks start on Sunday]' \ + '(-y --year)'{-y,--year}'[display the whole year]' \ + '(-3 --three)'{-3,--three}'[display previous, current and next month]' \ + '(-1 --one)'{-1,--one}'[display only current month (default)]' \ + '(-A --after)'{-A+,--after=}'[months to display after current]:months after' \ + '(-B --before)'{-B+,--before=}'[months to display before current]:months before' \ + '(-C --center)'{-C+,--center=}'[months to display before and after current]:months around' \ + '*::arguments:->args' + +case $state in + args) + # Allow optional [month] [year] arguments + if (( CURRENT == 2 )); then + _message 'optional month (1-12)' + elif (( CURRENT == 3 )); then + _message 'optional year (e.g. 2025)' + fi + ;; +esac + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et diff --git a/src/_fallocate b/src/_fallocate new file mode 100644 index 0000000..99b9e23 --- /dev/null +++ b/src/_fallocate @@ -0,0 +1,58 @@ +#compdef fallocate +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion for fallocate (preallocate space to a file) from util-linux +# https://man7.org/linux/man-pages/man1/fallocate.1.html +# ------------------------------------------------------------------------------ +# Authors +# ------- +# * Aditi Sharma (https://github.com/Aditi76117) +# ------------------------------------------------------------------------------ + +_arguments \ + '(-h --help)'{-h,--help}'[display help message and exit]' \ + '(-V --version)'{-V,--version}'[display version information and exit]' \ + '(-l --length)'{-l+,--length=}'[specify length of the allocation]:length (e.g. 1G, 512M)' \ + '(-o --offset)'{-o+,--offset=}'[start offset for allocation]:offset (e.g. 0, 1K)' \ + '--dig-holes[detect and punch holes in the range]' \ + '--punch-hole[punch holes (deallocate space)]' \ + '--collapse-range[remove a range of bytes and move later bytes forward]' \ + '--zero-range[zero and optionally deallocate space]' \ + '--keep-size[do not extend file size beyond current size]' \ + '--insert-range[insert space into file shifting existing data]' \ + '*:filename:_files' + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et diff --git a/src/_lsblk b/src/_lsblk new file mode 100644 index 0000000..5db45ff --- /dev/null +++ b/src/_lsblk @@ -0,0 +1,89 @@ +#compdef lsblk +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# Description +# ----------- +# +# Completion for lsblk (list block devices) from util-linux +# +# https://man7.org/linux/man-pages/man8/lsblk.8.html +# ------------------------------------------------------------------------------ +# Authors +# ------- +# +# * Aditi Sharma (https://github.com/Aditi76117) +# +# ------------------------------------------------------------------------------ + +_arguments \ + '(-h --help)'{-h,--help}'[display help message and exit]' \ + '(-V --version)'{-V,--version}'[display version information and exit]' \ + '--noheadings[do not print headings]' \ + '--raw[use raw output format]' \ + '--pairs[use key="value" output format]' \ + '--json[use JSON output format]' \ + '--inverse[use inverse dependencies tree]' \ + '--ascii[use ASCII characters only for tree formatting]' \ + '--scsi[output SCSI information]' \ + '--fs[output info about filesystems]' \ + '--topology[output topology information]' \ + '--perms[output permission information]' \ + '--paths[print full device paths]' \ + '--list[use list format output]' \ + '(-b --bytes)'{-b,--bytes}'[print sizes in bytes]' \ + '(-d --nodeps)'{-d,--nodeps}'[don’t print slaves or holders]' \ + '(-D --discard)'{-D,--discard}'[print discard capabilities]' \ + '(-E --dedup)'{-E,--dedup}'[deduplicate output by major:minor]' \ + '(-e --exclude)'{-e+,--exclude=}'[exclude devices by name]:device names' \ + '(-f --fs)'{-f,--fs}'[output info about filesystems]' \ + '(-i --ascii)'{-i,--ascii}'[use ASCII characters only for tree formatting]' \ + '(-J --json)'{-J,--json}'[use JSON output format]' \ + '(-l --list)'{-l,--list}'[use list format output]' \ + '(-m --perms)'{-m,--perms}'[output permission information]' \ + '(-n --noheadings)'{-n,--noheadings}'[don’t print headings]' \ + '(-o --output)'{-o+,--output=}'[specify columns to output]:columns:_lsblk_columns' \ + '(-O --output-all)'{-O,--output-all}'[output all available columns]' \ + '(-P --pairs)'{-P,--pairs}'[use key="value" output format]' \ + '(-r --raw)'{-r,--raw}'[use raw output format]' \ + '(-s --inverse)'{-s,--inverse}'[use inverse dependencies tree]' \ + '(-S --scsi)'{-S,--scsi}'[output SCSI information]' \ + '(-t --topology)'{-t,--topology}'[output topology information]' \ + '(-x --sort)'{-x+,--sort=}'[sort output by column]:column:_lsblk_columns' \ + '*:device:_files -g /dev' + +# Helper function for --output and --sort columns +_lsblk_columns() { + _values 'columns' \ + NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT UUID LABEL MODEL SERIAL +} + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et From 3e05c065014e34b2bef4c94c041783398333d118 Mon Sep 17 00:00:00 2001 From: Aditi76117 Date: Mon, 4 Aug 2025 01:03:12 +0530 Subject: [PATCH 02/13] Add completions for chmem, ipcmk, ipcrm, ipcs, ldattach and mcookie (util-linux) --- src/_chmem | 51 +++++++++++++++++++++++++++++++++++++++++ src/_ipcmk | 50 ++++++++++++++++++++++++++++++++++++++++ src/_ipcrm | 57 ++++++++++++++++++++++++++++++++++++++++++++++ src/_ipcs | 57 ++++++++++++++++++++++++++++++++++++++++++++++ src/_ldattach | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++ src/_mcookie | 49 +++++++++++++++++++++++++++++++++++++++ 6 files changed, 327 insertions(+) create mode 100644 src/_chmem create mode 100644 src/_ipcmk create mode 100644 src/_ipcrm create mode 100644 src/_ipcs create mode 100644 src/_ldattach create mode 100644 src/_mcookie diff --git a/src/_chmem b/src/_chmem new file mode 100644 index 0000000..cd462e4 --- /dev/null +++ b/src/_chmem @@ -0,0 +1,51 @@ +#compdef chmem +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for chmem - configure memory +# +# Author: +# *Aditi Sharma (https://github.com/Aditi76117) +# ------------------------------------------------------------------------------ + +_arguments -s \ + '--enable[Enable memory section]:memory section (e.g., 0x1234)' \ + '--disable[Disable memory section]:memory section (e.g., 0x1234)' \ + '--blocks[Specify blocks instead of section numbers]' \ + '--verbose[Enable verbose mode]' \ + '--help[Display help message and exit]' \ + '--version[Display version information and exit]' + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et diff --git a/src/_ipcmk b/src/_ipcmk new file mode 100644 index 0000000..8367023 --- /dev/null +++ b/src/_ipcmk @@ -0,0 +1,50 @@ +#compdef ipcmk +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for ipcmk - create various IPC resources +# +# Author: +# * Aditi Sharma (https://github.com/Aditi76117) +# ------------------------------------------------------------------------------ + +_arguments -s \ + '--help[Display help message and exit]' \ + '--version[Display version information and exit]' \ + '-M+[Create a shared memory segment of given size in bytes]:size (bytes)' \ + '-Q[Create a message queue]' \ + '-S+[Create a semaphore array with given number of elements]:number of elements' + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et diff --git a/src/_ipcrm b/src/_ipcrm new file mode 100644 index 0000000..4ddc69d --- /dev/null +++ b/src/_ipcrm @@ -0,0 +1,57 @@ +#compdef ipcrm +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for ipcrm - remove System V IPC objects +# +# Author: +# * Aditi Sharma (https://github.com/Aditi76117) +# ------------------------------------------------------------------------------ + +_arguments -s \ + '--all[Remove all resources of specified type]' \ + '--all=msg[Remove all message queues]' \ + '--all=shm[Remove all shared memory segments]' \ + '--all=sem[Remove all semaphores]' \ + '--msgid[Remove message queue by id]:msgid: ' \ + '--shmid[Remove shared memory segment by id]:shmid: ' \ + '--semid[Remove semaphore by id]:semid: ' \ + '--msgkey[Remove message queue by key]:msgkey: ' \ + '--shmkey[Remove shared memory segment by key]:shmkey: ' \ + '--semkey[Remove semaphore by key]:semkey: ' \ + '--help[Display help message and exit]' \ + '--version[Display version information and exit]' + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et diff --git a/src/_ipcs b/src/_ipcs new file mode 100644 index 0000000..8330e83 --- /dev/null +++ b/src/_ipcs @@ -0,0 +1,57 @@ +#compdef ipcs +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for ipcs - show information on IPC facilities +# +# Author: +# * Aditi Sharma (https://github.com/Aditi76117) +# ------------------------------------------------------------------------------ + +_arguments -s \ + '-m[List shared memory segments]' \ + '-q[List message queues]' \ + '-s[List semaphore arrays]' \ + '-a[List all facilities]' \ + '-c[Show creator and owner]' \ + '-l[Show limits]' \ + '-p[Show PIDs]' \ + '-t[Show times]' \ + '-u[Show summary]' \ + '--human[Print sizes in human-readable format]' \ + '--help[Display help message and exit]' \ + '--version[Display version information and exit]' + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et diff --git a/src/_ldattach b/src/_ldattach new file mode 100644 index 0000000..3d3aedc --- /dev/null +++ b/src/_ldattach @@ -0,0 +1,63 @@ +#compdef ldattach +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for ldattach - attach a line discipline to a serial line +# +# Author: +# * Aditi Sharma (https://github.com/Aditi76117) +# ------------------------------------------------------------------------------ + +_arguments -s \ + '--debug[Enable debugging output]' \ + '--eightbits[Use 8-bit characters]' \ + '--evenparity[Use even parity]' \ + '--oddparity[Use odd parity]' \ + '--noparity[Use no parity]' \ + '--nohangup[Do not hang up on close]' \ + '--speed[Specify baud rate]:baud rate (e.g., 9600)' \ + '--wait-slave[Wait for slave device to appear]' \ + '--help[Display help message and exit]' \ + '--version[Display version information and exit]' \ + '*::device:->device' + +# Complete device argument +case $state in + device) + _files -g '/dev/tty*' + ;; +esac + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et diff --git a/src/_mcookie b/src/_mcookie new file mode 100644 index 0000000..92324d0 --- /dev/null +++ b/src/_mcookie @@ -0,0 +1,49 @@ +#compdef mcookie +# ------------------------------------------------------------------------------ +# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for mcookie - generate random 128-bit hexadecimal numbers +# +# Author: +# * Aditi Sharma (https://github.com/Aditi76117) +# ------------------------------------------------------------------------------ + +_arguments -s \ + '--max-size[Set maximum length of output]:number' \ + '--verbose[Print entropy source and random seed info]' \ + '--help[Display help message and exit]' \ + '--version[Display version information and exit]' + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et From 8a7515adc8ab6f24c7285b99db5a8a11aa1ed9ac Mon Sep 17 00:00:00 2001 From: Aditi76117 Date: Mon, 4 Aug 2025 01:12:02 +0530 Subject: [PATCH 03/13] Add completions for ipcmk (util-linux) --- src/_ipcmk | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/_ipcmk b/src/_ipcmk index 8367023..b64128d 100644 --- a/src/_ipcmk +++ b/src/_ipcmk @@ -35,11 +35,13 @@ # ------------------------------------------------------------------------------ _arguments -s \ + '--shmem[Create a shared memory segment]' \ + '--queue[Create a message queue]' \ + '--semaphore[Create a semaphore array]' \ + '--size[Size of shared memory segment (in bytes)]:size (bytes): ' \ + '--mode[Permissions for the resource (octal)]:permissions (e.g. 0600): ' \ '--help[Display help message and exit]' \ - '--version[Display version information and exit]' \ - '-M+[Create a shared memory segment of given size in bytes]:size (bytes)' \ - '-Q[Create a message queue]' \ - '-S+[Create a semaphore array with given number of elements]:number of elements' + '--version[Display version information and exit]' # Local Variables: # mode: Shell-Script From d9b1b2bfa9d0c4a7a6341503ede91f52ea2de7fe Mon Sep 17 00:00:00 2001 From: Aditi76117 Date: Mon, 4 Aug 2025 01:27:06 +0530 Subject: [PATCH 04/13] Add completions for ipcmk (util-linux) --- src/_ipcmk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/_ipcmk b/src/_ipcmk index b64128d..7a464c9 100644 --- a/src/_ipcmk +++ b/src/_ipcmk @@ -50,3 +50,7 @@ _arguments -s \ # sh-basic-offset: 2 # End: # vim: ft=zsh sw=2 ts=2 et + +# Note: This script is useful only on systems with `ipcmk` (typically Linux). +# macOS does not include this command. + From 331e0ab9faac76ecfa767fad64248a997d49ad4c Mon Sep 17 00:00:00 2001 From: Aditi76117 Date: Tue, 5 Aug 2025 00:10:06 +0530 Subject: [PATCH 05/13] Remove _lsblk and _cal as they are already present in upstream zsh --- src/_cal | 69 ------------------------------------------ src/_lsblk | 89 ------------------------------------------------------ 2 files changed, 158 deletions(-) delete mode 100644 src/_cal delete mode 100644 src/_lsblk diff --git a/src/_cal b/src/_cal deleted file mode 100644 index 821f9af..0000000 --- a/src/_cal +++ /dev/null @@ -1,69 +0,0 @@ -#compdef cal -# ------------------------------------------------------------------------------ -# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of the zsh-users nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY -# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# Description -# ----------- -# -# Completion for cal (calendar display) from util-linux -# https://man7.org/linux/man-pages/man1/cal.1.html -# ------------------------------------------------------------------------------ -# Authors -# ------- -# * Aditi Sharma (https://github.com/Aditi76117) -# ------------------------------------------------------------------------------ - -_arguments \ - '(-h --help)'{-h,--help}'[display help message and exit]' \ - '(-V --version)'{-V,--version}'[display version information and exit]' \ - '(-j --julian)'{-j,--julian}'[display Julian days (days numbered from Jan 1)]' \ - '(-m --monday)'{-m,--monday}'[weeks start on Monday]' \ - '(-s --sunday)'{-s,--sunday}'[weeks start on Sunday]' \ - '(-y --year)'{-y,--year}'[display the whole year]' \ - '(-3 --three)'{-3,--three}'[display previous, current and next month]' \ - '(-1 --one)'{-1,--one}'[display only current month (default)]' \ - '(-A --after)'{-A+,--after=}'[months to display after current]:months after' \ - '(-B --before)'{-B+,--before=}'[months to display before current]:months before' \ - '(-C --center)'{-C+,--center=}'[months to display before and after current]:months around' \ - '*::arguments:->args' - -case $state in - args) - # Allow optional [month] [year] arguments - if (( CURRENT == 2 )); then - _message 'optional month (1-12)' - elif (( CURRENT == 3 )); then - _message 'optional year (e.g. 2025)' - fi - ;; -esac - -# Local Variables: -# mode: Shell-Script -# sh-indentation: 2 -# indent-tabs-mode: nil -# sh-basic-offset: 2 -# End: -# vim: ft=zsh sw=2 ts=2 et diff --git a/src/_lsblk b/src/_lsblk deleted file mode 100644 index 5db45ff..0000000 --- a/src/_lsblk +++ /dev/null @@ -1,89 +0,0 @@ -#compdef lsblk -# ------------------------------------------------------------------------------ -# Copyright (c) 2016 Github zsh-users - https://github.com/zsh-users -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of the zsh-users nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY -# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# Description -# ----------- -# -# Completion for lsblk (list block devices) from util-linux -# -# https://man7.org/linux/man-pages/man8/lsblk.8.html -# ------------------------------------------------------------------------------ -# Authors -# ------- -# -# * Aditi Sharma (https://github.com/Aditi76117) -# -# ------------------------------------------------------------------------------ - -_arguments \ - '(-h --help)'{-h,--help}'[display help message and exit]' \ - '(-V --version)'{-V,--version}'[display version information and exit]' \ - '--noheadings[do not print headings]' \ - '--raw[use raw output format]' \ - '--pairs[use key="value" output format]' \ - '--json[use JSON output format]' \ - '--inverse[use inverse dependencies tree]' \ - '--ascii[use ASCII characters only for tree formatting]' \ - '--scsi[output SCSI information]' \ - '--fs[output info about filesystems]' \ - '--topology[output topology information]' \ - '--perms[output permission information]' \ - '--paths[print full device paths]' \ - '--list[use list format output]' \ - '(-b --bytes)'{-b,--bytes}'[print sizes in bytes]' \ - '(-d --nodeps)'{-d,--nodeps}'[don’t print slaves or holders]' \ - '(-D --discard)'{-D,--discard}'[print discard capabilities]' \ - '(-E --dedup)'{-E,--dedup}'[deduplicate output by major:minor]' \ - '(-e --exclude)'{-e+,--exclude=}'[exclude devices by name]:device names' \ - '(-f --fs)'{-f,--fs}'[output info about filesystems]' \ - '(-i --ascii)'{-i,--ascii}'[use ASCII characters only for tree formatting]' \ - '(-J --json)'{-J,--json}'[use JSON output format]' \ - '(-l --list)'{-l,--list}'[use list format output]' \ - '(-m --perms)'{-m,--perms}'[output permission information]' \ - '(-n --noheadings)'{-n,--noheadings}'[don’t print headings]' \ - '(-o --output)'{-o+,--output=}'[specify columns to output]:columns:_lsblk_columns' \ - '(-O --output-all)'{-O,--output-all}'[output all available columns]' \ - '(-P --pairs)'{-P,--pairs}'[use key="value" output format]' \ - '(-r --raw)'{-r,--raw}'[use raw output format]' \ - '(-s --inverse)'{-s,--inverse}'[use inverse dependencies tree]' \ - '(-S --scsi)'{-S,--scsi}'[output SCSI information]' \ - '(-t --topology)'{-t,--topology}'[output topology information]' \ - '(-x --sort)'{-x+,--sort=}'[sort output by column]:column:_lsblk_columns' \ - '*:device:_files -g /dev' - -# Helper function for --output and --sort columns -_lsblk_columns() { - _values 'columns' \ - NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT UUID LABEL MODEL SERIAL -} - -# Local Variables: -# mode: Shell-Script -# sh-indentation: 2 -# indent-tabs-mode: nil -# sh-basic-offset: 2 -# End: -# vim: ft=zsh sw=2 ts=2 et From bdee8a976c39cb63045caa493fd3571b4f1f109e Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 5 Aug 2025 09:04:53 +0900 Subject: [PATCH 06/13] Update mcookie --- src/_mcookie | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/_mcookie b/src/_mcookie index 92324d0..e29c05d 100644 --- a/src/_mcookie +++ b/src/_mcookie @@ -28,17 +28,19 @@ # Description # ----------- # -# Completion script for mcookie - generate random 128-bit hexadecimal numbers +# Completion script for mcookie 2.40.2 (https://github.com/util-linux/util-linux) +# - generate random 128-bit hexadecimal numbers # # Author: # * Aditi Sharma (https://github.com/Aditi76117) # ------------------------------------------------------------------------------ -_arguments -s \ - '--max-size[Set maximum length of output]:number' \ - '--verbose[Print entropy source and random seed info]' \ - '--help[Display help message and exit]' \ - '--version[Display version information and exit]' +_arguments \ + {-f,--file}'[Use file as as cookie seed]:file:_files' \ + {-m,--max-size}'[Set maximum length of output]:number' \ + {-v,--verbose}'[Print entropy source and random seed info]' \ + '(- *)'{-h,--help}'[Display help message and exit]' \ + '(- *)'{-V,--version}'[Display version information and exit]' # Local Variables: # mode: Shell-Script From 0032bac8597c1d1d32f0d13485cbf226d4fe9016 Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 5 Aug 2025 09:35:33 +0900 Subject: [PATCH 07/13] Update ldattach --- src/_ldattach | 36 +++++++++++++++++++++++------------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/src/_ldattach b/src/_ldattach index 3d3aedc..a88eb31 100644 --- a/src/_ldattach +++ b/src/_ldattach @@ -28,24 +28,34 @@ # Description # ----------- # -# Completion script for ldattach - attach a line discipline to a serial line +# Completion script for ldattach 2.40.2(https://github.com/util-linux/util-linux/) +# - attach a line discipline to a serial line # # Author: # * Aditi Sharma (https://github.com/Aditi76117) # ------------------------------------------------------------------------------ -_arguments -s \ - '--debug[Enable debugging output]' \ - '--eightbits[Use 8-bit characters]' \ - '--evenparity[Use even parity]' \ - '--oddparity[Use odd parity]' \ - '--noparity[Use no parity]' \ - '--nohangup[Do not hang up on close]' \ - '--speed[Specify baud rate]:baud rate (e.g., 9600)' \ - '--wait-slave[Wait for slave device to appear]' \ - '--help[Display help message and exit]' \ - '--version[Display version information and exit]' \ - '*::device:->device' +typeset -A opt_args +local context state line + +local curcontext="$curcontext" + +_arguments -s -C \ + '(-1,--onestopbit)'{-1,--onestopbit}'[Set the number of stop bits of the serial line to one]' \ + '(-2,--twostopbits)'{-2,--twostopbits}'[Set the number of stop bits of the serial line to two]' \ + '(-7,--sevenbits)'{-7,--sevenbits}'[Set the character size of the srial line to 7 bits]' \ + '(-8,--eightbits)'{-8,--eightbits}'[Set the character size of the srial line to 8 bits]' \ + '(-d --debug)'{-d,--debug}'[Enable debugging output]' \ + '(-e --evenparity)'{-e,--evenparity}'[Set the parity of the serial line to even]' \ + '(-i --iflag)'{-i,--iflag}'[Set the specified bits in the c_iflag word of the serial line]:value' \ + '(-n --noparity)'{-n,--noparity}'[Set the parity of the serial line to none]' \ + '(-o --oddparity)'{-o,--oddparity}'[Set the parity of the serial line to odd]' \ + '(-s --speed)'{-s,--speed}'[Set the speed(the baud rate) of the serial line]:value' \ + '(-C --intro-command)'{-C,--intro-command}'[An intro command before the invocation of ldattach]:command' \ + '(-p --pause)'{-p,--pause}'[Sleep for given seconds before the invocation of ldattach]:value' \ + '(- *)'{-h,--help}'[Display help text and exit]'\ + '(- *)'{-V,--version}'[Print version and exit]' \ + '2::device:->device' # Complete device argument case $state in From 420a3d78c97e36576f7c04645d2adce457095935 Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 5 Aug 2025 11:30:57 +0900 Subject: [PATCH 08/13] Update ipcs --- src/_ipcs | 29 ++++++++++++++++------------- src/_ldattach | 2 +- src/_mcookie | 2 +- 3 files changed, 18 insertions(+), 15 deletions(-) diff --git a/src/_ipcs b/src/_ipcs index 8330e83..aa30de1 100644 --- a/src/_ipcs +++ b/src/_ipcs @@ -28,25 +28,28 @@ # Description # ----------- # -# Completion script for ipcs - show information on IPC facilities +# Completion script for ipcs, util-linux 2.40.2 (https://github.com/util-linux/util-linux/) +# - show information on IPC facilities # # Author: # * Aditi Sharma (https://github.com/Aditi76117) # ------------------------------------------------------------------------------ _arguments -s \ - '-m[List shared memory segments]' \ - '-q[List message queues]' \ - '-s[List semaphore arrays]' \ - '-a[List all facilities]' \ - '-c[Show creator and owner]' \ - '-l[Show limits]' \ - '-p[Show PIDs]' \ - '-t[Show times]' \ - '-u[Show summary]' \ - '--human[Print sizes in human-readable format]' \ - '--help[Display help message and exit]' \ - '--version[Display version information and exit]' + '(-i --id)'{-i,--id}'[Show full details on just one resource element identified by id]:id' \ + '(- *)'{-h,--help}'[Display help text and exit]' \ + '(- *)'{-V,--version}'[Print version and exit]' \ + '(-m --shmems)'{-m,--shmems}'[Write information about active shared memory segments]' \ + '(-q --queues)'{-q,--queues}'[Write information about active message queues]' \ + '(-s --semaphores)'{-s,--semaphores}'[Write information about active semaphore sets]' \ + '(-a --all -s --semaphores -q --queues -m --shmems)'{-a,--all}'[Write information about all three resources]' \ + '(-c --creator)'{-c,--creator}'[Show creator and owner]' \ + '(-l --limits)'{-l,--limits}'[Show resource limits]' \ + '(-p --pid)'{-p,--pid}'[Show PIDs of creator and last operator]' \ + '(-t --time)'{-t,--time}'[Write time information]' \ + '(-u --summary)'{-u,--summary}'[Show status summary]' \ + '(--human -b --bytes)'{-b,--bytes}'[Print the sizes in bytes rather than in a human-readable format]' \ + '(--human -b --bytes)--human[Print sizes in human-readable format]' # Local Variables: # mode: Shell-Script diff --git a/src/_ldattach b/src/_ldattach index a88eb31..5cbead2 100644 --- a/src/_ldattach +++ b/src/_ldattach @@ -28,7 +28,7 @@ # Description # ----------- # -# Completion script for ldattach 2.40.2(https://github.com/util-linux/util-linux/) +# Completion script for ldattach, util-linux 2.40.2 (https://github.com/util-linux/util-linux/) # - attach a line discipline to a serial line # # Author: diff --git a/src/_mcookie b/src/_mcookie index e29c05d..04b21be 100644 --- a/src/_mcookie +++ b/src/_mcookie @@ -28,7 +28,7 @@ # Description # ----------- # -# Completion script for mcookie 2.40.2 (https://github.com/util-linux/util-linux) +# Completion script for mcookie, util-linux 2.40.2 (https://github.com/util-linux/util-linux/) # - generate random 128-bit hexadecimal numbers # # Author: From f21d28a4a11d661e87c7f108d50db4b892056994 Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 5 Aug 2025 11:36:07 +0900 Subject: [PATCH 09/13] Update ipcmk --- src/_ipcmk | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/_ipcmk b/src/_ipcmk index 7a464c9..31128fe 100644 --- a/src/_ipcmk +++ b/src/_ipcmk @@ -28,20 +28,20 @@ # Description # ----------- # -# Completion script for ipcmk - create various IPC resources +# Completion script for ipcmk, util-linux 2.40.2 (https://github.com/util-linux/util-linux/) +# - create various IPC resources # # Author: # * Aditi Sharma (https://github.com/Aditi76117) # ------------------------------------------------------------------------------ _arguments -s \ - '--shmem[Create a shared memory segment]' \ - '--queue[Create a message queue]' \ - '--semaphore[Create a semaphore array]' \ - '--size[Size of shared memory segment (in bytes)]:size (bytes): ' \ - '--mode[Permissions for the resource (octal)]:permissions (e.g. 0600): ' \ - '--help[Display help message and exit]' \ - '--version[Display version information and exit]' + '(-M --shmem)'{-M,--shmem}'[Create a shared memory segment of size bytes]:size' \ + '(-Q --queue)'{-Q,--queue}'[Create a message queue]' \ + '(-S --semaphore)'{-S,--semaphore}'[Create a semaphore array with number of elements]:number' \ + '(-p --mode)'{-p,--mode}'[Access permissions for the resource]:mode' \ + '(- *)'{-h,--help}'[Display help text and exit]' \ + '(- *)'{-V,--version}'[Print version and exit ]' \ # Local Variables: # mode: Shell-Script @@ -53,4 +53,3 @@ _arguments -s \ # Note: This script is useful only on systems with `ipcmk` (typically Linux). # macOS does not include this command. - From dee64272964a95cfdfbe0c0dc8e3cb41bf201187 Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 5 Aug 2025 11:43:19 +0900 Subject: [PATCH 10/13] Update ipcrm --- src/_ipcrm | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/_ipcrm b/src/_ipcrm index 4ddc69d..91b2fdd 100644 --- a/src/_ipcrm +++ b/src/_ipcrm @@ -28,25 +28,25 @@ # Description # ----------- # -# Completion script for ipcrm - remove System V IPC objects +# Completion script for ipcrm, util-linux 2.40.2 (https://github.com/util-linux/util-linux/) +# - remove System V IPC objects # # Author: # * Aditi Sharma (https://github.com/Aditi76117) # ------------------------------------------------------------------------------ _arguments -s \ - '--all[Remove all resources of specified type]' \ - '--all=msg[Remove all message queues]' \ - '--all=shm[Remove all shared memory segments]' \ - '--all=sem[Remove all semaphores]' \ - '--msgid[Remove message queue by id]:msgid: ' \ - '--shmid[Remove shared memory segment by id]:shmid: ' \ - '--semid[Remove semaphore by id]:semid: ' \ - '--msgkey[Remove message queue by key]:msgkey: ' \ - '--shmkey[Remove shared memory segment by key]:shmkey: ' \ - '--semkey[Remove semaphore by key]:semkey: ' \ - '--help[Display help message and exit]' \ - '--version[Display version information and exit]' + '(-a --all)'{-a,--all}'-[Remove all resources]:resource:(shm msg sem)' \ + '(-M --shmem-key)'{-M,--shmem-key}'[Remove the shared memory segment created with shemkey]:shmkey' \ + '(-m --shmem-id)'{-m,--shmem-id}'[Remove the shared memory segment identified by shmid]:shmid' \ + '(-Q --queue-key)'{-Q,--queue-key}'[Remove the message queue created with msgkey]:msgkey' \ + '(-q --queue-id)'{-q,--queue-id}'[Remove the message queue identified by msgid]:msgid' \ + '(-S --semaphore-key)'{-S,--semaphore-key}'[Remove the semaphore created with semkey]:semkey' \ + '(-s --semaphore-id)'{-s,--semaphore-id}'[Remove the semaphore identified by semid]' \ + '(- *)'{-h,--help}'[Display help text and exit]' \ + '(- *)'{-V,--version}'[Print version and exit]' \ + '1:type:(shm msg sem)' \ + '*:id' # Local Variables: # mode: Shell-Script From 3ef170ff4fafd504a1d0251b9123cc833b98e02b Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 5 Aug 2025 11:56:29 +0900 Subject: [PATCH 11/13] Update fallocate --- src/_fallocate | 25 ++++++++++++++----------- src/_ipcmk | 2 +- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/src/_fallocate b/src/_fallocate index 99b9e23..5317b14 100644 --- a/src/_fallocate +++ b/src/_fallocate @@ -28,7 +28,8 @@ # Description # ----------- # -# Completion for fallocate (preallocate space to a file) from util-linux +# Completion for fallocate, util-linux 2.40.2 (https://github.com/util-linux/util-linux/) +# - preallocate or deallocate space to a file # https://man7.org/linux/man-pages/man1/fallocate.1.html # ------------------------------------------------------------------------------ # Authors @@ -37,16 +38,18 @@ # ------------------------------------------------------------------------------ _arguments \ - '(-h --help)'{-h,--help}'[display help message and exit]' \ - '(-V --version)'{-V,--version}'[display version information and exit]' \ - '(-l --length)'{-l+,--length=}'[specify length of the allocation]:length (e.g. 1G, 512M)' \ - '(-o --offset)'{-o+,--offset=}'[start offset for allocation]:offset (e.g. 0, 1K)' \ - '--dig-holes[detect and punch holes in the range]' \ - '--punch-hole[punch holes (deallocate space)]' \ - '--collapse-range[remove a range of bytes and move later bytes forward]' \ - '--zero-range[zero and optionally deallocate space]' \ - '--keep-size[do not extend file size beyond current size]' \ - '--insert-range[insert space into file shifting existing data]' \ + '(-c --collapse-range)'{-c,--collapse-range}'[Removes a byte range from a file without leaving a hole]' \ + '(-d --dig-holes)'{-d,--dig-holes}'[Detect and dig holes]' \ + '(-i --insert-range)'{-i,--insert-range}'[Insert a hole of length bytes from offset]' \ + '(-l --length)'{-l+,--length}'[Specifies the length of the range, in bytes]:bytes' \ + '(-n --keep-size)'{-n,--keep-size}'[Do not modify the apparent length of the file]' \ + '(-o --offset)'{-o+,--offset}'[Specifies the beginning offset of the range, in bytes]:offset' \ + '(-p --punch-hole)'{-p,--punch-hole}'[Deallocates space in the byte range starting at offset and continuing for length bytes]' \ + '(-v --verbose)'{-v,--verbose}'[Enable verbose mode]' \ + '(-x --posix)'{-p,--posix}'[Enable POSIX operation mode]' \ + '(-z --zero-range)'{-z,--zero-range}'[Zeroes space in the byte range starting at offset and continuing for length bytes]' \ + '(- *)'{-h,--help}'[Display help text and exit]' \ + '(- *)'{-V,--version}'[Print version and exit ]' \ '*:filename:_files' # Local Variables: diff --git a/src/_ipcmk b/src/_ipcmk index 31128fe..c40e43b 100644 --- a/src/_ipcmk +++ b/src/_ipcmk @@ -41,7 +41,7 @@ _arguments -s \ '(-S --semaphore)'{-S,--semaphore}'[Create a semaphore array with number of elements]:number' \ '(-p --mode)'{-p,--mode}'[Access permissions for the resource]:mode' \ '(- *)'{-h,--help}'[Display help text and exit]' \ - '(- *)'{-V,--version}'[Print version and exit ]' \ + '(- *)'{-V,--version}'[Print version and exit ]' # Local Variables: # mode: Shell-Script From 50611e5b99f6e466d0d45b3f69c6b7a4a0b11053 Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 5 Aug 2025 12:01:27 +0900 Subject: [PATCH 12/13] Update chmem --- src/_chmem | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/_chmem b/src/_chmem index cd462e4..f1e9f9a 100644 --- a/src/_chmem +++ b/src/_chmem @@ -28,19 +28,21 @@ # Description # ----------- # -# Completion script for chmem - configure memory +# Completion script for chmem, util-linux 2.40.2 (https://github.com/util-linux/util-linux/) +# - configure memory # # Author: # *Aditi Sharma (https://github.com/Aditi76117) # ------------------------------------------------------------------------------ _arguments -s \ - '--enable[Enable memory section]:memory section (e.g., 0x1234)' \ - '--disable[Disable memory section]:memory section (e.g., 0x1234)' \ - '--blocks[Specify blocks instead of section numbers]' \ - '--verbose[Enable verbose mode]' \ - '--help[Display help message and exit]' \ - '--version[Display version information and exit]' + '(-b --blocks)'{-b,--blocks}'[Use a BLOCKRANGE parameter instead of RANGE or SIZE]' \ + '(-d --disable)'{-d,--disable}'[Set the specified RANGE, SIZE, or BLOCKRANGE of memory offline]' \ + '(-e --enable)'{-e,--enable}'[Set the specified RANGE, SIZE, or BLOCKRANGE of memory online]' \ + '(-z --zone)'{-z,--zone}'[Select the memory ZONE where to set the specified RANGE, SIZE, or BLOCKRANGE of memory online or offline]' \ + '(-v --verbose)'{-v,--verbose}'[Verbose mode]' \ + '(- *)'{-h,--help}'[Display help text and exit]' \ + '(- *)'{-V,--version}'[Print version and exit ]' # Local Variables: # mode: Shell-Script From 73b5b78d707b55f21093e4d86114e29b882e056a Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 5 Aug 2025 12:14:58 +0900 Subject: [PATCH 13/13] Update blkid --- src/_blkid | 35 ++++++++++++++++++++++------------- src/_chmem | 2 +- src/_fallocate | 2 +- src/_ipcmk | 2 +- 4 files changed, 25 insertions(+), 16 deletions(-) diff --git a/src/_blkid b/src/_blkid index 7afccc6..e109545 100644 --- a/src/_blkid +++ b/src/_blkid @@ -27,7 +27,8 @@ # Description # ----------- # -# Completion for blkid (locate/print block device attributes) from util-linux +# Completion for blkid, util-linux 2.40.2 (https://github.com/util-linux/util-linux/) +# - locate/print block device attributes # https://man7.org/linux/man-pages/man8/blkid.8.html # ------------------------------------------------------------------------------ # Authors @@ -36,18 +37,26 @@ # ------------------------------------------------------------------------------ _arguments \ - '(-h --help)'{-h,--help}'[display help message and exit]' \ - '(-V --version)'{-V,--version}'[display version information and exit]' \ - '(-c --cache)'{-c+,--cache=}'[specify cache file]:cache file:_files' \ - '(-o --output)'{-o+,--output=}'[specify output format]:format:(full value device export udev)' \ - '--output-uuid[print only UUIDs]' \ - '--output-label[print only labels]' \ - '--match-token=[search for devices with specific tokens]:token (e.g. UUID= or LABEL=)' \ - '--match-tag=[search for devices with a tag name]:tag name' \ - '--probe[use low-level probing on devices]' \ - '--match-types=[limit probing to specific filesystem types]:filesystem types' \ - '(-d --no-encoding)'{-d,--no-encoding}'[do not encode non-printable characters]' \ - '--list-one[print only the first device found]' \ + '(-c --cache-file)'{-c+,--cache-file}'[Read from cachefile instead of reading from the default cache file]:cache file:_files' \ + '(-d --no-encoding)'{-d,--no-encoding}"[Don't encode non-printing characters]" \ + '(-D --no-part-details)'{-D,--no-part-details}"[Don't print information from partition table in low-level probing mode]" \ + '(-g --garbage-collect)'{-g,--garbage-collect}'[Perform a garbage collection on the blkid cache]' \ + '(-H --hint)'{-H,--hint}'[Set probing hint]:setting' \ + '(-i --info)'{-i,--info}'[Display information about I/O limits]' \ + '(-k --list-filesystems)'{-k,--list-filesystems}'[List all known filesystems and RAIDS and exits]' \ + '(-l --list-one)'{-l,--list-one}'[Look up only one device that matches with the --match-token option]' \ + '(-L --label)'{-L+,--label}'[Look up the device that uses this filesystem label]:label' \ + '(-n --match-types)'{-n+,--match-types}'[Restrict the probing functions to the specified comma-separated list of superblock types]:list' \ + '(-o --output)'{-o+,--output}'[Use the specified output format]:format:(full value list device udev export)' \ + '(-O --offset)'{-O+,--offset}'[Probe at the given offset]:offset' \ + '(-p --probe)'{-p,--probe}'[Switch to low-level superblock probing mode]' \ + '(-s --match-tag)'{-m+,--match-tag}'[Show only the tags that match tag]:tag' \ + '(-S --size)'{-S,--size}'[Override the size of device/file]' \ + '(-t --match-token)'{-t+,--match-token}'[Search for block devices with tokens named NAME that have the VALUE]:name' \ + '(-u --usages)'{-u,--usages}'[Restrict the probing functions to the specified comma-separated list of usage types]:list' \ + '(-U --uuid)'{-U,--uuid}'[Look up the device that uses this filesystem uuid]:uuid' \ + '(- *)'{-h,--help}'[Display help text and exit]' \ + '(- *)'{-V,--version}'[Print version and exit]' \ '*:device:_files -g /dev' # Local Variables: diff --git a/src/_chmem b/src/_chmem index f1e9f9a..2e0753f 100644 --- a/src/_chmem +++ b/src/_chmem @@ -42,7 +42,7 @@ _arguments -s \ '(-z --zone)'{-z,--zone}'[Select the memory ZONE where to set the specified RANGE, SIZE, or BLOCKRANGE of memory online or offline]' \ '(-v --verbose)'{-v,--verbose}'[Verbose mode]' \ '(- *)'{-h,--help}'[Display help text and exit]' \ - '(- *)'{-V,--version}'[Print version and exit ]' + '(- *)'{-V,--version}'[Print version and exit]' # Local Variables: # mode: Shell-Script diff --git a/src/_fallocate b/src/_fallocate index 5317b14..1503e27 100644 --- a/src/_fallocate +++ b/src/_fallocate @@ -49,7 +49,7 @@ _arguments \ '(-x --posix)'{-p,--posix}'[Enable POSIX operation mode]' \ '(-z --zero-range)'{-z,--zero-range}'[Zeroes space in the byte range starting at offset and continuing for length bytes]' \ '(- *)'{-h,--help}'[Display help text and exit]' \ - '(- *)'{-V,--version}'[Print version and exit ]' \ + '(- *)'{-V,--version}'[Print version and exit]' \ '*:filename:_files' # Local Variables: diff --git a/src/_ipcmk b/src/_ipcmk index c40e43b..bee3b6e 100644 --- a/src/_ipcmk +++ b/src/_ipcmk @@ -41,7 +41,7 @@ _arguments -s \ '(-S --semaphore)'{-S,--semaphore}'[Create a semaphore array with number of elements]:number' \ '(-p --mode)'{-p,--mode}'[Access permissions for the resource]:mode' \ '(- *)'{-h,--help}'[Display help text and exit]' \ - '(- *)'{-V,--version}'[Print version and exit ]' + '(- *)'{-V,--version}'[Print version and exit]' # Local Variables: # mode: Shell-Script