mirror of
https://github.com/typst/typst
synced 2025-07-27 14:27:56 +08:00
Compare commits
3 Commits
a2cb405d4a
...
66d95f682c
Author | SHA1 | Date | |
---|---|---|---|
|
66d95f682c | ||
|
e9f1b5825a | ||
|
ce169026b3 |
@ -159,6 +159,7 @@ strip = true
|
||||
[workspace.lints.clippy]
|
||||
blocks_in_conditions = "allow"
|
||||
comparison_chain = "allow"
|
||||
iter_over_hash_type = "warn"
|
||||
manual_range_contains = "allow"
|
||||
mutable_key_type = "allow"
|
||||
uninlined_format_args = "warn"
|
||||
|
@ -139,6 +139,7 @@ impl Watcher {
|
||||
fn update(&mut self, iter: impl IntoIterator<Item = PathBuf>) -> StrResult<()> {
|
||||
// Mark all files as not "seen" so that we may unwatch them if they
|
||||
// aren't in the dependency list.
|
||||
#[allow(clippy::iter_over_hash_type, reason = "order does not matter")]
|
||||
for seen in self.watched.values_mut() {
|
||||
*seen = false;
|
||||
}
|
||||
|
@ -173,6 +173,7 @@ impl SystemWorld {
|
||||
|
||||
/// Reset the compilation state in preparation of a new compilation.
|
||||
pub fn reset(&mut self) {
|
||||
#[allow(clippy::iter_over_hash_type, reason = "order does not matter")]
|
||||
for slot in self.slots.get_mut().values_mut() {
|
||||
slot.reset();
|
||||
}
|
||||
|
@ -595,6 +595,7 @@ impl Shorthand<'_> {
|
||||
("--", '\u{2013}'),
|
||||
("---", '\u{2014}'),
|
||||
("-?", '\u{00AD}'),
|
||||
("-!", '\u{2011}'),
|
||||
];
|
||||
|
||||
/// Get the shorthanded character.
|
||||
|
@ -191,6 +191,7 @@ impl Lexer<'_> {
|
||||
'-' if self.s.eat_if("--") => SyntaxKind::Shorthand,
|
||||
'-' if self.s.eat_if('-') => SyntaxKind::Shorthand,
|
||||
'-' if self.s.eat_if('?') => SyntaxKind::Shorthand,
|
||||
'-' if self.s.eat_if('!') => SyntaxKind::Shorthand,
|
||||
'-' if self.s.at(char::is_numeric) => SyntaxKind::Shorthand,
|
||||
'*' if !self.in_word() => SyntaxKind::Star,
|
||||
'_' if !self.in_word() => SyntaxKind::Underscore,
|
||||
@ -524,7 +525,7 @@ impl Lexer<'_> {
|
||||
match s.eat() {
|
||||
Some(' ') if s.at(char::is_alphanumeric) => {}
|
||||
Some('/') if !s.at(['/', '*']) => {}
|
||||
Some('-') if !s.at(['-', '?']) => {}
|
||||
Some('-') if !s.at(['-', '?', '!']) => {}
|
||||
Some('.') if !s.at("..") => {}
|
||||
Some('h') if !s.at("ttp://") && !s.at("ttps://") => {}
|
||||
Some('@') if !s.at(is_valid_in_label_literal) => {}
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 2.0 KiB |
@ -10,7 +10,7 @@ Supercalifragilisticexpialidocious Expialigoricmetrioxidation.
|
||||
|
||||
--- linebreak-hyphen-nbsp ---
|
||||
// Test for non-breaking space and hyphen.
|
||||
There are non\u{2011}breaking~characters.
|
||||
There are non-!breaking~characters.
|
||||
|
||||
--- linebreak-narrow-nbsp ---
|
||||
// Test for narrow non-breaking space.
|
||||
|
@ -1,7 +1,7 @@
|
||||
// Test shorthands for unicode codepoints.
|
||||
|
||||
--- shorthand-nbsp-and-shy-hyphen ---
|
||||
The non-breaking space~does work, soft-?hyphen also does.
|
||||
The non-breaking space~does work, soft-?hyphen does, and non-!breaking hyphen also does.
|
||||
|
||||
--- shorthand-nbsp-width ---
|
||||
// Make sure non-breaking and normal space always
|
||||
|
@ -42,6 +42,10 @@
|
||||
"name": "punctuation.definition.nonbreaking-space.typst",
|
||||
"match": "~"
|
||||
},
|
||||
{
|
||||
"name": "punctuation.definition.nonbreaking-hyphen.typst",
|
||||
"match": "-!"
|
||||
},
|
||||
{
|
||||
"name": "punctuation.definition.shy.typst",
|
||||
"match": "-\\?"
|
||||
|
Loading…
x
Reference in New Issue
Block a user