Programming thread

  • Want to keep track of this thread?
    Accounts can bookmark posts, watch threads for updates, and jump back to where you stopped reading.
    Create account
VSCode has been getting on my nerves and is a bit stale, should I learn Emacs or Neovim?
Both have terrible official introductions which will ask you to use stupid keyboard keys to move the cursor around and end before actually telling you how to turn the basic, god-awful editors that they are into powerhouses to dwarf VSCode or JetBrains editors. I agree that VSCode sucks, but I'm not sure why it is getting on your nerves. If the problem is "too hard to use" then you're going to get triple-fucked with either of these two editors. Also, their vocabulary will greatly confuse you, since theirs is quite different.

One important thing to know ahead of time is that the terminology is going to sound strange, since they were both originally created in 1976 - https://texteditors.org/cgi-bin/wiki.pl?Timeline - and the vocabulary we mostly use (cut, copy, paste, open file, ...) was popularized a few years later in different editors. Emacs and vi did not follow suit and stuck to their original vocabulary to this day. So prepare to KILL and YANK text, and FIND FILES, and some other oddities.

Warnings aside, I DO like Emacs. I'd say fire-up default Emacs, SKIM through the official tutorial. Don't worry too much about the advice on moving the cursor there yet, arrow keys, page up, page down, home, end work just fine, there are some niceties they provide in special circumstances, but making the opening sequence of a tutorial of an already unpopular editor with pages of HOW DO I NAVIGATE TEXT USING WEIRD KEY COMBINATIONS is deeply retarded and your goal should be to not burn out before you get to the good stuff.

After you've skimmed through the tutorial and figured out the basics of opening files, saving files, exiting Emacs, KILLING and YANKING - find yourself an Emacs common key combination cheat sheet to keep and check out this series: https://www.youtube.com/watch?v=74zOY-vgkyw&list=PLEoMzSkcN8oPH1au7H6B7bBJ4ZO7BXjSZ - There are newer and shorter ones from the same channel, which may be better, but this is the one I'm familiar with.
 
Last edited:
Neovim works with LSPs a lot better which is one of the reasons I intend to use Neovim (via LazyVim) as my mainstay and Emacs for more niche roles
"Perfect is the enemy of good" aside, have you guys seen the LSP spec?
It is JSON over RPC with HTTP headers.
Long as hell, complicated as hell, and basically not a protocol.
MS simply describes the prototype of what they made up on a quirky afternoon one too many coffees in, and now that is the industry standard.
 
Last edited:
Both have terrible official introductions which will ask you to use stupid keyboard keys to move the cursor around and end before actually telling you how to turn the basic, god-awful editors that they are into powerhouses to dwarf VSCode or JetBrains editors. I agree that VSCode sucks, but I'm not sure why it is getting on your nerves. If the problem is "too hard to use" then you're going to get triple-fucked with either of these two editors. Also, their vocabulary will greatly confuse you, since theirs is quite different.
Step 1: Run vimtutor. Step 2: Read and follow along. Now, assuming you're not a retard, you know about Vim motions, modes, and operators and can use the editor comfortably. They aren't "weird key combinations" because it explicitly tells you what everything does before asking you to try it yourself. Use it for a bit and you'll naturally figure out what custom mappings or scripts you might want to have

Emacs/Vim should be the only available editors to filter out jeets who can't bring themselves to read some instructions and can't make the connection between "yank/put" and "copy/paste," despite the tutorial introducing them as copy/paste
 
Emacs/Vim should be the only available editors to filter out jeets who can't bring themselves to read some instructions and can't make the connection between "yank/put" and "copy/paste," despite the tutorial introducing them as copy/paste
VSCode, by its very design, is electron pajeet trannyware. It serves that demographic well, to the questionable benefit of mankind.

MS simply describes of the prototype of what they made up on a quirky afternoon one too many coffees in, and now that is the industry standard.
Many such cases. Like, seriously, it's insane.
 
Last edited:
should I learn Emacs or Neovim?
You should ideally learn both, because they represent two worlds of ideas which it benefits you to familiarize yourself with. Start with whichever sounds less retarded to you, "editor macros" or "new visual editor improved".
VSCode, by its very design, is electron pajeet trannyware
vscode is a great recommendation to have in your back pocket for when a retard asks you what editor they should use, and you don't want to receive any further questions from them once they start using it.
 
Also, their vocabulary will greatly confuse you, since theirs is quite different.
boo hoo they call windows frames and subwindows windows
i'm sure the people that would get filtered by this totally would have been master-level hackers if not for evil legacy terminology
For one, since its a glorified browser, you have to write an extension manifest for user scripts.
oh boy having to write a big lump of xml json whatever jeet version of sexps is in style this week whatever jeet version of ini they're shilling today before being able to do anything
very nice
 
well emacs has the killring and then you yank shit out of the killring and into the buffer
...yeah i don't know why it's used that way either
i guess C-y is a nice keystroke
yeah its a stretch but it kinda makes sense only because cutting is called killing
you yank it back to life i guess

in vim you just yank it to the register and put it from the register to the buffer
simple and easy
also in vim cutting is called deleting

M-w apparently saves it in the kill ring without deleting the text
but still i dont like the term killing i find it retarded
 
Hi! It looks like you pressed Ctrl+Enter! This clearly means you intended submit the form!
If you would like to create a new line without submitting the form, just press Enter!
 
The download page of Emacs shows it's 140MB for a Windows install. With that size I actually kind of want to have a fully featured browser included, as it allows for much more easily building powerful extensions (like point-and-click diagramming for example).

It's sad that while VSCode is built on the most powerful OS to date (the web browser), it does not fully utilise its potential like Emacs does.
 
