attention with the mappings. make sure you use the right one for the purpose, otherwise you overwrite more default commands than you wanted to. :map :noremap :unmap Normal, Visual, Select, Operator-pending :nmap :nnoremap :nunmap Normal :vmap :vnoremap :vunmap Visual and Select :smap :snoremap :sunmap Select :xmap :xnoremap :xunmap Visual :omap :onoremap :ounmap Operator-pending :map! :noremap! :unmap! Insert and Command-line :imap :inoremap :iunmap Insert :lmap :lnoremap :lunmap Insert, Command-line, Lang-Arg :cmap :cnoremap :cunmap Command-line :tmap :tnoremap :tunmap Terminal-Job
The config file location reason actually makes a lot of sense to me. Being able to just clone a config into .config/nvim/ makes all the difference. If you feel irelevant for this, know that what prevents me from switching to NeoVim is that I prefer Vim's icon to NVim's. And.. "Vim" sounds better. Right? welp
Thanks for the Lex command, I was looking for a way to make netrw a fixed column size. I changed this command to `nnoremap n :Le :if &ft == "netrw" vertical resize 30 endif ` because it also resized the file window with multiple splits
You can move your .vimrc file to wherever you like. Just define VIMINIT in your .bashrc to tell it where it lives. To move the .viminfo, define it in the .vimrc. Example for .vimrc in your .bashrc: export VIMINIT="source ~/.config/.vim/.vimrc" Example for .viminfo in .vimrc: set viminfo+=n~/.config/.vim/.viminfo
26:20 scrolloff specifies how close the cursorline can get to the edge of the buffer before scrolling. In your config, scrolloff=999 kept the cursorline in the center of the buffer (except when you're at the top or bottom of the buffer... I think).
Hey, very nice video. Took up a lot of things from here. Just one small thing, I also use a shortcut for reloading the init.vim file every time I make changes (because I'm too lazy to quit and open up a nvim instance again), I use this mapping: nmap :w :source ~/.config/nvim/init.vim I just noticed that you were not saving the file before the source. Hence, probably it was not reloading the changes instantly. I saw you remove that command as but you can try using this if you want. Great video by the way! Thanks!
on a mac, they're still on vim7 so installing neovim and aliasing would keep you from having to build vim8 from source with all the pluggins or installing macvim .
Amazing video! This answers many questions I’ve been having. What window manager are you using? And how do you achieve what seems to be a tiling window layout?
what is "Ovtober"? Given a date, is that date equally distributed amongst all the days of the week? If not, why not, and how can I graph that distribution? Are there particular dates that are say, more likely to be a Friday, or a Sunday? Calendars are weird.
as for me, neovim doesn't work with the standard input/output correctly when running !commands ie bypass write protection via :w !sudo tee % doesn't work on neovim as you can't type anything when sudo requires you to type your password edit: spelling error
Switching because neovim stores config in .config?? Wat. Well, just so you know, neovim has builtin lsp and also can use tree-sitter in the nightly build (v0.5). It also has gO to pull up an "overview" in the quickfix. But yes, vim 8.2 and neovim are quite similar otherwise.
Hey there, nice video. I am new programmer who recently switched to vim from vscode to save some RAM on my cheap hardware :) I think neovim is leading in feratures at the moment with added LSP (language server protocol) support.
here i am watching this seriously and absorbing everything when suddenly "DEE DEE MEGA DOO DOO". I lost my shit. thanks. now let me go replace my drink.
this is really good since it is a mess to navigate others people config files and trying to figure out what they do. as a newbie coming from sublime i do need some help.
@@makc until now I do. The fact I don't have to move my hands is great. However vim seems to be really hard to use for big programming projects. I think my ide will be up on the background so making the projects easier. Also debugging them. Even no that I haven't switched that is my workflow. The biggest thing missing that I haven't manage to setup is language integration. When I manage to figure that out I'll fully commit. Maybe for me the solution is evil mode on emacs.
I’ve totally removed line numbers at this point (I don’t write much code, so they’re not that useful for me), but it’s probably just a matter of preference. I swapped back and forth a bit before I killed the line numbers entirely.
Woah woah woah. There is a big difference between Vim and Neovim. Why is it so heavy otherwise? Neovim ships with an entire LuaJIT. You can write your plugins/ modifications in lua instead of vimlang, although vimlang works too. Neovim also has an API so other programs can interact with it. I am running a grammar check plugin which checks English grammar using Java when I am writing my emails in Neovim. Can't do that in Vim.
Why did you quit using NERDTree instead of the native finder? I was using Vimfiler for a while (opens by keying `~` by default), but I went back to NERDTree and it's actively developed.
Totally unrelated, but how did you remove the titlebar from qutebrowser? The only way I know of is by putting c.window.hide_decorations=True in the config.py file, but then I can't move or resize the window.
You don't move lines by deleting and pasting them where you need them? I also find myself using J to join lines together a lot so I wouldn't overwrite that one.
notice that he used "xnoremap" instead of "noremap". What this does is it makes that keybinding work only when in visual mode. So if you do 'J' in normal mode, you still will get the Join functionality.
If you're running from a bash/zsh shell that was open before installing neovim, you may have to run `hash -r` to force the shell to reload available commands the shell has cached. Otherwise, `find / -type f -name nvim` to find where you installed neovim to, then make sure your PATH environment variable includes the folder path.
NVim - is the thing in itself. As long as it open source, it has very low quality support for web programming. I would never choose it as standalone IDE. I wish to but I can't.
Check out neovim vscode. You can have a full on neovim text editor open and get all the nice tools of vscode as well. I just setup it up and it's definitely blowing my mind that something like it is possible
@@Chex_Mex , the current stable release version is 0.4.4(c). This is from official site. I'm using webstorm. It has builtin vim like editor. It costs not so many from my point of view. I'm working as a professional web developer and can't wait any further for at least 1.0 version.
@@sergey_c Oh, I know, if you use neovim's nightly version instead and the neo vim vscode extension you can do what I was saying. Unlike other vim extensions, you aren't emulating vim but it's just full on nvim in there. You can use any plugins you install and your entire config file. And it's all free :). Give it a shot if you ever have the time, I was using webstorm as well until recently.
@@Chex_Mex , he he. And if if if ... I've been linux user for more than 10 years. It means spend lot of time for configuration. I'm ready to spend some amount of money to skip all that configuration stuff.
@@sergey_c Completely fair to be honest. Although part of the nice thing about this is that you can use your neovim configs and get most of the same functionality for free.
highlight paragraph lol... it's made for highlighting code... it highlights everything ... empty lines are indicators basicly. well whitespace essentially... I was about to comment, that ur plug list gives me ocd... that why the fuck you dont have co c , git, fugitive, fzf, sneak and some other stuff.. but u sayd in the video that ur not actually a coder, but writing a lot in vim... what you are writing about then? blogs? bookS?
attention with the mappings. make sure you use the right one for the purpose, otherwise you overwrite more default commands than you wanted to.
:map :noremap :unmap Normal, Visual, Select, Operator-pending
:nmap :nnoremap :nunmap Normal
:vmap :vnoremap :vunmap Visual and Select
:smap :snoremap :sunmap Select
:xmap :xnoremap :xunmap Visual
:omap :onoremap :ounmap Operator-pending
:map! :noremap! :unmap! Insert and Command-line
:imap :inoremap :iunmap Insert
:lmap :lnoremap :lunmap Insert, Command-line, Lang-Arg
:cmap :cnoremap :cunmap Command-line
:tmap :tnoremap :tunmap Terminal-Job
@@makc ah no worries. thanks for making videos about Vim. keep it up.
You should always check the mappings before overwriting one that's more essential or at least weigh the tradeoffs.
If you're working directly on your init.vim file, you don't need to keep closing/opening vim. You can just do :so%
so == source
% == current file
I think you can do "map :Goyo" to not have :Goyo show up
Great video. to go back to the previous line and column in the file. Was quite painful to see you scrolling through the config 😅
legitimately a great video showing some realworld vim use and customization. Nice job end I hope to see more.
The config file location reason actually makes a lot of sense to me.
Being able to just clone a config into .config/nvim/ makes all the difference.
If you feel irelevant for this, know that what prevents me from switching to NeoVim is that I prefer Vim's icon to NVim's.
And.. "Vim" sounds better. Right?
welp
Thanks for the Lex command, I was looking for a way to make netrw a fixed column size. I changed this command to `nnoremap n :Le :if &ft == "netrw" vertical resize 30 endif ` because it also resized the file window with multiple splits
I found that though you mapped for reload, actually you quit and reopen to make it work lol.
@Macr good video, I kind of use vimium extension for browser as well. if anyone is looking something like that.
make more, nice one! love it, nice explanations, just what I needed.
Man, hearing your explanation of the line numbers just had me going, "...wtf?".
That scrolloff 999 keeps you cursor on the middle of the screen 😀Great video!
You can move your .vimrc file to wherever you like. Just define VIMINIT in your .bashrc to tell it where it lives. To move the .viminfo, define it in the .vimrc.
Example for .vimrc in your .bashrc:
export VIMINIT="source ~/.config/.vim/.vimrc"
Example for .viminfo in .vimrc:
set viminfo+=n~/.config/.vim/.viminfo
For the .vimrc, you could just move it into .vim and remove the dot from the name
26:20 scrolloff specifies how close the cursorline can get to the edge of the buffer before scrolling. In your config, scrolloff=999 kept the cursorline in the center of the buffer (except when you're at the top or bottom of the buffer... I think).
Well recently NeoVim is developing a native LSP client. So that would be a unique feature :)
Hey, very nice video. Took up a lot of things from here. Just one small thing, I also use a shortcut for reloading the init.vim file every time I make changes (because I'm too lazy to quit and open up a nvim instance again),
I use this mapping: nmap :w :source ~/.config/nvim/init.vim
I just noticed that you were not saving the file before the source. Hence, probably it was not reloading the changes instantly.
I saw you remove that command as but you can try using this if you want.
Great video by the way! Thanks!
Thanks for this type of videos, I learn a lot.
on a mac, they're still on vim7 so installing neovim and aliasing would keep you from having to build vim8 from source with all the pluggins or installing macvim .
TIL about :move 22:55. Thanks!
Amazing video! This answers many questions I’ve been having.
What window manager are you using? And how do you achieve what seems to be a tiling window layout?
Maybe it's TMUX?
You Seem a profession editor/AE artist
Not even close, but thx
@@makc hehe
Great videos! i have one question, how do you configure ur macOs so that there is no title bar on the Alacritty terminal? Thanks!
It’s a setting in the alacritty config. th-cam.com/video/eXyrTFNsdHA/w-d-xo.html
you are awesome 💗
Thanks for the video. How are you autohiding the window buttons/decorations on macos? cheers
Bump. I need this, too.
@@makc thanks so much! Great videos btw
Bump. Me too...how do you do it?
what is "Ovtober"? Given a date, is that date equally distributed amongst all the days of the week? If not, why not, and how can I graph that distribution? Are there particular dates that are say, more likely to be a Friday, or a Sunday? Calendars are weird.
as for me, neovim doesn't work with the standard input/output correctly when running !commands
ie bypass write protection via
:w !sudo tee %
doesn't work on neovim as you can't type anything when sudo requires you to type your password
edit: spelling error
6:12 correct me if I’m wrong, but isn’t “set nu rnu” the exact same thing as “set number relativenumber?” I think you put them both in by mistake 😅
I did. Thanks.
great video! thanks a lot.
Would it be possible to make a video on making certain configurations on init.vim trigger based on different file types?
Switching because neovim stores config in .config?? Wat. Well, just so you know, neovim has builtin lsp and also can use tree-sitter in the nightly build (v0.5). It also has gO to pull up an "overview" in the quickfix. But yes, vim 8.2 and neovim are quite similar otherwise.
Hey there, nice video.
I am new programmer who recently switched to vim from vscode to save some RAM on my cheap hardware :)
I think neovim is leading in feratures at the moment with added LSP (language server protocol) support.
Hi Makc, may i know what's the cool 'vf' alias that you used to view files like Explorer?
i believe it was vifm
6:57 noemoji fix the 2x char for emoji so the cursor don't f*** up after a emoji
What is the vf app? Have you seen ranger? I have gruvbox working well in it. Also pygments and scope. Can share if you like.
some question
here i am watching this seriously and absorbing everything when suddenly "DEE DEE MEGA DOO DOO". I lost my shit. thanks. now let me go replace my drink.
Great video, I would love to know the name of that color scheme :D
gruvbox
Rad vid What are you using to open and close the browser like that? I'm guessing that you are using a hotkey, but what is that wizardry?
@@makc - but a command line was showing at the top of your browser. what was that feature? how did you get that to show?
That was cool
this is really good since it is a mess to navigate others people config files and trying to figure out what they do.
as a newbie coming from sublime i do need some help.
@@makc until now I do. The fact I don't have to move my hands is great.
However vim seems to be really hard to use for big programming projects. I think my ide will be up on the background so making the projects easier. Also debugging them. Even no that I haven't switched that is my workflow.
The biggest thing missing that I haven't manage to setup is language integration. When I manage to figure that out I'll fully commit. Maybe for me the solution is evil mode on emacs.
@MAKC and what's your conclusion about 'relative number'? :)
I’ve totally removed line numbers at this point (I don’t write much code, so they’re not that useful for me), but it’s probably just a matter of preference. I swapped back and forth a bit before I killed the line numbers entirely.
Woah woah woah. There is a big difference between Vim and Neovim. Why is it so heavy otherwise?
Neovim ships with an entire LuaJIT. You can write your plugins/ modifications in lua instead of vimlang, although vimlang works too. Neovim also has an API so other programs can interact with it. I am running a grammar check plugin which checks English grammar using Java when I am writing my emails in Neovim. Can't do that in Vim.
Why did you quit using NERDTree instead of the native finder? I was using Vimfiler for a while (opens by keying `~` by default), but I went back to NERDTree and it's actively developed.
It’s pretty rare that I navigate between files in Vim. Don’t need anything to powerful, so I just use :Explore and a fuzzy finder.
Hi the link of wallpaper is broken can you give me a new link?
What desktop environment are you using?
I am just curious since it looks like you are using i3 or sway on mac...
I'm using standard MacOS, but using "Rectangle" as the window manager.
@@makc Thank you that looks really cool :)
Muito obrigado, me ajudou muito!
How does he do that at 0:46? What is that?
I watch other vim users do that as well??
That’s a cli file manager called “vifm”. You can install it through home brew on Mac, or basically any package manager on Linux.
Totally unrelated, but how did you remove the titlebar from qutebrowser? The only way I know of is by putting c.window.hide_decorations=True in the config.py file, but then I can't move or resize the window.
@@makc If I remember well the problem is with Qt and not qutebrowser, so there's not a lot they can do about it.
the way hide the title bar of app in mac plz.
You don't move lines by deleting and pasting them where you need them?
I also find myself using J to join lines together a lot so I wouldn't overwrite that one.
notice that he used "xnoremap" instead of "noremap". What this does is it makes that keybinding work only when in visual mode. So if you do 'J' in normal mode, you still will get the Join functionality.
What's the font you're using?
Either Fira Code or Source Code Pro (usually the Nerd Font version)
What it that vf program?
I was unable to find it in the repo.
And the browser too
vifm (The vi file manager) & qutebrowser
Hi, what's your terminal application? Are you using Tmux?
@@makc Thanks for the reply! I found your channel yesterday and I'm amazed! Much success@!
Hi what font are you using?
@@makc I think in this video you also used Fira Code.
Line numbers and the ruler are not the same piece of information in two places.
what terminal you are using?
Probably alacrity
It's alacritty
there is a feature on nvim that doesnt exist in vim: native lsp in HEAD nvim
You mean coc and other lsp are part of nvim itself now ?
If neovim doesn't add features over vim, how comes it does have 20MiB more?
Bloat?
@@makc But then Luke Smith sure wouldn't use it. Is there really nothing more to it?
Can you please tell me which browser you are using?
qutebrowser & vimium addon for firefox
what browser do you use?
qutebrowser
What browser do you use
Qutebrowser & Firefox
Hi, i install neovim but when run has error: zsh: command not found: nvim. Can you help me? Sorry my eng not good.
If you're running from a bash/zsh shell that was open before installing neovim, you may have to run `hash -r` to force the shell to reload available commands the shell has cached.
Otherwise, `find / -type f -name nvim` to find where you installed neovim to, then make sure your PATH environment variable includes the folder path.
what coloscheme is that?
Gruvbox
@@makc thank you king
You left all your plugins in the folder ~/.vim/plugged
How did you tweak your Mac setup to look like i3?
I know many differences between vim and neovim.
e.g. Lua, asynchronous or, in 0.5, Lsp Support and Tree Sitter
read only
nvim has popups vim doesn't !
NVim - is the thing in itself. As long as it open source, it has very low quality support for web programming. I would never choose it as standalone IDE. I wish to but I can't.
Check out neovim vscode. You can have a full on neovim text editor open and get all the nice tools of vscode as well. I just setup it up and it's definitely blowing my mind that something like it is possible
@@Chex_Mex , the current stable release version is 0.4.4(c). This is from official site. I'm using webstorm. It has builtin vim like editor. It costs not so many from my point of view. I'm working as a professional web developer and can't wait any further for at least 1.0 version.
@@sergey_c Oh, I know, if you use neovim's nightly version instead and the neo vim vscode extension you can do what I was saying. Unlike other vim extensions, you aren't emulating vim but it's just full on nvim in there. You can use any plugins you install and your entire config file. And it's all free :).
Give it a shot if you ever have the time, I was using webstorm as well until recently.
@@Chex_Mex , he he. And if if if ... I've been linux user for more than 10 years. It means spend lot of time for configuration. I'm ready to spend some amount of money to skip all that configuration stuff.
@@sergey_c Completely fair to be honest. Although part of the nice thing about this is that you can use your neovim configs and get most of the same functionality for free.
neovim will be bloated junkware...keep it simple and use vim and setup a personal config.
I'm always amused by troll comments on editor configuration videos
highlight paragraph lol... it's made for highlighting code... it highlights everything ... empty lines are indicators basicly. well whitespace essentially...
I was about to comment, that ur plug list gives me ocd... that why the fuck you dont have co c , git, fugitive, fzf, sneak and some other stuff.. but u sayd in the video that ur not actually a coder, but writing a lot in vim... what you are writing about then? blogs? bookS?