Adds docs/build-manual.py (--concat) and a round-trip test in verify-manual.py that reproduces the pre-migration fish-config.md exactly from docs/manual/. Fixes found by the round-trip check, applied in split-manual.py and re-run to regenerate docs/manual/: - NAME/SYNOPSIS/TABLE OF CONTENTS had no sidebar.order, so they sorted after every numbered section instead of interleaving with DESCRIPTION in original document order. All manual pages now get sidebar.order from a single position counter matching source order. - split_h1/split_h2 used .strip() on section bodies, which also ate leading indentation on the first body line, corrupting the 4-space indented code blocks that open SYNOPSIS and TABLE OF CONTENTS. - The source's leading pandoc metadata block (title/section/header/ date/author) was discarded entirely by the splitter. It's now parsed off via manualtools.parse and stashed on index.md under a "pandoc" key; build-manual.py re-emits it verbatim ahead of the first heading.
44 lines
1.5 KiB
Markdown
44 lines
1.5 KiB
Markdown
---
|
|
title: Installation
|
|
manTitle: 9. INSTALLATION
|
|
sidebar:
|
|
order: 13
|
|
helpKeywords:
|
|
- installation
|
|
- install
|
|
---
|
|
|
|
This configuration is managed as a git repository. To deploy on a new machine:
|
|
|
|
mv ~/.config/fish ~/.config/fish.bak # back up any existing config
|
|
git clone https://git.rootiest.dev/rootiest/fish-config.git ~/.config/fish
|
|
|
|
Then open a new Fish shell. Fisher installs automatically on first launch
|
|
and the Catppuccin Mocha theme is applied. All other plugin functionality is
|
|
bundled directly with this config and requires no additional installation.
|
|
|
|
## Return Sentinel
|
|
|
|
config.fish ends with a return sentinel guard. Any lines appended after it by
|
|
a tool's setup command (starship init fish | source, zoxide init fish | source,
|
|
etc.) will have no effect. All integrations are managed via conf.d/ files.
|
|
|
|
If a new tool's shell integration appears to do nothing, check whether its
|
|
setup command appended an init line below the sentinel and create a dedicated
|
|
conf.d/<tool>.fish instead.
|
|
|
|
## Updating
|
|
|
|
Pull the latest changes from the upstream repository without needing a
|
|
configured git remote:
|
|
|
|
config-update Fetch and apply the latest commits from upstream
|
|
config-update --dry-run Preview available changes without applying them
|
|
config-update --force Stash local changes, pull, then restore the stash
|
|
|
|
The remote URL (https://git.rootiest.dev/rootiest/fish-config.git) is
|
|
hard-coded, so this works on a fresh clone with no origin configured. All
|
|
git output is suppressed. Run exec fish after a successful update to reload.
|
|
|
|
---
|