Mercurial > vim
view runtime/autoload/freebasic.vim @ 33899:a9ccbadecda1 v9.0.2155
patch 9.0.2155: Vim9: type not kept when assigning vars
Commit: https://github.com/vim/vim/commit/d33518522a84b5625e663c1b608e1c68f9f58003
Author: Yegappan Lakshmanan <yegappan@yahoo.com>
Date: Fri Dec 8 21:41:23 2023 +0100
patch 9.0.2155: Vim9: type not kept when assigning vars
Problem: Vim9: type not kept when assigning vars
Solution: When assigning a List or a Dict value to a variable of type
'any', keep the type
closes: #13639
closes: #13646
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 10 Dec 2023 15:16:34 +0100 |
parents | 912224cab37f |
children |
line wrap: on
line source
" Vim filetype plugin file " Language: FreeBASIC " Maintainer: Doug Kearns <dougkearns@gmail.com> " Last Change: 2022 June 24 " Dialects can be one of fb, qb, fblite, or deprecated " Precedence is forcelang > #lang > lang function! freebasic#GetDialect() abort if exists("g:freebasic_forcelang") return g:freebasic_forcelang endif if exists("g:freebasic_lang") let dialect = g:freebasic_lang else let dialect = "fb" endif " override with #lang directive or metacommand let pat = '\c^\s*\%(#\s*lang\s\+\|''\s*$lang\s*:\s*\)"\([^"]*\)"' let save_cursor = getcurpos() call cursor(1, 1) let lnum = search(pat, 'cn') call setpos('.', save_cursor) if lnum let word = matchlist(getline(lnum), pat)[1] if word =~? '\<\%(fb\|deprecated\|fblite\|qb\)\>' let dialect = word else echomsg "freebasic#GetDialect: Invalid lang, found '" .. word .. "' at line " .. lnum .. " " .. getline(lnum) endif endif return dialect endfunction " vim: nowrap sw=2 sts=2 ts=8 noet fdm=marker: