koutselakismanos / oni2

Native, lightweight modal code editor

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build Status

Oni 2

Lightweight, Modal Code Editor

⚠️ Pre-alpha - not yet usable! ⚠️

Onivim 2

Introduction

Oni 2 is a reimagination of the Oni editor. Oni 2 aims to bring the speed of Sublime, the language integration of VSCode, and the modal editing experience of (neo)vim together, in a single package.

Oni 2 is built in reason using the revery framework.

Goals

  • Modern UX - an experience on par with modern code editors like VSCode and Atom
  • VSCode Plugin Support - use all of the features of VSCode plugins, including language servers and debuggers
  • Cross-Platform - works on Windows, OSX, and Linux
  • Batteries Included - works out of the box
  • Performance - no compromises: native performance, minimal input latency
  • Ease Learning Curve - Oni 2 should be comfortable for non-vimmers, too!

The goal of this project is to build an editor that doesn't exist today - the speed of a native code editor like Sublime, the power of modal editing, and the rich tooling that comes with a lighweight editor like VSCode.

Non-goals

  • VimL compatibility - we may not support all features of VimL plugins / configuration.

Build

Prerequisites

  • Install Git
  • Install Esy (0.5.6 is required)
macOS
  • brew install cmake
  • brew install libpng ragel
Linux

Install the following packages with your package manager of choice:

  • cmake
  • ragel

Build

Build the front-end

  • git clone https://github.com/onivim/oni2
  • esy install
  • esy bootstrap
  • esy build

Build the textmate service

  • cd src/textmate_service
  • node install.js
  • npm run build

Run

  • esy run

Tests

  • esy test

Benchmarks

  • esy '@bench' install
  • esy '@bench' build
  • esy '@bench' x oni-bench

Documentation

Coming soon

Contributing

We'd ❤️ help building Oni 2 - more info soon.

License

Onivim 2 is currently licensed under the CC-BY-NC-4.0 license.

This means that Onivim 2 is free to use for non-commercial or educational uses.

NOTE: We're reviewing our license terms with a lawyer, so they may change slightly (it turns out the CC-BY-NC-4.0 isn't the perfect fit for software - we might need a more official EULA).

For commercial use licenses, we're still working through the details - but once Onivim 2 has reached "MVP" (target - end of May), we'll transition from crowdfunding to selling commercial licenses. Our current planned price point is $10/month.

However, until that time, we're offering anyone who donates to the project - any dollar amount - an individual, perpetual-use commercial license. We don't want early adopters to have to pay again, ever, as we launch Onivim 2 - we truly appreciate the support as we transition to a commercial offering, and we know it's a leap of faith to back an early-stage project!

More information about this decision in this Reddit Thread: Question About Oni 2 License.

You can donate to the project through one of these avenues:

Several dependencies have their own set of license terms here: ThirdPartyLicenses.txt

Copyright 2019 Outrun Labs, LLC.

About

Native, lightweight modal code editor


Languages

Language:OCaml 68.4%Language:JavaScript 19.2%Language:TypeScript 7.5%Language:CSS 1.2%Language:Shell 1.2%Language:Vim Script 1.0%Language:HTML 0.9%Language:C++ 0.5%