Merge pull request #102 from jacwah/sub-sep
Don't allow :s delimiters not allowed by vim
This commit is contained in:
commit
5773c8f47b
2 changed files with 15 additions and 8 deletions
|
|
@ -199,9 +199,9 @@ class Ex
|
|||
substitute: (range, args) ->
|
||||
args = args.trimLeft()
|
||||
delim = args[0]
|
||||
if /[a-z]/i.test(delim)
|
||||
if /[a-z1-9\\"|]/i.test(delim)
|
||||
throw new CommandError(
|
||||
"Regular expressions can't be delimited by letters")
|
||||
"Regular expressions can't be delimited by alphanumeric characters, '\\', '\"' or '|'")
|
||||
delimRE = new RegExp("[^\\\\]#{delim}")
|
||||
spl = []
|
||||
args_ = args[1..]
|
||||
|
|
|
|||
|
|
@ -449,13 +449,20 @@ describe "the commands", ->
|
|||
submitNormalModeInputText(':%substitute/abc/ghi/ig')
|
||||
expect(editor.getText()).toEqual('ghiaghi\ndefdDEF\nghiaghi')
|
||||
|
||||
it "can't be delimited by letters", ->
|
||||
describe "illegal delimiters", ->
|
||||
test = (delim) ->
|
||||
keydown(':')
|
||||
submitNormalModeInputText(':substitute nanxngi')
|
||||
submitNormalModeInputText(":substitute #{delim}a#{delim}x#{delim}gi")
|
||||
expect(atom.notifications.notifications[0].message).toEqual(
|
||||
"Command error: Regular expressions can't be delimited by letters")
|
||||
"Command error: Regular expressions can't be delimited by alphanumeric characters, '\\', '\"' or '|'")
|
||||
expect(editor.getText()).toEqual('abcaABC\ndefdDEF\nabcaABC')
|
||||
|
||||
it "can't be delimited by letters", -> test 'n'
|
||||
it "can't be delimited by numbers", -> test '3'
|
||||
it "can't be delimited by '\\'", -> test '\\'
|
||||
it "can't be delimited by '\"'", -> test '"'
|
||||
it "can't be delimited by '|'", -> test '|'
|
||||
|
||||
describe "capturing groups", ->
|
||||
beforeEach ->
|
||||
editor.setText('abcaABC\ndefdDEF\nabcaABC')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue