Back to Spacevim

SpaceVim lang#php layer

docs/layers/lang/php.md

2.4.02.8 KB
Original Source

Available Layers >> lang#php

<!-- vim-markdown-toc GFM --> <!-- vim-markdown-toc -->

Description

lang#php layer provides PHP language support in SpaceVim.

  • code completion (autocomplete layer)
  • code formatting (format layer)
  • syntax checking (checkers layer)
  • goto definition
  • reference finder (gtags layer)
  • language server protocol support (lsp layer)

Installation

Enable language layer

This layer is not enabled by default. To use this layer, you need to add following snippet into SpaceVim configuration file:

toml
[[layers]]
  name = "lang#php"

Language tools

  • language server

    To enable php support of lsp layer. You may need to install intelephense:

    npm install -g intelephense
    

    Also you need enable lsp layer with intelephense client:

    [[layers]]
      name = 'lsp'
      enabled_clients = ['intelephense']
    

Layer options

  • php_interpreter: Set the PHP interpreter, by default, it is php.

Key bindings

Jump to definition

ModeKey BindingsDescription
normalg dJump to the definition position of cursor symbol

Running current script

To run a php script, you can press SPC l r to run the current file without losing focus, and the result will be shown in a runner buffer.

Inferior REPL process

Start a php inferior REPL process with SPC l s i.

Send code to inferior process commands:

Key BindingsDescriptions
SPC l s bsend buffer and keep code buffer focused
SPC l s lsend line and keep code buffer focused
SPC l s ssend selection text and keep code buffer focused

LSP key Bindings

If the lsp layer is enabled for php, the following key bindings can be used:

key bindingDescription
g Djump to declaration
SPC l erename symbol
SPC l xshow references
SPC l sshow line diagnostics
SPC l dshow document
Kshow document
SPC l w llist workspace folder
SPC l w aadd workspace folder
SPC l w rremove workspace folder