Genio-The-Haiku-IDE / Genio

The Haiku IDE
Other
59 stars 9 forks source link
editor ide

Genio

Build CodeFactor Codacy Badge Screenshot Screenshot-Dark

Introduction

Genio is a native and fully functional IDE for the Haiku operating system

Some of the features of the Genio IDE are:

Genio started off as a fork of Ideam, and the editor is based on Scintilla for Haiku.

We also took inspiration and code from the editor Koder.

pkgman install gcc_syslibs_devel llvm17_clang

Goals and roadmap

Genio aims to be an easy, simple yet powerful IDE for Haiku inspired by VS Code and Nova.

Configuring LSP

For more advanced IDE features, Genio implements the LSP protocol. (https://microsoft.github.io/language-server-protocol/)

Building Genio

Prerequirements

Genio requires Scintilla and Lexilla to implement various functionalities. It also requires libgit2 to implement Git features, libyaml_cpp to read yaml files and editorconfig_core_c to provide support for project wide .editorconfig settings. The needed development files are available in libgit2_devel, lexilla_devel, yaml_cpp_devel, and editorconfig_core_c_devel respectively. Execute pkgman install libgit2_devel lexilla_devel yaml_cpp_devel editorconfig_core_c_devel from Terminal.

If you would like to try a clang++ build:

Compiling

Execute make deps && make in Genio's top directory. The executable is created in app subdirectory.

Genio can also be built within Genio itself.

Contributions

We gladly accept contributions, especially for bug fixes. Feel free to submit PRs. For code contributions, prefer Haiku API over posix, where applicable. We (try to) stick to the Haiku style for code, although we are a bit less strict sometimes.

License

Genio is available under the MIT license. See License.md. Outline LSP icons are taken from Visual Studio Code and released under Creative Commons license. See Visual Studio Code - Icons