diff options
| -rw-r--r-- | lib/pleroma/formatter.ex | 2 | ||||
| -rw-r--r-- | test/formatter_test.exs | 9 | 
2 files changed, 10 insertions, 1 deletions
diff --git a/lib/pleroma/formatter.ex b/lib/pleroma/formatter.ex index 3d7c36d21..3e3b9fe97 100644 --- a/lib/pleroma/formatter.ex +++ b/lib/pleroma/formatter.ex @@ -8,7 +8,7 @@ defmodule Pleroma.Formatter do    alias Pleroma.User    alias Pleroma.Web.MediaProxy -  @safe_mention_regex ~r/^(\s*(?<mentions>@.+?\s+)+)(?<rest>.*)/ +  @safe_mention_regex ~r/^(\s*(?<mentions>@.+?\s+)+)(?<rest>.*)/s    @link_regex ~r"((?:http(s)?:\/\/)?[\w.-]+(?:\.[\w\.-]+)+[\w\-\._~%:/?#[\]@!\$&'\(\)\*\+,;=.]+)|[0-9a-z+\-\.]+:[0-9a-z$-_.+!*'(),]+"ui    @markdown_characters_regex ~r/(`|\*|_|{|}|[|]|\(|\)|#|\+|-|\.|!)/ diff --git a/test/formatter_test.exs b/test/formatter_test.exs index 5e7011160..47b91b121 100644 --- a/test/formatter_test.exs +++ b/test/formatter_test.exs @@ -206,6 +206,15 @@ defmodule Pleroma.FormatterTest do        assert mentions == []        assert expected_text == text      end + +    test "given the 'safe_mention' option, it will keep text after newlines" do +      user = insert(:user) +      text = " @#{user.nickname}\n hey dude\n\nhow are you doing?" + +      {expected_text, _, _} = Formatter.linkify(text, safe_mention: true) + +      assert expected_text =~ "how are you doing?" +    end    end    describe ".parse_tags" do  | 
