Skip to content

Instantly share code, notes, and snippets.

[~]% locale
LANG=en_US.UTF-8
LC_CTYPE=en_US.UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE=en_US.UTF-8
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"

Please limit your questions to specific queries about members of the Vi and Vim family of editors. See What is considered to be vi? for more information.

Questions about plugins are on topic, but bug reports and feature requests are usually better off in the plugin's issue tracker.

VimGolf questions are not on topic, but questions about improving efficiency or workflow are okay assuming they fit the regular guidelines.

Please look around to see if your question has been asked before. It’s also okay to ask and answer your own question.

If your question is not specifically on-topic for Vi and Vim Stack Exchange, it may be on topic for another Stack Exchange site. If no site currently exists that will accept your question, you may commit to or <a hre

@arp242
arp242 / unicode_range.sh
Last active July 11, 2017 19:49
Generate unicode ranges
#!/bin/sh
#
# http://www.unicode.org/reports/tr44/#UnicodeData.txt
# http://www.unicode.org/Public/UNIDATA/UnicodeData.txt
total=""
prev_dec=
range_start_dec=
# Match general categories Lu, Ll, Lt, LC, Lm, Lo, L
@arp242
arp242 / semiwrap.vim
Last active February 27, 2017 18:39
Make semicolon wrap around
" http://stackoverflow.com/a/42465336/660921
function! RepeatFind(reverse)
let l:pos = col('.')
let l:reverse = a:reverse == getcharsearch()['forward']
exe 'normal! ' . (l:reverse ? ',' : ';')
if col('.') == l:pos
exe 'normal! ' . (l:reverse ? '$' : '0') . ';,'[l:reverse]
endif
endfunction

Keybase proof

I hereby claim:

  • I am arp242 on github.
  • I am carpetsmoker (https://keybase.io/carpetsmoker) on keybase.
  • I have a public key whose fingerprint is 37FF 6014 B44C D4AA 66BB 6BE7 A625 8419 189E E585

To claim this, I am signing this object: