Commit graph

35 commits

Author SHA1 Message Date
Jonathan Hodgson
873fce2089 Sets default fold method to indent 2021-09-07 16:59:24 +01:00
Jonathan Hodgson
0c5cadaea6 VIM: Setup ripgrep and inccommand
RIPGREP

ripgrep is now my grep command and I can use [c and ]c for moving
between quickfix entries

INCCOMMAND

Setting this makes vim show the results of substitute commands as they
are types
2021-07-30 10:50:27 +01:00
Jonathan Hodgson
4d9c324cc7 VIM: Keep selection when using < or > in visual mode
When indenting or unindenting a code block, I normally visually select
it and use < or >. However, both of these unselect the selection.

The mappings make vim also do gv after such an action which re-selects
the previous selection.
2021-01-19 16:20:10 +00:00
Jonathan Hodgson
e772859c6e VIM: adds firevim config
Does 2 thing:
* sets up my setting for editing text (spell checking etc)
* Sets the content type to html for domains starting with mail.
2020-12-21 16:16:37 +00:00
Jonathan Hodgson
206353d2b7 VIM: make filename in statusline 30 chars (maximum) 2020-12-21 16:15:30 +00:00
Jonathan Hodgson
91c195a66a VIM: Hides git branch "blob" on status line if not in a git project 2020-12-14 11:27:14 +00:00
Jonathan Hodgson
23f2116f9d VIM: Significant style changes to statusline
I have used colour and powerline symbols to differentiate different
parts of my status line.

Inspiration came from this:
https://www.reddit.com/r/vimporn/comments/kbtu74/my_theme_called_humanoid_and_my_statusbar/
2020-12-13 20:55:06 +00:00
Jonathan Hodgson
cc8708ab87 VIM: Sets ignore case and smart case
This means vim will search case insensitively until a capital letter is
inserted
2020-10-24 13:54:34 +01:00
Jonathan Hodgson
9cd1b37475 VIM: Adds bindings to default to "very magic" searching
By default, vim's reg-ex matching is weird. For example:

> * is special when not escaped but…
> + is special when escaped
> \{x,y} (escaping only the opening bracket) works but…
> You have to use \( \) (escape both parens)
> [] is special when both are unescaped

Source: https://wincent.com/wiki/Vim_regexes

For more details, check out Greg Hurrell's screencast:
https://www.youtube.com/watch?v=VjOcINs6QWs
2020-10-10 18:06:49 +01:00
Jonathan Hodgson
dc45e40bad VIM: colour column on textwidth or if not set col 80
This had to be done in a FileType * autocmd so that it is done once file
type has been determined and textwidth is set, as suggested by tae on
discord

7630218973
2020-10-06 14:28:50 +01:00
Jonathan Hodgson
34d3bddd18 VIM: adds compile shortcuts and open shortcuts 2020-10-06 14:27:37 +01:00
Jonathan Hodgson
640285b438 VIM: Makes fzf open in a floating window rather than as a split 2020-10-06 13:21:15 +01:00
Jonathan Hodgson
1e7a7680d5 VIM: Makes status line show cursor column 2020-10-06 13:20:17 +01:00
Jonathan Hodgson
6dc5cda0d8 VIM: Makes vim auto-add comment character
It will do this in insert mode when pushing <enter> or when in normal
mode when pushing o or O
2020-10-06 13:14:56 +01:00
Jonathan Hodgson
925ca95619 VIM: Fixes <del> key
For some reason the del key isn't working for me so I re-map it
<right><bs>
2020-09-29 14:26:19 +01:00
Jonathan Hodgson
4be7c74d21 VIM: Moves lsp config into after folder
This forces it to initialise everything after my colourscheme etc have
been set resulting in error messages being read.
2020-09-29 14:25:04 +01:00
Jonathan Hodgson
f32467803a VIM: Makes vim open external files with opout
Vim can open external files when the cursor is "over" them by pushing gx

If in a netrw window, simply x is used.

