You are not logged in.

#1 2021-01-09 21:41:02

leo_gott82
Member
Registered: 2016-08-29
Posts: 20
Website

CliFM: The KISS file manager

Hello Archers!

After several years of coding, learning, private testing, and many failures, I decided to make my CliFM available to Arch users on the AUR (https://aur.archlinux.org/packages/clifm).

CliFM is a completely text-based file manager written entirely in C and able to perform all the basic operations you may expect from any other FM. Besides these common operations, such as copy, move, remove, etc., CLiFM's most distinctive features are:

  • It is a shell-like, command-line file manager (neither GUI nor curses, but just text and typing), and thus able to run on the Linux console or SSH sessions.

  • With a memory footprint below 5 MiB and a disk usage of 0.25 MiB, it's really lightweight and fast.

  • The use of short (and even one-character) commands, and list numbers (ELN's) for filenames. So, instead of 'cp filename directory', you can do something like this: 'c 4 12'

  • Bookmarks

  • Files selection and the use of the 'sel' keyword. Ex: 'sel 1 4 7-10' and then 'c sel 12' or 'file sel'

  • Quick search

  • Built-in resource opener

  • Trash system

  • TAB-completion for commands, paths, and ELN's. Ex: 'o 24'-> TAB -> 'o filename'

  • Bash-like quoting system

  • History function

  • Shell commands execution

  • Aliases

  • Logs

  • Prompt and profile commands

  • Bash-like prompt customization

  • Sequential and conditional execution of commands

  • User profiles

  • Keyboard shortcuts

You can check it out here: https://github.com/leo-arch/clifm. For more information you can consult CliFM manpage.

This is the only file manager I've been using for almost 5 years. So, I hope it will be useful for someone else too. Comments, feature requests, and bug reports are welcome, of course.

Cheers,
Leo.

Last edited by leo_gott82 (2021-01-09 22:19:25)


Der Mensch weiss nur von  Gott, insofern Gott im Menschen von sich selbst weiss.' (Hegel)

Offline

#2 2021-01-12 18:10:47

Docbroke
Member
From: India
Registered: 2015-06-13
Posts: 1,433

Re: CliFM: The KISS file manager

I like this.
I have "ShowHiddenFiles=false" in config, but hidden files are not hidden, clifm -a works fine though.

edit: another issue is when i start clifm, I get ":) $ 65;1;9c" already written, which I have to delete before I can type any command.
edit: last issue (65;1;9c) solved after using clean config file

Last edited by Docbroke (2021-01-12 18:27:15)

Offline

#3 2021-01-12 20:43:08

leo_gott82
Member
Registered: 2016-08-29
Posts: 20
Website

Re: CliFM: The KISS file manager

Hi Docbroke

Thanks for your feedback! The "ShowHiddenFiles" option works fine to me. In any case, recall that, besides the -a option, you can quickly toggle hidden files on/off with 'Alt-i'. However, I will check this issue as soon as I can.

I'm glad the gibberish issue is solved. I upgrade the program quite often, trying to solve bugs, improve performance and features and so on. So, try keeping it up to date.

What terminal emulator are you using?


Der Mensch weiss nur von  Gott, insofern Gott im Menschen von sich selbst weiss.' (Hegel)

Offline

#4 2021-01-12 21:33:09

schard
Member
From: Hannover
Registered: 2016-05-06
Posts: 1,932
Website

Re: CliFM: The KISS file manager

I just wanted to have a look at the code and had to scroll past 1426 lines of comment before some business logic began.
Maybe you want to consider aoutsourcing those comments into a README.txt, COMPILE.txt, REQUIREMENTS.txt, BUGS.txt, etc.

Last edited by schard (2021-01-12 21:33:38)

Offline

#5 2021-01-12 21:59:57

leo_gott82
Member
Registered: 2016-08-29
Posts: 20
Website

Re: CliFM: The KISS file manager

Thanks schard. I'll bear that in mind. Maybe for the next release.


Der Mensch weiss nur von  Gott, insofern Gott im Menschen von sich selbst weiss.' (Hegel)

Offline

#6 2021-01-13 02:40:13

Docbroke
Member
From: India
Registered: 2015-06-13
Posts: 1,433

Re: CliFM: The KISS file manager

Hi, thanks for reply, I am using terminator.
That reminds me "x DIR" doesn't work either, it throws "CliFM: terminat: No such file or directory"

Last edited by Docbroke (2021-01-13 02:43:16)

Offline

#7 2021-01-13 17:58:21

leo_gott82
Member
Registered: 2016-08-29
Posts: 20
Website

Re: CliFM: The KISS file manager

Thanks for pointing that out too. I will install terminator and see what happen. I hope I'll be able to reproduce the problem, in which case it will be fixed for the next release.


Der Mensch weiss nur von  Gott, insofern Gott im Menschen von sich selbst weiss.' (Hegel)

Offline

#8 2021-01-13 19:42:11

leo_gott82
Member
Registered: 2016-08-29
Posts: 20
Website

Re: CliFM: The KISS file manager

Docbroke, I installed terminator and tried to reproduce the bugs you pointed out. Though I wasn't able to reproduce the hidden files issue, I do fixed the x function. Ugrade to version 0.21.5: it should be working now.

Btw, I cleaned up the code, as schard suggested.

Last edited by leo_gott82 (2021-01-13 19:44:29)


Der Mensch weiss nur von  Gott, insofern Gott im Menschen von sich selbst weiss.' (Hegel)

Offline

#9 2021-01-14 03:09:41

Docbroke
Member
From: India
Registered: 2015-06-13
Posts: 1,433

Re: CliFM: The KISS file manager

My guess is there is some problem reading default config file. If I run "clifm -P default" then hidden file option works as per clifmrc but running plain "clifm" doesn't respect default clifmrc.

Offline

#10 2021-01-14 06:45:41

leo_gott82
Member
Registered: 2016-08-29
Posts: 20
Website

Re: CliFM: The KISS file manager

Thank you very much Docbroke! Your last post really helped me while tracking down this bug: some variables were not set if no argument was passed to clifm; that's why it worked with 'clifm -P default' but not with plain 'clifm'. Fixed now in version 0.21.7.


Der Mensch weiss nur von  Gott, insofern Gott im Menschen von sich selbst weiss.' (Hegel)

Offline

#11 2021-01-28 01:52:39

leo_gott82
Member
Registered: 2016-08-29
Posts: 20
Website

Re: CliFM: The KISS file manager

I've been working on this for the past few weeks and, besides some minor bug fixes, the last version (0.27.1) includes some important features:

  • Startup tips (no good software without good documentation)

  • Sorting methods (name, size, atime, btime, ctime, mtime, and version), including reverse sorting.

  • A light mode (in case it is not fast enough)

  • Bulk rename

  • Archiving and compression support (including Zstandard). This function depends on atool and archivemount (AUR)

NOTE: If trying this new version, make sure to start with a fresh config file (new options added).

More comments and suggestions are welcome, of course.
Best regards,
Leo.

Last edited by leo_gott82 (2021-01-28 01:55:40)


Der Mensch weiss nur von  Gott, insofern Gott im Menschen von sich selbst weiss.' (Hegel)

Offline

Board footer

Powered by FluxBB