feat(columns): per-character permission column highlights (#375) (#146)

Problem: the permissions column rendered as a monolithic unstyled
string, making it hard to scan `rwx` bits at a glance.

Solution: add per-character highlight groups for permission characters
following the `eza`/`lsd` convention. All groups link to standard
Neovim highlights so every colorscheme works out of the box.
This commit is contained in:
Barrett Ruth 2026-03-16 15:53:23 -04:00 committed by GitHub
parent 7b16324c5a
commit bf461f6844
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 81 additions and 3 deletions

View file

@ -1066,6 +1066,36 @@ M._get_highlights = function()
link = 'OilHidden',
desc = 'Hidden executable files in an oil buffer',
},
{
name = 'OilPermissionRead',
link = 'DiagnosticWarn',
desc = 'Read permission character in the permissions column',
},
{
name = 'OilPermissionWrite',
link = 'DiagnosticError',
desc = 'Write permission character in the permissions column',
},
{
name = 'OilPermissionExec',
link = 'DiagnosticOk',
desc = 'Execute permission character in the permissions column',
},
{
name = 'OilPermissionSetuid',
link = 'DiagnosticError',
desc = 'Setuid/setgid permission character in the permissions column',
},
{
name = 'OilPermissionSticky',
link = 'DiagnosticInfo',
desc = 'Sticky bit permission character in the permissions column',
},
{
name = 'OilPermissionNone',
link = 'NonText',
desc = 'No permission character in the permissions column',
},
{
name = 'OilCreate',
link = 'DiagnosticInfo',