Mercurial > vim
comparison runtime/autoload/freebasic.vim @ 29352:912224cab37f
Update runtime files
Commit: https://github.com/vim/vim/commit/0d878b95d8f9ece2fdba81050f5caba224540f9c
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Jul 1 18:45:04 2022 +0100
Update runtime files
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 01 Jul 2022 20:00:05 +0200 |
parents | 5825405e4e2c |
children |
comparison
equal
deleted
inserted
replaced
29351:9dfcc8c63b07 | 29352:912224cab37f |
---|---|
1 " Vim filetype plugin file | 1 " Vim filetype plugin file |
2 " Language: FreeBASIC | 2 " Language: FreeBASIC |
3 " Maintainer: Doug Kearns <dougkearns@gmail.com> | 3 " Maintainer: Doug Kearns <dougkearns@gmail.com> |
4 " Last Change: 2021 Mar 16 | 4 " Last Change: 2022 June 24 |
5 | 5 |
6 " Dialects can be one of fb, qb, fblite, or deprecated | 6 " Dialects can be one of fb, qb, fblite, or deprecated |
7 " Precedence is forcelang > #lang > lang | 7 " Precedence is forcelang > #lang > lang |
8 function! freebasic#GetDialect() abort | 8 function! freebasic#GetDialect() abort |
9 if exists("g:freebasic_forcelang") | 9 if exists("g:freebasic_forcelang") |
16 let dialect = "fb" | 16 let dialect = "fb" |
17 endif | 17 endif |
18 | 18 |
19 " override with #lang directive or metacommand | 19 " override with #lang directive or metacommand |
20 | 20 |
21 let skip = "has('syntax_items') && synIDattr(synID(line('.'), col('.'), 1), 'name') =~ 'Comment$'" | |
22 let pat = '\c^\s*\%(#\s*lang\s\+\|''\s*$lang\s*:\s*\)"\([^"]*\)"' | 21 let pat = '\c^\s*\%(#\s*lang\s\+\|''\s*$lang\s*:\s*\)"\([^"]*\)"' |
23 | 22 |
24 let save_cursor = getcurpos() | 23 let save_cursor = getcurpos() |
25 call cursor(1, 1) | 24 call cursor(1, 1) |
26 let lnum = search(pat, 'n', '', '', skip) | 25 let lnum = search(pat, 'cn') |
27 call setpos('.', save_cursor) | 26 call setpos('.', save_cursor) |
28 | 27 |
29 if lnum | 28 if lnum |
30 let word = matchlist(getline(lnum), pat)[1] | 29 let word = matchlist(getline(lnum), pat)[1] |
31 if word =~? '\%(fb\|deprecated\|fblite\|qb\)' | 30 if word =~? '\<\%(fb\|deprecated\|fblite\|qb\)\>' |
32 let dialect = word | 31 let dialect = word |
33 else | 32 else |
34 echomsg "freebasic#GetDialect: Invalid lang, found '" .. word .. "' at line " .. lnum .. " " .. getline(lnum) | 33 echomsg "freebasic#GetDialect: Invalid lang, found '" .. word .. "' at line " .. lnum .. " " .. getline(lnum) |
35 endif | 34 endif |
36 endif | 35 endif |