GitPedia
Zeioth

Zeioth/compiler.nvim

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

30 Releases
Latest: 1y ago
v3.3.9Latest
ZeiothZeioth·1y ago·September 23, 2024
GitHub

🐛fix(`python`): They changed the package name so `nuitka3` has been renamed to just `nuitka`. Special thanks to @Gaweringo from [the discord channel](https://discord.com/invite/ymcMaSnq7d) for reporting it.

v3.3.8
ZeiothZeioth·1y ago·July 16, 2024
GitHub

New language added

  • Support for the `gleam` programming language has been added.
  • ![screenshot_2024-07-16_14-21-05_521299135](https://github.com/user-attachments/assets/344106c9-264d-455a-980e-e54777f0eb4c)
  • ![screenshot_2024-07-16_14-20-56_561333862](https://github.com/user-attachments/assets/0ce0c636-260b-48fc-99e3-12bf9f492cf1)

📦 Credits

  • Thanks to @Shad0wRim
v3.3.7
ZeiothZeioth·2y ago·June 9, 2024
GitHub

🐛 Minor fixes

  • We now focus the last executed task. → closes https://github.com/Zeioth/compiler.nvim/issues/27

📦 More info

  • Starting `Compiler.nvim v3.3.7`, the minimum required overseer version is `1.5.0`.
  • Tested with commit https://github.com/stevearc/overseer.nvim/commit/29dd31db39b44ddd57cfbc70610181a23acfae47.
  • You can just copy paste the config from [here](https://github.com/Zeioth/compiler.nvim?tab=readme-ov-file#how-to-install).

📦 Special thanks

  • @aaronmcadam for reporting the issue and @stevearc for fixing it.
v3.3.6
ZeiothZeioth·2y ago·June 9, 2024
GitHub

New features

  • `gradle`: The parser is now capable of parsing both, the tasks returned by the command `gradle list`, and user defined tasks from your `gradle.build` file.
  • ![screenshot_2024-06-09_18-18-37_945100343](https://github.com/Zeioth/compiler.nvim/assets/3357792/35477dbf-e171-4c3c-91ff-7620a7a53d02)

📦 Special thanks

  • @Cliffback for the PR #40
v3.3.5
ZeiothZeioth·2y ago·June 5, 2024
GitHub

New features

  • Support for paths with spaces has been added.

📦 Special thanks

  • To @Gaweringo for testing this feature.
v3.3.4
ZeiothZeioth·2y ago·May 26, 2024
GitHub

New language added

  • Support for the `fortran` programming language has been added.
  • ![screenshot_2024-05-26_23-51-51_317572729](https://github.com/Zeioth/compiler.nvim/assets/3357792/d3f60729-df22-499a-81ba-d6ff3018804a)
  • ![screenshot_2024-05-26_22-57-09_331826239](https://github.com/Zeioth/compiler.nvim/assets/3357792/e942e2e8-7f6e-4164-88dd-559c439a774e)

📦 Credits

  • Thanks to @Shad0wRim
v3.3.3
ZeiothZeioth·2y ago·April 25, 2024
GitHub

🐛 Minor fixes

  • `:CompilerRedo` is now (for real) compatible with build automation utilities.
v3.3.2
ZeiothZeioth·2y ago·March 25, 2024
GitHub

New features

  • `meson.build` parser now support multi line entries of `executable` and `custom_target`.
  • `CMakeLists.txt` parser now support multi line entries of `add_executable` and `add_custom_target`.

📦 Example

  • ```meson
  • hello_world = executable('hello_world', 'main.cpp')
  • hello_world = executable(
  • 'hello_world', 'main.cpp'
  • )
  • ```
  • And any other variation. The other build automation utilities already supported this, so no changes there.
v3.3.1
ZeiothZeioth·2y ago·March 24, 2024
GitHub

New features

  • `.solution.toml`: now accept `entry_point = "$current_buffer"`.

📦 Example

  • ```toml
  • [RunPythonFileAsModule]
  • entry_point = "$current_buffer"
  • arguments = "-m"
  • ```
v3.3.0
ZeiothZeioth·2y ago·March 23, 2024
GitHub

New feature

  • `Meson support`: When the file `meson.build` exist in the current working directory, Telescope will be populated with all its `executable` and `custom_target` entries.
  • ![screenshot_2024-03-23_04-05-25_431130767](https://github.com/Zeioth/compiler.nvim/assets/3357792/4fad4bf7-7664-41e5-b4b9-1c7b5ab91ac7)
  • ![screenshot_2024-03-23_04-56-59_219214553](https://github.com/Zeioth/compiler.nvim/assets/3357792/ad200193-e58c-47de-953f-e3dfbf37aede)

📦 More info

  • (optionally) You can define the next globals
  • | global | defaut value |
  • |--|--|
  • | `MESON_CLEAN_FIRST` | false |
  • | `MESON_BUILD_DIR` | ./build |
  • | `MESON_BUILD_TYPE` | debug |
  • Example:
  • > let g:MESON_BUILD_TYPE='release'
  • + 1 more
v3.2.7
ZeiothZeioth·2y ago·February 18, 2024
GitHub

New features

  • `C# dotnet watch` Reflect changes in your program in real time. Submitted by @Cliffback → https://github.com/Zeioth/compiler.nvim/pull/30
  • ![screenshot_2024-02-09_16-58-00_262443649](https://github.com/Zeioth/compiler.nvim/assets/3357792/fd1256d2-ffd5-4955-bfdd-13c6c261404d)

🐛 Minor fixes

  • `swift REPL` command.
v3.2.6
ZeiothZeioth·2y ago·February 4, 2024
GitHub

New features

  • `Swift` cli
  • `Swift` REPL
  • ![screenshot_2024-02-04_15-04-19_564953696](https://github.com/Zeioth/compiler.nvim/assets/3357792/3a26dfd2-781b-437d-8075-d825bac85045)
v3.2.5
ZeiothZeioth·2y ago·February 2, 2024
GitHub

New language added

  • Support for the `swift` programming language has been added.
  • ![screenshot_2024-02-02_20-35-35_933216945](https://github.com/Zeioth/compiler.nvim/assets/3357792/b36cdcda-4c4b-4e15-89c1-bb35cbd43087)
  • ![screenshot_2024-02-02_20-37-53_900833513](https://github.com/Zeioth/compiler.nvim/assets/3357792/7dbd7f9a-4439-4619-948e-25714f26a578)
  • Credits to @wSedlacek for the [initial PR](https://github.com/Zeioth/compiler.nvim/pull/23).
v3.2.4
ZeiothZeioth·2y ago·November 18, 2023
GitHub

New features

  • `java` has the new compiler option `Start REPL`.
  • `nodejs` package.json support added. Its options are now detected and displayed on Telescope.
  • You can select between npm and yarn with `:let g:NODEJS_PACKAGE_MANAGER='yarn'` (default: npm).
  • ![screenshot_2023-11-18_04-03-36_077009168](https://github.com/Zeioth/compiler.nvim/assets/3357792/802e4053-0f0c-4e06-aa14-8356917d6568)
  • ![screenshot_2023-11-18_04-03-26_249266649](https://github.com/Zeioth/compiler.nvim/assets/3357792/55d35b70-3904-41bf-9919-c233c057a3e8)

🐛 Minor fixes

  • The location of build automation utilities was erroneously detected using the current file directory instead of the current working directory.
  • Removed deprecated options that would be redundant now that we support build automation utilities.
v3.2.3
ZeiothZeioth·2y ago·November 15, 2023
GitHub

New feature

  • `:CompilerRedo` is now compatible with build automation utilities.
v3.2.2
ZeiothZeioth·2y ago·November 13, 2023
GitHub

New feature

  • `Gradle support`: When one of the files `gradlew`, `build.gradle.kts`, or `build.gradle` exist in the current working directory (by priority of detection), Telescope will be populated with all its task entries.
  • ![screenshot_2023-11-13_23-36-37_628173599](https://github.com/Zeioth/compiler.nvim/assets/3357792/82f6a789-fde0-4053-9382-185a4f1ee711)
  • ![screenshot_2023-11-13_23-41-12_672880397](https://github.com/Zeioth/compiler.nvim/assets/3357792/cca703bf-b983-41c9-8489-e343b13a0b56)

📦 More info

  • (optionally) You can define the next globals
  • | global | defaut value |
  • |--|--|
  • | `GRADLE_BUILD_TYPE` | "" |
  • Example:
  • > let g:GRADLE_BUILD_TYPE='release'
  • Globals persist between Neovim sessions.

🐛 Minor fixes

  • `CMake` We don't set a default value for the global `CMAKE_BUILD_TYPE` anymore.
v3.2.1
ZeiothZeioth·2y ago·November 2, 2023
GitHub

New feature

  • `CMake support`: When CMakeLists.txt is detected in the current working directory, Telescope will be populated with all its `add_executable` and `add_custom_target` entries.
  • ![screenshot_2023-11-02_00-00-12_901709390](https://github.com/Zeioth/compiler.nvim/assets/3357792/d2a33997-0c5e-4f53-b511-7f34d61e5ce3)
  • ![screenshot_2023-11-02_01-40-02_298225055](https://github.com/Zeioth/compiler.nvim/assets/3357792/34b4e0ef-29be-421c-b9c1-03315f24c943)

📦 More info

  • (optionally) You can define the next globals
  • | global | defaut value |
  • |--|--|
  • | `CMAKE_BUILD_DIR` | ./build |
  • | `CMAKE_BUILD_TYPE` | Debug |
  • | `CMAKE_CLEAN_FIRST` | false |
  • Example:
  • > let g:CMAKE_BUILD_TYPE='Release'
  • + 1 more
v3.2.0
ZeiothZeioth·2y ago·October 30, 2023
GitHub

New features

  • `Makefile support`: When Makefile is detected in the current working directory, Telescope will be populated with its content.
  • ![screenshot_2023-10-30_21-02-23_535709798](https://github.com/Zeioth/compiler.nvim/assets/3357792/5c241345-b066-426b-9007-bfe0ab90d994)
v3.1.1
ZeiothZeioth·2y ago·October 20, 2023
GitHub

New features

  • `NPM install` and `NPM start`: Added as new compiler.nvim options.
  • `tsconfig.json`: is now auto detected and used by all compiler.nvim options when writing ts/js. [SEE WIKI](https://github.com/Zeioth/compiler.nvim/wiki/typescript-transpiler).
  • `multiple bug fixes`: Both compilers have been tested in real world projects, and now work in a more predictable way.
  • `.solution` files support have been dropped for both languages as using package.json is the standard way.
  • ![screenshot_2023-10-20_23-35-37_976981096](https://github.com/Zeioth/compiler.nvim/assets/3357792/28403ee2-d6e8-4b1c-aeff-5ac3c2af4902)
v3.1.0
ZeiothZeioth·2y ago·October 4, 2023
GitHub

New language added

  • Support for the elixir programming language has been added
  • ![screenshot_2023-10-04_19-22-38_175228509](https://github.com/Zeioth/compiler.nvim/assets/3357792/12abaa1d-26b6-47a1-91d8-189e7af6ab55)
  • For more info [see this](https://github.com/Zeioth/compiler.nvim/wiki/elixir-compiler).

🐛 Elixir DAP debugger

  • ![screenshot_2023-10-04_20-18-17_317315772](https://github.com/Zeioth/compiler.nvim/assets/3357792/443f42b5-1a86-42ca-b8d1-99243ae17cc8)
v3.0.1
ZeiothZeioth·2y ago·September 22, 2023
GitHub

🐛 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.
v3.0.0
ZeiothZeioth·2y ago·August 30, 2023
GitHub

📦 Historical milestone

  • [Compiler.nvim](https://github.com/Zeioth/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

  • [Zig](https://github.com/Zeioth/Compiler.nvim/blob/main/lua/compiler/languages/zig.lua)
  • [Typescript](https://github.com/Zeioth/Compiler.nvim/blob/main/lua/compiler/languages/typescript.lua)
  • [Javascript](https://github.com/Zeioth/Compiler.nvim/blob/main/lua/compiler/languages/javascript.lua)

📦 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.
v2.3.8
ZeiothZeioth·2y ago·August 30, 2023
GitHub

New language added

  • Support for the zig programming language has been added
  • ![screenshot_2023-08-30_18-10-36_366772974](https://github.com/Zeioth/compiler.nvim/assets/3357792/08cd8fce-56a6-466b-aa91-e81a8f110a55)
  • For more info [see this](https://github.com/Zeioth/compiler.nvim/wiki/zig-compiler).
v2.3.7
ZeiothZeioth·2y ago·August 29, 2023
GitHub

New language added

  • Visual Basic .NET
  • ![screenshot_2023-08-29_15-19-24_044812481](https://github.com/Zeioth/compiler.nvim/assets/3357792/7a1fa042-0a32-45dc-8c09-5f2af7526890)
  • 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](https://github.com/Zeioth/compiler.nvim/assets/3357792/b7c61ad4-c61b-48f6-87f7-dff7d3f8ce4d)
v2.3.6
ZeiothZeioth·2y ago·August 28, 2023
GitHub

New compilation options for java/kotlin

  • Now you can choose compiling as .class or .jar
  • ![screenshot_2023-08-28_15-01-28_633193187](https://github.com/Zeioth/compiler.nvim/assets/3357792/3c25867c-b164-466c-ad14-1066962514de)

🐛 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](https://github.com/Zeioth/compiler.nvim/assets/3357792/f29ee10d-d864-42df-894c-f9b954516f98)
  • 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.
v2.3.5
ZeiothZeioth·2y ago·August 28, 2023
GitHub

New languages supported

  • [Kotlin](https://github.com/Zeioth/Compiler.nvim/blob/main/lua/compiler/languages/kotlin.lua)
  • ![screenshot_2023-08-28_09-44-05_896143402](https://github.com/Zeioth/compiler.nvim/assets/3357792/b0a5c26f-dc05-49de-8633-aaed87a7de02)
v2.3.4
ZeiothZeioth·2y ago·August 26, 2023
GitHub

New languages supported

  • [Dart](https://github.com/Zeioth/Compiler.nvim/blob/main/lua/compiler/languages/dart.lua)
  • [Flutter](https://github.com/Zeioth/Compiler.nvim/blob/main/lua/compiler/languages/dart.lua)

New wiki pages

  • [How to setup DAP for Dart/Flutter](https://github.com/Zeioth/compiler.nvim/wiki/DAP-support-dart)

📦 Screenshots

  • New available options have been tested with automated tests to guarantee they work correctly
  • ![screenshot_2023-08-26_11-46-28_521334878](https://github.com/Zeioth/compiler.nvim/assets/3357792/f8b49769-7f45-464a-aa3f-2d344fd24b82)
  • You can run flutter code
  • ![screenshot_2023-08-26_11-49-59_239093884](https://github.com/Zeioth/compiler.nvim/assets/3357792/c955c853-5fbc-495f-b65a-c3960209f131)
  • Or you can debug it on DAP!
  • ![screenshot_2023-08-26_11-05-52_368700433](https://github.com/Zeioth/compiler.nvim/assets/3357792/db95bbf9-93b8-4190-b6cb-12a283d815c1)
v2.3.3
ZeiothZeioth·2y ago·August 25, 2023
GitHub

New languages supported

  • The `R` language
  • ![screenshot_2023-08-25_07-52-28_154970027](https://github.com/Zeioth/compiler.nvim/assets/3357792/958a1bb1-bd8c-4624-9dc1-baf1c459a1fe)

New compiler options

  • Added `REPL` for the languages
  • `Python`
  • `R`
  • `F#`
v2.3.2
ZeiothZeioth·2y ago·August 24, 2023
GitHub

New languages

  • [F#](https://github.com/Zeioth/compiler.nvim/blob/main/lua/compiler/languages/fsharp.lua): Options available `Dotnet run this file on REPL`, `Dotnet build & run` and `Dotnet build`.
  • ![screenshot_2023-08-24_08-15-42_453035885](https://github.com/Zeioth/compiler.nvim/assets/3357792/130cda3b-bfa2-4d2e-82be-633df79952bb)
  • Example of using the F# REPL:
  • ![screenshot_2023-08-24_08-23-00_656700441](https://github.com/Zeioth/compiler.nvim/assets/3357792/cfb68c3a-7145-46a6-baaa-186467bcff46)
  • Example of using [DAP with F#](https://github.com/Zeioth/compiler.nvim/wiki/DAP-support-F%23):
  • ![screenshot_2023-08-24_07-15-09_302654364](https://github.com/Zeioth/compiler.nvim/assets/3357792/cf098ee7-efc9-4d55-9867-5f0b821e3623)
v2.3.1
ZeiothZeioth·2y ago·August 22, 2023
GitHub

New command

  • `CompilerStop`: dispose all tasks.
  • This can be useful for users who want to build a key mapping like
  • ```lua
  • -- 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 })
  • + 2 more