return to table of content

Superfile – A fancy, pretty terminal file manager

srwest
26 replies
1d2h

If didn't read the docs, noticed hkjl moved around, and accidentally deleted 3 folders with ctrl+d seeing if I could scroll down faster. Scary defaults if you have Vim muscle memory.

godelski
10 replies
22h57m

It really weirds me out how many people use a sprinkling of vim keybindings but don't use more. Like how many vim users don't know <C-[> (esc) or contextual completion like <C-x><C-p> (:help ins-completion). I see so many people use plugins for things that already exist in vim but people never discuss.

One that bites me a lot is when a vim keybinding is implemented, has insert mode, and they don't also rebind <C-w>. Go from trying to delete a word (backwards) but end up losing a whole session. It's such muscle memory I sometimes do it on webpages, but maybe that one is a feature instead of a bug lol

jez
6 replies
22h6m

This is my biggest complaint with keybindings on Linux/Windows, that Ctrl means “escape codes” in terminal emulator applications and “window/UI operations” in every other application.

By contrast, in macOS all the window/UI keybindings are typically Cmd (Cmd-W) which means that GUI applications attempting to layer on vi keybindings don’t have to also audit all the Ctrl keybindings that might be doing something wildly different compared to what vi users expect.

Cmd for UI and Ctrl for terminal just makes for such a nice default convention.

sshine
2 replies
21h57m

Configurable windows managers on Linux let you code a “super” key. I like the Window key, since it serves no other purpose, and never overlaps with default bindings on Linux.

So the Cmd/Ctrl split on Mac maps nicely to the Win/Ctrl split on Linux.

opan
0 replies
18h18m

Super is the "Windows" key (or the Command key), it's the "mod key" that can then be set to super or alt/meta or whatever.

For the reasons you suggest (WMs often heavily using the super key), I would not want it to be used in the macOS way as I have a few dozen keybinds I'd lose or have to remap then. Stuff like focusing or moving windows or workspaces. Emacs can also make use of the super key, though I don't know if it has anything bound using it by default.

The macOS approach is cool and makes some sense, but I wouldn't want it forced on me, and I'm kinda glad I didn't imprint on it.

godelski
0 replies
20h13m

While I do this too I understand the above complaint. I think naturally linux should have more of a system similar to what OSX does. I mean I'm constantly switching between OSX and Linux machines but more and more recently I've been at at mac computer while inside a linux system and that is very seemless because it is the GUI that fucks shit up. But now there's so much momentum that I'm not sure they can go back. I think the only way to make this correction is for a big distro like Ubuntu/Pop/Manjaro/Endeavor to switch to a default with alt or super as they windowed operating key but have the option to switch back (should be implemented in the install process and made clear and easy to undo. But without making it the default it'll always stay the other way. (first introduction should be non-default)).

mikepurvis
0 replies
21h59m

I agree— having switched back to Windows five years ago, this is one of the biggest things I miss about the Mac hardware. Having a separate key just avoids the whole drama around whether Ctrl-C is "copy the thing" or "shut it all down", and which of those functions is going to get remapped to Ctrl-Shift-C and all the fallout from that.

medstrom
0 replies
9h24m

When you use EXWM (Emacs X Window Manager), this is actually a blessing! It means you can bind Super keys only in Emacs and have them do exactly the same thing every time, while the other X apps (terminals, browsers...) get the Control key to themselves.

likeclockwork
0 replies
2h56m

This isn't true though. Control + arrow keys for example navigate desktops on MacOS. On Linux I can at least restrict my desktop environment's shortcuts to super, leaving the other mods open for applications. MacOS uses every single modifier, sometimes together.

slim
1 replies
20h51m

we old vi users don't use key combinations, that's an emacs thing :)

godelski
0 replies
19h24m

I don't think old means better. I agree that you should use whatever is best for you and makes you more productive (why I doing care about vim vs emacs debates) but I think you're giving up a lot. You're given and unless color blind then you are missing the added dimensions you searching with things like syntax highlighting. All your commands exist in vim, but come on, you've had the last 33 years to update. My configs update as I change too, so I hope that you aren't stuck because I don't like vi for the same reason I don't like GUIs: not all holes are round and not all pegs are square.

moelf
0 replies
20h59m

and they don't also rebind <C-w>. Go from trying to delete a word (backwards) but end up losing a whole session

This is literally why Vim binding for Jupyter doesn't work for me and also why the "terminal" in Jupyter Lab is worse than not existing -- I can't help but press C-w

night_cat
6 replies
22h57m

Btw, this is not actually deleted, but put in the trash can.

But it seems that this hotkey is not good for many people. It may be changed in the next version. Thanks for your feedback.

ghostly_s
2 replies
22h53m

I use a number of apps where ctrl-d is a common non-destructive shortcut, and can't recall ever encountering one where it was used for delete.

2024throwaway
1 replies
20h35m

k9s does a delete for ctrl+d

gray_-_wolf
0 replies
3h46m

With a prompt, asking for confirmation if I recall correctly...

behnamoh
1 replies
13h45m

How do I undo CTRL-d deletes? I almost deleted all my home dir...

night_cat
0 replies
12h30m

I am so sorry to hear about that:(

You can go to "~/.local/share/Trash" all files that you deleted are at there

opan
0 replies
17h34m

In ranger, dd is cut/mv and dD is delete, but dD on one file spawns a command with :delete typed in so you have to hit enter to pull the trigger, and doing it with multiple files has the same behavior plus adds a y/N prompt asking if you're sure you want to delete those specific files. This is enough friction to prevent most mishaps, but not enough to be annoying. I would suggest taking inspiration from this.

StrLght
1 replies
1d

So there's no confirmation for deletion? Oof, that's probably the most unsafe default I have seen in a while.

night_cat
0 replies
12h29m

There will be a prompt for complete deletion, but there will be no prompt for putting it in the trash can.

twobitshifter
0 replies
19h52m

Yes those defaults won’t really work for vim. Escape exits the program, without even using it, I already know I am going to exit a zillion times once my brain thinks I am in Vim.

But the good thing is they are just defaults. Hopefully there are already no legions of users resistant to any changes to defaults.

tmtvl
0 replies
18h2m

I used vim for 5 years and never knew about C-d for scrolling until after I had switched to Emacs and one day, on a whim, decided to install and activate evil and look what various commands were bound to. I removed evil immediately afterwards as 5 years of vim taught me to hate modal editing with a passion.

patwie
0 replies
1d1h

These key-bindings are pure evil for vim users.

luqtas
0 replies
22h49m

what's even the point of downloading something so banal & not read the docs; comment at the post WITH the warning of it not complaining with Vim shortcuts when it's clear that Emacs is ballparks better? /s

likeclockwork
0 replies
1d1h

Holy shit, thanks for the warning.

gouggoug
0 replies
1d

Even for non-vim users this default is absolutely horrendous

kwhitefoot
9 replies
1d2h

$ spf spf: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by spf) spf: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by spf)

