runtime(spec): Recognize epoch when making spec changelog in ftplugin
closes: #15537 Signed-off-by: fundawang <fundawang@yeah.net> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
2241f0845f
commit
e40157641c
@ -2,8 +2,9 @@
|
|||||||
" Filename: spec.vim
|
" Filename: spec.vim
|
||||||
" Maintainer: Igor Gnatenko i.gnatenko.brain@gmail.com
|
" Maintainer: Igor Gnatenko i.gnatenko.brain@gmail.com
|
||||||
" Former Maintainer: Gustavo Niemeyer <niemeyer@conectiva.com> (until March 2014)
|
" Former Maintainer: Gustavo Niemeyer <niemeyer@conectiva.com> (until March 2014)
|
||||||
" Last Change: Mon Jun 01 21:15 MSK 2015 Igor Gnatenko
|
" Last Change: 2015 Jun 01
|
||||||
" Update by Zdenek Dohnal, 2022 May 17
|
" Update by Zdenek Dohnal, 2022 May 17
|
||||||
|
" 2024 Sep 10 by Vim Project: add epoch support for spec changelog, #15537
|
||||||
|
|
||||||
if exists("b:did_ftplugin")
|
if exists("b:did_ftplugin")
|
||||||
finish
|
finish
|
||||||
@ -66,9 +67,11 @@ if !exists("*s:SpecChangelog")
|
|||||||
endif
|
endif
|
||||||
let line = 0
|
let line = 0
|
||||||
let name = ""
|
let name = ""
|
||||||
|
let epoch = ""
|
||||||
let ver = ""
|
let ver = ""
|
||||||
let rel = ""
|
let rel = ""
|
||||||
let nameline = -1
|
let nameline = -1
|
||||||
|
let epochline = -1
|
||||||
let verline = -1
|
let verline = -1
|
||||||
let relline = -1
|
let relline = -1
|
||||||
let chgline = -1
|
let chgline = -1
|
||||||
@ -77,6 +80,9 @@ if !exists("*s:SpecChangelog")
|
|||||||
if name == "" && linestr =~? '^Name:'
|
if name == "" && linestr =~? '^Name:'
|
||||||
let nameline = line
|
let nameline = line
|
||||||
let name = substitute(strpart(linestr,5), '^[ ]*\([^ ]\+\)[ ]*$','\1','')
|
let name = substitute(strpart(linestr,5), '^[ ]*\([^ ]\+\)[ ]*$','\1','')
|
||||||
|
elseif epoch == "" && linestr =~? '^Epoch:'
|
||||||
|
let epochline = line
|
||||||
|
let epoch = substitute(strpart(linestr,6), '^[ ]*\([^ ]\+\)[ ]*$','\1','')
|
||||||
elseif ver == "" && linestr =~? '^Version:'
|
elseif ver == "" && linestr =~? '^Version:'
|
||||||
let verline = line
|
let verline = line
|
||||||
let ver = substitute(strpart(linestr,8), '^[ ]*\([^ ]\+\)[ ]*$','\1','')
|
let ver = substitute(strpart(linestr,8), '^[ ]*\([^ ]\+\)[ ]*$','\1','')
|
||||||
@ -93,6 +99,7 @@ if !exists("*s:SpecChangelog")
|
|||||||
if nameline != -1 && verline != -1 && relline != -1
|
if nameline != -1 && verline != -1 && relline != -1
|
||||||
let include_release_info = exists("g:spec_chglog_release_info")
|
let include_release_info = exists("g:spec_chglog_release_info")
|
||||||
let name = s:ParseRpmVars(name, nameline)
|
let name = s:ParseRpmVars(name, nameline)
|
||||||
|
let epoch = s:ParseRpmVars(epoch, epochline)
|
||||||
let ver = s:ParseRpmVars(ver, verline)
|
let ver = s:ParseRpmVars(ver, verline)
|
||||||
let rel = s:ParseRpmVars(rel, relline)
|
let rel = s:ParseRpmVars(rel, relline)
|
||||||
else
|
else
|
||||||
@ -117,6 +124,9 @@ if !exists("*s:SpecChangelog")
|
|||||||
if chgline != -1
|
if chgline != -1
|
||||||
let tmptime = v:lc_time
|
let tmptime = v:lc_time
|
||||||
language time C
|
language time C
|
||||||
|
if strlen(epoch)
|
||||||
|
let ver = epoch.":".ver
|
||||||
|
endif
|
||||||
let parsed_format = "* ".strftime(format)." - ".ver."-".rel
|
let parsed_format = "* ".strftime(format)." - ".ver."-".rel
|
||||||
execute "language time" tmptime
|
execute "language time" tmptime
|
||||||
let release_info = "+ ".name."-".ver."-".rel
|
let release_info = "+ ".name."-".ver."-".rel
|
||||||
|
|||||||
Reference in New Issue
Block a user