aboutsummaryrefslogtreecommitdiff
path: root/modules/textadept
diff options
context:
space:
mode:
Diffstat (limited to 'modules/textadept')
-rw-r--r--modules/textadept/menu.lua10
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},