Update FiletypeHook example for installation as Vim 8 package.#162
Open
bcbnz wants to merge 1 commit intoeditorconfig:masterfrom
Open
Update FiletypeHook example for installation as Vim 8 package.#162bcbnz wants to merge 1 commit intoeditorconfig:masterfrom
bcbnz wants to merge 1 commit intoeditorconfig:masterfrom
Conversation
Packages are loaded after vimrc is parsed, so we can't add the hook immediately. Suggest using either an autocommand or a file in an after-directory to add the hook instead. Fixes: editorconfig#161
Member
|
@cxw42 Could you help review this, please? I don't use Vim8 much these days and it's hard for me to review. |
cxw42
requested changes
Jul 31, 2021
| work as the function will not have been loaded yet. Instead, we can use the | ||
| |SourcePost| autocommand event to add the hook after the plugin is loaded: | ||
| > | ||
| autocmd SourcePost */plugin/editorconfig.vim call editorconfig#AddNewHook(function('FiletypeHook')) |
Member
There was a problem hiding this comment.
This looks reasonable to me. However, could you use the VimEnter event instead? That way it would not depend on the filename. I don't think the filename will ever change, but I'd rather not add that restriction if we don't have to.
I tried this just now and it worked (vim 8.1, Ubuntu package ver. 2:8.1.2269-1ubuntu5):
let g:CrazyCount = 0
function MyCrazyHook(config)
echom "Crazy!"
let g:CrazyCount = g:CrazyCount+1
return 0
endfunction
let g:EditorConfig_verbose = 1
augroup ectest
autocmd!
autocmd VimEnter * call editorconfig#AddNewHook(function('MyCrazyHook'))
augroup END
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Packages are loaded after vimrc is parsed, so we can't add the hook immediately. Suggest using either an autocommand or a file in an after-directory to add the hook instead.
Fixes: #161 -- note rather than only one method as I suggested in the issue, I've gone with three here. The autocommand might not work for other plugin managers (if they source the file before getting to the autocommand, it won't be triggered). Using the after-directory feels less nice to me, but I included it for anybody who doesn't want to use autocommands or has an older version of vim which doesn't support the SourcePost event.
First time I've tried editing vim help files, hopefully I got all the syntax correct! It appeared to work for me :).