Skip to main content

MPF Language Server

Project description

Language server for MPF config.

Installation (from pypi)

pip3 install mpf-language-server

Usage in IDE

IntelliJ Based IDE

For any IntelliJ based IDE (such as PyCharm, WebStorm or PhpStorm) you need to install a LSP (Language Server Protocol) plugin. Then add mpfls as Raw command for yaml files in “Settings -> Languages & Frameworks -> Language Server Protocol -> Server Definitions”.

VSCode

For vsCode install the extension in vscode-client.

Emacs

Integration with Emacs is accomplished using lsp-mode.

A minimal completion setup can be achieved with the lsp-mode, yaml-mode, company, and lsp-company packages. Company is a general purpose completion package for Emacs. lsp-company is a helper package for using Company with :code`lsp-mode`.

  1. Install lsp-mode, company, yaml-mode, and lsp-company by running M-x package-install and following the instructions.

  2. Add the following to your Emacs init file:

    ;; Register the mpfls server
    (require 'lsp-mode)
    (add-hook 'yaml-mode-hook #'lsp)
    (defvar lsp-language-id-configuration
      '((yaml-mode . "mpfls")))
    
    (lsp-register-client
      (make-lsp-client :new-connection (lsp-stdio-connection "mpfls")
        :major-modes '(yaml-mode)
        :server-id 'mpfls))
    (add-hook 'after-init-hook 'global-company-mode)
    
    ;; Configure company-lsp
    (require 'company-lsp)
    (push 'company-lsp company-backends)
    

Installation (from git for local development)

If you want to contribute to this repository:

git checkout https://github.com/missionpinball/mpf-ls/
cd mpf-ls
pip3 install -e .

License

This project is made available under the MIT License. Code is based on the Python language server (also MIT).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mpf-language-server-0.54.2.tar.gz (40.1 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page