Exemple #1
0
 def run(self, edit, repeat, extend=True):
     line_nr = self.view.rowcol(self.view.sel()[0].a)[0] if \
                                     int(repeat) == 1 else int(repeat) - 1
     point = self.view.line(self.view.text_point(line_nr, 0)).a
     point = advance_while_white_space_character(self.view, point)
     transform_selection(self.view, lambda pt: point, extend)
     self.view.run_command('show_at_center')
Exemple #2
0
    def run(self, edit, repeat = 1, extend = False, register = '"'):
        # According to Vim's help, _ moves count - 1 lines downward.
        for i in xrange(repeat - 1):
            self.view.run_command('move', {'by': 'lines', 'forward': True, 'extend': extend})

        transform_selection(self.view, lambda pt: self.first_character(pt),
            extend=extend)
Exemple #3
0
 def run(self, edit, repeat, extend=True):
      line_nr = self.view.rowcol(self.view.sel()[0].a)[0] if \
                                      int(repeat) == 1 else int(repeat) - 1
      point = self.view.line(self.view.text_point(line_nr, 0)).a
      point = advance_while_white_space_character(self.view, point)
      transform_selection(self.view, lambda pt: point, extend)
      self.view.run_command('show_at_center')
Exemple #4
0
    def run(self, edit, forward=True, extend=False, visual=False):
        delta = 1 if forward else -1

        transform_selection(self.view,
                            lambda pt: pt + delta,
                            extend=extend,
                            clip_to_line=(not visual))
Exemple #5
0
    def run(self, edit, repeat=1, extend=False):
        repeat = int(repeat)
        if repeat > 1:
            for i in xrange(repeat - 1):
                self.view.run_command("move", {"by": "lines", "extend": extend, "forward": True})

        transform_selection(self.view, lambda pt: self.view.line(pt).b, extend=extend, clip_to_line=False)
Exemple #6
0
 def run(self, edit, repeat = 1, extend = False):
     # According to Vim's help, _ moves count - 1 lines downward.
     for i in xrange(repeat - 1):
         self.view.run_command('move', {'by': 'lines', 'forward': True, 'extend': extend})
         
     transform_selection(self.view, lambda pt: self.first_character(pt),
         extend=extend)
 def run(self, edit, repeat=1, explicit_repeat=True, extend=False):
     repeat = int(repeat)
     if not explicit_repeat:
         self.view.run_command('move_to', {'to': 'eof', 'extend': extend})
     else:
         target_pt = self.view.text_point(repeat - 1, 0)
         transform_selection(self.view, lambda pt: target_pt, extend=extend)
Exemple #8
0
    def run(self, edit, repeat, extend=False):
        bos = self.view.visible_region().a
        caret = self.view.line(self.view.sel()[0].begin()).a
        offset = self.view.rowcol(caret)[0] - self.view.rowcol(bos)[0]

        caret = advance_while_white_space_character(self.view, caret)
        transform_selection(self.view, lambda pt: caret, extend)
        self.view.run_command('scroll_lines', {'amount': -offset})
Exemple #9
0
 def run(self, edit, repeat = 1, explicit_repeat = True, extend = False):
     repeat = int(repeat)
     if not explicit_repeat:
         self.view.run_command('move_to', {'to': 'eof', 'extend':extend})
     else:
         target_pt = self.view.text_point(repeat - 1, 0)
         transform_selection(self.view, lambda pt: target_pt,
             extend=extend)
Exemple #10
0
    def run(self, edit, repeat, extend=False):
        bos = self.view.visible_region().a
        caret = self.view.line(self.view.sel()[0].begin()).a
        offset = self.view.rowcol(caret)[0] - self.view.rowcol(bos)[0]

        caret = advance_while_white_space_character(self.view, caret)
        transform_selection(self.view, lambda pt: caret, extend)
        self.view.run_command('scroll_lines', {'amount': -offset})
Exemple #11
0
    def move_by_percent(self, percent):
        destination = int(
            self.view.rowcol(self.view.size())[0] * (percent / 100.0))
        destination = self.view.line(self.view.text_point(destination, 0)).a
        destination = advance_while_white_space_character(
            self.view, destination)

        transform_selection(self.view, lambda pt: destination)
Exemple #12
0
    def run(self, edit, character, extend = False, forward = True, before = False, record = True):
        if record:
            global g_last_move_command
            g_last_move_command = {'character': character, 'extend': extend,
                'forward':forward, 'before':before}

        transform_selection(self.view,
            lambda pt: self.find_next(forward, character, before, pt),
            extend=extend)
Exemple #13
0
    def run(self, edit, repeat = 1, extend = False):
        repeat = int(repeat)
        if repeat > 1:
            for i in xrange(repeat - 1):
                self.view.run_command('move',
                    {'by': 'lines', 'extend': extend, 'forward': True})

        transform_selection(self.view, lambda pt: self.view.line(pt).b,
            extend=extend, clip_to_line=False)
