GithubHelp home page GithubHelp logo

sameersemna / bash-language-server Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bash-lsp/bash-language-server

0.0 2.0 0.0 334 KB

A language server for Bash

License: MIT License

Makefile 0.56% Shell 16.70% JavaScript 1.54% TypeScript 81.20%

bash-language-server's Introduction

Bash Language Server

Bash language server implementation based on Tree Sitter and its grammar for Bash with explainshell integration.

Features

  • Jump to declaration
  • Find references
  • Code Outline & Show Symbols
  • Highlight occurrences
  • Code completion
  • Simple diagnostics reporting
  • Documentation for flags on hover
  • Rename symbol

Installation

npm i -g bash-language-server

Clients

The following editors and IDEs have available clients:

  • Visual Studio Code (Bash IDE)
  • Atom (ide-bash)
  • Vim (see below)
  • Neovim (see below)
  • Oni (see below)

Vim

For Vim 8 or later install the plugin prabirshrestha/vim-lsp and add the following configuration to .vimrc:

if executable('bash-language-server')
  au User lsp_setup call lsp#register_server({
        \ 'name': 'bash-language-server',
        \ 'cmd': {server_info->[&shell, &shellcmdflag, 'bash-language-server start']},
        \ 'whitelist': ['sh'],
        \ })
endif

For Vim 8 or NeoVim using w0rp/ale add the following configuration to your .vimrc:

let g:ale_linters = {
    \ 'sh': ['language_server'],
    \ }

Neovim

Install the plugin autozimu/LanguageClient-neovim and add the following configuration to init.vim:

let g:LanguageClient_serverCommands = {
    \ 'sh': ['bash-language-server', 'start']
    \ }

Oni

On the config file (File -> Preferences -> Edit Oni config) add the following configuration:

"language.bash.languageServer.command": "bash-language-server",
"language.bash.languageServer.arguments": ["start"],

Development Guide

Please see docs/development-guide for more information.

bash-language-server's People

Contributors

adelarsq avatar chrismwendt avatar compor avatar jakobgm avatar keith avatar kontrax avatar mads-hartmann avatar maximbaz avatar rcjsuen avatar skovhus avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.