Hacker News new | ask | show | jobs
by agumonkey 3562 days ago
btw, windows binary build https://sourceforge.net/projects/emacsbinw64/files/release/ (from 2h ago)
2 comments

Is Emacs all that useful on Windows where even the most basic Unix commands aren't available? Is M-x grep even available?

Or does Emacs require a Cygwin / Ubuntu Subsystem?

Emacs is very useful on Windows. There are different packages run the Unix command tools on Windows. M-x grep works just fine.
GnuWin32 complements emacs quite nicely. (It is an extensive set of natively built GNU utilities - no emulation is required.)
I have installed the ezwinports versions of grep and find on Windows 7 64-bit ( https://sourceforge.net/projects/ezwinports/files/grep-2.10-... and https://sourceforge.net/projects/ezwinports/files/findutils-... ). They work great.
The nox version works beautifully in the new ubuntu subsystem bash console. I've never tried using any of the graphical versions.
Any chance you were successful at building it from source in the Ubuntu subsystem? I got some weird errors related to maybe shared memory or something and gave up.
No, i just did sudo apt-get install emacs24-nox. I haven't had great luck with build tools. I broke the whole thing two or three times trying to install ghci.
Have you noticed it is impossibly slow to start up?
Depends, if you need OS interaction you'll need a posix-like subsystem indeed[1]. But first I write mostly lisp (ml, js and python) and I just can't live without paredit and second emacs extensibility is a drug to me now. Everytime I have to use anything else I feel crippled.

[1] I installed msys2 which is less crufty than cygwin.

Msys2 by design restricts the available packages to those useful for compiling software for Windows. The emacs package is in their separate mingw repository, which means the produced binary is a Windows program and does not understand the posix environment at all (i.e. no /proc/, /dev/ etc).

Cygwin is an OS that runs on top of windows - all cygwin programs are windows programs but not all windows programs are cygwin programs. The emacs package for cygwin can fopen() /proc/ and /dev/, use the linux socket API, and in general follow the linux makefile more closely.

I'd say you are correct in thinking you need a few UNIX tools to make Emacs on Windows comfortable. But maybe it's fewer than you think. I just had to get grep, find, diff and now use Emacs on both Linux and Windows and feels almost the same.

In fact, that's part of what I love about Emacs: for the most part I don't have to worry about learning how to do stuff on Windows, I just do it in Emacs.

Do you know the difference between emacs-w64-25.1-Og.7z and emacs-w64-25.1-O2.7z. I'm guessing maybe one is a debug version and the other was build with -O2.
One has debugging symbols and the other was compiled with -O2 optimizations enabled.
gcc has a -Og option that performs all optimizations that don't interfere with debugging, so I'd guess that emacs..-Og is built using gcc's -Og option and emacs..-O2 is built using gcc with the -O2 option.