[package] name = "helix-term" description = "A post-modern text editor." include = ["src/**/*", "README.md"] default-run = "hx" version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true categories.workspace = true repository.workspace = true homepage.workspace = true [features] default = ["git", "steel"] # Remove steel if you don't want it unicode-lines = ["helix-core/unicode-lines", "helix-view/unicode-lines"] integration = ["helix-event/integration_test"] git = ["helix-vcs/git"] steel = ["dep:steel-core", "helix-core/steel", "helix-view/steel", "tui/steel"] [[bin]] name = "hx" path = "src/main.rs" [dependencies] helix-stdx = { path = "../helix-stdx" } helix-core = { path = "../helix-core" } helix-event = { path = "../helix-event" } helix-view = { path = "../helix-view" } helix-lsp = { path = "../helix-lsp" } helix-dap = { path = "../helix-dap" } helix-vcs = { path = "../helix-vcs" } helix-loader = { path = "../helix-loader" } anyhow = "1" once_cell = "1.20" tokio = { version = "1", features = ["rt", "rt-multi-thread", "io-util", "io-std", "time", "process", "macros", "fs", "parking_lot"] } tui = { path = "../helix-tui", package = "helix-tui", default-features = false, features = ["crossterm"] } crossterm = { version = "0.28", features = ["event-stream"] } signal-hook = "0.3" tokio-stream = "0.1" futures-util = { version = "0.3", features = ["std", "async-await"], default-features = false } arc-swap = { version = "1.7.1" } termini = "1" # Logging fern = "0.6" chrono = { version = "0.4", default-features = false, features = ["clock"] } log = "0.4" # File picker nucleo.workspace = true ignore = "0.4" # markdown doc rendering pulldown-cmark = { version = "0.12", default-features = false } # file type detection content_inspector = "0.2.4" thiserror = "1.0" # opening URLs open = "5.3.0" url = "2.5.2" # config toml = "0.8" serde_json = "1.0" serde = { version = "1.0", features = ["derive"] } # ripgrep for global search grep-regex = "0.1.13" grep-searcher = "0.1.14" # plugin support steel-core = { workspace = true, optional = true } steel-doc = { git = "https://github.com/mattwparas/steel.git", version = "0.6.0" } [target.'cfg(not(windows))'.dependencies] # https://github.com/vorner/signal-hook/issues/100 signal-hook-tokio = { version = "0.3", features = ["futures-v0_3"] } libc = "0.2.159" [target.'cfg(target_os = "macos")'.dependencies] crossterm = { version = "0.28", features = ["event-stream", "use-dev-tty", "libc"] } [build-dependencies] helix-loader = { path = "../helix-loader" } [dev-dependencies] smallvec = "1.13" indoc = "2.0.5" tempfile = "3.13.0" same-file = "1.0.1"