diff options
| author | ryanss | 2015-02-09 23:36:55 -0500 |
|---|---|---|
| committer | ryanss | 2015-02-09 23:36:55 -0500 |
| commit | bf2266ce059684c5b35424a030d37eee97399e3a (patch) | |
| tree | 789a6c0b3c5d1b935ec86f5c1de07b35d0bfd2d0 /plugin | |
| parent | 985fab2bbdac01dae965dec6d48c2a978e6e8f3d (diff) | |
| download | vim-hn-bf2266ce059684c5b35424a030d37eee97399e3a.tar.gz | |
Save cursor position when moving back/forward #11
Diffstat (limited to 'plugin')
| -rw-r--r-- | plugin/hackernews.py | 19 | ||||
| -rw-r--r-- | plugin/hackernews.vim | 2 |
2 files changed, 20 insertions, 1 deletions
diff --git a/plugin/hackernews.py b/plugin/hackernews.py index f742e13..0810b9f 100644 --- a/plugin/hackernews.py +++ b/plugin/hackernews.py @@ -109,6 +109,8 @@ def hacker_news_link(external=False): except: print "HackerNews.vim Error: HTTP Request Timeout" return + + save_pos() vim.command("edit .hackernews") if 'domain' in item: bwrite("%s (%s)" % (item['title'], item['domain'])) @@ -166,6 +168,7 @@ def hacker_news_link(external=False): except: print "HackerNews.vim Error: HTTP Request Timeout" return + save_pos() vim.command("edit .hackernews") if 'domain' in item: bwrite("%s (%s)" % (item['title'], item['domain'])) @@ -199,6 +202,7 @@ def hacker_news_link(external=False): except: print "HackerNews.vim Error: HTTP Request Timeout" return + save_pos() vim.command("edit .hackernews") for i, line in enumerate(content.split('\n')): if not line: @@ -210,6 +214,21 @@ def hacker_news_link(external=False): return +def save_pos(): + marks = vim.eval("g:hackernews_marks") + m = vim.current.buffer[0].encode('hex') + marks[m] = list(vim.current.window.cursor) + vim.command("let g:hackernews_marks = %s" % str(marks)) + + +def recall_pos(): + marks = vim.eval("g:hackernews_marks") + m = vim.current.buffer[0].encode('hex') + if m in marks: + mark = marks[m] + vim.current.window.cursor = (int(mark[0]), int(mark[1])) + + html = HTMLParser.HTMLParser() diff --git a/plugin/hackernews.vim b/plugin/hackernews.vim index 5e0b603..d3a6dd7 100644 --- a/plugin/hackernews.vim +++ b/plugin/hackernews.vim @@ -22,7 +22,7 @@ syntax on " Import Python code execute "python import sys" execute "python sys.path.append(r'" . expand("<sfile>:p:h") . "')" -execute "python from hackernews import hacker_news, hacker_news_link" +execute "python from hackernews import hacker_news, hacker_news_link, recall_pos" command! HackerNews python hacker_news() |
