You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

49 lines
1.8 KiB

return {
--------------------------------------------------------------------------------
-- PHP
--------------------------------------------------------------------------------
----------------------------------------------------------------------------
-- Improved PHP syntax highlighting
--
-- TysonAndre maintains several very impressive PHP-adjacent projects and
-- I'd generally trust his stuff will be better than some of the other
-- abandoned projects or any stuff coming from an all-in-one type project.
--
{ name = 'TysonAndre/php-vim-syntax' },
----------------------------------------------------------------------------
-- PHP ctags provider
--
-- Allows parsing out PHP files to provide listings of classes/functions/etc
-- for use by other plugins, e.g., the tag sidebar
--
{
name = 'vim-php/phpctags',
requires = { 'ctags', 'php', 'composer' },
config = {
['do'] = 'composer install'
}
},
----------------------------------------------------------------------------
-- Composer interface
--
-- Very rudimentary, but allows for performing basic install/update/etc from
-- within vim.
--
{
name = 'vim-php/vim-composer',
requires = { 'php', 'composer' },
-- Only load this plugin if a composer function is called
config = { ['on'] = { 'ComposerInstall', 'ComposerUpdate', 'ComposerJSON' } },
keys = {
{ filetype = 'php', mode = 'n', key = { '<leader>', 'l', 'c' }, group = true, label = 'composer' },
{ filetype = 'php', mode = 'n', key = { '<leader>', 'l', 'c', 'i' }, map = ':ComposerInstall<CR>', label = 'composer install' },
{ filetype = 'php', mode = 'n', key = { '<leader>', 'l', 'c', 'u' }, map = ':ComposerUpdate<CR>', label = 'composer update' },
{ filetype = 'php', mode = 'n', key = { '<leader>', 'l', 'c', 'j' }, map = ':ComposerJSON<CR>', label = 'open composer.json' },
}
},
}