This is useful when in, for example, a markdown file. I can view the
image by putting the cursor over the path and pushing gx
2020-09-29 08:50:23 +01:00
Jonathan Hodgson
4c1c68c650 VIM: Sets up simple statusbar 2020-09-28 14:36:19 +01:00
Jonathan Hodgson
1d0a8c8e2f VIM: Stops vim wrapping mid word 2020-09-28 11:37:52 +01:00
Jonathan Hodgson
935caedb16 VIM: adds hex encoding and decoding 2020-09-27 01:10:22 +01:00
Jonathan Hodgson
380e2c81c8 VIM: Adds mappings for url and base64 encoding / decoding
Defines functions for each as autoload functions. I need to look into
weather it would be better to have this as a local function in a plugin.

The function for url encoding was taken from vim-unimpared:
https://github.com/tpope/vim-unimpaired
I don't need all the functionality it provides

The function for base64 encoding was taken from vim-base64:
https://github.com/christianrondeau/vim-base64
although I use it with mappings in the vim-unimpared style

[b and ]b base64 encode and decode respectively
[u url encodes characters that are normally encodede in a url
[U url encodes all characters
]u and ]U both urldecode all encodede characters
2020-09-27 01:10:17 +01:00
Jonathan Hodgson
bc99f3960e VIM: Adds mapping for shebang line
The shebang line is used to determine which should interpreter should be
used when executing the file

The mapping here adds the string `#!/usr/bin/env ` at the begining of
the line.

https://en.wikipedia.org/wiki/Shebang_(Unix)
2020-09-26 22:35:00 +01:00
Jonathan Hodgson
bec3d027a1 VIM: configures lsp for vim and go 2020-09-26 18:35:47 +01:00
Jonathan Hodgson
ac7252bafe VIM: Makes deoplete start by default 2020-09-26 18:12:02 +01:00
Jonathan Hodgson
7d72ebb05a VIM: Adds fzf plugin
FZF is a fuzzy searcher that can be found here:
https://github.com/junegunn/fzf

I use it for a lot of things inside and outside vim
2020-09-26 17:11:39 +01:00
Jonathan Hodgson
e09dac1b3c VIM: Adds listchars variable
Newlines, trailing spaces and tabs will now be shown by unicode
characters
2020-09-26 16:56:35 +01:00
Jonathan Hodgson
b512c057fd VIM: adds options for tabwidth
I intentionally use a proper tab character rather than spaces because I
prefer tabs to spaces.
2020-09-26 16:49:12 +01:00
Jonathan Hodgson
2a41c795bd VIM: Adds check around clipboard mappings and auto correct spelling 2020-09-26 16:48:00 +01:00
Jonathan Hodgson
7943ce0359 VIM: Adds ctrl+c and ctrl+v mappings for clipboard use 2020-09-26 16:33:07 +01:00
Jonathan Hodgson
b6958e313c VIM: Adds split movement mappings
Ctrl + h,j,k,l will move between vim splits
2020-09-26 16:23:35 +01:00
Jonathan Hodgson
3b02022de9 VIM: Adds some simple settings from my old vimrc
* New windows opening right and down
* spellcheck language en_gb
* Tell vim it's a fast terminal
* number and relativenumber
* allow buffers to be backgrounded
* Try and keep cursor 5 lines from the bottom / top when scrolling
2020-09-26 16:15:53 +01:00
Jonathan Hodgson
2d3dcfc7d9 VIM: Moves plugins to init.vim and adds syntax and filetype on
syntax on needs to be run after the plugins are loader otherwise their
ftdetect won't be evaluated.

source: b98553808d (diff-f1ac6cb94fa93f38916c6118994b11e3R197-R204)
2020-09-26 16:02:40 +01:00
Jonathan Hodgson
665c8a06ea VIM: Adds jj mapping for escapeing insert mode 2020-09-26 15:47:01 +01:00
Jonathan Hodgson
ea0780c05b VIM: Swaps colon and semicolon in normal and visual mode
I use colon (command mode) far more than semicolon (repeat any of fFtT)
2020-09-26 15:42:59 +01:00
Jonathan Hodgson
4ce3c4e502 VIM: Add my prefered colourscheme: gruvbox and set leaders
This involved adding a submodule which contains the gruvbox plugin.

Normally I have the background transparent when using vim but I am going
to try without that.

I have set my leader key to space and my local leader to \ which I am
used to
2020-09-26 15:39:17 +01:00