1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
vimModePath = atom.packages.resolvePackagePath('vim-mode') or
atom.packages.resolvePackagePath('vim-mode-next')
{SelectInsideQuotes, SelectInsideBrackets} = require "#{vimModePath}/lib/text-objects"
module.exports = class Selector
constructor: (@editor, left, right) ->
@left = left.trim()
@right = right.trim()
inside: ->
if @isBraket()
new SelectInsideBrackets(@editor, @left, @right, false)
else
new SelectInsideQuotes(@editor, @left, false)
outside: ->
if @isBraket()
new SelectInsideBrackets(@editor, @left, @right, true)
else
new SelectInsideQuotes(@editor, @left, true)
isBraket: ->
['[', ']', '{', '}', '<', '>', '(', ')'].indexOf?(@left.trim()) >= 0
|