aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormitchell <70453897+667e-11@users.noreply.github.com>2015-10-28 09:19:53 -0400
committermitchell <70453897+667e-11@users.noreply.github.com>2015-10-28 09:19:53 -0400
commit4a26a3b89decd8531a7c211372ff2f361a2f13a7 (patch)
treeecdd9bc37c58a266a49520ec1169b08d236cf896
parent95983ee83d0fa056bbc63513ea72f85bdb93473c (diff)
downloadtextadept-4a26a3b89decd8531a7c211372ff2f361a2f13a7.tar.gz
textadept-4a26a3b89decd8531a7c211372ff2f361a2f13a7.zip
Ensure placeholders are eventually cleared; modules/textadept/snippets.lua
-rw-r--r--modules/textadept/snippets.lua10
1 files changed, 7 insertions, 3 deletions
diff --git a/modules/textadept/snippets.lua b/modules/textadept/snippets.lua
index 285ef9aa..bfb43bb9 100644
--- a/modules/textadept/snippets.lua
+++ b/modules/textadept/snippets.lua
@@ -469,11 +469,15 @@ M._snippet_mt = {
-- @param canceling Whether or not to cancel inserting this snippet. When
-- `true`, the buffer is restored to its state prior to snippet expansion.
finish = function(self, canceling)
- if canceling then
- buffer:set_sel(self.start_pos, self.end_pos)
+ local s, e = self.start_pos, self.end_pos
+ if not canceling then
+ buffer.indicator_current = M.INDIC_PLACEHOLDER
+ buffer:indicator_clear_range(s, e - s)
+ else
+ buffer:set_sel(s, e)
buffer:replace_sel(self.trigger or self.original_sel_text)
end
- buffer:delete_range(self.end_pos, 1) -- clear initial padding space
+ buffer:delete_range(e, 1) -- clear initial padding space
snippet_stack[#snippet_stack] = nil
end,