Documents what each function needs for full functionality -- other repo functions it calls, and external CLI tools it uses or falls back gracefully without (e.g. rm/trash, ls/eza+lsd) -- matching the existing CLASSIFICATION convention's placement and the ~20 functions that already carried this label. Also broadens verify-manual.py's dependency-resolution check to recognize this repo's other existence-check idioms (command -q, command -v, which -- not just type -q) and dng2avif's dynamic type -q $cmd loop, since several genuine dependencies (eza, lsd, fastfetch, fd, ps, ...) are only ever guarded that way.
39 lines
913 B
Fish
39 lines
913 B
Fish
# Copyright (C) 2026 Rootiest
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
# CATEGORY
|
|
# 01-file-and-directory
|
|
#
|
|
# DEPENDENCIES
|
|
# _fish_mkdir_p
|
|
#
|
|
# SYNOPSIS
|
|
# poke <file> [file...]
|
|
#
|
|
# DESCRIPTION
|
|
# Creates files using touch, automatically creating any missing parent
|
|
# directories via _fish_mkdir_p with tree output.
|
|
#
|
|
# ARGUMENTS
|
|
# file One or more file paths to create
|
|
#
|
|
# EXIT STATUS
|
|
# 0 Files created
|
|
# 1 No file argument provided
|
|
#
|
|
# EXAMPLE
|
|
# poke ~/projects/new/src/main.fish
|
|
function poke --description 'touch with automatic parent directory creation'
|
|
__fish_help_header (status current-function) $argv; and return 0
|
|
|
|
if test (count $argv) -eq 0
|
|
echo (set_color red)"poke: no file specified"(set_color normal) >&2
|
|
return 1
|
|
end
|
|
for _path in $argv
|
|
set -l _dir (dirname $_path)
|
|
_fish_mkdir_p --tree $_dir
|
|
touch $_path
|
|
end
|
|
end
|