Hi! It looks like you pressed Ctrl+Enter! This clearly means you intended submit the form!
If you would like to create a new line without submitting the form, just press Enter!
i personally like it
thats how kiwifarms does it
on kiwifarms theres a difference between a shift + enter and a regular enter too

if youre in a quote shift+enter makes a newline inside the quote while enter makes a newline outside the quote
and then you can press ctrl enter to post the post
 
Since generally they aren't supposed to, and generally try not to codify anything in the C standard that doesn't already exist in some kind of use in a compiler. It made me think about that new memory safe C compiler, and if anything could be implemented into the C standard around memory safety as the result of anything it does.

I haven't looked closely at what it does and if it does anything that isn't already in the C standard. But it's an interesting thought.
fil-c appears to implement pretty much everything you would do in standard c in a way that conforms to the c standard
the main difference appears to be that fil-c tries as hard as possible to make sure that every instance of "undefined behavior" in the c spec is met with a clean crash and an error instead of nasal demons
it actually does sacrifice some performance for this, but not a terribly bad amount (garbage collectors are pretty nice these days)

if the standard adds anything about safety, it will probably be some feature to specify exactly how much safety you want and where
It would be nice not having rust trannies constantly saying C is inherently unsafe. Because that's what they all say. C code even if it is safe is inherently unsafe because it's C.
the rust trannies only have a shadow of a point because compilers like fil-c are not commonly used. instead everybody uses c compilers that simply assume the programmer will never induce undefined behavior. this works most of the time, but occasionally somebody accidentally fucks up, with less-than-ideal results. the standard never says how safe the language should be, just what the computer should do for correctly formed programs

this is yet another genius part of the c standard: fil-c is mostly standard c because iso c literally doesn't care what the compiler and runtime do with ub. it never tells you that the program has to corrupt random memory when you run off the end of a buffer, it just says "that's between you, your compiler, your c runtime, your libc, and your kernel"

do note that c is not the only language that makes safety optional. many common lisp and scheme implementations let you turn type checking on and off, even in different parts of the same program. the only reason rustniggers don't rail about unsafe scheme/cl code all day is that:
  1. most programs are always sensibly run with full safety, because fuck segfaults
  2. the average rust shill is too retarded to know what lisp is
 
it stands for a lot of things, which you can see by opening the best text editor, pressing C-x C-f, then navigating to <usually /usr, usually>/share/emacs/<version>/etc/JOKES
Code:
From:  Don Chiasson <G.CHIASSON@DREA-XX.ARPA>
Subject: Some gnu jokes
To: jokes@DREA-XX.ARPA, gergely@DREA-XX.ARPA, broome@DREA-XX.ARPA
cc: G.CHIASSON@DREA-XX.ARPA
Message-ID: <12329394624.13.G.CHIASSON@DREA-XX.ARPA>

     Richard M. Stallman (RMS, widely known for creating EMACS) is writing
a UNIX clone called GNU (which means Gnu's Not Unix--a recursive acronym).
This seems to open the way to a whole gnu class of jokes.  For example:

Q:  What do you call a person who hacks while wearing no clothes?
A:  A gnudist.

Q:  What do you call an eligible young hacker?
A:  Gnubile.

Q:  What is a hacker's favorite candy?
A:  Gnugat.   (Though it contains little gnutrition.)

Q:  What do you call a computer filled with air?
A:  Gnumatic.

Q:  What do you call a novice hacker who keeps pestering you
    with foolish questions?
A:  A gnuisance.

Q:  What do you call a subtle, clever hack in the favorite language?
A:  A gnuanCe.

Q:  What do you use a supercomputer for?
A:  Gnumerical analysis.

Q:  What do you call a hacker who collects coins?
A:  A gnumismatist.

     Well, there are more, just too gnumerous to tell all at once.  I think
I'd better go before someone starts firing gnuclear weapons at me.
                Don
 
Code:
From:  Don Chiasson <G.CHIASSON@DREA-XX.ARPA>
Subject: Some gnu jokes
To: jokes@DREA-XX.ARPA, gergely@DREA-XX.ARPA, broome@DREA-XX.ARPA
cc: G.CHIASSON@DREA-XX.ARPA
Message-ID: <12329394624.13.G.CHIASSON@DREA-XX.ARPA>

     Richard M. Stallman (RMS, widely known for creating EMACS) is writing
a UNIX clone called GNU (which means Gnu's Not Unix--a recursive acronym).
This seems to open the way to a whole gnu class of jokes.  For example:

Q:  What do you call a person who hacks while wearing no clothes?
A:  A gnudist.

Q:  What do you call an eligible young hacker?
A:  Gnubile.

Q:  What is a hacker's favorite candy?
A:  Gnugat.   (Though it contains little gnutrition.)

Q:  What do you call a computer filled with air?
A:  Gnumatic.

Q:  What do you call a novice hacker who keeps pestering you
    with foolish questions?
A:  A gnuisance.

Q:  What do you call a subtle, clever hack in the favorite language?
A:  A gnuanCe.

Q:  What do you use a supercomputer for?
A:  Gnumerical analysis.

Q:  What do you call a hacker who collects coins?
A:  A gnumismatist.

     Well, there are more, just too gnumerous to tell all at once.  I think
I'd better go before someone starts firing gnuclear weapons at me.
                Don
i pronounce gnu with a hard G
 
VSCode has been getting on my nerves and is a bit stale, should I learn Emacs or Neovim?
Forgot to add here:
Warnings aside, I DO like Emacs.
If you do install neovim or Emacs, make sure you're either getting a recent system package, a ready-made binary from them or build from source. Both editors rely a lot on 3rd-party tools once you start to customize them a lot and some Flatpak or heavily sandboxed install is simply going to cripple their ability to do anything interesting.
 
Back
Top Bottom