Browse Source

refac: rich text input behaviour

Timothy J. Baek 6 months ago
parent
commit
4c691c0edb
1 changed files with 3 additions and 2 deletions
  1. 3 2
      src/lib/components/common/RichTextInput.svelte

+ 3 - 2
src/lib/components/common/RichTextInput.svelte

@@ -168,11 +168,12 @@
 	}
 
 	function boldRule(schema) {
-		return markInputRule(/\*([^*]+)\*/, schema.marks.strong);
+		return markInputRule(/(?<=^|\s)\*([^*]+)\*(?=\s|$)/, schema.marks.strong);
 	}
 
 	function italicRule(schema) {
-		return markInputRule(/\_([^*]+)\_/, schema.marks.em);
+		// Using lookbehind and lookahead to prevent the space from being consumed
+		return markInputRule(/(?<=^|\s)_([^*_]+)_(?=\s|$)/, schema.marks.em);
 	}
 
 	// Initialize Editor State and View