TUIFIManager

A cross-platform terminal-based termux-oriented file manager (and component), meant to be used with a Uni-Curses project or as is.

GPL-3.0 License

Downloads
740
Stars
696
Committers
6

A cross-platform terminal-based termux-oriented file manager (and component), meant to be used with a Uni-Curses project or as is. This project is mainly an attempt to get more attention to the Uni-Curses project.

āš™ļø Installation

sudo pip3 install tuifimanager --upgrade
pip3 install TUIFIManager --upgrade

or just ^^^ if it works for you. (eg. on termux?)

šŸ’„ Usage

Run tuifi in your terminal to use it as is or import it in one of your Uni-Curses project as a component like:

from TUIFIManager import *

for more details look into the __main__.py

šŸ“¦ Features

ā€¢ šŸ“Œ Current:

ā€¢ šŸ”® Desired:

  • Macros
  • Treeview
  • Undo\Redo
  • Improved UI
  • Multiple tabs
  • Sixel support
  • Effect on cutted Files
  • Multithread performance

āŒØļø Keybindings

In vim_mode both normal and vim shortcuts work

Normal vim_mode Action
SHIFT + TAB Moves selected file to the previous directory
KEY_BACKSPACE J Opens\Goes to the previous directory
ALT + DOWN Opens\Closes the "right-click menu"
KEY_HOME H Navigates to the $HOME directory
KEY_F5 Reload\Refresh current directory
KEY_F3 o (descending) order-type switch
KEY_F1 O (ascending) order-type switch
CTRL + V p Pastes the Copied or Cuted files
DEL CTRL+d Deletes the selected files
CTRL + F i Find Files (if not auto_find_on_typing)
CTRL + O Open whole directory in editor
CTRL + A Select all files in current folder
CTRL + C yy Copies the selected files
CTRL + K Copies the selected files
CTRL + X c Cuts the selected files
CTRL + R r Rename selected file
CTRL + T Toggle hidden files
CTRL + N W Create new folder
CTRL + W w Create new file
ARROW KEYS l k j h Navigates files
KEY_ENTER K Opens files
CTRL + E e Exit with cd
ESCAPE Exit

(TIP: šŸ use ALT + CLICK for multiple mouse selection if SHIFT not working)

TERMUX only Shortcuts\Keybindings

Shortcut Action
CTRL + DOWN Goes in&out of select-mode while also automatically copies the selected file(s)
CTRL + LEFT Goes out of select-mode while also cuts the seleccted file(s)
CTRL + END Goes out of select-mode while also deleting the selected file(s)
CTRL + UP Same as CTRL + V, Pastes the Copied or Cuted files
END Deletes selected files

šŸ‘Øā€šŸ’» Commands

(Default & Custom Comands) - To perform a command under the normal-mode, you first have to press the space-bar and then type the command. Alternatively, use vim_mode or enable the tuifi_auto_command_on_typing env-variable (notice: it disables tuifi_auto_find_on_typing). The default commands can be seen below and can be found under the ~/.config/tuifi/cmds.conf where you can add your custom ones too:

Cmd Type Attributes Label Information
gt open 'directory':'~/.config/tuifi' - tuifi -
gh open 'directory':'~/' - Home -
owv open 'directory':None,'_with':'vim' Opened With Vim
yat copy 'pattern':'.+\\.txt'
yy copy 'pattern':None

Available Type-keywords: open, copy, cut, find

important note: o is also used for ordering in vim_mode. In this case you can first press space-bar before proceeding with owv or with any other already reserved starting key, or just change it.

Additionally there are also some "static" ones like the m+character which marks the current directory into the character, so you can navigate back to it by using ` or ;+that_character

šŸ“œ Documentation

Work in progress šŸ› ļøšŸ— ...

šŸ’­ Customization

Set tuifi_vim_mode enviroment variable to True

Set tuitilities_default_background enviroment variable to True

set tuifi_synth_dnd enviroment variable to True. pip install requests pynput PySide6 python-xlib. Know it's expirimental! You'll need to adapt to it slightly, use it as: Drag&drop + click afterwords where you want the file to be dropped. See also and this issue

Set tuifi_default_editor enviroment variable to vim or whatever you prefer

You can just set tuifi_auto_find_on_typing enviroment variable to False

You can set either or both tuifi_scroll_sensitivity, tuifi_ctrl_scroll_sensitivity enviromental variables, to the disered number of characters per scroll action (they default to 1 and 7)

This is not possible right now althought you could play around with the content of toggle_vim_mode function under __init__.py

You can set how mnay lines you want using tuifi_visible_filename_lines (Defaults to 4)

Set tuifi_config_path enviroment variable to whatever you prefer most

You can either CTRL + T or set tuifi_show_hidden enviroment variable to True

look here for more informations

šŸ’— Donation

I do really need money to survive, I have no job, living in a basement, making things for free, because I love to.

  • Paypal Address
  • Monero Address: 897ehhSQJQpGF7tYDhQM51jiX7nnHmzuYAW4q8JGwJxu8JKXvaK6AivCzatuJxnifjZ2qy98ks2g2PhmTaYCMMta2Ga2LJx

šŸ«¶ Special thanks to

šŸ•³ļø Outro