Skip to content

BeanieBarrow/superfile

 
 

Repository files navigation

SUPERFILE

Demo

Perform common operations

Content

Features

  • Fancy gui
  • Fully customizable
  • Vim's selection mode
  • Easy to use
  • Trash can
  • Metadata detil
  • Copy file to the clipboard
  • Copy and paste file
  • Auto rename file or folder when duplicate
  • Rename files in a modern way
  • Open file with default app
  • Open terminal with current path

Install

I am still working on different installation methods like homebrew and snap

Requirements

Homebrew

If you want to use homebrew please install go first!

brew tap mhnightcat/superfile https://github.com/MHNightCat/homebrew-superfile.git && brew install superfile

Linux

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:

cd ~/Download
chmod +x ./spf
sudo mv ./spf /bin/

Exiftool

exiftool is a tool used to obtain file metadata. If it is not installed, it will cause errors.

Installation:

# Homebrew:
brew install exiftool

# Fedora:
sudo dnf install perl-Image-ExifTool

# Ubuntu:
sudo apt install exiftool

# Archlinux:
sudo pacman -S perl-image-exiftool

NixOS

Click to expand

Add superfile to your flake inputs:

inputs = {
  superfile = {
    url = "github:MHNightCat/superfile";
  };
  # ...
};

Then you can add it to your packages:

let
  system = "x86_64-linux";
in {
  environment.systemPackages = with pkgs; [
    # ...
    inputs.superfile.packages.${system}.default  ];
}

Font

WARNING: This is a reminder that you must use a Nerd font

Once the font is installed if superfile isn't working make sure to update your terminal preferences to use the font.

Build

You can build the source code yourself by using these steps:

Requirements

Build Steps

Clone this repo using the following command:

git clone https://github.com/MHNightCat/superfile.git

Enter the downloaded directory:

cd superfile

Run the build.sh file:

sh build.sh

Move the binary file to /bin (on Linux):

mv ./bin/spf /bin

or on OSX:

mv ./bin/spf /usr/local/bin

Supported Systems

  • Linux
  • MacOS
  • Windows

Themes

Use an existing theme

You can go to theme list to find one you like!

We only have a few themes at the moment, but we will be making more over time! You can also submit a pull request for your own theme!

copy theme_name in:

theme name in config: theme_name

Edit config.json using Nano:

nano ~/.config/superfile/config/config.json

Edit config.json using Vim:

vim ~/.config/superfile/config/config.json

then change:

"theme": "gruvbox",

to:

"theme": "theme_name",

Create your own theme

If you want to customize your own theme, you can go to ~/.config/superfile/theme/YOUR_THEME_NAME.json and copy the existing theme's json to your own theme file

Now you can customize your own theme!!

And if you complete your theme you can change:

"theme": "gruvbox",

to:

"theme": "YOUR_THEME_NAME",

If you are satisfied with your theme, you might as well put it into the default theme list!

Hotkeys

Click me to see the hotkey list

You can change all hotkeys in ~/.config/superfile/config/config.json

Edit config.json using Nano:

nano ~/.config/superfile/config/config.json

Edit config.json using Vim:

vim ~/.config/superfile/config/config.json

"Normal mode" is the default browsing mode

Global hotkeys cannot conflict with other hotkeys (The only exception is the special hotkey).

The hotkey ranges are found in config.json

Contributing

If you want to contribute please follow this contributing guide for this project. Contributing

Todo list

I will do my best to complete this list haha

1.1

  • Auto init config file
  • Add more theme
  • Open terminal in the focused file panel location
  • Open file with enter key
  • File panel search / filter
  • Add help bar down below bottom bar
  • Extract files
  • Compress files
  • Can cancel the progress of the process bar
  • Undo function
  • Auto clear trash can

1.2

  • AES encryption and decryption
  • Auto clear trash can
  • Can cancel the progress of the process bar

Star History

THANKS FOR All OF YOUR STARS!

Star History Chart

About

Pretty fancy and modern file manager in terminal

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Go 97.9%
  • Nix 1.5%
  • Shell 0.6%