diff options
Diffstat (limited to 'modules/textadept')
-rw-r--r-- | modules/textadept/menu.lua | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/modules/textadept/menu.lua b/modules/textadept/menu.lua index 6f59b7ff..d684adc1 100644 --- a/modules/textadept/menu.lua +++ b/modules/textadept/menu.lua @@ -116,9 +116,13 @@ local default_menubar = { {_L['Enclose as XML Tags'], function() buffer:begin_undo_action() enc('<', '>') - local s, e = buffer.current_pos, buffer.current_pos - while buffer.char_at[s - 1] ~= 60 do s = s - 1 end -- '<' - buffer:insert_text(-1, '</' .. buffer:text_range(s, e)) + for i = 1, buffer.selections do + local s, e = buffer.selection_n_start[i], buffer.selection_n_end[i] + while buffer.char_at[s - 1] ~= 60 do s = s - 1 end -- '<' + buffer:set_target_range(e, e) + buffer:replace_target('</' .. buffer:text_range(s, e)) + buffer.selection_n_start[i], buffer.selection_n_end[i] = e, e + end buffer:end_undo_action() end}, {_L['Enclose as Single XML Tag'], function() enc('<', ' />') end}, |