@@ -30,19 +30,27 @@ defmodule ElixirLS.Debugger.Output do
30
30
end
31
31
32
32
def debugger_console ( server \\ __MODULE__ , str ) when is_binary ( str ) do
33
- send_event ( server , "output" , % { "category" => "console" , "output" => str } )
33
+ send_event ( server , "output" , % { "category" => "console" , "output" => maybe_append_newline ( str ) } )
34
34
end
35
35
36
36
def debugger_important ( server \\ __MODULE__ , str ) when is_binary ( str ) do
37
- send_event ( server , "output" , % { "category" => "important" , "output" => str } )
37
+ send_event ( server , "output" , % { "category" => "important" , "output" => maybe_append_newline ( str ) } )
38
38
end
39
39
40
40
def debuggee_out ( server \\ __MODULE__ , str ) when is_binary ( str ) do
41
- send_event ( server , "output" , % { "category" => "stdout" , "output" => str } )
41
+ send_event ( server , "output" , % { "category" => "stdout" , "output" => maybe_append_newline ( str ) } )
42
42
end
43
43
44
44
def debuggee_err ( server \\ __MODULE__ , str ) when is_binary ( str ) do
45
- send_event ( server , "output" , % { "category" => "stderr" , "output" => str } )
45
+ send_event ( server , "output" , % { "category" => "stderr" , "output" => maybe_append_newline ( str ) } )
46
+ end
47
+
48
+ defp maybe_append_newline ( message ) do
49
+ unless String . ends_with? ( message , "\n " ) do
50
+ message <> "\n "
51
+ else
52
+ message
53
+ end
46
54
end
47
55
48
56
## Server callbacks
0 commit comments