compiler.nvim

Neovim compiler for building and running your code without having to configure anything

GPL-3.0 License

Stars
490
Committers
8

Bot releases are hidden (Show)

compiler.nvim - v3.0.1

Published by Zeioth about 1 year ago

Important fixes

  • redo: Works correctly again.

This regression was introduced during the code cleanup prior to the release of v3.0.0. Credits to @GustavoPrietoP for reporting it.

compiler.nvim - v3.0.0

Published by Zeioth about 1 year ago

Historical milestone

Compiler.nvim now support all the programming languages that were originally planned. That is:

  • 22 programming languages
  • 128 different ways of compiling
  • 128 unit tests
  • 100+ examples
  • 1 test suite

Through the lapse of 75 days. That's... A lot of coding.

New languages added

Final words

I'd like to thank all the users for giving a chance to this old programmer to give back some to the open source community.

YOU ARE BREATH TAKING!!! 👉👉

compiler.nvim - v2.3.8

Published by Zeioth about 1 year ago

New language added

  • Support for the zig programming language has been added
    screenshot_2023-08-30_18-10-36_366772974

For more info see this.

compiler.nvim - v2.3.7

Published by Zeioth about 1 year ago

New language added

  • Visual Basic .NET
    screenshot_2023-08-29_15-19-24_044812481

I don't if anyone actually use this language nowadays anymore, but it was easy to add.

Visual basic .NET DAP debugger

screenshot_2023-08-29_15-26-45_873792106

compiler.nvim - v2.3.6

Published by Zeioth about 1 year ago

New compilation options for java/kotlin

Now you can choose compiling as .class or .jar

screenshot_2023-08-28_15-01-28_633193187

Fixes for java and kotlin

Java and Kotlin .solution.toml have been fixed, and now work the same way as all the other languages.

screenshot_2023-08-28_14-58-15_595740258

Specifying the entry point file and the output is enough. Even if you only want to compile .class files, the compiler will be smart enough to know what to do.

compiler.nvim - v2.3.5

Published by Zeioth about 1 year ago

New languages supported

screenshot_2023-08-28_09-44-05_896143402

This new backend is prepared for standalone kotlin applications, and Android Studio projects. With the option Run granlew installDebug, you can preview your android application on the virtual machine.

compiler.nvim - v2.3.4

Published by Zeioth about 1 year ago

New languages supported

New wiki pages

Screenshots

New available options have been tested with automated tests to guarantee they work correctly
screenshot_2023-08-26_11-46-28_521334878

You can run flutter code
screenshot_2023-08-26_11-49-59_239093884

Or you can debug it on DAP!
screenshot_2023-08-26_11-05-52_368700433

compiler.nvim - v2.3.3

Published by Zeioth about 1 year ago

This release complete all the main languages used by data scientists.

New languages supported

  • The R language

screenshot_2023-08-25_07-52-28_154970027

New compiler options

Added REPL for the languages

  • Python
  • R
  • F#

Comments of the author

There is not DAP adapter for the R language, so that will be added to the wiki once someone writes one. In case you want to contribute, check DAP

compiler.nvim - v2.3.2

Published by Zeioth about 1 year ago

New languages

  • F#: Options available Dotnet run this file on REPL, Dotnet build & run and Dotnet build.

screenshot_2023-08-24_08-15-42_453035885

Example of using the F# REPL:

screenshot_2023-08-24_08-23-00_656700441

Example of using DAP with F#:

screenshot_2023-08-24_07-15-09_302654364

compiler.nvim - v2.3.1

Published by Zeioth about 1 year ago

New command

  • CompilerStop: dispose all tasks.

This can be useful for users who want to build a key mapping like

-- Stop all tasks and redo
vim.api.nvim_buf_set_keymap(0, 'n', '<S-F6>', function() 
  vim.cmd(CompilerStop)
  vim.cmd(CompilerRedo)
end", { noremap = true, silent = true })

To prevent tasks from accumulating.

compiler.nvim - v2.3.0

Published by Zeioth about 1 year ago

Starting this version, Compiler.nvim is considered ready for production, and only minor bug fixes and support for new languages will be added. No breaking changes are expected from this point.

Improvements

This version contain minor new features for .solution.toml.

.solution.toml: Now accept inline comments.
.solution.toml: Can now run multiple executables.
screenshot_2023-08-21_04-13-36_103796398
In previous versions, it was only possible to run one executable per solution. This new change cover border cases where an executable may depend on one or many executable to work properly. This way you don't have to manually run them of the terminal. All executable will be launched in parallel every time you use build solution.

compiler.nvim - v2.2.2

Published by Zeioth about 1 year ago

Fixes

  • .solution file is now accepted again in order to keep backwards compatibility. From this version both .solution and .solution.toml are accepted as name for the solution file. We do recommend using .solution.toml, so you get syntax highlighting and auto completion snippets.
  • It seems we didn't push the new cargo options in v2.2.0. Now they are here for real!
compiler.nvim - v2.2.1

Published by Zeioth about 1 year ago

Fixes

  • Telescope: Will now start filtering after entering one character. This has been possible by using the new telescope conf.generic_sorter().
  • Telescope: Had a critical bug during 10 hours in the main branch. It's very unlikely you ran into this bug unlike you updated compiler.nvim in that precise moment, but it's been fixed (Thanks to ManJack1 for reporting).
  • Stronger code conventions.
compiler.nvim - v2.2.0

Published by Zeioth about 1 year ago

New compiler options

  • Rust Cargo: Now it's possible to compile a rust project using its Cargo.toml file with the next options Cargo build and run, Cargo build and Cargo run.
  • Rust Cargo: Also added the same options, but at workspace level: Cargo build --all and run and Cargo build --all.

screenshot_2023-08-15_06-13-19_595677721

Breaking changes

  • We now use .solution.toml files instead of .solution.

New documentation

compiler.nvim - v2.1.0

Published by Zeioth about 1 year ago

New compiler options

  • C# dotnet: Now it's possible to compile a C# project using its .csproj file. This will automatically install its nuget dependencies when necessary.

screenshot_2023-08-06_18-35-27_936653487

It requires the new dependency dotnet.

New documentation

We now document how to debug programs compiled with compiler.nvim.

compiler.nvim - v2.0.0

Published by Zeioth about 1 year ago

v2 include the next additions

New languages

New commands

Command Description
:CompilerRedo Redo the last selected option.

New: Support for compiling multi-file programs

V1 only had the ability to compile single file programs.

Now it is possible to compile any project. Compiler.nvim will search recursively in the current working directory for the necessary files to compile the entry point of the program.

screenshot_2023-07-25_20-54-02_288809729

Others

  • Minor bug fixes
  • Code cleanup.
  • Documentation now include more clear examples of how to pass parameters when using a .solution file.
compiler.nvim - v1.0.0 First stable release

Published by Zeioth over 1 year ago

This first stable release include 100+ fixes and adds support for the next languages

100% Test coverage

You can be 100% sure all the compilers are working correctly.

Checkhealth support

A user can now check if all the required dependencies are installed with

:lua require("compiler") -- To ensure compiler.nvim is loaded
:checkhealth compiler

Multiple compilation modes

Some language like python now allow compiling to machine code, bytecode, or interpreted. This makes Python the most versatile language to experiment of all the ones we implement.

screenshot_2023-07-12_18-10-26_625655457

Others

Windows and MacOS support has been added too.

Package Rankings
Top 6.67% on Proxy.golang.org
Badges
Extracted from project README
Stargazers over time