aboutsummaryrefslogtreecommitdiff
path: root/nomsu_decompiler.lua
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2018-11-09 17:43:06 -0800
committerBruce Hill <bruce@bruce-hill.com>2018-11-09 17:43:25 -0800
commit6fa1cb23d151463b7d85dcf9d5c413420d11ecad (patch)
tree9c9f7a340ae840636ea154fbcbf373beced85cb6 /nomsu_decompiler.lua
parentb236ad88a9e6c5dc5d77f889ac7641fc666bd19f (diff)
Fixed decompile issue with short actions not getting indented.
Diffstat (limited to 'nomsu_decompiler.lua')
-rw-r--r--nomsu_decompiler.lua8
1 files changed, 6 insertions, 2 deletions
diff --git a/nomsu_decompiler.lua b/nomsu_decompiler.lua
index 6db2ec4..9ff62b1 100644
--- a/nomsu_decompiler.lua
+++ b/nomsu_decompiler.lua
@@ -287,7 +287,11 @@ tree_to_nomsu = function(tree)
bit_nomsu:parenthesize()
end
if next_space == " " and not bit_nomsu:is_multiline() and nomsu:trailing_line_len() + #bit_nomsu:text() > MAX_LINE then
- next_space = " \\\n.."
+ if bit.type == 'Action' then
+ bit_nomsu = NomsuCode:from(bit.source, "(..)\n ", tree_to_nomsu(bit))
+ else
+ next_space = " \\\n.."
+ end
end
if not (next_space == " " and bit.type == "Block") then
nomsu:append(next_space)
@@ -302,7 +306,7 @@ tree_to_nomsu = function(tree)
if tree[1].type == 'Block' and not nomsu:is_multiline() then
nomsu:parenthesize()
end
- return NomsuCode(tree.source, "\\", nomsu)
+ return NomsuCode:from(tree.source, "\\", nomsu)
elseif "Block" == _exp_0 then
for i, line in ipairs(tree) do
local line_nomsu = tree_to_nomsu(line)