feat(git): add custom status sidebar and diff viewer
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syntax match gitstatusLabel /\v^(Head|Push)\ze:/
|
||||
syntax match gitstatusBranch /\v(^(Head|Push):\s+)@<=\S+/
|
||||
syntax match gitstatusAhead /\v\+\d+/
|
||||
syntax match gitstatusBehind /\v-\d+/
|
||||
|
||||
syntax region gitstatusUntrackedHeader start=/\v^Untracked>/ end=/\v^$/
|
||||
syntax region gitstatusUnstagedHeader start=/\v^Unstaged>/ end=/\v^$/
|
||||
syntax region gitstatusStagedHeader start=/\v^Staged>/ end=/\v^$/
|
||||
syntax region gitstatusUnmergedHeader start=/\v^Unmerged>/ end=/\v^$/
|
||||
syntax region gitstatusUnpushedHeader start=/\v^Unpushed>/ end=/\v^$/
|
||||
syntax region gitstatusUnpulledHeader start=/\v^Unpulled>/ end=/\v^$/
|
||||
|
||||
syntax match gitstatusUntrackedLabel /\v^Untracked/ contained containedin=gitstatusUntrackedHeader
|
||||
syntax match gitstatusUnstagedLabel /\v^Unstaged/ contained containedin=gitstatusUnstagedHeader
|
||||
syntax match gitstatusStagedLabel /\v^Staged/ contained containedin=gitstatusStagedHeader
|
||||
syntax match gitstatusUnmergedLabel /\v^Unmerged/ contained containedin=gitstatusUnmergedHeader
|
||||
syntax match gitstatusUnpushedLabel /\v^Unpushed/ contained containedin=gitstatusUnpushedHeader
|
||||
syntax match gitstatusUnpulledLabel /\v^Unpulled/ contained containedin=gitstatusUnpulledHeader
|
||||
|
||||
syntax match gitstatusHeaderCount /\v\(\zs\d+\ze\)/ contained containedin=gitstatusUntrackedHeader,
|
||||
\ gitstatusUnstagedHeader,
|
||||
\ gitstatusStagedHeader,
|
||||
\ gitstatusUnmergedHeader,
|
||||
\ gitstatusUnpushedHeader,
|
||||
\ gitstatusUnpulledHeader
|
||||
|
||||
highlight default link gitstatusLabel Label
|
||||
highlight default link gitstatusBranch None
|
||||
highlight default link gitstatusAhead GitUnpushed
|
||||
highlight default link gitstatusBehind GitUnpulled
|
||||
highlight default link gitstatusHeaderCount Number
|
||||
|
||||
highlight default link gitstatusUntrackedLabel gitstatusLabel
|
||||
highlight default link gitstatusUnstagedLabel gitstatusLabel
|
||||
highlight default link gitstatusStagedLabel gitstatusLabel
|
||||
highlight default link gitstatusUnmergedLabel gitstatusLabel
|
||||
highlight default link gitstatusUnpushedLabel gitstatusLabel
|
||||
highlight default link gitstatusUnpulledLabel gitstatusLabel
|
||||
|
||||
let b:current_syntax = "gitstatus"
|
||||
Reference in New Issue
Block a user