Skip to content
CharOfStringPublic

About

A lightweight text editor written using Rust w/ EMACS styled key binding

Topics

Resources

Code of conduct

Contributing

Stars

1 star

Watchers

1 watching

Forks

Repository files navigation

Contributors Forks Stargazers Issues project_license Built With Ratatui


Pointer Editor

A lightweight text editor written using Rust w/ EMACS styled key binding.
Explore the docs »

CI Status · Report Bug · Request Feature

About The Project

Screenshot Pointer Editor (we'll call it Pointer or ptre in the rest of the document) is a currently under developing (we just started it) lightweight text editor in Rust.

(back to top)

Built With

  • Rust
  • Cargo
  • Ratatui

(back to top)

Getting Started

Prerequisites

You will need to have Rust & Cargo ready on your system. Please note that network is required as Cargo will download its dependencies.

Build & Run

Please have Rust & Cargo ready, then you may use the following command to build:

$ cargo build

You may find the binary file on target/debug/build/ptre.

To run the code directly:

$ cargo run

To open an existing file in the editor buffer, pass its relative or absolute path:

$ cargo run -- README.md

A folder opens as a project, as Ctrl + C Ctrl + P A does:

$ cargo run -- src

Multiple arguments are rejected.

Packaging

Debian

NOTE: Network connection WILL BE REQUIRED!!

To build a Debian binary package, simply run:

$ ./build-deb -d

Dependencies will automatically being installed to your computer.

Next time you may run:

$ ./build-deb

To do a cleanup, run:

$ ./build-deb -c

Note that this will also clear the artifacts generated.

Archlinux

NOTE: Network connection WILL BE REQUIRED!!

To build a Arch zstd package, simply run:

$ ./build-pkg -d

Dependencies will automatically being installed to your computer.

Next time you may run:

$ ./build-pkg

To do a cleanup, run:

$ ./build-pkg -c

Note that this will also clear the artifacts generated.

(back to top)

Usage

The usage section has been moved to the doc/ folder. The list below shows some handy documents.

For more examples, please refer to the documentation directory.

(back to top)

Roadmap

  • C/C++ editor buffer
    • C/C++ code auto completion.
    • C/C++ Clang-tidy/Cpplint error displaying.
    • C/C++ error autofix.
  • Rust editor buffer
    • Provide code auto completion.
    • Provide linting.
  • Application
    • Provide color icon mode.
    • Provide i18n translations.
  • Packaging
    • Debian.
    • Archlinux.
    • Fedore/OpenSUSE.
    • Nix.
    • AmberPM.

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

Please refer to the Contributor Guide and Code of Conduct before contributing, thanks.

(back to top)

Top contributors:

contrib.rocks image

License

ptre is licensed under GNU GENERAL PUBLIC LICENSE Version 3, you may find a copy of the license here.

(back to top)

Acknowledgments

Special thanks to these libraries:

For all dependencies, please refer to Cargo.lock.

(back to top)

About

A lightweight text editor written using Rust w/ EMACS styled key binding

Topics

Resources

Code of conduct

Contributing

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages