Jeremy Soller
381b9ed87b
Merge pull request #158 from forkgull/comp-color
...
Add easy conversions for tuples/arrays for Color
2023-08-04 07:36:27 -06:00
Imbris
9d2d2dd7a6
Remove shape reset from BufferLine::set_align docs since that isn't performed
2023-08-02 00:15:46 -04:00
John Nunley
84b6a4e086
Derive Clone for AttrsList
2023-07-24 22:13:34 -07:00
John Nunley
2509fc21e2
Fix a warning
2023-07-24 18:09:31 -07:00
John Nunley
7b289c945b
Fix no_std build
2023-07-24 17:57:46 -07:00
John Nunley
faa1ceafda
Unify the no_std and std impls of FontSystem
2023-07-24 08:51:19 -07:00
Jeremy Soller
bd58940c42
Merge pull request #153 from forkgull/more-debug
...
Add more Debug implementations
2023-07-24 09:45:58 -06:00
John Nunley
e65bcbc4d3
Change to a feature
2023-07-22 08:24:28 -07:00
John Nunley
13146f65cc
Add easy conversions for tuples/arrays for Color
...
This makes it somewhat easier to convert Color to other color types,
such as piet::Color.
2023-07-21 18:41:49 -07:00
John Nunley
831e025cb1
Upgrade missing glyphs to a warning
...
It is annoying to have to grep through DEBUG logs for this.
2023-07-21 18:04:00 -07:00
John Nunley
440d24ffa0
Add more Debug implementations
...
I generally like to implement Debug on these kind of types.
2023-07-07 21:44:21 -07:00
John Nunley
aa1b37aede
Add Align::End for end-based alignment
...
For use cases that want to reverse the alignment of RTL
lines, this avoids needing to check the RTL status of every line
manually.
This is a breaking change.
2023-07-07 21:31:17 -07:00
Jeremy Soller
edd9eb8b23
Merge branch 'offsetting-and-scaling'
2023-07-06 06:47:34 -06:00
Jeremy Soller
85ac473056
Fix tests
2023-07-06 06:47:12 -06:00
tigregalis
fb8bb60972
update comments
2023-06-30 20:40:12 +08:00
tigregalis
7db01ebf3a
use core::mem::{replace, take} not std::
2023-06-30 20:31:29 +08:00
tigregalis
48f6aefb80
remove unnecessary into_iter in doctests
2023-06-27 21:59:58 +08:00
tigregalis
4a05c9c1cf
add BorrowedWithFontSystem<_>::set_rich_text
2023-06-27 21:53:27 +08:00
tigregalis
f092bdde73
add Buffer::set_rich_text method
2023-06-27 21:53:05 +08:00
0hypercube
bc1a327371
Add light syntax highligher to libcosmic example
2023-06-25 11:58:10 +01:00
Héctor Ramón Jiménez
c3cd24dc97
Truncate Y coordinate in LayoutGlyph::physical
2023-06-20 06:39:06 +02:00
Héctor Ramón Jiménez
eb09cf0259
Introduce PhysicalGlyph for offsetting and scaling
2023-06-20 06:07:24 +02:00
Jeremy Soller
e8b10fd675
Base selection on the top of the line
2023-06-16 07:03:43 -06:00
Jeremy Soller
10bf182c5d
Fix line wrap and scroll
2023-06-16 06:51:11 -06:00
Héctor Ramón Jiménez
2fbd65a64f
Compute ascent and descent only once in shape_skip
2023-06-16 02:39:54 +02:00
Héctor Ramón Jiménez
ffa08d2da1
Use rustybuzz in shape_fallback instead of swash
2023-06-16 02:38:00 +02:00
Héctor Ramón Jiménez
431163dc35
Consider the centering_offset for visibility in LayoutRunIter
2023-06-16 02:25:45 +02:00
Héctor Ramón Jiménez
c2bef6a345
Align glyphs in a LayoutRun to baseline
2023-06-16 02:15:44 +02:00
Dima Rets
6dba04df08
allow setting cursor
2023-06-10 12:53:34 +01:00
Jeremy Soller
b5f45f81f6
Merge pull request #124 from tigregalis/iter-bidi-para
...
Replace use of `str::Lines` with `unicode-bidi`-based iterator
2023-06-09 07:03:07 -06:00
tigregalis
5ab509ebaa
use alloc::vec instead of std::vec
2023-06-09 11:26:08 +08:00
tigregalis
6e336ad1cd
replace use of str::lines with BidiParagraphs
2023-06-09 11:26:07 +08:00
tigregalis
e298259dd5
introduce BidiParagraphs iterator
2023-06-09 11:22:52 +08:00
tigregalis
2ed9c34796
use Buffer::new_empty in Buffer::new
2023-06-09 11:11:42 +08:00
tigregalis
cfb6760fa2
introduce Buffer::new_empty
2023-06-09 11:09:16 +08:00
Dima Rets
0eb08d218c
allow setting cursor color
2023-06-08 20:04:56 +01:00
Jeremy Soller
9062cce140
Merge pull request #122 from hecrj/feature/shaping-switch
...
`Shaping` strategy selection
2023-06-08 12:47:04 -06:00
Jeremy Soller
39895c988a
Merge pull request #132 from trimental/monospaced-fallback
...
Fallback to monospaced font if Monospace family is not found
2023-06-08 12:38:17 -06:00
Jeremy Soller
ca48c86f2b
Merge pull request #131 from nicoburns/fix/non-wrapped-alignment
...
Fix alignment when using `Wrap::None`
2023-06-08 12:33:24 -06:00
Jeremy Soller
f0becfdb54
Fix comment typo
2023-06-08 12:32:34 -06:00
bjorn3
95e36249d5
Remove the dependency on ouroboros
...
This reduces compilation time by removing a dependency on syn and other
dependencies of ouroboros_macros. In addition it saves a lot of unused
codegened methods.
On my laptop (2 core + HT) this reduces compilation time by ~20%. On a
many core system this doesn't help much though as the critical path path
consists of both ttf-parser -> rustybuzz and swash. Further gains will
likely need to be made by reducing compilation time for these crates.
Benchmark 1: cargo build
Time (mean ± σ): 25.150 s ± 0.167 s [User: 84.414 s, System: 7.335 s]
Range (min … max): 24.909 s … 25.444 s 10 runs
Benchmark 1: cargo build
Time (mean ± σ): 19.819 s ± 0.226 s [User: 67.754 s, System: 5.592 s]
Range (min … max): 19.492 s … 20.140 s 10 runs
The code is based on an expansion of the ouroboros macro, cleaned up to
remove all unused methods and inline most functions that are only called
once.
2023-06-08 18:00:42 +02:00
Lucas Timmins
e1e9fb5215
Fallback to monospaced font if Monospace family is not found
2023-05-20 02:05:52 +08:00
Nico Burns
8d37da51b9
Fix non-wrapped alignment
2023-05-19 02:45:35 +01:00
Héctor Ramón Jiménez
b85d6a4f23
Use Vec::new instead of vec! macro
2023-04-21 20:56:11 +02:00
Héctor Ramón Jiménez
87d75531b7
Allow Shaping::Basic only if swash feature is enabled
2023-04-21 20:47:02 +02:00
Héctor Ramón Jiménez
a5c548b12f
Fix syntect module
2023-04-21 20:29:56 +02:00
Héctor Ramón Jiménez
9e559e150d
Write docs for Shaping enum
2023-04-21 20:27:00 +02:00
Héctor Ramón Jiménez
0f055c0a13
Replace skip_shaping boolean with Shaping enum
2023-04-21 20:24:44 +02:00
Héctor Ramón Jiménez
ad111a1df1
Add skip_shaping flag to avoid expensive shaping when not needed
2023-04-19 00:24:43 +02:00
Jeremy Soller
f2445987fb
Merge pull request #118 from pop-os/checked_sub
...
Use checked_sub to fix panic on window resize.
2023-03-31 06:43:30 -06:00