Mercurial > vim
view runtime/scripts.vim @ 31920:f1a5e67e9a1b v9.0.1292
patch 9.0.1292: :defer may call the wrong method for an object
Commit: https://github.com/vim/vim/commit/313e4724c3b4f6d7454b45b89da08f83a2a0c77e
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Feb 8 20:55:27 2023 +0000
patch 9.0.1292: :defer may call the wrong method for an object
Problem: :defer may call the wrong method for an object. (Ernie Rael)
Solution: When en object is from a class that extends or implements, figure
out the method to call at runtime. (closes #11910)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 08 Feb 2023 22:00:06 +0100 |
parents | 7346315e8517 |
children | 635de73eeb4c |
line wrap: on
line source
" Vim support file to detect file types in scripts " " Maintainer: Bram Moolenaar <Bram@vim.org> " Last change: 2022 Feb 13 " This file is called by an autocommand for every file that has just been " loaded into a buffer. It checks if the type of file can be recognized by " the file contents. The autocommand is in $VIMRUNTIME/filetype.vim. " " Note that the pattern matches are done with =~# to avoid the value of the " 'ignorecase' option making a difference. Where case is to be ignored use " =~? instead. Do not use =~ anywhere. " Bail out when a FileType autocommand has already set the filetype. if did_filetype() finish endif " Load the user defined scripts file first " Only do this when the FileType autocommand has not been triggered yet if exists("myscriptsfile") && filereadable(expand(myscriptsfile)) execute "source " . myscriptsfile if did_filetype() finish endif endif " The main code is in a compiled function for speed. call dist#script#DetectFiletype()