NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #3412 most downloaded on crates.io
Pure Rust multi-line text handling
Last release 5 months ago
22 Apr 2026
Release timing varies
gaps range from 2 weeks to 7 months
Some releases are documented
notes for 23 of 42 stable releases
1 version withdrawn
withdrawn after publishing
4 years old
43 releases · first in 2022
One column per quarter.
Empty lines use span metrics: #479
Links Crate on crates.io Documentation on docs.rs Fixed Fixes for ellipsize
Links Crate on crates.io Documentation on docs.rs Fixed Fix aggressive ellipsizing
Support for ellipsizing at the start, middle, and end of a line
Motion::Home and Motion::End operate on unwrapped lines
Set correct rust-version to 1.89
Fix variable font weight for SwashCache::get_outline_commands()
Add Renderer trait for more flexible rendering of buffers and editors
Renderer trait for more flexible rendering of buffers and editorsHinting enumAdd ASCII fast path optimization to ShapeWord::build
Links Crate on crates.io Documentation on docs.rs Fixed Ensure MSRV of 1.75.0
Allow font to be stored as peniko::Font with peniko feature
peniko::Font with peniko featureAdd configurable font fallback lists using Fallback trait
Fallback traitAttrsAttrs### Fixed - Fix build for Android targets
Fix glyph start+end indices in Basic shaping
Basic shapingAdd Buffer::set_tab_width function
Buffer::set_tab_width functionAttrsList::spans_iter and use it in Buffer::appendBuffer::set_rich_textSwashCache::get_outline_commands_uncachedNoto Sans CJK JPMotion::BufferEndsmol_str for family name in FamilyOwnedBuffer::set_rich_text for when the buffer is reconstructedShapeBuffer to FontSystemFontSystemswash_outline_commands0.2.0 and hook up std feature1.75ShapePlanCacheMake collection of monospace fallback information optional
Cache codepoint support info for monospace fonts
Fix glyph start and end when using shape-run-cache
shape-run-cacheAdd shape-run-cache feature, that can significantly improve shaping performance
shape-run-cache feature, that can significantly improve shaping performanceAdd function to set metrics and size simultaneously
rustybuzz shape plansWordOrGlyph to allow word to glyph fallbackBuffer::set_rich_text: Only add attrs if they do not match the defaultsBuffer: fix max scroll going one line beyond endlayout_cursorShapeLine gracefullycoloredEditor, SyntaxEditor, and ViEditorBuffer::set_rich_textfontdb to 0.16Motion enum, move handling to BufferBufferLine: user layout_in_buffer to implement layoutBufferLine: remove wrap from struct, as wrap is passed to layoutcolor and x_opt out of Cursorfont_matches_cache and clear it when it is reachedswash to 0.1.12WordOrGlyphAdded Buffer::set_rich_text method
Buffer::set_rich_text methodAlign::End for end-based alignmentDebug implementationsColorClone for AttrsListfontdb to get fontconfig informationno_std buildBufferLine::set_align docs to not mention shape reset is performedcursor_moved to true in Editor::insert_stringNextWord action in Editor when line ends with word boundarieseditor-libcosmic with vi featurefontconfig font aliases when enabledno_std and std impls of FontSystemhashbrown behind no_std featurestd or no_std feature to be specifiedstd feature with fontconfig featurefontconfig feature by defaultShapeLine::layout1.65Edit::copy_selection immutablePreviousWord logic in Editor with iteratorsEditorself_cell for creating self-referential structAdd Shaping enum to allow selecting the shaping strategy
Shaping enum to allow selecting the shaping strategyBuffer::new_empty to create Buffer without FontSystemBidiParagraphs iteratorCursor colorEditor cursorPhysicalGlyph that allows computing CacheKey after layoutlibcosmic exampleLayoutRun to baselinefontdb to 0.14.1BidiParagraphs iterator instead of str::Lineslibcosmic versionLayoutGlyph no longer has x_int and y_int, use PhysicalGlyph insteadFontSystem::new_with_fonts helper
FontSystem::new_with_fonts helperFontSystem::db_mut provides mutable access to fontdb databaserustybuzz is re-exportedstd FontSystemBufferLinke::set_text has been made more efficientf32 instead of i32 for lengthsFontSystem no longer self-referencingSwashCash no longer keeps reference to FontSystemAttrs::monospaced is removed, use Family::Monospace insteadNothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →