diff --git a/autoload/easy_align.vim b/autoload/easy_align.vim index b9084bc..69da232 100644 --- a/autoload/easy_align.vim +++ b/autoload/easy_align.vim @@ -714,9 +714,13 @@ function! s:interactive(range, modes, n, d, opts, rules, vis, bvis) elseif ch == "\" call s:shift_opts(opts, 'ig', vals['ignore_groups']) elseif ch == "\" - if !empty(d) && s:live - let ch = d - break + if s:live + if !empty(d) + let ch = d + break + else + let s:live = 0 + endif else let s:live = 1 endif diff --git a/test/interactive.vader b/test/interactive.vader index 6d4eb92..ebcf23f 100644 --- a/test/interactive.vader +++ b/test/interactive.vader @@ -519,7 +519,7 @@ Expect: |>batch_size<|> Fixnum<|>nil <|>number of maximum items to be assigned at once<| |>logger <|> Logger<|>nil <|> logger instance for debug logs<| -Do (Toggling live interactive mode): +Do (Toggling live interactive mode (delimiter entered)): vip\ * Enable live mode \ @@ -532,6 +532,20 @@ Expect: | Option | Type | Default | Description | | -- | -- | -- | -- | +Do (Toggling live interactive mode (delimiter not entered)): + vip\ +* Enable live mode + \ + \ +* Disable live mode + \ + *| + gg2jdG + +Expect: + | Option | Type | Default | Description | + | -- | -- | -- | -- | + Do (live interactive mode!): vip\r\ |