All Projects → danr → kakoune-ghci-bridge

danr / kakoune-ghci-bridge

Licence: MIT license
Get intellisense for Haskell in Kakoune via ghci

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to kakoune-ghci-bridge

Innovatoradmin
A tool for managing Aras Innovator installations focusing on improving the import/export experience.
Stars: ✭ 40 (+207.69%)
Mutual labels:  ide, intellisense
Php Language Server
PHP Implementation of the VS Code Language Server Protocol 🆚↔🖥
Stars: ✭ 1,019 (+7738.46%)
Mutual labels:  ide, intellisense
Micropy Cli
Micropython Project Management Tool with VSCode support, Linting, Intellisense, Dependency Management, and more!
Stars: ✭ 112 (+761.54%)
Mutual labels:  ide, intellisense
gsmartcontrol
GSmartControl - Hard disk drive and SSD health inspection tool
Stars: ✭ 183 (+1307.69%)
Mutual labels:  ide
react-declarative
A React form builder which interacts with a JSON endpoint to generate nested 12-column grids with input fields and automatic state management in a declarative style. Endpoint is typed by TypeScript guards (IntelliSense available). This tool is based on material-ui components, so your application will look beautiful on any device...
Stars: ✭ 17 (+30.77%)
Mutual labels:  intellisense
uDevkit-IDE
An IDE for uDevkit or C/C++ projects with Git written in Qt5
Stars: ✭ 15 (+15.38%)
Mutual labels:  ide
kakoune-sudo-write
Write to files using 'sudo'
Stars: ✭ 24 (+84.62%)
Mutual labels:  kakoune
graphql-playground
🎮 GraphQL IDE for better development workflows (GraphQL Subscriptions, interactive docs & collaboration)
Stars: ✭ 8,103 (+62230.77%)
Mutual labels:  ide
kakboard
Clipboard integration for Kakoune
Stars: ✭ 49 (+276.92%)
Mutual labels:  kakoune
code editor unity
A code editor for MY-BASIC, powered by the Unity3D engine. With this you may create your own Code Editor, Debugger and IDE for different scripting languages.
Stars: ✭ 13 (+0%)
Mutual labels:  ide
dotfiles
🍀 Vim/Neovim + Tmux + Zsh + Alacritty = Build your own fantastic development environment
Stars: ✭ 65 (+400%)
Mutual labels:  ide
Line-Clipper
💻Efficient navigation between browser and IDE while working on GitHub.
Stars: ✭ 64 (+392.31%)
Mutual labels:  ide
kakoune-extra-filetypes
Extra highlighters for the Kakoune editor
Stars: ✭ 20 (+53.85%)
Mutual labels:  kakoune
snippet.kak
Snippets integration for Kakoune
Stars: ✭ 23 (+76.92%)
Mutual labels:  kakoune
intellij-ui-test-robot
The library allows you to write and execute UI tests among IntelliJ IDEA. You can test your Plugin.
Stars: ✭ 60 (+361.54%)
Mutual labels:  ide
Netlify
A VS Code extension that displays your Netlify build statuses and more!
Stars: ✭ 23 (+76.92%)
Mutual labels:  ide
ExtremeStudio
ExtremeStudio is a PAWN editor and is designed to be used in SA-MP development.
Stars: ✭ 25 (+92.31%)
Mutual labels:  ide
goneovim
A GUI frontend for neovim.
Stars: ✭ 1,721 (+13138.46%)
Mutual labels:  ide
JetBrainsRunner
A Krunner Plugin which allows you to open your recent projects
Stars: ✭ 31 (+138.46%)
Mutual labels:  ide
emmet-cli
Emmet command line interface
Stars: ✭ 27 (+107.69%)
Mutual labels:  kakoune

kakoune-ghci-bridge

An experimental wrapper around ghci to get Haskell intellisense in the Kakoune editor, inspired by jyp's emacs mode dante. A notable exception is that it only loads exactly the saved files in the project rather than making virtual files for unsaved files.

setup

Run python bridge.py SESSION DIR GHCI_CMD

This connects with the kak session using a command for ghci (for example cabal repl) starting in the directory DIR. When running you see some debug output and inside kakoune you get a bunch of commands prefixed with ghci-. It also populates the user keymap with some bindings.

def start-ghci-bridge -params 0..1 -docstring '
    start-ghci-bridge [GHCI_CMD]

    Starts the bridge.py using the GHCI_CMD, default "make ghci"
' %{
    %sh{
        dir=$PWD
        cd ~/code/kakoune-ghci-bridge
        (
            python bridge.py "$kak_session" "$dir" "${1:-make ghci}"
        ) > /dev/null 2>&1 < /dev/null &
    }
}

todo

Completion suggesions.

Background and implementation

Since GHC 8.0.1 ghci has the commands :type-at, :loc-at and :uses (enabled by :set +c), implemented by Chris Done, see phabricator, ghc trac. The kakoune communication technique is a slimmed-down version of libkak. Future work include transforming this into a language server, perhaps built on top of ghcid, see #138.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].