<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vim-grappele, branch v0.0.2</title>
<subtitle>Vim plugin to repeat the last G movement</subtitle>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/'/>
<entry>
<title>Increase version v0.0.1 -&gt; v0.0.2</title>
<updated>2015-09-17T03:30:29+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-17T03:30:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=4ebe601a046b80dc1b1b76bf6fad370731855b23'/>
<id>4ebe601a046b80dc1b1b76bf6fad370731855b23</id>
<content type='text'>
* Update version number in help file
* Update CHANGELOG
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Update version number in help file
* Update CHANGELOG
</pre>
</div>
</content>
</entry>
<entry>
<title>plugin/grappele.vim: Silence `G` mapping</title>
<updated>2015-09-17T03:09:51+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-17T03:09:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=6feb0b0be638e2a4d28ef58106dccfdc3c183278'/>
<id>6feb0b0be638e2a4d28ef58106dccfdc3c183278</id>
<content type='text'>
Don't output the mapping result in the command line when using the `G`
command.

Was handling this prevously with the `&lt;Plug&gt;Grappele` mapping but not
with the new one that I added in
07a75d523eadaf1027aa8bf287256602ad05f97f.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Don't output the mapping result in the command line when using the `G`
command.

Was handling this prevously with the `&lt;Plug&gt;Grappele` mapping but not
with the new one that I added in
07a75d523eadaf1027aa8bf287256602ad05f97f.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add CHANGELOG</title>
<updated>2015-09-14T10:04:40+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-14T10:04:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=060c56a29f70e90450cf43f85fac37b08fd5324b'/>
<id>060c56a29f70e90450cf43f85fac37b08fd5324b</id>
<content type='text'>
Include information about the initial v0.0.1 release.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Include information about the initial v0.0.1 release.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add README</title>
<updated>2015-09-14T10:01:56+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-14T10:01:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=a4f5db03f4670e627249b30c446674d4f6811a71'/>
<id>a4f5db03f4670e627249b30c446674d4f6811a71</id>
<content type='text'>
Include a description of the plugin, installation instructions (copied
from one of my other plugins), and license information.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Include a description of the plugin, installation instructions (copied
from one of my other plugins), and license information.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add documentation</title>
<updated>2015-09-14T09:49:56+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-14T09:49:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=f944f6b8abbde1bb9e4b38569652324a47a68458'/>
<id>f944f6b8abbde1bb9e4b38569652324a47a68458</id>
<content type='text'>
Create a help file with information about the plugin, its primary use
case, and information about its mappings (although one of them isn't
really noticeable as a customised mapping).

Also generate helptags.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Create a help file with information about the plugin, its primary use
case, and information about its mappings (although one of them isn't
really noticeable as a customised mapping).

Also generate helptags.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add LICENSE</title>
<updated>2015-09-14T09:18:48+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-14T09:18:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=48519dcea9d769f6d5444e9461b4fc027f60315b'/>
<id>48519dcea9d769f6d5444e9461b4fc027f60315b</id>
<content type='text'>
MIT license
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
MIT license
</pre>
</div>
</content>
</entry>
<entry>
<title>plugin/grappele.vim: Fix performance issue with `G`</title>
<updated>2015-09-14T09:01:12+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-14T09:01:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=07a75d523eadaf1027aa8bf287256602ad05f97f'/>
<id>07a75d523eadaf1027aa8bf287256602ad05f97f</id>
<content type='text'>
Looked into the performance issues I was having with the `G` command.
After a little profiling and then messing around with

    let start = reltime() | &lt;do stuff&gt; | echom reltimestr(reltime(start))

Using the `reltime` method I discovered that `grappele#Grappele()` was
running pretty quick (~60 time units). I then ran it around the

    :&lt;c-u&gt;call grappele#Grappele(v:count)&lt;cr&gt;

part of the mapping and found that it took about 130 time units.

Then doing

    nnoremap G :let start = reltime() \| execute 'normal! G' | echom reltimestr(reltime(start))

was pretty quick.

With that information, I decided to try a direct mapping bypassing the
`&lt;Plug&gt;` mapping just to see what that would do. Turns out the custom
`G` command works much faster with this method for some reason. In terms
of feel it's as fast as the normal `G` command.

