Mercurial > vim
view runtime/syntax/cynlib.vim @ 33844:58c9f11eae5b v9.0.2134
patch 9.0.2134: ml_get error when scrolling
Commit: https://github.com/vim/vim/commit/c4ffeddfe5bd1824650e9b911ed9245bf56c69e3
Author: Christian Brabandt <cb@256bit.org>
Date: Mon Nov 27 23:25:03 2023 +0100
patch 9.0.2134: ml_get error when scrolling
Problem: ml_get error when scrolling after delete
Solution: mark topline to be validated in main_loop
if it is larger than current buffers line
count
reset_lnums() is called after e.g. TextChanged autocommands and it may
accidentally cause curwin->w_topline to become invalid, e.g. if the
autocommand has deleted some lines.
So verify that curwin->w_topline points to a valid line and if not, mark
the window to have w_topline recalculated in main_loop() in
update_topline() after reset_lnums() returns.
fixes: #13568
fixes: #13578
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Mon, 27 Nov 2023 23:30:04 +0100 |
parents | 46763b01cd9a |
children |
line wrap: on
line source
" Vim syntax file " Language: Cynlib(C++) " Maintainer: Phil Derrick <phild@forteds.com> " Last change: 2001 Sep 02 " URL http://www.derrickp.freeserve.co.uk/vim/syntax/cynlib.vim " " Language Information " " Cynlib is a library of C++ classes to allow hardware " modelling in C++. Combined with a simulation kernel, " the compiled and linked executable forms a hardware " simulation of the described design. " " Further information can be found from www.forteds.com " Remove any old syntax stuff hanging around " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Read the C++ syntax to start with - this includes the C syntax runtime! syntax/cpp.vim unlet b:current_syntax " Cynlib extensions syn keyword cynlibMacro Default CYNSCON syn keyword cynlibMacro Case CaseX EndCaseX syn keyword cynlibType CynData CynSignedData CynTime syn keyword cynlibType In Out InST OutST syn keyword cynlibType Struct syn keyword cynlibType Int Uint Const syn keyword cynlibType Long Ulong syn keyword cynlibType OneHot syn keyword cynlibType CynClock Cynclock0 syn keyword cynlibFunction time configure my_name syn keyword cynlibFunction CynModule epilog execute_on syn keyword cynlibFunction my_name syn keyword cynlibFunction CynBind bind syn keyword cynlibFunction CynWait CynEvent syn keyword cynlibFunction CynSetName syn keyword cynlibFunction CynTick CynRun syn keyword cynlibFunction CynFinish syn keyword cynlibFunction Cynprintf CynSimTime syn keyword cynlibFunction CynVcdFile syn keyword cynlibFunction CynVcdAdd CynVcdRemove syn keyword cynlibFunction CynVcdOn CynVcdOff syn keyword cynlibFunction CynVcdScale syn keyword cynlibFunction CynBgnName CynEndName syn keyword cynlibFunction CynClock configure time syn keyword cynlibFunction CynRedAnd CynRedNand syn keyword cynlibFunction CynRedOr CynRedNor syn keyword cynlibFunction CynRedXor CynRedXnor syn keyword cynlibFunction CynVerify syn match cynlibOperator "<<=" syn keyword cynlibType In Out InST OutST Int Uint Const Cynclock " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link cynlibOperator Operator hi def link cynlibMacro Statement hi def link cynlibFunction Statement hi def link cynlibppMacro Statement hi def link cynlibType Type let b:current_syntax = "cynlib"