Volver al ranking

microsoft/edit

Rust

We all edit.

editorrusttext-editorterminal
Crecimiento de estrellas
Estrellas
14.4k
Forks
705
Crecimiento semanal
Issues
141
10k12k14k
may 2025sept 2025feb 2026jul 2026
Artefactoscrates.iocargo add edit
README

Application Icon for Edit Edit

A simple editor for simple needs.

This editor pays homage to the classic MS-DOS Editor, but with a modern interface and input controls similar to VS Code. The goal is to provide an accessible editor that even users largely unfamiliar with terminals can easily use.

Screenshot of Edit with the About dialog in the foreground

Installation

Packaging status

You can also download binaries from our Releases page.

Windows

You can install the latest version with WinGet:

winget install Microsoft.Edit

Linux (build from source)

If your distribution does not provide binaries, or if you'd like to build your own, you can use our install script, provided you have installed:

  • Rust (via rustup or similar)
  • A C compiler (e.g. gcc)
  • ICU (e.g. libicu78, libicu, icu)
  • curl/wget and tar

The following command will then install msedit into ~/.local/bin:

curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/microsoft/edit/main/assets/install.sh | sh

Additional flags are --dev, to build directly from the main branch, and --system to install into /usr/local/bin. For instance:

curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/microsoft/edit/main/assets/install.sh | sh -s -- --dev --system

macOS

You can install the latest version with Homebrew:

brew install msedit

Build Instructions

  • Install Rust
  • Clone the repository
  • If you're using nightly Rust:
    cargo build --release --config .cargo/release.toml
    
  • If you're using stable Rust:
    • Ideally: Set the environment variable RUSTC_BOOTSTRAP=1 and use the nightly build instructions above. This is recommended, because it drastically reduces the binary size and slightly improves performance.
    • Otherwise, simply run:
      cargo build --release
      

Build Configuration

You can set the following environment variables at build-time to configure the build:

Environment variable Description
EDIT_CFG_ICU* See ICU library name (SONAME) below for details. Linux package maintainers are advised to review and configure these options.
EDIT_CFG_LANGUAGES A comma-separated list of languages to include in the build. See i18n/edit.toml for available languages.

Notes to Package Maintainers

Package Naming

The canonical executable name is "edit" and the alternative name is "msedit". We're aware of the potential conflict of "edit" with existing commands and recommend alternatively naming packages and executables "msedit". Names such as "ms-edit" should be avoided. Assigning an "edit" alias is recommended, if possible.

ICU library name (SONAME)

This project optionally depends on the ICU library for its Search and Replace functionality.

By default, the project will look for the following library names:

Variable Windows macOS Linux / Other
EDIT_CFG_ICUUC_SONAME icuuc.dll libicucore.dylib libicuuc.so
EDIT_CFG_ICUI18N_SONAME icuin.dll libicucore.dylib libicui18n.so

If your installation uses a different SONAME, please set the following environment variable at build time:

  • EDIT_CFG_ICUUC_SONAME: For instance, libicuuc.so.76.
  • EDIT_CFG_ICUI18N_SONAME: For instance, libicui18n.so.76.

Additionally, this project assumes that the ICU exports symbols without _ prefix and without version suffix, such as u_errorName. If your installation uses versioned exports, please set:

  • EDIT_CFG_ICU_CPP_EXPORTS: If set to true, it'll look for C++ symbols such as _u_errorName. Enabled by default on macOS.
  • EDIT_CFG_ICU_RENAMING_VERSION: If set to a version number, such as 76, it'll look for symbols such as u_errorName_76.

Finally, you can set the following environment variables:

  • EDIT_CFG_ICU_RENAMING_AUTO_DETECT: If set to true, the executable will try to detect the EDIT_CFG_ICU_RENAMING_VERSION value at runtime. The way it does this is not officially supported by ICU and as such is not recommended to be relied upon. Enabled by default on UNIX (excluding macOS) if no other options are set.

To test your build settings, run cargo test with the --ignored flag. For instance:

cargo test -- --ignored
Repositorios relacionados
microsoft/vscode

Visual Studio Code

TypeScriptnpmMIT Licenseeditorelectron
code.visualstudio.com
187.8k41.3k
OpenCut-app/OpenCut

The open-source CapCut alternative

TypeScriptnpmMIT Licenseeditoross
opencut.app
76.5k7.7k
toeverything/AFFiNE

There can be more than Notion and Miro. AFFiNE(pronounced [ə‘fain]) is a next-gen knowledge base that brings planning, sorting and creating all together. Privacy first, open-source, customizable and ready to use.

TypeScriptnpmOthereditorcrdt
affine.pro
70.6k5.1k
atom/atom

:atom: The hackable text editor

JavaScriptnpmMIT Licenseatomeditor
atom.io
60.8k17.2k
marktext/marktext

📝A simple and elegant markdown editor, available for Linux, macOS and Windows.

TypeScriptnpmMIT Licensemacostypewriter-mode
marktext.me
59k4.4k
slab/quill

Quill is a modern WYSIWYG editor built for compatibility and extensibility

TypeScriptnpmBSD 3-Clause "New" or "Revised" Licenseeditorrich-text-editor
quilljs.com
47.2k3.7k
microsoft/monaco-editor

A browser based code editor

JavaScriptnpmMIT Licensemonaco-editorvscode
microsoft.github.io/monaco-editor/
46.4k4.1k
mifi/lossless-cut

The swiss army knife of lossless video/audio editing

TypeScriptnpmGNU General Public License v2.0videoeditor
losslesscut.app
42.2k2.1k
drawdb-io/drawdb

Free, simple, and intuitive online database diagram editor and SQL generator.

JavaScriptnpmGNU Affero General Public License v3.0database-schemaeditor
drawdb.app
38.1k3.1k
ueberdosis/tiptap

The headless rich text editor framework for web artisans.

TypeScriptnpmMIT Licensejsvue
tiptap.dev
37.7k3.1k
VSCodium/vscodium

binary releases of VS Code without MS branding/telemetry/licensing

ShellMIT Licensevscodeopen-source-licensing
vscodium.com
32.4k1.8k
codex-team/editor.js

A block-style editor with clean JSON output

TypeScriptnpmApache License 2.0editorwysiwyg
editorjs.io
31.9k2.2k