bd-pull, branch, check_fish_deps, claude-docs, claude-pr, fast, poke, qr
and parur take the standard call site. fish-deps instead routes -h/--help
to its existing __fish_deps_help, which previously answered only via the
unknown-subcommand path, printing "Unknown subcommand: --help" and
exiting 1.
This completes the 40 conversions and lands
test_every_user_facing_function_has_help -- acceptance criterion 6, the
check that fails when a new user-facing function ships without help. It
was developed red against the pre-conversion tree and reported exactly
the 40 names of the design's CONVERT table:
bd-pull bkg branch check_fish_deps claude-docs claude-pr cleanup
fast fc fish-deps fzf-update gip gip4 gip6 hist lD ld limine-edit
lock lsr lss lstree lt ltr lx parur poke ports qr sbver screensleep
split spwin steam-dl sudo-toggle swapstat tab tmux-clean upgrade
wake-lock
each as "<name>: no -h/--help handling and not in $__help_exempt", with
the guard exiting 1. The count fell 40 -> 32 -> 24 -> 17 -> 10 -> 0
across the conversion commits. It is committed green so every commit on
this branch passes the suite.
$__help_exempt is the single machine-readable exemption record; a second
assertion fails if an exempt name stops being a published function, so a
rename or deletion upstream cannot silently exempt nothing.
36 lines
878 B
Fish
36 lines
878 B
Fish
# Copyright (C) 2026 Rootiest
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
# CATEGORY
|
|
# 01-file-and-directory
|
|
#
|
|
# 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
|