aboutsummaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authoremmett1 <me@emmett1.my>2026-06-16 07:43:51 +0800
committeremmett1 <me@emmett1.my>2026-06-16 07:43:51 +0800
commit40e5d2815cc6cdff95751af9377ebe3ff33daf81 (patch)
tree9791e4718891449e3818ce8e01286622263eeaa8 /README
parent0504dec9c7448aac74132054217e7bc3c437b424 (diff)
downloadsfm-40e5d2815cc6cdff95751af9377ebe3ff33daf81.tar.gz
sfm-40e5d2815cc6cdff95751af9377ebe3ff33daf81.zip
added cpp version, sh version as backupv1.0
Diffstat (limited to 'README')
-rw-r--r--README39
1 files changed, 24 insertions, 15 deletions
diff --git a/README b/README
index 36d2baa..310bfe4 100644
--- a/README
+++ b/README
@@ -4,16 +4,23 @@ sfm - Simple File Manager
DESCRIPTION
-----------
-sfm is a lightweight, terminal-based file manager written entirely in
-POSIX sh. It runs in your terminal with no external dependencies beyond
-standard Unix tools (ls, awk, tput, stty, mv, cp, rm). Designed to be
-fast, flicker-free, and keyboard-driven with a vim-inspired key layout.
+sfm is a lightweight, terminal-based file manager with a vim-inspired
+key layout. The primary version is a fast C++/ncurses binary. A portable
+POSIX sh version (sfm.sh) is also included, requiring only standard Unix
+tools (ls, awk, tput, stty, mv, cp, rm).
REQUIREMENTS
------------
+C++ version (sfm):
+- ncursesw (libncursesw)
+- A C++17 compiler (g++ or compatible)
+
+Shell version (sfm.sh):
- A POSIX-compatible shell (sh, dash, bash, etc.)
- Standard Unix tools: ls, awk, tput, stty, cp, mv, rm, mkdir, touch
+
+Both versions:
- Optional: wl-copy / xclip / xsel / pbcopy (for clipboard support)
- Optional: mpv, vlc, feh, zathura, etc. (for smart file opening)
- Optional: readlink (for symlink display)
@@ -23,21 +30,23 @@ REQUIREMENTS
INSTALLATION
------------
Using make (recommended):
-
+
make install
-
-This installs sfm to /usr/local/bin by default. To change the prefix:
-
+
+This builds the C++ binary and installs both sfm (C++ binary)
+and sfm.sh (shell script) to /usr/local/bin by default.
+To change the prefix:
+
make install PREFIX=/usr
-
+
To uninstall:
-
+
make uninstall
-
-Manual installation:
-
- cp sfm /usr/local/bin/sfm
- chmod +x /usr/local/bin/sfm
+
+Manual installation (shell version only):
+
+ cp sfm.sh /usr/local/bin/sfm.sh
+ chmod +x /usr/local/bin/sfm.sh
USAGE