Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include punctuation when double-clicking words to select them #4360

Draft
wants to merge 41 commits into
base: master
Choose a base branch
from
Draft
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
f0b7737
Update memory.rs
rustbasic Mar 23, 2024
3b98d7f
Update epi_integration.rs
rustbasic Mar 23, 2024
af5a7bb
Update memory.rs
rustbasic Mar 23, 2024
7f66b56
Update memory.rs
rustbasic Mar 23, 2024
6396c4a
Update epi_integration.rs
rustbasic Mar 23, 2024
9fe42ff
Merge branch 'emilk:master' into master
rustbasic Mar 25, 2024
d7673fe
Merge branch 'emilk:master' into master
rustbasic Mar 25, 2024
a7edc53
Merge branch 'emilk:master' into master
rustbasic Mar 26, 2024
2432784
Merge branch 'emilk:master' into master
rustbasic Mar 27, 2024
9b6209b
Merge branch 'emilk:master' into master
rustbasic Mar 27, 2024
f3687f6
Merge branch 'emilk:master' into master
rustbasic Mar 28, 2024
78880de
Merge branch 'emilk:master' into master
rustbasic Mar 29, 2024
01ba2ec
Merge branch 'emilk:master' into master
rustbasic Mar 29, 2024
0ae2451
Merge branch 'emilk:master' into master
rustbasic Mar 29, 2024
e6c84ce
Merge branch 'emilk:master' into master
rustbasic Mar 30, 2024
821dff0
Update epi_integration.rs
rustbasic Mar 30, 2024
eecfafd
Merge branch 'emilk:master' into master
rustbasic Mar 30, 2024
cbb5ac7
Merge branch 'emilk:master' into master
rustbasic Mar 30, 2024
07b5143
Merge branch 'emilk:master' into master
rustbasic Mar 31, 2024
3313633
Update epi_integration.rs
rustbasic Mar 31, 2024
90b968c
Merge branch 'emilk:master' into master
rustbasic Apr 1, 2024
13af44f
Merge branch 'emilk:master' into master
rustbasic Apr 1, 2024
5d95f09
Merge branch 'emilk:master' into master
rustbasic Apr 1, 2024
4be440a
Merge branch 'emilk:master' into master
rustbasic Apr 1, 2024
1ef0e10
Merge branch 'emilk:master' into master
rustbasic Apr 2, 2024
6541324
Merge branch 'emilk:master' into master
rustbasic Apr 2, 2024
8abc161
Merge branch 'emilk:master' into master
rustbasic Apr 3, 2024
1b21742
Merge branch 'emilk:master' into master
rustbasic Apr 4, 2024
052bb68
Merge branch 'emilk:master' into master
rustbasic Apr 5, 2024
71dfe40
Update text_cursor_state.rs
rustbasic Apr 14, 2024
1dc87d2
Update text_cursor_state.rs
rustbasic Apr 14, 2024
d13e796
Merge branch 'emilk:master' into patch42
rustbasic Apr 19, 2024
5399741
Merge branch 'emilk:master' into patch42
rustbasic Apr 21, 2024
f863576
Update text_cursor_state.rs
rustbasic Apr 21, 2024
f22efcb
Update text_cursor_state.rs
rustbasic Apr 21, 2024
3bd9995
Update text_cursor_state.rs
rustbasic Apr 22, 2024
7395ac0
Update text_cursor_state.rs
rustbasic Apr 22, 2024
7bf2a6f
Merge branch 'emilk:master' into patch42
rustbasic Apr 22, 2024
2729acd
Merge branch 'emilk:master' into patch42
rustbasic Apr 22, 2024
70214ed
Merge branch 'emilk:master' into patch42
rustbasic Apr 23, 2024
5b606f3
Merge branch 'emilk:master' into patch42
rustbasic Apr 26, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
12 changes: 11 additions & 1 deletion crates/egui/src/text_selection/text_cursor_state.rs
Original file line number Diff line number Diff line change
Expand Up @@ -287,8 +287,18 @@ fn next_line_boundary_char_index(it: impl Iterator<Item = char>, mut index: usiz
index
}

/// Determines whether a character is a component of a word.
///
/// Punctuation marks that are commonly used with words are considered word components.
pub fn is_word_char(c: char) -> bool {
c.is_ascii_alphanumeric() || c == '_'
if matches!(
c,
'_' | '-' | ':' | '/' | '.' | '\\' | '@' | '#' | '?' | '='
) {
return true;
}

!c.is_ascii_whitespace() && !c.is_ascii_punctuation()
}

fn is_linebreak(c: char) -> bool {
Expand Down