Exemple #14
0
 def run(self, edit, repeat=1, explicit_repeat=True, extend=False, ending="eof"):
     # G or gg
     if not explicit_repeat:
         self.view.run_command("move_to", {"to": ending, "extend": extend})
     # <count>G or <count>gg
     else:
         new_address = int(repeat) - 1
         target_pt = self.view.text_point(new_address, 0)
         transform_selection(self.view, lambda pt: target_pt, extend=extend)
Exemple #15
0
    def run(self, edit, character, extend = False, forward = True, before = False, record = True):
        if record:
            global g_last_move_command
            g_last_move_command = {'character': character, 'extend': extend,
                'forward':forward, 'before':before}

        transform_selection(self.view,
            lambda pt: self.find_next(forward, character, before, pt),
            extend=extend)
Exemple #16
0
    def run(self, edit, repeat = 1, extend = False):
        repeat = int(repeat)
        if repeat > 1:
            for i in xrange(repeat - 1):
                self.view.run_command('move',
                    {'by': 'lines', 'extend': extend, 'forward': True})

        transform_selection(self.view, lambda pt: self.view.line(pt).b,
            extend=extend, clip_to_line=False)
Exemple #17
0
 def run(self, edit, repeat=1, explicit_repeat=True, extend=False,
         ending='eof'):
     # G or gg
     if not explicit_repeat:
         self.view.run_command('move_to', {'to': ending, 'extend':extend})
     # <count>G or <count>gg
     else:
         new_address = int(repeat) - 1
         target_pt = self.view.text_point(new_address, 0)
         transform_selection(self.view, lambda pt: target_pt,
             extend=extend)
Exemple #18
0
    def run(self, edit, extend = True):
        screenful = self.view.visible_region()

        row_a = self.view.rowcol(screenful.a)[0]
        row_b = self.view.rowcol(screenful.b)[0]

        middle_row = (row_a + row_b) / 2
        middle_point = self.view.text_point(middle_row, 0)

        middle_point = advance_while_white_space_character(self.view, middle_point)
        transform_selection(self.view, lambda pt: middle_point, extend=extend)
Exemple #19
0
    def run(self, edit, extend = True):
        screenful = self.view.visible_region()

        row_a = self.view.rowcol(screenful.a)[0]
        row_b = self.view.rowcol(screenful.b)[0]

        middle_row = (row_a + row_b) / 2
        middle_point = self.view.text_point(middle_row, 0)

        middle_point = advance_while_white_space_character(self.view, middle_point)
        transform_selection(self.view, lambda pt: middle_point, extend=extend)
    def run(self, edit, extend = True):
        screenful = self.view.visible_region()

        row_a = self.view.rowcol(screenful.a)[0]
        row_b = self.view.rowcol(screenful.b)[0]
        
        middle_row = (row_a + row_b) / 2
        middle_point = self.view.text_point(middle_row, 0)

        transform_selection(self.view, lambda pt: middle_point, extend=extend)
        self.view.run_command('vi_move_to_first_non_white_space_character')
    def run(self, edit, extend=True):
        screenful = self.view.visible_region()

        row_a = self.view.rowcol(screenful.a)[0]
        row_b = self.view.rowcol(screenful.b)[0]

        middle_row = (row_a + row_b) / 2
        middle_point = self.view.text_point(middle_row, 0)

        transform_selection(self.view, lambda pt: middle_point, extend=extend)
        self.view.run_command('vi_move_to_first_non_white_space_character')
Exemple #22
0
 def run(self, edit, repeat=1):
     repeat = int(repeat)
     if repeat == 1:
         bracket_chars = ")]}"
         def adj(pt):
             if (self.view.substr(pt) in bracket_chars):
                 return pt + 1
             else:
                 return pt
         transform_selection(self.view, adj)
         self.view.run_command("move_to", {"to": "brackets", "extend": True, "force_outer": True})
     else:
         self.move_by_percent(repeat)
Exemple #23
0
 def run(self, edit, repeat=1):
     repeat = int(repeat)
     if repeat == 1:
         bracket_chars = ")]}"
         def adj(pt):
             if (self.view.substr(pt) in bracket_chars):
                 return pt + 1
             else:
                 return pt
         transform_selection(self.view, adj)
         self.view.run_command("move_to", {"to": "brackets", "extend": True, "force_outer": True})
     else:
         self.move_by_percent(repeat)
Exemple #24
0
    def run(self, edit, repeat, extend=True):
        # Don't modify offset so not fully visible regions have a lower chance
        # of scrolling the screen.
        # lines_offset = int(repeat) - 1
        lines_offset = int(repeat)
        screenful = self.view.visible_region()

        target = screenful.begin()
        for x in xrange(lines_offset):
            current_line = self.view.line(target)
            target = current_line.b + 1

        target = advance_while_white_space_character(self.view, target)
        transform_selection(self.view, lambda pt: target, extend=extend)
