Compile Code The Way Vim Intended.

  Рет қаралды 16,980

Gavin Freeborn

Gavin Freeborn

Күн бұрын

Пікірлер: 41
@GavinFreeborn
@GavinFreeborn 3 жыл бұрын
A quick correction to the video. Instead of using `set makeprg=%` it is better to use `set makeprg=bash\ %` since % will not always give the full path but using `bash\ %` will not need the full path/relative to be expanded. Feel free to use whatever shell you prefer over bash this is just an example.
@aminnairidev
@aminnairidev Жыл бұрын
Despite this video being 2 years old and knowing you are a Emacs envoyer, you just showed me the way on what could be possible using Neovim and I can now confidently create a plugin to set the compiler for my TypeScript project and jump to errors like a Chad instead of opening a new Tmux pane and running my command to run tsc and find errors like a soy dev.
@arisweedler4703
@arisweedler4703 3 жыл бұрын
I didn't know about the `compiler` subsystem, that's awesome! Great stuff
@GavinFreeborn
@GavinFreeborn 3 жыл бұрын
Glad you enjoyed it! It's one of the vim features I don't think will ever get the publicity it deserves
@XeroOl
@XeroOl 3 жыл бұрын
This looks incredibly useful. I've always just exited vim and run the code manually, but running it from within vim is awesome. I have no idea how I haven't seen this feature before
@GavinFreeborn
@GavinFreeborn 3 жыл бұрын
Glad it helped! It's one of those features so few people seem to know about the only other vim related creators I assume knows of it would be Greg Hurrell and TJ
@-aaa-aaa
@-aaa-aaa 3 жыл бұрын
I would absolutely love a video on a custom statusbar!
@zeocamo
@zeocamo 3 жыл бұрын
love to see you make a statusbar from nothing
@craigdanielmaceacher
@craigdanielmaceacher 3 жыл бұрын
I've come to realize that in Vim plugin world, that if there's several (or dozens, like autocompletion frameworks) that do basically the same thing - it's a difficult problem that everyone has their own opinion about how best to do it. These plugins come and go, like plugin installers, file trees etc. and now the cycle continues but now everything is re-written in Lua.. just because they can be.
@mattc16
@mattc16 2 жыл бұрын
Just because it can be? Or maybe because Lua is 18,000x (tested through benchmarks) faster than Vimscript, can be learned and used outside of Vim, and is a fully functional programming language? Lol. As far as having multiple of the same plugin, competition contributes towards innovation. That’s a good thing. Not to mention, having a selection of different options to choose from allows you to find which “you” like best. Listen to other’s opinion in regards to why they like one plug-in more than the other, but in the end you should make your own decision.
@kuthathwe
@kuthathwe 2 жыл бұрын
Great video please continue, Thanks 👍
@iAmTheWagon
@iAmTheWagon 3 жыл бұрын
Good stuff. Thanks! Just what I was looking for.
@wolfdesroyer8711
@wolfdesroyer8711 2 жыл бұрын
this video was very good and taught me alot
@subterfugue
@subterfugue 3 жыл бұрын
This is amazing! I actually learned a lot here, thank you! I'd love to hear more about writing our own statusline with no 3rd party plugins - and about efm-languageserver, I personally find null-lsp easier to configure (and I set up shellcheck for it), but its a great suggestion nonetheless!
@GavinFreeborn
@GavinFreeborn 3 жыл бұрын
Great suggestion! I've been needing to try out null-lsp but wanted to keep this video helpful for both vim and neovim users.
@Argletrough
@Argletrough 3 жыл бұрын
:help statusline
@acollectionofmeaninglesswords
@acollectionofmeaninglesswords Жыл бұрын
Incredible content 👍
@superlameusername362
@superlameusername362 3 жыл бұрын
Now we can finally say to the emacs guys that vim is more than a text editor.
@alurma
@alurma 3 жыл бұрын
Very good overview. Thanks.
@baguettedad
@baguettedad 2 жыл бұрын
Damn this guy is overpowered
@emmettkotlikoff8652
@emmettkotlikoff8652 2 жыл бұрын
Great video. I see some folks using :make to run tests. Quickly running and jumping to broken tests seems like a nice workflow. What are your thoughts on using make for running tests as opposed to compiling?
@GavinFreeborn
@GavinFreeborn 2 жыл бұрын
It makes sense but really depends on the language. If it's an interpreted language that would make a lot of sense. I usually change my :compiler based on what I'm doing.
@ivanicguildmember2844
@ivanicguildmember2844 Жыл бұрын
What is the font being used in the terminal?
@fairclothjm
@fairclothjm 3 жыл бұрын
Hey, your videos are always really great. One critique I would give is to improve the syntax highlighting so that viewers of the video can easily read what is being displayed. You mention it once that this is what the default is giving you. But if that is the case you should change it so that the video is improved. It would be quite simple to just use a basic vimrc that adds a better colorscheme. Or just change your terminal settings which is actually what is causing this issue. Not vim itself. The default colorscheme is quite readable with sensible terminal settings.
@unboxingadda8161
@unboxingadda8161 9 ай бұрын
Love from India
@darh.m.5838
@darh.m.5838 2 жыл бұрын
This video is really cool, I always used dispatch with custom settings but now I want to try this new thing, also what is the colorscheme in the video? is really cool
@GavinFreeborn
@GavinFreeborn 2 жыл бұрын
Spaceway. Made it myself
@zeocamo
@zeocamo 3 жыл бұрын
You can use ex set grepprg to see the value it is not as long as echo &
@nimcompoo
@nimcompoo 3 жыл бұрын
would love to learn about status bars.
@diawanchris
@diawanchris 3 жыл бұрын
Hi Gavin, I want to ask a question. What is the difference between setlocal makeprg and CompilerSet? I have been confused by it ever since I learn about the :make command. Thank you, great video btw!
@adrianaleon2220
@adrianaleon2220 3 жыл бұрын
Awesome video! I wonder if there's a good way to do this with typescript to get error messages only when you run :make, instead of using a LSP plugin that is sometimes distracting with the real time errors and heavy on memory if you're using an older computer, I actually tried but there doesn't seem to be a way to do it in a similar fashion since you will have to compile your whole project to get the errors instead of just getting them for the current file, so it would be slower as well (and also no context aware autocompletion)
@GavinFreeborn
@GavinFreeborn 3 жыл бұрын
You can as far as I know. not sure if this will help but you should take a look at `$VIMRUNTIME/compiler/ts-node.vim` I suspect the error format will be similar. I sadly don't do anything with typscript myself but if you can give me an idea of how you would compile the code and the output you would expect I would be happy to mock up something you could try.
@MrMikeEdie
@MrMikeEdie 3 жыл бұрын
I think your microphone and keyboard are mounted on a drum together.
@feuerundwasser282
@feuerundwasser282 2 жыл бұрын
Us: 80 column limit? Gavin: Nah, never heard of this. Edit: I'm afraid of if one of the sign was called cock. Don't even try to pretend you're Tyler Durden.
@zilog1
@zilog1 2 жыл бұрын
can someone say *overexposed* lmao
@GavinFreeborn
@GavinFreeborn 2 жыл бұрын
Maybe I over compensate for the fact I borderline film these in a closet a little too much.
@zilog1
@zilog1 2 жыл бұрын
@@GavinFreeborn Try to get a small light at a 45 degree angle from your face to make your face look less flat. if you want you can use two lights on on each side, you can use contrasting colors. contrast exists in the colors space not just light and dark. orange + teal or green + purple. 80% of your video 'quality' is the lighting. not the camera. audio is spot on btw. you can record in a log color space and color grade it in post production but that can be a lot of work if you aren't careful. Hope the videos to well regardless.
@GavinFreeborn
@GavinFreeborn 2 жыл бұрын
@@zilog1 thanks for the feedback! I'll have to take some time to play around with this
LEM - What If Emacs Was Multithreaded
14:32
Gavin Freeborn
Рет қаралды 27 М.
10 Advanced Vim Features (You Probably Didn't Know)
21:47
Sebastian Daschner
Рет қаралды 78 М.
小丑女COCO的审判。#天使 #小丑 #超人不会飞
00:53
超人不会飞
Рет қаралды 16 МЛН
Enceinte et en Bazard: Les Chroniques du Nettoyage ! 🚽✨
00:21
Two More French
Рет қаралды 42 МЛН
It’s all not real
00:15
V.A. show / Магика
Рет қаралды 20 МЛН
Cracking Tricky Java Code Challenges From Java 8 to Java 24
52:18
JChampions Conference
Рет қаралды 374
Ultimate Quickfix List Guide
10:15
Andrew Courter
Рет қаралды 28 М.
M-x Compile: A Deep Dive into Compiling Code with Emacs
15:46
Gavin Freeborn
Рет қаралды 5 М.
3 Levels of Vim Refactoring
7:48
typecraft
Рет қаралды 45 М.
Neovim & Extensibility - My Talk from Jane Street
35:00
TJ DeVries
Рет қаралды 51 М.
My Favorite Vim Tricks
14:39
MAKC
Рет қаралды 186 М.
Compilers, How They Work, And Writing Them From Scratch
23:53
Adam McDaniel (kiwi)
Рет қаралды 245 М.
The Rise & Fall of LISP - Too Good For The Rest Of the World
17:44
Gavin Freeborn
Рет қаралды 44 М.
I tried Neovim Distributions so you don't have to
9:12
typecraft
Рет қаралды 192 М.
Managing Your Splits In Vim
12:18
DistroTube
Рет қаралды 58 М.
小丑女COCO的审判。#天使 #小丑 #超人不会飞
00:53
超人不会飞
Рет қаралды 16 МЛН