jarun / nnn

n³ The unorthodox terminal file manager
BSD 2-Clause "Simplified" License
19.1k stars 760 forks source link

Provide native windows binary #148

Closed krishnakumarg1984 closed 5 years ago

krishnakumarg1984 commented 5 years ago

A similar CLI file manager, lf (see https://github.com/gokcehan/lf) provides a native windows binary as a single executable file (`lf.exe)

lf is written in go, whereas nnn is written in C, both of which are highly portable.

Can you consider adding a windows binary as part of your GitHub assets for subsequent tagged releases?

jarun commented 5 years ago

nnn depends on ncurses which is not available natively on Windows.

krishnakumarg1984 commented 5 years ago

@jarun sorry to bother with this same story again. I could get a nnn.exe through compilation in a cygwin environment. This nnn.exe is working in cmd.exe. Is there a chance you could go through that route and provide a windows binary for future GitHub releases?

jarun commented 5 years ago

When you say native windows binary that means something that runs directly on Windows, not inside the Cygwin env.

krishnakumarg1984 commented 5 years ago

@jarun that's what I meant. The compilation inside mobaxteelrm produced nnn.exe. I can double-check, but I think this worked on the standard cmd.exe.

Sorry for the naive question, but is ncurses a run-time requirement or simply needed at compile-time?

jarun commented 5 years ago

is ncurses a run-time requirement or simply needed at compile-time?

We link dynamically.

krishnakumarg1984 commented 5 years ago

@jarun forgive me. Indeed, this only works inside mobaxterm. When I try it with powershell or cmd.exe, I get a dialog box popping up and telling me:

The code execution cannot proceed because cygncursesw-10.dll was not found. Reinstalling the program may fix this problem.

So, the question boils down to "Doesn't using nnn like this inside cygwin hamper performance, which was after all one of the biggest victories of the project?".

jarun commented 5 years ago

No, I don't have any remote intention of supporting nnn natively on Windows.

krishnakumarg1984 commented 5 years ago

But will nnn in cygwin be faster than native lf and vifm?