view runtime/ftplugin/typescript.vim @ 34153:c7779252fab5 v9.1.0037

patch 9.1.0037: Calling get_breakindent_win() repeatedly when computing virtcol Commit: https://github.com/vim/vim/commit/5b0722b86445158f0b502ffc48a5847b0d0187bd Author: zeertzjq <zeertzjq@outlook.com> Date: Wed Jan 17 20:42:53 2024 +0100 patch 9.1.0037: Calling get_breakindent_win() repeatedly when computing virtcol Problem: Calling get_breakindent_win() repeatedly when computing virtual column, and get_breakindent_win() does a STRCMP() on the whole line since patch 9.0.0016. Solution: Cache the result, since the line doesn't change. (zeertzjq) closes: #13879 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Wed, 17 Jan 2024 20:45:03 +0100
parents 8ae680be2a51
children 7c7432a53a6c
line wrap: on
line source

" Vim filetype plugin file
" Language:	TypeScript
" Maintainer:	Doug Kearns <dougkearns@gmail.com>
" Last Change:	2024 Jan 14

if exists("b:did_ftplugin")
  finish
endif
let b:did_ftplugin = 1

let s:cpo_save = &cpo
set cpo-=C

" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal formatoptions-=t formatoptions+=croql

" Set 'comments' to format dashed lists in comments.
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://

setlocal commentstring=//%s

setlocal suffixesadd+=.ts,.d.ts,.tsx,.js,.jsx,.cjs,.mjs

let b:undo_ftplugin = "setl fo< com< cms< sua<"

" Change the :browse e filter to primarily show TypeScript-related files.
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
    let  b:browsefilter="TypeScript Files (*.ts)\t*.ts\n" .
		\	"TypeScript Declaration Files (*.d.ts)\t*.d.ts\n" .
		\	"TSX Files (*.tsx)\t*.tsx\n" .
		\	"JavaScript Files (*.js)\t*.js\n" .
		\	"JavaScript Modules (*.es, *.cjs, *.mjs)\t*.es;*.cjs;*.mjs\n" .
		\	"JSON Files (*.json)\t*.json\n"
    if has("win32")
	let b:browsefilter .= "All Files (*.*)\t*\n"
    else
	let b:browsefilter .= "All Files (*)\t*\n"
    endif
    let b:undo_ftplugin .= " | unlet! b:browsefilter"
endif
       
let &cpo = s:cpo_save
unlet s:cpo_save