view runtime/syntax/netrc.vim @ 34257:8a91d18f1789 v9.1.0069

patch 9.1.0069: ScreenLines may not be correctly initialized, causing hang Commit: https://github.com/vim/vim/commit/fd472655a93fd539c731c8daf3adc4e65ddce341 Author: Olaf Seibert <rhialto@falu.nl> Date: Thu Feb 1 21:11:16 2024 +0100 patch 9.1.0069: ScreenLines may not be correctly initialized, causing hang Problem: ScreenLines may not be correctly initialized, causing hang (Olaf Seibert, after 9.0.0220) Solution: always initialize ScreneLines when allocating a screen (Olaf Seibert) ScreenLines and related structures could be left uninitialized causing a screen update to run into an infinite loop when using latin1 encoding. Partly caused because by patch 9.0.0220, which makes mb_ptr2len return zero for NUL related: #12671 closes: #13946 Signed-off-by: Olaf Seibert <rhialto@falu.nl> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Thu, 01 Feb 2024 21:30:02 +0100
parents b2e8663e6dcc
children
line wrap: on
line source

" Vim syntax file
" Language:             netrc(5) configuration file
" Previous Maintainer:  Nikolai Weibull <now@bitwi.se>
" Latest Revision:      2010-01-03
" Last Change:		2023 Feb 27 by Keith Smiley

if exists("b:current_syntax")
  finish
endif

let s:cpo_save = &cpo
set cpo&vim

syn keyword netrcKeyword    machine nextgroup=netrcMachine skipwhite skipnl
syn keyword netrcKeyword    account
                          \ login
                          \ nextgroup=netrcLogin,netrcSpecial skipwhite skipnl
syn keyword netrcKeyword    password nextgroup=netrcPassword skipwhite skipnl
syn keyword netrcKeyword    default
syn keyword netrcKeyword    macdef
                          \ nextgroup=netrcInit,netrcMacroName skipwhite skipnl
syn region  netrcMacro      contained start='.' end='^$'

syn match   netrcMachine    contained display '\S\+'
syn match   netrcMachine    contained display '"[^\\"]*\(\\.[^\\"]*\)*"'
syn match   netrcLogin      contained display '\S\+'
syn match   netrcLogin      contained display '"[^\\"]*\(\\.[^\\"]*\)*"'
syn match   netrcPassword   contained display '\S\+'
syn match   netrcPassword   contained display '"[^\\"]*\(\\.[^\\"]*\)*"'
syn match   netrcMacroName  contained display '\S\+'
                          \ nextgroup=netrcMacro skipwhite skipnl
syn match   netrcMacroName  contained display '"[^\\"]*\(\\.[^\\"]*\)*"'
                          \ nextgroup=netrcMacro skipwhite skipnl

syn keyword netrcSpecial    contained anonymous
syn match   netrcInit       contained '\<init$'
                          \ nextgroup=netrcMacro skipwhite skipnl

syn match   netrcComment    '#.*$'

syn sync fromstart

hi def link netrcKeyword    Keyword
hi def link netrcMacro      PreProc
hi def link netrcMachine    Identifier
hi def link netrcLogin      String
hi def link netrcPassword   String
hi def link netrcMacroName  String
hi def link netrcSpecial    Special
hi def link netrcInit       Special
hi def link netrcComment    Comment

let b:current_syntax = "netrc"

let &cpo = s:cpo_save
unlet s:cpo_save