mirror of
https://github.com/mikedilger/gossip.git
synced 2024-09-29 16:31:18 +00:00
Only create nip-27 regex once
This commit is contained in:
parent
d52545edb7
commit
fe845c1850
@ -15,6 +15,7 @@ pub(super) fn render_content(
|
||||
content: &str,
|
||||
) -> Option<NoteData> {
|
||||
let tag_re = app.tag_re.clone();
|
||||
let nip27_re = app.nip27_re.clone();
|
||||
ui.style_mut().spacing.item_spacing.x = 0.0;
|
||||
|
||||
// Optional repost return
|
||||
@ -95,9 +96,8 @@ pub(super) fn render_content(
|
||||
let rest = &s[pos..];
|
||||
// implement NIP-27 nostr: links that include NIP-19 bech32 references
|
||||
if rest.contains("nostr:") {
|
||||
let regx = regex::Regex::new(r"(?i:nostr:[[:alnum:]]+)").unwrap();
|
||||
let mut nospos = 0;
|
||||
for mat in regx.find_iter(rest) {
|
||||
for mat in nip27_re.find_iter(rest) {
|
||||
ui.label(&s[nospos..mat.start()]); // print whatever comes before the match
|
||||
let mut link_parsed = false;
|
||||
let link = &s[mat.start() + 6..mat.end()];
|
||||
|
@ -135,6 +135,7 @@ struct GossipUi {
|
||||
settings: Settings,
|
||||
avatars: HashMap<PublicKeyHex, TextureHandle>,
|
||||
tag_re: regex::Regex,
|
||||
nip27_re: regex::Regex,
|
||||
|
||||
// Search result
|
||||
search_result: String,
|
||||
@ -279,6 +280,7 @@ impl GossipUi {
|
||||
settings,
|
||||
avatars: HashMap::new(),
|
||||
tag_re: regex::Regex::new(r"(\#\[\d+\])").unwrap(),
|
||||
nip27_re: regex::Regex::new(r"(?i:nostr:[[:alnum:]]+)").unwrap(),
|
||||
search_result: "".to_owned(),
|
||||
draft: "".to_owned(),
|
||||
tag_someone: "".to_owned(),
|
||||
|
Loading…
Reference in New Issue
Block a user