Live data from Hacker News

916 Days of Emacs

sqrtminusone.xyz

301–309 of 309 posts

Re: 916 Days of Emacs

#301
post #298
post #294

Earlier quoted context omitted.

> Like a Lisp Machine, Emacs is totally user programmable at every level It's just that the levels of GNU Emacs don't get as low-level as the Lisp operating system of Lisp Machine (which is an actual computer with its operating system, and not an programmable editor written on top of operating systems, which were written in C and a bunch of other languages). The levels of a Lisp Machines go all the way down to (for e…

Well, yes, because GNU Emacs runs on Unix-compatible systems, and Emacs uses the Unix API to do its thing. For instance, Emacs does not implement TCP itself, it uses the Unix TCP/IP stack.

It also on Linux/UNIX does not create a directory listing itself, but calls an external program, provided by the operating system: ls. Where on a Lisp Machine it calls the Lisp function FS:DIRECTORY-LIST, which underneath is implemented in Lisp via its object system.

Re: 916 Days of Emacs

#302

Earlier quoted context omitted.

Vimscript is a pain but these days you can use Neovim which supports Lua as a replacement. I’d recommend checking out what Neovim has to offer. ThePrimeagen has a great video on setting up Neovim as an IDE from scratch. https://m.youtube.com/watch?v=w7i4amO_zaE

I mean it's a matter of preference, I personally find vimscript a lot more readable for vim configuration. Maybe not for more advanced stuff, I don't know, but how is the following: vim.keymap.set("n", "K", vim.lsp.buf.hover, { buffer = buffnr, desc = "vim.lsp.buf.hover" }) vim.api.nvim_buf_set_keymap(bufnr, "n", "K", " lua vim.lsp.buf.hover() ") better than nmap K :lua vim.lsp.buf.hover() It's like the javafication…

While I wholeheartedly agree, you don't have to sprinkle Lua everywhere, you can use both. As a matter of fact, I do[0]. And when I want to enable a setting on the fly in the editor, I still use the vimscript version. But Lua is way nicer to work with the moment you do something non trivial. For example, I've never been able to make sense out of vimscript string interpolation.

0: https://github.com/RMPR/dotfiles/blob/master/.config/nvim/in...

Re: 916 Days of Emacs

#304
post #287

Earlier quoted context omitted.

Sure here's one https://www.programiz.com/python-programming/online-compiler... and I'm sure you could find hundreds of others :)

That's not In chrome friend.

> Emacs also has a built in email client, RSS reader, IRC client, calculator, file browser, web browser, markup language, regex DSL, Vim emulator, terminal emulator, custom elisp based shell, interactive REPL that works for several programming languages...

Then most of these things are not in "emacs" since most of them are packages and not builtin. That was my point. Emacs is insanely customizable through packages, and can essentially run anything. Chrome and Firefox and any other web browser are also insanely customizable through "packages" which you just so happen to download as soon as you enter the URL to the "package" you want, which we really refer to as a web app. But, that doesn't make the browser an OS, and it doesn't make emacs an OS either.

Re: 916 Days of Emacs

#305
post #301
post #298

Earlier quoted context omitted.

Well, yes, because GNU Emacs runs on Unix-compatible systems, and Emacs uses the Unix API to do its thing. For instance, Emacs does not implement TCP itself, it uses the Unix TCP/IP stack.

It also on Linux/UNIX does not create a directory listing itself, but calls an external program, provided by the operating system: ls. Where on a Lisp Machine it calls the Lisp function FS:DIRECTORY-LIST, which underneath is implemented in Lisp via its object system.

On a Unix-compatible system, ls(1) is the highest-level interface to get a directory listing. There is no good reason for Emacs to use scandir(3) (or even opendir(3)/readdir(3)).

Re: 916 Days of Emacs

#306
post #304

Earlier quoted context omitted.

That's not In chrome friend.

> Emacs also has a built in email client, RSS reader, IRC client, calculator, file browser, web browser, markup language, regex DSL, Vim emulator, terminal emulator, custom elisp based shell, interactive REPL that works for several programming languages... Then most of these things are not in "emacs" since most of them are packages and not builtin. That was my point. Emacs is insanely customizable through packages, a…

One you run in emacs, the other you run on someone else's computer, I guess my expectations were mismatched.

Re: 916 Days of Emacs

#307

Earlier quoted context omitted.

[flagged]

> I haven't met anyone who used VSCode / MSVS / IntelliJ products or Eclipse who was good at writing code. How many people have you met?

Professionally? -- Couple hundreds... well, probably more than average programmer: I worked in HP as Ops, and a big chunk of my job was to help Java programmers to cope with their programming environment. I.e. we (the ops) supplied them with Maven build, and they didn't know and didn't learn how to use it, so every day I had to go cubicle to cubicle fixing the same problems for these people.

You learn to despise people like these for not being able to perform basic stuff on their computers... stuff like look for a file with a particular text in it or opening a file with an extension not recognized by their editor of choice.

So... the campus I was on at that job had three buildings. Two had five floors and another one had I think a dining room on the ground floor and like two more floors, but mostly non-programmers there. A floor had like... four cubicles on the short side and maybe a dozen on the long side. Some cubicles had two occupants, but obviously I didn't visit every one there... Still, just in HP I must've met more than a hundred. I worked all in all in 13 companies over my career. Two of these way too small (<5 people) to count, beside HP, I also worked in Google (through acquisition) and I work in a company of a similar size today (also, through acquisition). Two more companies were 100+ employees (of course, I didn't meet everyone), and the rest are under 100. That's over something close to 25 years.

Re: 916 Days of Emacs

#308
post #305
post #301

Earlier quoted context omitted.

It also on Linux/UNIX does not create a directory listing itself, but calls an external program, provided by the operating system: ls. Where on a Lisp Machine it calls the Lisp function FS:DIRECTORY-LIST, which underneath is implemented in Lisp via its object system.

On a Unix-compatible system, ls(1) is the highest-level interface to get a directory listing. There is no good reason for Emacs to use scandir(3) (or even opendir(3)/readdir(3)).

GNU Emacs has complex code to deal with it. Some "ls" programs support a "-dired" option, some not. If this option is not supported, then Dired may fail to parse some unusual filenames. Then there is an 'ls' emulation in Emacs Lisp, which by default is not used on UNIX, but on Windows...

There is a huge machinery with lots of complexity to deal with listing directories, either with ls, a GNU provided ls, or by providing a complex emulation of ls.

Post reply on HN