本文整理匯總了Python中Vintageous.state.State類的典型用法代碼示例。如果您正苦於以下問題:Python State類的具體用法?Python State怎麽用?Python State使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了State類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: on_done
def on_done(self, idx):
"""Save selected value to `"` register."""
if idx == -1:
return
state = State(self.view)
value = list(state.registers.to_dict().values())[idx]
state.registers['"'] = value
示例2: run
def run(self, key=None):
state = State(self.window.active_view())
state.motion = cmd_defs[state.mode][cmds.QUESTION_MARK_IMPL]
state.last_buffer_search = state.user_input or state.last_buffer_search
# XXX: Is this right?
if state.input_parsers:
new_parsers = state.input_parsers
new_parsers.pop()
state.input_parsers = new_parsers
示例3: run
def run(self, edit, line_range, register=None, count=None):
if not register:
register = '"'
regs = get_region_by_range(self.view, line_range)
text = '\n'.join([self.view.substr(line) for line in regs]) + '\n'
state = State(self.view)
state.registers[register] = [text]
if register == '"':
state.registers['0'] = [text]
示例4: testFromVisualModeToNormalMode
def testFromVisualModeToNormalMode(self):
self.write('abc\nxxx\nabc\nabc')
self.clear_sel()
self.add_sel(self.R((1, 0), (1, 1)))
state = State(self.view)
state.enter_visual_mode()
prev_mode = state.mode
self.view.run_command('ex_move', {'command_line': 'move3'})
state = State(self.view)
new_mode = state.mode
self.assertNotEqual(prev_mode, new_mode)
示例5: testFromVisualModeToNormalMode
def testFromVisualModeToNormalMode(self):
self.write('abc\nxxx\nabc\nabc')
self.clear_sel()
self.add_sel(self.R((1, 0), (1, 1)))
state = State(self.view)
state.enter_visual_mode()
prev_mode = state.mode
self.view.run_command('ex_copy', {'address': '3'})
state = State(self.view)
new_mode = state.mode
self.assertNotEqual(prev_mode, new_mode)
self.assertEqual(new_mode, modes.NORMAL)
示例6: select
def select(self, regions, register):
self.view.sel().clear()
to_store = []
for r in regions:
self.view.sel().add(r)
if register:
to_store.append(self.view.substr(self.view.full_line(r)))
if register:
text = ''.join(to_store)
if not text.endswith('\n'):
text = text + '\n'
state = State(self.view)
state.registers[register] = [text]
示例7: testCaretEndsInExpectedRegion
def testCaretEndsInExpectedRegion(self):
self.write(''.join(('foo bar\nfoo bar\nfoo bar\n',)))
self.clear_sel()
self.add_sel(self.R((1, 3), (1, 0)))
state = State(self.view)
state.enter_visual_mode()
# TODO: we should bypass vi_r and define the values directly.
data = CmdData(state)
# data = vi_r(data)
data['action']['args']['character'] = 'X'
self.view.run_command('vi_run', data)
self.assertEqual(self.R((1, 0), (1, 0)), first_sel(self.view))
示例8: testCaretEndsInExpectedRegion
def testCaretEndsInExpectedRegion(self):
self.write("".join(("foo bar\nfoo bar\nfoo bar\n",)))
self.clear_sel()
self.add_sel(self.R((1, 3), (1, 0)))
state = State(self.view)
state.enter_visual_mode()
# TODO: we should bypass vi_r and define the values directly.
data = CmdData(state)
# data = vi_r(data)
data["action"]["args"]["character"] = "X"
self.view.run_command("vi_run", data)
self.assertEqual(self.R((1, 0), (1, 0)), first_sel(self.view))
示例9: testFromNormalModeToNormalMode
def testFromNormalModeToNormalMode(self):
self.write('abc\nxxx\nabc\nabc')
self.clear_sel()
self.add_sel(self.R((1, 0), (1, 0)))
state = State(self.view)
state.enter_normal_mode()
self.view.run_command('vi_enter_normal_mode')
prev_mode = state.mode
self.view.run_command('ex_move', {'address': '3'})
state = State(self.view)
new_mode = state.mode
self.assertEqual(prev_mode, new_mode)
示例10: setUp
def setUp(self):
super().setUp()
sublime.set_clipboard('')
registers._REGISTER_DATA = {}
self.view.settings().erase('vintage')
self.view.settings().erase('vintageous_use_sys_clipboard')
self.regs = State(self.view).registers
self.regs.view = mock.Mock()
示例11: testFromVisualModeToNormalMode
def testFromVisualModeToNormalMode(self):
self.write('abc\nxxx\nabc\nabc')
self.clear_sel()
self.add_sel(self.R((1, 0), (1, 1)))
state = State(self.view)
state.enter_visual_mode()
prev_mode = state.mode
self.range['left_ref'] = "'<"
self.range['right_ref'] = "'>"
self.range['text_range'] = "'<,'>"
self.view.run_command('ex_delete', {'line_range': self.range})
state = State(self.view)
new_mode = state.mode
self.assertNotEqual(prev_mode, new_mode)
self.assertEqual(new_mode, MODE_NORMAL)
示例12: testFromNormalModeToNormalMode
def testFromNormalModeToNormalMode(self):
self.write('abc\nxxx\nabc\nabc')
self.clear_sel()
self.add_sel(self.R((1, 0), (1, 0)))
state = State(self.view)
state.enter_normal_mode()
self.view.run_command('vi_enter_normal_mode')
prev_mode = state.mode
self.range['left_offset'] = 2
self.range['text_range'] = '2'
self.view.run_command('ex_delete', {'line_range': self.range})
state = State(self.view)
new_mode = state.mode
self.assertEqual(prev_mode, new_mode)
示例13: run
def run(self, initial_text=':', cmd_line=''):
# non-interactive call
if cmd_line:
self.non_interactive = True
self.on_done(cmd_line)
return
FsCompletion.invalidate()
state = State(self.window.active_view())
if state.mode in (modes.VISUAL, modes.VISUAL_LINE):
initial_text = ":'<,'>" + initial_text[1:]
v = mark_as_widget(show_ipanel(self.window,
initial_text=initial_text,
on_done=self.on_done,
on_change=self.on_change))
v.set_syntax_file('Packages/Vintageous/VintageousEx Cmdline.tmLanguage')
v.settings().set('gutter', False)
v.settings().set('rulers', [])
state.reset_during_init = False
示例14: run
def run(self, initial_text=':', cmd_line=''):
if cmd_line:
# The caller has provided a command, to we're not in interactive
# mode -- just run the command.
ViColonInput.interactive_call = False
self.on_done(cmd_line)
return
else:
ViColonInput.interactive_call = True
FsCompletion.invalidate()
v = mark_as_widget(show_ipanel(self.window,
initial_text=self.adjust_initial_text(initial_text),
on_done=self.on_done,
on_change=self.on_change))
v.set_syntax_file('Packages/Vintageous/VintageousEx Cmdline.tmLanguage')
v.settings().set('gutter', False)
v.settings().set('rulers', [])
state = State(self.window.active_view())
state.reset_during_init = False
示例15: TestCaseRegisters
class TestCaseRegisters(ViewTest):
def setUp(self):
super().setUp()
sublime.set_clipboard('')
registers._REGISTER_DATA = {}
self.view.settings().erase('vintage')
self.view.settings().erase('vintageous_use_sys_clipboard')
# self.regs = Registers(view=self.view,
# settings=SettingsManager(view=self.view))
self.regs = State(self.view).registers
def testCanInitializeClass(self):
self.assertEqual(self.regs.view, self.view)
self.assertTrue(getattr(self.regs, 'settings'))
def testCanSetUnanmedRegister(self):
self.regs._set_default_register(["foo"])
self.assertEqual(registers._REGISTER_DATA[registers.REG_UNNAMED],
["foo"])
def testSettingLongRegisterNameThrowsAssertionError(self):
self.assertRaises(AssertionError, self.regs.set, "aa", "foo")
def testSettingNonListValueThrowsAssertionError(self):
self.assertRaises(AssertionError, self.regs.set, "a", "foo")
@unittest.skip("Not implemented.")
def testUnknownRegisterNameThrowsException(self):
# XXX Doesn't pass at the moment.
self.assertRaises(Exception, self.regs.set, "~", "foo")
def testRegisterDataIsAlwaysStoredAsString(self):
self.regs.set('"', [100])
self.assertEqual(registers._REGISTER_DATA[registers.REG_UNNAMED],
["100"])
def testSettingBlackHoleRegisterDoesNothing(self):
registers._REGISTER_DATA[registers.REG_UNNAMED] = ["bar"]
# In this case it doesn't matter whether we're setting a list or not,
# because we are discarding the value anyway.
self.regs.set(registers.REG_BLACK_HOLE, "foo")
self.assertTrue(registers.REG_BLACK_HOLE not in registers._REGISTER_DATA)
self.assertTrue(registers._REGISTER_DATA[registers.REG_UNNAMED], ["bar"])
def testSettingExpressionRegisterDoesntPopulateUnnamedRegister(self):
self.regs.set("=", [100])
self.assertTrue(registers.REG_UNNAMED not in registers._REGISTER_DATA)
self.assertEqual(registers._REGISTER_DATA[registers.REG_EXPRESSION],
["100"])
def testCanSetNormalRegisters(self):
for name in registers.REG_VALID_NAMES:
self.regs.set(name, [name])
for number in registers.REG_VALID_NUMBERS:
self.regs.set(number, [number])
for name in registers.REG_VALID_NAMES:
self.assertEqual(registers._REGISTER_DATA[name], [name])
for number in registers.REG_VALID_NUMBERS:
self.assertEqual(registers._REGISTER_DATA[number], [number])
def testSettingNormalRegisterSetsUnnamedRegisterToo(self):
self.regs.set('a', [100])
self.assertEqual(registers._REGISTER_DATA[registers.REG_UNNAMED], ['100'])
self.regs.set('0', [200])
self.assertEqual(registers._REGISTER_DATA[registers.REG_UNNAMED], ['200'])
def testSettingRegisterSetsClipboardIfNeeded(self):
self.regs.settings.view['vintageous_use_sys_clipboard'] = True
self.regs.set('a', [100])
self.assertEqual(sublime.get_clipboard(), '100')
def testCanAppendToSingleValue(self):
self.regs.set('a', ['foo'])
self.regs.append_to('A', ['bar'])
self.assertEqual(registers._REGISTER_DATA['a'], ['foobar'])
def testCanAppendToMultipleBalancedValues(self):
self.regs.set('a', ['foo', 'bar'])
self.regs.append_to('A', ['fizz', 'buzz'])
self.assertEqual(registers._REGISTER_DATA['a'], ['foofizz', 'barbuzz'])
def testCanAppendToMultipleValuesMoreExistingValues(self):
self.regs.set('a', ['foo', 'bar'])
self.regs.append_to('A', ['fizz'])
self.assertEqual(registers._REGISTER_DATA['a'], ['foofizz', 'bar'])
def testCanAppendToMultipleValuesMoreNewValues(self):
self.regs.set('a', ['foo'])
self.regs.append_to('A', ['fizz', 'buzz'])
self.assertEqual(registers._REGISTER_DATA['a'], ['foofizz', 'buzz'])
def testAppendingSetsDefaultRegister(self):
self.regs.set('a', ['foo'])
self.regs.append_to('A', ['bar'])
self.assertEqual(registers._REGISTER_DATA[registers.REG_UNNAMED],
['foobar'])
#.........這裏部分代碼省略.........