diff options
author | redmatrix <git@macgirvin.com> | 2016-06-02 18:42:51 -0700 |
---|---|---|
committer | redmatrix <git@macgirvin.com> | 2016-06-02 18:42:51 -0700 |
commit | f9075e2a2feca0f37fdf568be6e6e53460aa9034 (patch) | |
tree | d2b30d35a2078b8a6d21999ae39db3129215aa79 /include/text.php | |
parent | e596bf025bc2cb700d2603871286df1102d41031 (diff) | |
download | volse-hubzilla-f9075e2a2feca0f37fdf568be6e6e53460aa9034.tar.gz volse-hubzilla-f9075e2a2feca0f37fdf568be6e6e53460aa9034.tar.bz2 volse-hubzilla-f9075e2a2feca0f37fdf568be6e6e53460aa9034.zip |
some initial emoji reaction work
Diffstat (limited to 'include/text.php')
-rw-r--r-- | include/text.php | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/text.php b/include/text.php index 551cb72bc..834eec920 100644 --- a/include/text.php +++ b/include/text.php @@ -734,6 +734,10 @@ function get_tags($s) { // '=' needs to be avoided because when the replacement is made (in handle_tag()) it has to be ignored there // Feel free to allow '=' if the issue with '=' is solved in handle_tag() // added / ? and [ to avoid issues with hashchars in url paths + + // added ; to single word tags to allow emojis and other unicode character constructs in bbcode + // (this would actually be &#xnnnnn; but the ampersand will have been escaped to & by the time we see it.) + if(preg_match_all('/(?<![a-zA-Z0-9=\/\?])(@[^ \x0D\x0A,:?\[]+ [^ \x0D\x0A@,:?\[]+)/',$s,$match)) { foreach($match[1] as $mtch) { if(substr($mtch,-1,1) === '.') @@ -746,7 +750,7 @@ function get_tags($s) { // Otherwise pull out single word tags. These can be @nickname, @first_last // and #hash tags. - if(preg_match_all('/(?<![a-zA-Z0-9=\/\?])([@#][^ \x0D\x0A,;:?\[]+)/',$s,$match)) { + if(preg_match_all('/(?<![a-zA-Z0-9=\/\?\;])([@#][^ \x0D\x0A,;:?\[]+)/',$s,$match)) { foreach($match[1] as $mtch) { if(substr($mtch,-1,1) === '.') $mtch = substr($mtch,0,-1); |