A cross-platform terminal-based termux-oriented file manager.
Project description
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 & Shortcuts
Current:
- Supports most of the common mouse events so far
- It is somewhat fully customizable?
- Can be used as a component
- Uses only ~30MB of RAM
- It is pretty snappy
- Supports Termux
- Cross Platform
- and more
Desired:
- Undo\Redo
- tool-tips
- Scroll bar
- Multiple tabs
- Better performance
- Effect on cutted Files
- Drop files into GUI apps
Common Shortcuts\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 | |
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 |
O |
Open whole directory in editor |
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 + N |
W |
Create new folder |
CTRL + W |
w |
Create new file |
ARROW KEYS |
l k j h |
Navigates files |
KEY_ENTER |
K |
Opens files |
ESCAPE |
Exit |
Default & Custom - Commands
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 Comment |
---|---|---|---|
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 |
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
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 |
Documentation
Work in progress 🛠️🏗 ...
Customization
How do I enable vim_mode?
Set
tuifi_vim_mode
enviroment variable toTrue
How do I map keys in vim_mode?
This ain't possible right now althought you could play around with the content of
toggle_vim_mode
function under__init__.py
How do I set the default editor?
Set
tuifi_default_editor
enviroment variable tovim
or whatever you prefer
How do I disable the auto-find-mode?
You can just set
tuifi_auto_find_on_typing
enviroment variable toFalse
How do I change the default configuration path?
Set
tuifi_config_path
enviroment variable to whatever you prefer most
How do I toggle hidden files/folders?
Edit
__main__.py
and specifysuffixes=['*','.*']
for hidden files. [THIS NEEDS TO BE FIXED]
How do I change the default colors?
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
- Bryan Lunduke for this article
- Brodie Robertson for this video
- r/linux community for their comments
- r/commandline community for their comments
Help
Any Idea with this issue https://github.com/unicurses/unicurses/issues/21 ?
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file TUIFIManager-2.3.2.tar.gz
.
File metadata
- Download URL: TUIFIManager-2.3.2.tar.gz
- Upload date:
- Size: 41.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25eb2c27a338f156f5c0961402d4a48036af8f59357d6c910999413fd83330d4 |
|
MD5 | 6635f9d18e90928ad07efe5a02074c97 |
|
BLAKE2b-256 | 99f2cc73848b4825f16735bf4b3e1ca6cc88a060b7c52f34cff3441ef13be910 |