On avalikustatud f4 0.3.0 failihalduri beetaversioon. Projekt jäljendab Far Manageri ja far2li liidese, käitumise ja sisemist struktuuri, kuid on nullist kirjutatud Go keeles, kasutades "puhta ruumi" metoodikat. Kood on jagatud BSD litsentsi alusel ja kirjutatud AI abil. Käsiülevaatus asendab suurt hulka automaatseid teste, mis on CI-s jooksutatud mitmel operatsioonisüsteemil ja arhitektuuril. Valmistooted genereeritakse Linuxi, Windowsi (sealhulgas eraldi versioon Windows 7/8/8.1 jaoks), ReactOS, macOS, FreeBSD, OpenBSD, NetBSD, DragonFly BSD ja Androidi (Termux) jaoks. Katsetatavalt toetatakse Illumost ja Solaris, samuti on käimas portimine Redox, GNU Hurd ja Haiku süsteemidele.
Põhifunktsioonid:
- Pakutakse ühe statiliselt kokku pandud täitmise failina ilma välist sõltuvusteta (CGO-ta koostamine). Toetatakse arhitektuure x86-64, x86, ARM64, ARMv7, RISC-V, LoongArch, MIPS ja POWER.
- Kasutamine terminalis või eraldi graafilises aknas. Terminalis toetatakse kitty protokolli ja Win32 sisendirežiimi, seega erinevad klahvikombinatsioonid, nagu Ctrl+Enter ja Shift+Tab. Graafilise režiimi jaoks on saadaval X11, Wayland, Win32 GDI, Cocoa, Ebitengine ja gogpu baidid koos riistvara kiirendamisega.
- Sisseehitatud terminal paneelide all, nagu far2l-is. Windowsis töötab see nii ConPTY kaudu kui ka ilma, Windows Console API kaudu.
- Sisseehitatud redaktor süntaksi esiletõstmisega (Colorer ja Chroma) ja vaatur kuuekümnendate dumpide vaatamiseks. Suured failid avatakse ilma neid täielikult mälu laadimata.
- Asünkroonne VFS, mis võimaldab töötada arhiivide (sealhulgas sisemiste) ning SFTP/FTP, S3, WebDAV, Google Drive, Yandexi Diski, Windowsi registri, Androidi seadmete (ADB kaudu) ja iPhone'i (AFC kaudu) puhul. Iga VFS-i saab mountida FUSE kaudu nagu tavaline kataloog.
- FISH+ protokoll arendab Midnight Commanderi FISH idee edasi. Otsing, indekseerimine ja pikaajalised toimingud viiakse läbi serveri poolel, failid saab otse serverite vahel kopeerida. serveridPluginad töötavad eraldiseisvate protsessidena ja suhtlevad tuumaga MessagePack kaudu stdin/stdout, seega saab neid kirjutada igasugustes keeltes. Toetatakse Lua pluginasid (Far3/far2m sarnane API) ja WebAssembly't, nende levitamiseks on olemas PlugRing kataloog.
- Makrod Lua-s, käskude palett (Ctrl+Shift+P), klahvivääratused, paindlik failide värvimine, portatiivne režiim.
- Sisseehitatud SQLite klient ja DOS Navigatori stiilis tabeldus, piltide vaatamine, helimängija, meediafaile käsitlev teave, kataloogide võrdlemine ja sünkroonimine, AI paneel.
- Sisseehitatud SQLite klient ja DOS Navigatori stiilis tabel, piltide vaatamine, helimängija, meediafailide teabe kuvamine, kataloogide võrdlemine ja sünkroonimine, AI paneel.
- Liides on tõlgitud 23 keelde. Toetatakse BiDi tekstisisestust ja keerulisi grafeemiklasteid.
- Enesetegevus käsuga „f4 —update”, paketid Homebrew, Nix (flake ja Home Manager moodul) ning Termux jaoks. Marsruuterite ja nõrkade seadmete jaoks on saadaval kerge lite-versioon.
Erinevused teiste failihalduritega:
- Far Manager töötab ainult Windowsis. f4 toob selle liidese ja harjumuspärased otseteed Linuxi, macOS, BSD ja Androidi. Far binaarsed pluginaid (DLL) ei toetata, kuid Lua API pluginate jaoks on ehitatud Far3/far2m malli järgi.
- far2l on Far 2 port Linuxile, macOS-ile ja BSD-le, kirjutatud C++ keeles GPLv2 litsentsi all. f4 ei ole port, vaid uus teostus Go keeles BSD litsentsi all. Lisaks Unixi sarnastele süsteemidele töötab f4 ka Windowsis ja ReactOS-is, ei sõltu wxWidgetsist ega süsteemiraamatukogudest, ning pluginaid saab kirjutada mis tahes keeles.
- Midnight Commander on kirjutatud C keeles (GPLv3), suunatud Unixi sarnastele süsteemidele ja järgib oma töömudelit ja klahvikomplekti. f4 kordab Far/far2l käitumist, omab graafikurežiimi ja töötab natiivina Windowsis. Linux x86-64 jaoks mõeldud komplekt arhiiv kaalub umbes 35 MB, mc aga vaid mõni megabait.
- M-Commander on mc fork C ja Lua keeles (GPLv3+). Sellel on pistikupaneelid (Git, Docker, Kubernetes, MongoDB, S3 jne) ja sub-shelli asemel kasutatakse sisseehitatud PTY-terminali. M-Commander säilitab mc liidese ja väljastatakse pakettidena Linuxile ja macOS-ile. f4 areneb sarnases suunas (laiendatavad paneelid, sisseehitatud terminal), kuid Far liidese, Windowsi ja BSD toe ning ühe binaarfailina.

Allikas: opennet.ru
