view runtime/syntax/synload.vim @ 34977:74f789d0adb1 v9.1.0344

patch 9.1.0344: Cursor wrong after using setcellwidth() in terminal Commit: https://github.com/vim/vim/commit/e20fa59903525e15cecd680a2f32ece8a5d1bc0c Author: mikoto2000 <mikoto2000@gmail.com> Date: Wed Apr 17 22:06:54 2024 +0200 patch 9.1.0344: Cursor wrong after using setcellwidth() in terminal Problem: Cursor wrong after using setcellwidth() in terminal (mikoto2000) Solution: output additional spaces, so the behaviour matches the GUI (mikoto2000) fixes: #14539 closes: #14540 Signed-off-by: mikoto2000 <mikoto2000@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org> Fix CUI `setcellwidths` characters draw behavior to same GUI behavior.
author Christian Brabandt <cb@256bit.org>
date Wed, 17 Apr 2024 22:15:02 +0200
parents 4027cefc2aab
children
line wrap: on
line source

" Vim syntax support file
" Maintainer:	The Vim Project <https://github.com/vim/vim>
" Last Change:	2023 Aug 10
" Former Maintainer:	Bram Moolenaar <Bram@vim.org>

" This file sets up for syntax highlighting.
" It is loaded from "syntax.vim" and "manual.vim".
" 1. Set the default highlight groups.
" 2. Install Syntax autocommands for all the available syntax files.

if !has("syntax")
  finish
endif

" let others know that syntax has been switched on
let syntax_on = 1

" Set the default highlighting colors.  Use a color scheme if specified.
if exists("colors_name")
  exe "colors " . colors_name
else
  runtime! syntax/syncolor.vim
endif

" Line continuation is used here, remove 'C' from 'cpoptions'
let s:cpo_save = &cpo
set cpo&vim

" First remove all old syntax autocommands.
au! Syntax

au Syntax *		call s:SynSet()

fun! s:SynSet()
  " clear syntax for :set syntax=OFF  and any syntax name that doesn't exist
  syn clear
  if exists("b:current_syntax")
    unlet b:current_syntax
  endif

  0verbose let s = expand("<amatch>")
  if s == "ON"
    " :set syntax=ON
    if &filetype == ""
      echohl ErrorMsg
      echo "filetype unknown"
      echohl None
    endif
    let s = &filetype
  elseif s == "OFF"
    let s = ""
  endif

  if s != ""
    " Load the syntax file(s).  When there are several, separated by dots,
    " load each in sequence.  Skip empty entries.
    for name in split(s, '\.')
      if !empty(name)
	exe "runtime! syntax/" . name . ".vim syntax/" . name . "/*.vim"
      endif
    endfor
  endif
endfun


" Handle adding doxygen to other languages (C, C++, C#, IDL, java, php, DataScript)
au Syntax c,cpp,cs,idl,java,php,datascript
	\ if (exists('b:load_doxygen_syntax') && b:load_doxygen_syntax)
	\	|| (exists('g:load_doxygen_syntax') && g:load_doxygen_syntax)
	\   | runtime! syntax/doxygen.vim
	\ | endif


" Source the user-specified syntax highlighting file
if exists("mysyntaxfile")
  let s:fname = expand(mysyntaxfile)
  if filereadable(s:fname)
    execute "source " . fnameescape(s:fname)
  endif
endif

" Restore 'cpoptions'
let &cpo = s:cpo_save
unlet s:cpo_save