From bb50d766f7a866538961bca7ed262375a0e3ffd0 Mon Sep 17 00:00:00 2001 From: Kenny Ballou Date: Tue, 30 Jan 2018 16:30:09 -0700 Subject: vim-tips-2015-03-17 post conversion --- posts/vim-tips-2015-03-17.org | 90 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 posts/vim-tips-2015-03-17.org (limited to 'posts') diff --git a/posts/vim-tips-2015-03-17.org b/posts/vim-tips-2015-03-17.org new file mode 100644 index 0000000..f0d8f20 --- /dev/null +++ b/posts/vim-tips-2015-03-17.org @@ -0,0 +1,90 @@ +#+TITLE: Vim Tips 2015-03-17 +#+DESCRIPTION: First vim tip post of a series of unknown size +#+TAGS: Vim +#+TAGS: Tips and Tricks +#+TAGS: Editors +#+DATE: 2015-03-17 +#+SLUG: vim-tips-2015-03-17 +#+LINK: vim-wiki-folding http://vim.wikia.com/wiki/Folding +#+LINK: vim-wiki-ranges http://vim.wikia.com/wiki/Ranges +#+LINK: zzapper-vim-tips http://zzapper.co.uk/vimtips.html + +#+BEGIN_PREVIEW +This is the start of a series of posts about better Vim usage. It's yet to be +determined how often and how frequent this will run, but expect more than just +this first post. +#+END_PREVIEW + +** Folds + +When using manual folding, creating a fold in Vim is as easy as one command: + +In normal mode, ~zf~. + +For example, while in Java code and on a Method opening curly brace, type +~zf%~. + +And a fold is now created around that method. You can toggle it open and +closed with ~za~, you can also open it with ~zo~ and you can close it with +~zc~. + +Similarly, to remove a fold created by ~zf~, use ~zd~ to remove +folds. + +From the above example, while in normal mode, typing ~zd%~ will remove the fold +for the method's block. + +For more information about folding and the other modes, visit the +[[vim-wiki-folding][Vim wiki page]] on folding. + +** Substitution Range + +Here are some more explicit examples of the range options provided when doing +substitutions: + +To substitute the first occurrence of the pattern in the current line: + +#+BEGIN_EXAMPLE sed +:s/foo/bar +#+END_EXAMPLE + +All occurrences: + +#+BEGIN_EXAMPLE sed + :s/foo/bar/g +#+END_EXAMPLE + +Entire file, first occurrence: + +#+BEGIN_EXAMPLE sed + :%s/foo/bar/ +#+END_EXAMPLE + +Entire file, all occurrences: + +#+BEGIN_EXAMPLE sed + :%s/foo/bar/g +#+END_EXAMPLE + +Now for something completely different, specific ranges: + +#+BEGIN_EXAMPLE + :,s/foo/bar[/g] +#+END_EXAMPLE + +End today's kicker: changing from a line to the end of the file: + +#+BEGIN_EXAMPLE + :,$s/foo/bar[/g] +#+END_EXAMPLE + +Visit [[vim-wiki-ranges][Vim Ranges]] to view more information about the ranges +available in Vim. + +** References + +- [[zzapper-vim-tips][Vim Tips]] + +- [[vim-wiki-folding][Vim Wikia: Folding]] + +- [[vim-wiki-ranges][Vim Wikia: Ranges]] -- cgit v1.2.1