diff --git a/src/content/daily-email/2023-04-10.md b/src/content/daily-email/2023-04-10.md new file mode 100644 index 00000000..ef5723f4 --- /dev/null +++ b/src/content/daily-email/2023-04-10.md @@ -0,0 +1,23 @@ +--- +title: > + How I use Neovim for writing PHP +pubDate: 2023-04-10 +permalink: > + archive/2023/04/10/how-i-use-neovim-for-writing-php +tags: + - neovim + - php + - vim +--- + +Since [July 2021](https://www.oliverdavies.uk/blog/going-full-vim), I've used Neovim full-time for my development work and writing. + +Whilst Vim and Neovim are minimal by default, its functionality can be extended by adding plugins. + +I use nvim-lspconfig along with Intelephpense and Phpactor to add code actions and functionality like "go to definition" for PHP code. + +I use null-ls to apply code formatting and add diagnostic messages for PHPCS and PHPStan so I can see them on the appropriate lines. + +I use nvim-dap and nvim-dap-ui to leverage the debug adapter protocol to do step debugging with Xdebug. + +Along with others like dadbod.vim for databases, rest.nvim for making HTTP requests, Gitsigns and Fugitive for Git, and Telescope for fuzzy searching, I have all of the functionality that I've previously had in other browsers with the benefit that it's open source and I can add more plugins or write my own if I need to add anything else.