| 12345678910111213141516171819202122232425262728293031323334 |
- # import vim
- normal = lambda s: vim().command('normal %s' % s)
- normal_silent = lambda s: vim().command('silent! normal %s' % s)
- def vim():
- """ call Vim.
-
- This is wrapped so that it can easily be mocked.
- """
- import vim
- return vim
- def _goto_window_for_buffer(b):
- w = int(vim().eval('bufwinnr(%d)' % int(b)))
- vim().command('%dwincmd w' % int(w))
- def _goto_window_for_buffer_name(bn):
- b = vim().eval('bufnr("%s")' % bn)
- return _goto_window_for_buffer(b)
- # Rendering utility functions
- def _output_preview_text(lines):
- _goto_window_for_buffer_name('__Mundo_Preview__')
- vim().command('setlocal modifiable')
- vim().current.buffer[:] = [line.rstrip() for line in lines]
- vim().command('setlocal nomodifiable')
- def _undo_to(n):
- n = int(n)
- if n == 0:
- vim().command('silent earlier %s' % (int(vim().eval('&undolevels')) + 1))
- else:
- vim().command('silent undo %d' % int(n))
|