Implement custom tabline with configurable path shortening

Add a custom tabline function to enhance path display in Neovim.
Users can configure the number of full parent directories and the
length of shortened directory names for better context and
manageability.
This commit is contained in:
Ray Elliott 2026-01-12 22:08:43 +00:00
commit 87ea788dee
5 changed files with 147 additions and 0 deletions

1
LOG.md
View file

@ -9,6 +9,7 @@ Authoritative notes for the Neovim migration. Use this alongside `MIGRATION_PLAN
Record every decision here with a short rationale. Append new entries; do not rewrite history.
- 2025-01-12: **Custom Tabline Function**: Implemented configurable custom tabline to replace Neovim's hardcoded path shortening (e.g., `a/p/file.txt`). Function in `lua/utils.lua` allows controlling: (1) number of full parent directories via `utils.tabline_full_parents` (default: 1), and (2) shortening length via `utils.tabline_shorten_length` (default: 3 characters). Example: with defaults, `/path/to/my/project/src/file.txt` becomes `pat/to/my/project/src/file.txt`. User preference for seeing enough context in shortened paths while keeping tab width manageable.
- 2025-12-06: PHP LSP = `intelephense` (good PHP ecosystem support; integrates includePaths).
- 2025-12-06: Enable Markdown LSP = `marksman` (lightweight, good MD features).
- 2025-12-06: Use legacy `listchars` and `showbreak` values (preserve muscle memory).