Language Server implementation for the miniC programming language.
- Diagnostics
- Hover information
- Code completion
- Go to definition
The Language Server Protocol is used between a tool (the client) and a language smartness provider (the server) to integrate features like auto complete, go to definition, find all references and alike into the tool.
miniC is a programming language created for educational purposes. It is a strict subset of the C programming language.
miniC is used at the University of Novi Sad, Faculty of Technical Sciences, to teach the Compilers course.
Runtime dependencies:
- cJSON
Compile time dependencies:
- flex
- bison
- C standard compiler
- cJSON
- pkgconf
- make or meson build system
Compile and install using Meson build system:
meson build --prefix=<installation/path>
ninja -C build install
Compile using GNU make utility (not recommended):
make
- Plugin for Vim text editor with ALE.
- Plugin for Atom text editor.
- … and any other client listed here, if you configure it to use minic-lsp.
This work is based on the original micko compiler of the miniC programming language.
Copyright (C) 2019 Bojan Stipic
Copyright (C) 20XY-2018 Zorica Suvajdzin Rakic, Zarko Zivanov
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.