Replacing the `&lt;Plug&gt;` mapping with the direct one for speed. Not really
sure what the reason for this is but I'm glad the performance is up to
snuff and actually usable now.

I'm testing this on OS X 10.8.5 with the stock Vim (7.3 (2010 Aug 15,
compiled Jun 20 2012 13:16:02)). Also noticed this issue on my Debian
server which I just found out uses the same version of Vim (7.3 (2010
Aug 15, compiled May  4 2012 04:25:35)).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Looked into the performance issues I was having with the `G` command.
After a little profiling and then messing around with

    let start = reltime() | &lt;do stuff&gt; | echom reltimestr(reltime(start))

Using the `reltime` method I discovered that `grappele#Grappele()` was
running pretty quick (~60 time units). I then ran it around the

    :&lt;c-u&gt;call grappele#Grappele(v:count)&lt;cr&gt;

part of the mapping and found that it took about 130 time units.

Then doing

    nnoremap G :let start = reltime() \| execute 'normal! G' | echom reltimestr(reltime(start))

was pretty quick.

With that information, I decided to try a direct mapping bypassing the
`&lt;Plug&gt;` mapping just to see what that would do. Turns out the custom
`G` command works much faster with this method for some reason. In terms
of feel it's as fast as the normal `G` command.

Replacing the `&lt;Plug&gt;` mapping with the direct one for speed. Not really
sure what the reason for this is but I'm glad the performance is up to
snuff and actually usable now.

I'm testing this on OS X 10.8.5 with the stock Vim (7.3 (2010 Aug 15,
compiled Jun 20 2012 13:16:02)). Also noticed this issue on my Debian
server which I just found out uses the same version of Vim (7.3 (2010
Aug 15, compiled May  4 2012 04:25:35)).
</pre>
</div>
</content>
</entry>
<entry>
<title>Create G recall command</title>
<updated>2015-09-13T20:41:59+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-13T20:41:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=8e206e6d4ad49d70e4adc2b79feea4bbc426a3f2'/>
<id>8e206e6d4ad49d70e4adc2b79feea4bbc426a3f2</id>
<content type='text'>
* Add mapping for the recall command. Using `gG` because it's quick,
  easy to remember, and doesn't appear to be used for anything.
* Create `grappele#Recall()` function that goes to the last `G` count
* Store the most recent count passed into `G`

Using the recall command, you can `G` to the same count that you
previously used no matter what buffer you're now in.

TODO: The `G` command appears to be running slowly now for whatever
reason. Investigate what's going on.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add mapping for the recall command. Using `gG` because it's quick,
  easy to remember, and doesn't appear to be used for anything.
* Create `grappele#Recall()` function that goes to the last `G` count
* Store the most recent count passed into `G`

Using the recall command, you can `G` to the same count that you
previously used no matter what buffer you're now in.

TODO: The `G` command appears to be running slowly now for whatever
reason. Investigate what's going on.
</pre>
</div>
</content>
</entry>
<entry>
<title>plugin/grappele.vim: Silence mapping</title>
<updated>2015-09-13T20:29:35+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-13T20:29:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=edbfd44a582cd6c8782c097f0a021d70d0de5ec0'/>
<id>edbfd44a582cd6c8782c097f0a021d70d0de5ec0</id>
<content type='text'>
Otherwise the mapped command is printed on the command line which isn't
necessary and adds visual noise and distraction.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Otherwise the mapped command is printed on the command line which isn't
necessary and adds visual noise and distraction.
</pre>
</div>
</content>
</entry>
<entry>
<title>Replicate n_G functionality</title>
<updated>2015-09-13T20:28:22+00:00</updated>
<author>
<name>Teddy Wing</name>
</author>
<published>2015-09-13T20:28:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.teddywing.com/vim-grappele/commit/?id=059cffa4d69ecfde1c13268413b92bef1de4f4d1'/>
<id>059cffa4d69ecfde1c13268413b92bef1de4f4d1</id>
<content type='text'>
Go to the end of the buffer when typed with no count, otherwise go to
the line specified by `v:count`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Go to the end of the buffer when typed with no count, otherwise go to
the line specified by `v:count`.
</pre>
</div>
</content>
</entry>
</feed>
