Giter Site home page Giter Site logo

xi-qt's Introduction

Xi Editor
Xi Editor

(pronounced "Zigh")

A modern editor with a backend written in Rust.

xi-qt

A Qt front-end for xi-editor.

Screenshot xi-qt screenshot

Getting started

Requirements

  • QT5 (Tested 5.12.2)
  • Visual Studio 2019
  • Windows OS 64Bit (Tested Windows 10 17763.437)

Building xi-qt

  • Building core
  • Make sure xi-core can be found in system path
  • Clone xi-qt
    git clone https://github.com/zhiyaluo/xi-qt
    
  • Open xi-qt.pro in Qt Creator

Configuration

Font

  • Inconsolata

Syntax

  • syntect plugin

Shortcuts

Command Keybinding
Open Ctrl+O
Close Ctrl+W
Save Ctrl+S
New Ctrl+N
Scroll Test F8

Roadmap

Next

  • Drag file
  • Notification
  • Improve selection
  • Find/Replace
  • Preferences
  • Hover
  • Menu
  • Statusbar
  • Quick open
  • Command palette

Future/Long-term

  • Blink cursor
  • Effective text layout
  • OpenGL
  • SIMD
  • Portable (Linux)

Completed

  • Mouse interactive (input/selection)
  • Multi input
  • Saving
  • Copy/Paste/Cut
  • Shortcuts
  • IME
  • Gutter
  • Undo/Redo
  • FPS Counter

Links

xi-editor

Contributions

Pull requests are very welcome.

xi-qt's People

Contributors

i1qwert avatar krant avatar zhiyaluo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xi-qt's Issues

Clicking at any point in xi-qt gives SIGSEGV

after debugging i saw that when i click at any point in editor window, it calls ContentView::getLineColumn(const QPoint &pos) and then inside of that function calls lineCache->get(line)->utf8Length() that gives SIGSEGV;

qt creator stops at this line of code:

Q_REQUIRED_RESULT QByteArray toUtf8() const &
-> { return toUtf8_helper(*this); }

Hoping build guide

Could you please write a build guide for it? Or listing out the building environment.
您好,能不能简单的给一个编译指南或者编译环境?

cannot compile on ubuntu 19.04

download a 5.12.3 qt sdk, and using g++ to build the project, and get the following error

In file included from trace.cpp:3:
base.h:10:34: error: expected ‘,’ or ‘...’ before ‘default’
E to_enum(const QString &name, E default) {
^~~~~~~
base.h: In function ‘E xi::to_enum(const QString&, E)’:
base.h:17:12: error: expected primary-expression before ‘default’
return default;
^~~~~~~
base.h:17:11: error: expected ‘;’ before ‘default’
return default;
^~~~~~~~
;
base.h:17:12: error: case label not within a switch statement
return default;
^~~~~~~
base.h:17:19: error: expected ‘:’ before ‘;’ token
return default;
^
:

Make xi-qt cross-platform

Well requirement and not great experience ( #6 ) tells that it can be only used on Windows. But why not make it cross-platform so user won't have to buy windows to use it would use it anywhere he wants?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.