Pure Rust multi-line text handling
APACHE-2.0 License
Bot releases are hidden (Show)
Published by jackpot51 4 months ago
This release focused on resolving some longstanding issues for toolkit use.
Published by jackpot51 8 months ago
Fix glyph start and end when using shape-run-cache
.
Published by jackpot51 8 months ago
This release adds a new shape-run-cache
feature that, when enabled, will cache the results of shaping operations to significantly improve performance, at the cost of increased memory usage. Make sure to trim the cache with the ShapeRunCache::trim
function regularly. Also make sure to set keep_ages
to a large enough value that entries are not removed too early, as minor changes in the source text can switch between active entries (such as adding or removing a space in the middle of a word).
shape-run-cache
feature, that can significantly improve shaping performancePublished by jackpot51 8 months ago
This release contains a large refactor (#206), performance improvements, and bug fixes.
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_cursor
ShapeLine
gracefullycolored
Editor
, SyntaxEditor
, and ViEditor
Buffer::set_rich_text
fontdb
to 0.16
Motion
enum, move handling to Buffer
BufferLine
: 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.12
WordOrGlyph
Published by jackpot51 12 months ago
This release brings numerous performance and correctness improvements.
The following people contributed to this release. To see all commits included in this release, view this list of commits since 0.9.0
Buffer::set_rich_text
methodAlign::End
for end-based alignmentDebug
implementationsColor
Clone
for AttrsList
fontdb
to get fontconfig
informationno_std
buildBufferLine::set_align
docs to not mention shape reset is performedcursor_moved
to true in Editor::insert_string
NextWord
action in Editor
when line ends with word boundarieseditor-libcosmic
with vi
featurefontconfig
font aliases when enabledno_std
and std
impls of FontSystem
hashbrown
behind no_std
featurestd
or no_std
feature to be specifiedstd
feature with fontconfig
featurefontconfig
feature by defaultShapeLine::layout
1.65
Edit::copy_selection
immutablePreviousWord
logic in Editor
with iteratorsEditor
self_cell
for creating self-referential structPublished by jackpot51 over 1 year ago
Shaping
enum to allow selecting the shaping strategyBuffer::new_empty
to create Buffer
without FontSystem
BidiParagraphs
iteratorCursor
colorEditor
cursorPhysicalGlyph
that allows computing CacheKey
after layoutlibcosmic
exampleLayoutRun
to baselinefontdb
to 0.14.1BidiParagraphs
iterator instead of str::Lines
libcosmic
versionLayoutGlyph
no longer has x_int
and y_int
, use PhysicalGlyph
insteadPublished by jackpot51 over 1 year ago
FontSystem::new_with_fonts
helperFontSystem::db_mut
provides mutable access to fontdb
databaserustybuzz
is re-exportedstd
FontSystem
BufferLinke::set_text
has been made more efficientf32
instead of i32
for lengthsFontSystem
no longer self-referencingSwashCash
no longer keeps reference to FontSystem
Attrs::monospaced
is removed, use Family::Monospace
instead