I'm on Linux Mint 19

opheliate
5 replies
1d2h

An operating system from 2018 which is no longer maintained by its vendor? https://www.linuxmint.com/rel_tara_cinnamon_whatsnew.php

I think it's somewhat unreasonable to expect software released today will necessarily work on your environment without some legwork.

isopede
4 replies
1d

Is it though? I can run Windows programs from 20 years ago on my Windows machine just fine.

Issues with Linux binary distribution meanwhile are ubiquitous, with glibc probably being the single biggest offender. What's worse is that you can't even really statically link it without herculean effort. I've spent an inordinate amount of my life trying to wrangle third-party binaries on Linux libraries and it's just a sorry state of affairs.

Try taking a binary package from a vendor from even just 5 years ago and there's a non-zero chance it won't run on your modern distro.

donio
2 replies
1d

You are talking about backward compatibility, the parent thread is about forward compatibility. You won't have much luck running a modern executable on XP unless the vendor went out of their way to make that happen.

What's worse is that you can't even really statically link it without herculean effort.

The program we are discussing happens to be written in Go so it's trivial to build a statically linked executable.

worthless-trash
1 replies
11h8m

Are you sure you want glibc statically linked into your go executable ?

donio
0 replies
6h30m

glibc won't be used at all.

With Go on Linux libc is only needed when the libc DNS resolver is used (instead of Go's built-in one) or if C libraries are used. superfile doesn't need either of these so it's very simple to build it as a pure Go executable which will be statically linked and contain no C code at all.

qwery
0 replies
9h47m

It's an interesting comparison. I agree that five years is well within the expected period of viability of an operating system. Some points to consider:

- any given release of a Linux distro will probably work on hardware released five years earlier -- one factor that reduces the cost of upgrading the OS (there are many more obvious factors)

- Microsoft is highly motivated to get customers to upgrade to the new Windows at the time. The legacy support is well-known as a "bone" (or: "a factor that reduces the cost of upgrading the OS")

- binary backwards/forwards compatibility is less of an issue in an environment that doesn't treat source code as a secret

- why run old versions of software? In other words: xterm is older than Windows and also as new as Windows

Also, I've always found it amusing that I have much less trouble running old windows software on a Linux (wine) than on new versions of windows.

mcbuilder
0 replies
1d2h

This is a linking issue (you're missing a specific version of a dynamically linked standard library), and probably best in the issues on the repo, not Hacker News.

colatkinson
0 replies
1d1h

Your version of glibc is too old. Mint 19 is based off Ubuntu 18.04, which ships glibc 2.27, whereas this binary seems to require symbol versions first shipped in glibc 2.34.

You'll have to compile from source, or update your distro to a maintained version. Ubuntu 22.04 ships glibc 2.35, and so Mint 21 should work.

Mostly commenting because while this isn't really a tech support channel, being able to identify glibc version mismatch errors comes up extremely often, even in this day and age.

antihero
0 replies
1d2h

They could build it with CGO_ENABLED=0, if they are using Alpine, perhaps.

schindlabua
8 replies
1d2h

Love all the terminal tooling that's come out in recent years. I'm this close to chrome and rofi being the only gui I'm using on my work machine. This looks great!

hxegon
3 replies
21h3m

A lot of the new tooling is in Go, superfile included. Noticed this after I started using LazyGit (incredible tool btw, I can't go back to anything else even after being a die hard Magit user for years)

There's some stellar libraries in Go for terminal stuff, in particular anything from charmcli. They have an elm style TUI framework called bubbletea (which superfile uses), a styling library, prebuilt components, it's really incredible. I'm building a multiplayer tetris you can play through ssh, which is using bubbletea and another lib of theirs called wish.

they have a lot of stuff you can just use in regular shell stuff too: https://charm.sh

medstrom
1 replies
9h30m

I don't know about Charm so maybe someone can check their Github, but there's a dark pattern where you market yourself as open source but not all your components are actually released to the public, so you have a nice GitHub icon on your front page that just leads to silly minor extensions but not the main software. ObsidianMD does it.

mynameisvlad
0 replies
4h11m

Where does Obsidian claim they’re open source? Where have they ever done that? And no, having a GitHub icon does not magically announce to the world “we are open source”.

In fact, their license page makes it abundantly clear they are not open source:

We own and reserve rights to our content, including text, images, and code in the app, which is protected by copyright and other laws.

https://obsidian.md/license

I get this argument if a company or product claimed it was open source and it wasn’t, but it just doesn’t work if the product in question makes it quite clear they are not, or even leaves it ambiguous.

jjuel
2 replies
1d

Isn't the terminal program technically a GUI?

ghodith
1 replies
1d

Technically a TUI?

Hasnep
0 replies
15h24m

I think GP was referring to the terminal emulator, which normally has the minimal GUI decorations depending on the terminal emulator and your desktop environment.

snapplebobapple
0 replies
2h52m

For me its rofi and a tiny bar on top of (ne of my hyprland windows for basic information (clock,calendar,widgets for network/volume/screenbrightness) its awesome

safetytrick
7 replies
1d1h

With a dependency on a font. Wow, it's been a while since I've seen that.

explosion-s
6 replies
23h59m

Fairly commonplace for TUIs that use icon. Tons of vim plugins rely on NerdFonts (A regular monospace font that also includes tons of icons)

apitman
5 replies
15h20m

Is there any technical reason the font can't be shipped in the binary and installed automatically?

wpm
4 replies
10h10m

Which font? What license? Which one does the user want?

Where does it get installed? Will the user consent?

I did not use a Nerd Font until I tried superfile out today. It was not hard to build my own nerd font version of Berkeley Mono with font forge.

apitman
2 replies
4h7m

I very well might be in the minority of Linux users, but I don't particularly care about the answers to most of these questions. I just want it to work. Give me solid defaults[0]. I'm not saying you shouldn't be able to override those defaults. That's an important feature of Linux.

My first experience running a cool-looking TUI file manager yesterday (I actually ended up trying yazi first) was that I got a lot of blank squares in place of missing icons and emojis due to missing fonts. I had to spend 20 minutes figuring that out before I got a good experience.

Interestingly, I also tried wezterm[1] in the process. It actually ships with the required fonts as fallback, but the version from my distro's package manager didn't work (the AppImage did). I'm guessing my distro removed them, maybe for some of the reasons you cited. I started installing the nerd-fonts group for my distro. 6.5GB... no thanks. After manually poking through them and some googling I finally installed a couple and it's working now.

My overall point is that it's possible for app developers to provide good defaults like wezterm does. It's also possible for distro's to break those defaults. Also, if size is a concern then at least detect that I don't have a working font and offer to download one for me.

[0]: https://blog.codinghorror.com/the-power-of-defaults/

[1]: https://wezfurlong.org/wezterm/

pinusc
1 replies
2h11m

Regardless of wanting sane defaults, this is not something superfile can do on itself: it runs in a terminal, and normally terminal programs do not get to choose what font is used.

So the "best" it could do is bundle the font file, but then you would still have to configure your terminal to use it. At that point, it's easier to just tell you you need a nerd font and link to their repo.

That being said, I kind of agree that, since NerdFonts are pretty good and by now quite widespread, it wouldn't be a bad idea for major distros to patch their default monospace fonts so that you get NerdFonts out of the box in the default terminal.

But, in general, if you go out of your way to install a different terminal emulator, it's unlikely you'd have much trouble changing its font anyway; still, getting everything to look nice and pretty is sometimes harder, so I suppose wezterm is commendable for including fonts and colorschemes.

(The above really mostly applies to fonts as they are an additional dependency and also highly dependent on user preference. For pretty much everything else I agree that good defaults are under-emphasized in CLI/TUI utilities. Probably because options usually get added incrementally and breaking historical defaults is not a good idea.)

apitman
0 replies
41m

Would it be possible for the program to detect that the current font doesn't support all the features you need and tell you?

medstrom
0 replies
9h21m

Besides, you still have to set your terminal to use that font. Not as if typing `spf` on the command line can reconfigure whichever terminal you are on.

teddyh
6 replies
1d3h

Why is this better than Midnight Commander or GNU Interactive Tools?

hidelooktropic
5 replies
1d3h

There's not so much as a screenshot of MC on their official page. Hard to say.

Did the author say their product was better?

yjftsjthsd-h
4 replies
1d2h

I think it's fair to ask of any new program why to use it rather than an existing option. And there can be lots of reasons - more active development, new features, less buggy, smaller program (uses less disk/memory, easier to be less buggy), easier to install, easier to use, whatever. And the author of a program doesn't necessarily need to have an answer, especially not early on; programming is sometimes its own reward, and sometimes advantages only become obvious later. But as a user, yeah it's useful to know what advantage this thing has over all the other things that do the ~same stuff.

nine_k
2 replies
1d2h

I won't say that mc is really buggy, nor that it's large. But even if it were, it's weird to not even mention it, let alone compare with it, while likely most of the target audience has been using mc for years (or decades, like me).

latchkey
1 replies
1d1h

or decades, like me

Heh, I ported mc to Apple's A/UX back in the early 90's!

nine_k
0 replies
13h41m

Thank you! My first experience was building it from source under Digital Unix (on an Alpha 264) in 1995.

logrot
0 replies
1d2h

why to use it

Of course. But that's not what he asked.

necrotic_comp
5 replies
21h49m

so I don't understand what the usecase for a terminal file manager is. I've always felt comfortable using cp/mv/mkdir/etc. but I feel like I'm missing out. Can someone explain how and why you'd use this ?

wonger_
3 replies
20h41m

Three advantages I realized, having done a lot of cd/ls/cp/mv/rm and also having used a file manager:

- power user workflows may differ from typical dev workflows. Imagine things that a point-and-click file manager solves quicker than the command-line. Example: manually organizing a bunch of .mp3s, or cleaning out misc downloads. A TUI file manager makes these tasks quicker too.

- quick directory navigation. cd is slow. There's solutions for a better cd, involving z or fzf or whatever. But a file manager should solve it too.

- a file manager, especially a two-pane view, is cognitively easier. Better UX. Example: Having a src/ pane on one side and dst/ on the other, selecting a few src/ files, then performing a copy command. You get instant visual feedback to confirm that the files appeared in dst/. Compared to ls, cp file1 file2 file3 dst/, ls dst/. I always feel the need to ls after commands because the command-line doesn't give much feedback.

tldr: speed, ux, comfort. But if you're already comfortable with your tools, I think that's the most important thing.

bregma
1 replies
6h52m

Hardly speed or UX. Type a quick command on the CLI yo do any of that stuff and it's finished before you can even use you arrow keys to move between various regions of the screen and move your eyes around the work area to confirm everything and select your actions and move your gaze again to confirm the result is what you expect.

It's all about what you're used to and what you know. If you grew up in the age of the point-and-click GUI you might feel more comfortable using visual metaphors and stateful UIs for your intended actions. Others prefer to issue orders and have them obeyed without the song, dance, and lightshow.

wonger_
0 replies
3h5m

I agree that looking around multiple panes is slow and arrow keys are slow, and that typical UI ceremony is unnecessary. But there's a benefit to seeing state changes and holding less state in your head. Kinda like `ed` versus `vim`. Someone comfortable with both editors would acknowledge vim makes some edits easier.

Of course, issuing orders still has its advantages. And yes, growing up with GUIs makes a big difference.

necrotic_comp
0 replies
20h4m

Thanks. That makes sense. I guess I'm just super entrenched - very comfortable with my tooling and would generally write a one-liner for something like the above.

The way I do it is a bit nuts though, and you're right, the above is much more consistent and has its advantages

massysett
0 replies
1h54m

With long filenames with characters like spaces, it can be easier to see them in a list, pick the ones you want, and operate on them in a GUI or TUI (same principle applies to Emacs Dired) than in a CLI. I can use the CLI and stumble around running ls multiple times and using tab completion, but the GUI or TUI can just be easier.

LAC-Tech
5 replies
16h2m

What is a "nerd font" and why does this app need one?

(Yes I know I could look it up but maybe this will spark a discussion)

wormius
4 replies
15h52m

Nerd Fonts contain glyphs that allow things like the git strip you see at the bottom of code editors ("powerline"), along with ligatures (e.g. if you type <= it merges so it looks more like the math symbol of a less than sign and a single line at the same angle just below the < sign...)

https://www.nerdfonts.com/

And here's an example of ligatures (see the image on the right - you type what's on the left, and the right image is what shows in your editor): https://hilton.org.uk/blog/fira-code

I think but am not sure as I haven't looked in a while, that the folder and file icons are part of the nerdfonts as well, that regular fonts would just show as the generic "missing glyph" symbol.

apitman
3 replies
15h19m

Are there any terminals that ship with nerd fonts, or is it always something that has to be at the OS level?

Is there any technical reason the font can't be shipped in the binary and installed automatically?

qwery
1 replies
9h30m

There's no technical reason the font couldn't be shipped in/with the binary. The main reasons this doesn't happen are probably:

- this is what a package manager is for

- installing the font/s (from the application?) would be a bit of a dick move and also presents a technical challenge (in other words: that's what a package manager is for)

- concerns about the efficiency of many applications all shipping duplicate assets (package manager again)

- concerns about distribution rights

- not all users will want to use the same font and this is an unsolvable problem -- do you ship: no fonts | one unwanted font | the user's preferred font that they already have installed plus all the other user's fonts

apitman
0 replies
3h59m

this is what a package manager is for

My first experience running a cool-looking TUI file manager yesterday (I actually ended up trying yazi first) was that I got a lot of blank squares in place of missing icons and emojis due to missing fonts. I had to spend 20 minutes figuring that out before I got a good experience.

Interestingly, I also tried wezterm[1] in the process. It actually ships with the required fonts as fallback, but the version from my distro's package manager didn't work (the AppImage did). I'm guessing my distro removed them, maybe for some of the reasons you cited. I started installing the nerd-fonts group for my distro. 6.5GB... no thanks. After manually poking through them and some googling I finally installed a couple and it's working now.

My overall point is that it's possible for app developers to provide good defaults like wezterm does. It's also possible for distro's to break those defaults.

not all users will want to use the same font and this is an unsolvable problem -- do you ship: no fonts | one unwanted font | the user's preferred font that they already have installed plus all the other user's fonts

For me, I would absolutely prefer one unwanted font instead of losing those 20 minutes. If I don't like the font it ships with I should be able to override it. If size is a concern then don't ship the font, but detect that I don't have a working one and offer to download a default for me.

[0]: https://blog.codinghorror.com/the-power-of-defaults/

[1]: https://wezfurlong.org/wezterm/

globular-toast
0 replies
11h4m

On Linux you can just chuck fonts in .local/share/fonts in your home directory. You can keep them in folders in there so just unzip the whole nerdfont archive there.

kwhitefoot
4 replies
1d2h

"You can go to the latest release and download the binary file. Once it is downloaded please excrate the file after that enter the following in your terminal:"

Is excrate some new jargon meaning to take something out of a crate? Or just a boring typo for extract?

wegwerff
0 replies
10h15m

Typo for "execrate" meaning "invoke a curse on". If you find the right spell to cast in your terminal, it will reveal its contents to you.

nine_k
0 replies
1d2h

It's a perfectly cromulent word. Let's use it more widely, and it will become a real word, like "quiz" or "blog" have become.

night_cat
0 replies
1d2h

Just typo..

NikkiA
0 replies
20h15m

Or a typo for extricate

idunnoman1222
4 replies
1d3h

Brew install superfile

Now guess what the executable is called…

lsllc
1 replies
1d2h

Yes, I had the same question! (`spf` for the curious!)

EDIT: To be fair, right at the beginning of the tutorial is:

First, if you want to open superfile by opening a terminal and typing spf.
quesera
0 replies
1d

A symlink would be a good solution.

fkyoureadthedoc
0 replies
1d3h

I almost didn't even try to figure it out after I installed and the `superfile` command didn't work.

eddd-ddde
0 replies
1d1h

This happens to me quite often.

pacman -Ql <package> | grep bin

There must be similar commands for other package managers.

terminaltrove
3 replies
1d1h

superfile looks great, we have this listed on the trove (1) for other package managers, we love what's been done recently in the terminal / tui space.

I encourage also supporting the author as well on their ko-fi page for a new laptop. (2)

1. https://terminaltrove.com/superfile/

2. https://ko-fi.com/night_cat

pandemic_region
1 replies
10h22m

Thanks for the terminal trove tip ! Subscribed.

I feel the market is ripe for a terminal ide again. Anything interesting going in in that space?

night_cat
0 replies
23h0m

Thanks you so much,I really like terminal trove!

sneak
3 replies
20h13m

The first thing this app does is connect to Microsoft servers to download theme files, which for some reason aren't bundled into the binary. If you block it from accessing the internet, it crashes.

friend_and_foe
1 replies
19h10m

That's pretty bad for a terminal utility and file manager. The thing should never, ever connect to the internet for anything unless explicitly told to by the user. I didn't notice this, thanks for pointing it out.

sneak
0 replies
7h27m

Why is that the standard for a terminal utility and not GUI software? Why do we accept GUI software that does update checks and phone-home telemetry without configuration or consent?

I’m really curious about this, not to derail the thread.

night_cat
0 replies
7h51m

Hey thanks for your feedback I just update it to make it a optional! Now you can by typing command to download all themes.

opan
2 replies
17h45m

Based on the comments here about weird inconsistent keybinds and accidental file deletions, I won't be trying this for now, but I will keep an eye on it. I use ranger very heavily every day, but it being slow pythonware is sometimes a problem with extra large dirs and when changing the sort mode often. lf is too barebones for me, I don't know how to recreate everything I'm used to from ranger. Something fully-featured but faster than ranger would be ideal.

If you're taking suggestions, making file copies use rsync under the hood would be great. I used to copy files over sshfs with ranger a lot and then found out the hard way that it was occasionally failing/being interrupted and then silently moving on in the transfer queue, so I had partial and corrupted video files it took months to notice. I do also use rsync for transfers a lot of the time, but sometimes you wanna move a bunch of files to different directories, and something like ranger is just faster and easier. Especially when you don't want everything from the source on the destination for space reasons, so can't just rsync whole dirs to grab the new stuff.

sudddddd
1 replies
16h52m

As an alternative to ranger, I have switched to yazi completely.

behnamoh
0 replies
13h32m

yazi is written in Rust. Holy shit, this is the 10th app I try that's written in Rust and all of them are super fast and snappy!

insane_dreamer
2 replies
1d

Looks nice! Not sure if it's enough to pry me away from MC, but worth a look.

insane_dreamer
1 replies
1d

very first impression after <30 sec: having to press ^F or any key to enable filename/folder search in a folder creates friction vs. MC's approach where typing automatically starts search of current folder so you can hit a couple of keys, press enter, etc. Would be nice if that were a mode here too.

sooheon
0 replies
1h59m

This type-to-search-immediately functionality is why I still have Launchbar installed on all my Macs -- there's nothing faster for navigation/moving/operations, even in the terminal.

coppsilgold
2 replies
13h11m

It appears to require network access. A file manager should not be dialing anything, especially not on startup.

     Error downloading theme: Get "https://github.com/MHNightCat/superfile/raw/main/themeZip/v1.1.2/theme.zip": dial tcp: lookup github.com on 8.8.8.8:53: dial udp 8.8.8.8:53: connect: network is unreachable

night_cat
0 replies
12h54m

This is theoretically only needed the first time a new version is used and its purpose is to download the themes.

night_cat
0 replies
7h50m

Hey thanks for your feedback I just update it to make it a optional! Now you can by typing command to download all themes.

3523582908
2 replies
1d1h

gorgeous!! did you build the ui yourself or did you use a package to help? how did that go?

paranoidxprod
1 replies
1d1h

Seems like they're using Bubble Tea, a Terminal UI framework for Go. I've heard very good things about it and have been meaning to check it out.

https://github.com/charmbracelet/bubbletea

Cu3PO42
0 replies
1d

The same project has an application called Gum which exposes primitives from their UI framework via a single CLI binary. It's intended to be used from a normal bash script and I've found it really quite pleasant to use.

For example, you could write 'gum choose foo bar baz' to get a nice picker over the three provided options.

Their repo has a ton of examples: https://github.com/charmbracelet/gum

shdisi
1 replies
20h2m

I tried this out and within a few minutes had delete a few directories. Luckily I was in a git repo but I still immediately uninstalled this

baobun
0 replies
15h3m

For anyone else (considering) switching file manager: Check if it depends on the gvfs package or not. You either want it (virtual filesystem support, stuff working "out of the box", background daemon, DE integrations) or you don't.

So there's one factor to cut the search-space in ~half :)

I'm recently trying out worker[0] and so far it's great.

[0]: http://www.boomerangsworld.de/cms/worker/index.html

copperbrick25
1 replies
1d2h

Tried it out for a minute and it crashed because I had a broken recursive symlink in my home directory:

1. Create a recursive symlink to itself: `ln -s test test`

2. open superfile and navigate to it.

3. Observe crash

night_cat
0 replies
1d1h

Hey, thanks for the report, I fixed it!

anigbrowl
1 replies
22h40m

  brew install superfile
  (ok)
  superfile
  (not found)
  find superfile
  (not sound)
  cd /usr/local/Cellar/superfile/1.1.2/bin
  ls
  spf
This is mentioned in the tutorial but it's probably worth mentioning in the install section to save people 5-10 minutes of confusion. Once I found the filename I loved it.

medstrom
0 replies
9h39m

Or even provide superfile as an alias which prints a message saying "you can also call it as spf", once a day. People don't read install sections.

swozey
0 replies
23h40m

This reminds me of a Windows 3.5 app called List (IIRC) that one day I lost the floppy to and as a 7 year old kid was completely lost without. So I installed bsd and broke my dads computer instead.

slmjkdbtl
0 replies
2h42m

I find most ergonomic to write file manager as a vim plugin, I can just open things directly as buffers, only need to hit one key to toggle between file editor and file manager.

qwertox
0 replies
22h16m

This did send me down a rabbit hole, and I ended up installing nnn (n³), only then to land on their GitHub page and staring at the keyboard layout and testing stuff out in the terminal. It is interesting and I wonder how it's getting used.

[1] https://en.wikipedia.org/wiki/Nnn_(file_manager)

qudat
0 replies
1d3h

Looks like it's using bubbletea, nice!

monopoliessuck
0 replies
20h52m

This looks neat, but has a lot going on.

I really like how minimalist yet extensible lf [0] is and just use edir [1] to rename files in bulk. Gluing them both together is really easy too.

- [0] https://github.com/gokcehan/lf

- [1] https://github.com/bulletmark/edir

micklemeal
0 replies
1d3h

This looks pretty nice! I like the ability to add multiple file panels versus tabs that are common with nnn and ranger. Going to give this a spin today.

lupusreal
0 replies
1d2h

Looks very swanky. Not sure if I'll replace ranger but this is definitely a contender.

godisdad
0 replies
1d

Dope. Reminds me of far.exe

gigatexal
0 replies
1d

play this is very pretty

friend_and_foe
0 replies
19h51m

Just tried this out...

Looks nice. I dig the nerd font thing, I'd never used them because all of my TUI stuff is ncurses and the like, it's a nice thing to be able to do. I like the outline. I don't like a few things.

- Ctrl keys galore. I'm partial to vim keys, a lot of the keybinds on here are vim style, why not make it all of them?

- some of the defaults are weird or potentially dangerous. There's no confirmation for deletion for example, PageUp and PageDown don't work, cursor auto wraparound is a little confusing for something like this, and the cursor isn't a highlight, just a >.

- Bubbletea always seem to have a minimum terminal size which drives me nuts. Btop and other programs I've used have this problem.

All in all I like the ability to open multiple panes, the ability to open network drives, see ongoing/completed processes and see the clipboard. I find I virtually never need more than two panes though, and there are plenty of CLI utilities for FTP and stuff. I'm probably going to stick with an old school dual pane like vifm or MC. I'll keep this on my machine and test it out some more next time I need to connect to an ftp server or something, I like that it provides most of the functionality that graphical file managers like Nautilus have, I do miss some of that stuff in my terminal oriented environment, but not enough to go full mouse, so it's good to know I have an option that gives me some of both.

courseofaction
0 replies
38m

Looks awesome, but it's hard to use intuitively without hotkeys on screen.

christophilus
0 replies
20h48m

I love that there are a lot of great options in this space. This one looked nice due to its selection pane: https://xplr.dev/

camgunz
0 replies
1d3h

Is the author really only 16? Wow!

bomewish
0 replies
14h27m

Started with nnn, switched to yazi — it’s amazing. Any other solution would have to be incredibly good to switch.

berzzz
0 replies
1d3h

Very nice!

anta40
0 replies
1d2h

Very cool. Seems like a revamped version of Midnight Commander. Let me try..

TheAmazingRace
0 replies
1d3h

Wow, this looks super slick! Kudos to the developer for a fantastic little project!

Iwan-Zotow
0 replies
19h31m

Does it work in Windows terminal? Any good?