diff options
author | qkzk <qu3nt1n@gmail.com> | 2023-03-11 17:43:37 +0100 |
---|---|---|
committer | qkzk <qu3nt1n@gmail.com> | 2023-03-11 17:43:37 +0100 |
commit | a739660175dbadd5417129bf8af319c92a532ae4 (patch) | |
tree | d5c344b10b59a0c111109b76afdb5f3a9d0eb775 | |
parent | 2d0ce2896868f8fc72b560be5ebaa2a4f729b9dd (diff) |
improve help & readme
-rw-r--r-- | readme.md | 56 | ||||
-rw-r--r-- | src/help.rs | 6 |
2 files changed, 46 insertions, 16 deletions
@@ -51,17 +51,20 @@ If you added the [recommanded function](#cd-on-quit) to your bashrc/zshrc, simpl ## Features +Some features depends on external programs to keep fm from being really bloated. + - Navigate with the arrows or the mouse (left select, right open, wheel) - Open a file with o, enter or right click - Execute a file with a custom command with e - Copy / move / symlinks / delete with c, p, s, x - Create files, directory, rename with n, d, r - Open a new shell in this directory with s +- Start a configured TUI application with S - Flag a bunch of file, change panel with TAB and move/copy them ! - Many ways to jump somewhere : - g: type the full address (with completion enabled), - - G: a predefined shortcut (default root folders, home and mount points), + - G: a predefined shortcut (default root folders, home and mount points, gitroot, config folder), - j: by jumping to a flagged file, - ': by creating your own marks and jumping to them @@ -69,16 +72,24 @@ If you added the [recommanded function](#cd-on-quit) to your bashrc/zshrc, simpl - Preview most of files (text, highlighted code, binary, pdf, exif details, video/audio details, archives) with P - Display a tree view of directory by previewing it - Decompress an archive by opening it (o, enter, right click) +- Compress flagged files with C. Pick the desired algorithm from a menu. - Copy a filename/filepath to clipboard with Ctrl+n, Ctrl+p -- Rename a bunch of file with B. Flag files, B, edit the names and save the file. The renaming is done. +- Rename or create a bunch of file with B. Flag files, B, edit the names and save the file. The renaming is done. + You can create nested files with `a/b/c` which will create every intermediate folder if needed. - Use the integrated fuzzy finder (forked version of skim, an fzf clone) with Ctrl+f to navigate quickly +- The same fuzzy finder can find specific lines in files with Ctrl+s - Filter the view (by extension, name, directory only, all files) with F - Find files with / (with completion), flag files matching a regex with w - Detect removable disks automatically and jump to them in a few keystrokes (G, up, enter) - Drag and drop files (requires dragon-drop installed) with Alt+D - Trash a file with X, open the trash with Alt+o. x to remove permanently, enter to restore. Wipe the trash with Alt+x. -- Toggle the tree view with t. Fold folders with z. Unfold every folder with Z, fold every folder with Alt+z. +- Toggle the tree view with t. Fold selected folder with z. Unfold every folder with Z, fold every folder with Alt+z. - Open and mount encrypted devices. Open the menu with Shift+e, mount with m, unmount with u. +- diff the first two files / folders with D. +- Enter preview mode with Alt+P. Every file is previewed in the second pane. +- Contol MOCP with Ctrl+arrows. Ctrl+Left, Ctrl+Right: previous or next song. Ctrl+Down: Toggle pause. Ctrl+Up: add current folder to playlist +- Set the selected image as wallpaper with W. +- _Experimental_ enter "command mode" with ':'. Type the name of a command and it will be executed. Most of those features are inspired by ranger and alternatives (Midnight commander), the look and feel by dired. @@ -109,6 +120,7 @@ function f() { fi } ``` + For fish users, this is the function to add to your `config.fish` ```bash @@ -127,7 +139,7 @@ Press `h` by default to display the help. Your current keybindings are shown. Here are the default ones. ``` -fm: a dired like file manager. Keybindings. + Char('q'): quit Char('h'): help @@ -144,37 +156,42 @@ fm: a dired like file manager. Keybindings. Tab: cycle tab - Actions - - Char('D'): toggle dual pane - if the width is sufficiant + Alt('f'): toggle dual pane - if the width is sufficiant + Alt('p'): toggle a preview on the second pane + Alt('e'): toggle metadata on files Char('a'): toggle hidden Char('s'): shell in current directory Char('o'): open the selected file Char('i'): open in current nvim session + Char('I'): setup the nvim rpc address Char('P'): preview this file - Char('T'): display a thumbnail of an image + Char('T'): display infos about a media file Char('-'): move back to previous dir Char('~'): move to $HOME Char('M'): mark current path Char('\''): jump to a mark - Ctrl('e'): toggle metadata on files - Char('f'): Search next matching element + Char('f'): search next matching element Ctrl('f'): fuzzy finder + Ctrl('s'): fuzzy finder for line Ctrl('r'): refresh view Ctrl('c'): copy filename to clipboard Ctrl('p'): copy filepath to clipboard Alt('d'): dragon-drop selected file Alt('c'): open the config file + Char('W'): set the selected file as wallpaper with nitrogen - Action on flagged files - Char(' '): toggle flag on a file Char('*'): flag all Char('u'): clear flags Char('v'): reverse flags - Char('l'): symlink files - Char('B'): bulkrename files + Char('l'): symlink to current dir Char('c'): copy to current dir Char('p'): move to current dir Char('x'): delete files permanently Char('X'): move to trash + Char('C'): compress into an archive + Char('D'): display the diff of the first 2 flagged files - Trash - Alt('o'): Open the trash (enter to restore, del clear) @@ -182,13 +199,13 @@ fm: a dired like file manager. Keybindings. - Tree - Navigate as usual. Most actions works as in 'normal' view. - Char('T'): Toggle tree mode + Char('t'): Toggle tree mode Char('z'): Fold a node Alt('z'): Fold every node Char('Z'): Unfold every node - MODES - - Char('T'): TREE + Char('t'): TREE Char('m'): CHMOD Char('e'): EXEC Char('d'): NEWDIR @@ -200,13 +217,23 @@ fm: a dired like file manager. Keybindings. Char('O'): SORT Char('H'): HISTORY Char('G'): SHORTCUT - Char('/'): SEARCH Char('E'): ENCRYPTED DRIVE (m: open & mount, u: unmount & close) + Char('/'): SEARCH + Char(':'): COMMAND + Char('B'): BULK + Char('S'): SHELL MENU Char('F'): FILTER (by name "n name", by ext "e ext", only directories d or all for reset) Enter: Execute mode then NORMAL Ctrl('q'): NORMAL + + - MOC - + Control MOC from your TUI + CtrlUp: Add a file or folder to the playlist + CtrlLeft Previous song + CtrlDown: Toggle play/pause. Start MOC if needed + CtrlRight Next song ``` ## Configuration @@ -225,6 +252,9 @@ You can configure : - **Marks**. Users can save about 100 differents marks to jump to, they're saved in your marks.config file. It's easier to let fm manage your marks, but if you made a mess or want to start over, simply delete the file or a single line. +- **TUI applications**. Some classic TUI applications like htop, glances, btop, lazygit are already there. + Open the menu with `S` and pick the desired one. It will only work with a TUI application like HTOP, + not a CLI application like bat. ## Contribution diff --git a/src/help.rs b/src/help.rs index 4e9b61b8..fd8d4ed6 100644 --- a/src/help.rs +++ b/src/help.rs @@ -36,7 +36,7 @@ static HELP_TO_FORMAT: &str = " {Home}: move to $HOME {MarksNew}: mark current path {MarksJump}: jump to a mark -{SearchNext}: Search next matching element +{SearchNext}: search next matching element {FuzzyFind}: fuzzy finder {FuzzyFindLine}: fuzzy finder for line {RefreshView}: refresh view @@ -45,19 +45,19 @@ static HELP_TO_FORMAT: &str = " {DragNDrop}: dragon-drop selected file {OpenConfig}: open the config file {SetWallpaper}: set the selected file as wallpaper with nitrogen -{Diff}: display the diff of the first 2 flagged files - Action on flagged files - {ToggleFlag}: toggle flag on a file {FlagAll}: flag all {ClearFlags}: clear flags {ReverseFlags}: reverse flags -{Symlink}: symlink files +{Symlink}: symlink to current dir {CopyPaste}: copy to current dir {CutPaste}: move to current dir {DeleteFile}: delete files permanently {TrashMoveFile}: move to trash {Compress}: compress into an archive +{Diff}: display the diff of the first 2 flagged files - Trash - {TrashOpen}: Open the trash (enter to restore, del clear) |