Exemple #25
0
    def run(self, edit, repeat, extend = True):
        # Don't modify offset so not fully visible regions have a lower chance
        # of scrolling the screen.
        # lines_offset = int(repeat) - 1
        lines_offset = int(repeat)
        screenful = self.view.visible_region()

        target = screenful.begin()
        for x in xrange(lines_offset):
            current_line = self.view.line(target)
            target = current_line.b + 1

        target = advance_while_white_space_character(self.view, target)
        transform_selection(self.view, lambda pt: target, extend=extend)
    def run(self, edit, repeat, extend=True):
        # Don't modify offset so not fully visible regions have a lower chance
        # of scrolling the screen.
        # lines_offset = int(repeat) - 1
        lines_offset = int(repeat)
        screenful = self.view.visible_region()

        target = screenful.end()
        for x in xrange(lines_offset):
            current_line = self.view.line(target)
            target = current_line.a - 1
        target = self.view.line(target).a

        transform_selection(self.view, lambda pt: target, extend=extend)
        self.view.run_command('vi_move_to_first_non_white_space_character')
    def run(self, edit, repeat, extend = True):
        # Don't modify offset so not fully visible regions have a lower chance
        # of scrolling the screen.
        # lines_offset = int(repeat) - 1
        lines_offset = int(repeat)
        screenful = self.view.visible_region()

        target = screenful.end()
        for x in xrange(lines_offset):
            current_line = self.view.line(target)
            target = current_line.a - 1
        target = self.view.line(target).a

        transform_selection(self.view, lambda pt: target, extend=extend)
        self.view.run_command('vi_move_to_first_non_white_space_character')
Exemple #28
0
 def run(self, edit, repeat=1):
     repeat = int(repeat)
     if repeat == 1:
         re_brackets = re.compile(r"([(\[{])|([)}\])])")
         def move_to_next_bracket(pt):
             line = self.view.line(pt)
             remaining_line = self.view.substr(sublime.Region(pt, line.b))
             match = re_brackets.search(remaining_line)
             if match:
                 return pt + match.start() + (1 if match.group(2) else 0)
             else:
                 return pt
         transform_selection(self.view, move_to_next_bracket, extend=True)
         self.view.run_command("move_to", {"to": "brackets", "extend": True, "force_outer": True})
     else:
         self.move_by_percent(repeat)
Exemple #29
0
    def move_by_percent(self, percent):
        destination = int(self.view.rowcol(self.view.size())[0] * (percent / 100.0))
        destination = self.view.line(self.view.text_point(destination, 0)).a
        destination = advance_while_white_space_character(self.view, destination)

        transform_selection(self.view, lambda pt: destination)
Exemple #30
0
    def run(self, edit, repeat=1, extend=False, register='"'):
        # According to Vim's help, _ moves count - 1 lines downward.
        for i in xrange(repeat - 1):
            self.view.run_command("move", {"by": "lines", "forward": True, "extend": extend})

        transform_selection(self.view, lambda pt: self.first_character(pt), extend=extend)
Exemple #31
0
    def run(self, edit, character, extend=False, forward=True, before=False, record=True):
        if record:
            global g_last_move_command
            g_last_move_command = {"character": character, "extend": extend, "forward": forward, "before": before}

        transform_selection(self.view, lambda pt: self.find_next(forward, character, before, pt), extend=extend)
 def run(self, edit, extend=False):
     transform_selection(self.view,
                         lambda pt: self.first_character(pt),
                         extend=extend)
Exemple #33
0
 def run(self, edit, forward = True, extend = False, visual = False):
     delta = 1 if forward else -1
     transform_selection(self.view, lambda pt: self.advance(delta, visual, pt),
         extend=extend)
Exemple #34
0
 def run(self, edit, forward=True, extend=False, visual=False):
     delta = 1 if forward else -1
     transform_selection(self.view,
                         lambda pt: self.advance(delta, visual, pt),
                         extend=extend)
 def run(self, edit, extend = False):
     transform_selection(self.view, lambda pt: self.first_character(pt),
         extend=extend)
Exemple #36
0
    def run(self, edit, forward = True, extend = False, visual = False):
        delta = 1 if forward else -1

        transform_selection(self.view, lambda pt: pt + delta, extend=extend,
            clip_to_line=(not visual))
 def move_by_percent(self, percent):
     destination = int(self.view.size() * (percent / 100.0))
     transform_selection(self.view, lambda pt: destination)
 def move_by_percent(self, percent):
     destination = int(self.view.size() * (percent / 100.0))
     transform_selection(self.view, lambda pt: destination)