Commit graph

55 commits

Author SHA1 Message Date
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
94f636208b VIM: Adds lsp bindings for more languages 2020-12-13 20:58:19 +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
8a49e623ff VIM: Adds firevim plugin 2020-12-07 11:36:54 +00:00
Jonathan Hodgson
3946f919e4 VIM: Adds ansiescape submodule
This plugin allows you to apply ansi colour escapes in a vim buffer
2020-11-02 17:08:22 +00:00
Jonathan Hodgson
c5ceb1487a VIM: Updates plugins 2020-10-29 09:47:20 +00:00
Jonathan Hodgson
380b65e7a1 VIM: Updates plugins 2020-10-27 15:55:17 +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
c7d4811c74 VIM: Makes markdown files 80 chars width 2020-10-24 13:54:06 +01:00
Jonathan Hodgson
a2593888ea VIM: Adds language servers
Addes for vue, python and c
2020-10-24 13:52:42 +01:00
Jonathan Hodgson
77adf62906 VIM: Adds request syntax file
File was simply taken from my old Vim configuration.

It inherits most of the html syntax as it is set on responses as well as
requests

Also, adds some request / response specific highlighting for things like
http method etc.
2020-10-13 10:44:28 +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
337e1c2354 VIM: Adds bash language server support 2020-10-06 13:20:48 +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
cf95ffbe03 VIM: Adds vim fugitive plugin 2020-09-28 14:31:01 +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
cf0b27ee26 VIM: Adds autoload function for writing mode
Writing mode is to be used when I am writing prose rather than code, for
example markdown files or emails.

Currently, it enables spellcheck and adds insert mode mappings that add
undo points when certain punctuation is inserted, such as full stops or
commas.

Currently this is used for markdown files, emails and git commits
2020-09-26 23:09:51 +01:00
Jonathan Hodgson
b7b2422a3e VIM: Sets spell on mail and md files 2020-09-26 22:46:54 +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
9f026b7795 VIM: adds lsp plugin for deoplete 2020-09-26 18:32:38 +01:00
Jonathan Hodgson
884c90086b VIM: adds notmuch plugin for deoplete 2020-09-26 18:21:49 +01:00
Jonathan Hodgson
8ba411c0f9 VIM: adds abook plugin for deoplete 2020-09-26 18:13:28 +01:00
Jonathan Hodgson
ac7252bafe VIM: Makes deoplete start by default 2020-09-26 18:12:02 +01:00
Jonathan Hodgson
7296290cc0 VIM: Adds deoplete plugin
This and LSP were the two things that made me make the switch to neovim.

It is a fast and configurable auto-complete tool
2020-09-26 17:59:41 +01:00
Jonathan Hodgson
8a11ca0f95 VIM: Adds lsp config submodule 2020-09-26 17:49:45 +01:00
Jonathan Hodgson
f1e20aa358 VIM: Adds vim-repeat plugin 2020-09-26 17:44:15 +01:00
Jonathan Hodgson
577cfcf282 VIM: Adds vim-surround plugin 2020-09-26 17:42:27 +01:00
Jonathan Hodgson
a7795451a5 VIM: Adds vim-vinegar plugin
This plugin makes some changes to netrw that I think should be default.

The mapping I use most is - from any buffer to open it's directory
2020-09-26 17:37:49 +01:00
Jonathan Hodgson
e55d70c432 VIM: Adds some syntax plugins
These plugins shouldn't add much (if any) functionality. They are just
for syntax highlighting, indenting etc.
2020-09-26 17:27:32 +01:00
Jonathan Hodgson
ac483a35ba Removes .netrwhist
Including adding it to gitignore
2020-09-26 17:15:27 +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