From d3e34e6e322aefd3dd1630bddfca7e4acdd0ca69 Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Mon, 10 Apr 2023 21:22:48 +0100 Subject: [PATCH] daily-email: add 2023-04-10 --- src/content/daily-email/2023-04-10.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/content/daily-email/2023-04-10.md 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.