d63ffd6a3a
Reusable, generics-based CLI extracted from vpp-evpn's cmd/evpnc: a declarative command tree (Node[C]) from which dispatch, '?'-help and TAB-completion are derived, an interactive Shell[C], dynamic slot resolvers (context-dependent via captured args), text-or-JSON output (Emit), and color helpers (Paint/Label/KV). Builds on Linux and OpenBSD (readline termios override). Includes a self-contained example and a design proposal under docs/. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
14 lines
434 B
Go
14 lines
434 B
Go
// SPDX-FileCopyrightText: (C) Copyright 2026 Pim van Pelt <pim@ipng.ch>
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
//go:build !openbsd
|
|
|
|
package cli
|
|
|
|
import "github.com/chzyer/readline"
|
|
|
|
// applyTermFuncs is a no-op on every platform except OpenBSD, where readline's
|
|
// native termios handling is broken and needs an override (see term_openbsd.go).
|
|
// Elsewhere readline's defaults work as-is.
|
|
func applyTermFuncs(_ *readline.Config) {}
|