dscode-core
Core types, text buffer, and configuration for DSCode.
Install
Usage
TextBuffer
use TextBuffer;
let buffer = new;
assert_eq!;
assert_eq!;
AppDirectories
use AppDirectories;
let dirs = resolve?;
println!;
println!;
println!;
Configuration
use AppDirectories;
let dirs = resolve?;
// User configuration file support at ~/.dscode/config.json
// Environment variable overrides (DSCODE_EXTENSIONS_DIR)
// Tilde (~) expansion in paths
See the examples/ directory for more complete samples.
Key Types
| Type | Description |
|---|---|
TextBuffer |
Rope-based text storage for efficient editing operations on large files |
AppDirectories |
Platform-aware directory resolution for extensions, storage, and logs |
CoreError |
Unified error type for core operations |
Feature Flags
| Feature | Default | Description |
|---|---|---|
python |
off | Enables Python bindings via PyO3 |
State Machine
TextBuffer uses the ropey rope data structure internally for O(log n) insertions, deletions, and slicing on large files.
Full API Docs
License
MIT