
xplr (โปรแกรมจัดการไฟล์แบบ TUI ที่ปรับแต่งได้เยอะ และทำงานไว) : โปรแกรม xplr เป็นโปรแกรมสำรวจไฟล์ (File Explorer) ที่ทำงานบนเทอร์มินอล (Terminal) หรือที่เรียกว่า Terminal UI (TUI) หรือ ส่วนต่อประสานกับผู้ใช้ (UI) แบบการพิมพ์ข้อความตอบโต้ (Text-Based User Interface) นั่นเอง
โดยตัวโปรแกรมถูกออกแบบ และพัฒนาให้มีขนาดเล็ก, ทำงานได้รวดเร็ว และที่สำคัญที่สุดคือ ความสามารถในการปรับแต่งที่สูงมาก (Hackable) โปรแกรมนี้พัฒนาด้วยภาษา Rust และใช้ LuaJIT เป็นหัวใจหลักในการเขียนสคริปต์เพื่อขยายความสามารถ
หน้าที่หลักของโปรแกรม xplr ไม่ใช่การมาแทนที่คำสั่งจัดการไฟล์พื้นฐานใน Shell หรือตัวจัดการไฟล์แบบ ส่วนติดต่อผู้ใช้งานแบบกราฟิก (GUI) แต่ถูกวางตัวเป็น "เครื่องมือประสานงาน" (Orchestrator) ที่ช่วยให้ผู้ใช้งานสามารถเรียกใช้เครื่องมือ ส่วนติดต่อผู้ใช้แบบบรรทัดคำสั่ง (CLI) อื่น ๆ ที่มีอยู่ในระบบได้อย่างลื่นไหลผ่านหน้าจอ UI ที่ควบคุมด้วย คีย์บอร์ด (Keyboard) ทั้งหมด ทำให้ผู้ที่ทำงานบน Terminal เป็นหลักสามารถจัดการไฟล์ได้อย่างมีประสิทธิภาพสูงสุด
แนวคิดการออกแบบของ โปรแกรม xplr ยึดถือหลักการความเรียบง่าย โดยตัวโปรแกรมเองจะเน้นไปที่การ "สำรวจ" (Explore) และแสดงผลไฟล์เป็นหลัก ส่วนการจัดการไฟล์ เช่น การคัดลอก, การย้าย หรือการลบ จะใช้วิธีเรียกใช้งานคำสั่งภายนอกของ ระบบปฏิบัติการ ระบบปฏิบัติการ (OS) แทน ซึ่งวิธีนี้ช่วยให้โปรแกรมคงความเบา และไม่ซ้ำซ้อนกับเครื่องมือที่มีอยู่แล้ว นอกจากนี้ยังมีระบบ Modal ที่คล้ายกับโปรแกรม Vim ทำให้ผู้ใช้สามารถสลับโหมดการทำงานต่างๆ เพื่อใช้ปุ่มกดเดียวกันในหน้าที่ที่ต่างกันได้
ความโดดเด่นของโปรแกรม xplr อยู่ที่การเปิดโอกาสให้ผู้ใช้เข้าไปปรับแต่งได้แทบทุกส่วน ตั้งแต่การจัดวางหน้าจอ (Layout), การตั้งค่าสีสัน (Style) ไปจนถึงการสร้างฟังก์ชันการทำงานใหม่ ๆ ผ่านภาษา Lua ผู้ใช้สามารถเขียน ปลั๊กอิน (Plug-in) เพื่อเพิ่มความสามารถ เช่น การแสดงตัวอย่างไฟล์ (File Preview), การรวมเข้ากับเครื่องมือค้นหาอย่าง fzf หรือแม้กระทั่งการสร้างเมนูคำสั่งเฉพาะตัว นอกจากนี้ โปรแกรม xplr ยังรองรับการรับส่งข้อความ (Message Passing) ทำให้สามารถสื่อสารกับสคริปต์ภายนอกหรือโปรแกรมอื่น ๆ ได้อย่างอิสระ
โปรแกรม xplr เหมาะสำหรับนักพัฒนา หรือผู้ใช้งาน ลีนุกซ์ (Linux) กับ Unix ที่ต้องการตัวจัดการไฟล์ที่ทำงานใน Terminal ซึ่งสามารถปรับแต่งให้เข้ากับเวิร์กโฟลว์ของตัวเองได้อย่างไร้ขีดจำกัด โดยแลกกับการที่ต้องมีความรู้ด้านการเขียนคอนฟิก หรือความคุ้นเคยกับการใช้คีย์บอร์ดควบคุมเป็นหลัก
หัวใจหลักของ โปรแกรม xplr คือ การอนุญาตให้ผู้ใช้แก้ไขการทำงานได้แทบทุกส่วนผ่านภาษา Lua โดยผู้ใช้สามารถเขียนสคริปต์เพื่อสร้างฟังก์ชันใหม่, เปลี่ยนวิธีการแสดงผล หรือสร้าง Workflow เฉพาะตัวขึ้นมาเองได้
เลียนแบบแนวคิดจาก โปรแกรม Vim โดยมีระบบโหมด (Modes) ที่ช่วยให้ปุ่มกดเดียวกันทำหน้าที่ต่างกันตามสถานะการใช้งาน ช่วยให้ควบคุมไฟล์จำนวนมากได้ด้วยคีย์บอร์ดโดยไม่ต้องพึ่งพา เมาส์ (Mouse)
โปรแกรม xplr ไม่ได้พยายามทำตัวเป็นโปรแกรมจัดการไฟล์เบ็ดเสร็จ (File Manager) แต่ทำตัวเป็น UI ที่ไปเรียกใช้เครื่องมือ CLI อื่นๆ ในเครื่องมาทำงานร่วมกัน เช่น การใช้ fzf ในการค้นหา หรือใช้ trash-cli ในการลบไฟล์
โปรแกรมทำงานด้วยระบบส่งข้อความภายใน ทำให้ผู้ใช้สามารถส่งคำสั่ง (Messages) ไปยัง โปรแกรม xplr ผ่าน Shell หรือ Lua function ได้อย่างอิสระ ช่วยให้การทำ Automation หรือการเขียนโปรแกรมเสริม (Plug-in) ทำได้ง่าย และทรงพลัง
พัฒนาด้วยภาษา Rust ซึ่งขึ้นชื่อเรื่องประสิทธิภาพ และการจัดการหน่วยความจำ ทำให้โปรแกรม xplr เปิดใช้งานได้ทันที และรองรับการจัดการโฟลเดอร์ที่มีไฟล์จำนวนมหาศาล เช่น node_modules ได้อย่างรวดเร็ว
ผู้ใช้สามารถออกแบบหน้าจอเองได้ว่าต้องการให้มีกี่หน้าต่าง (Panels) เช่น หน้าต่างแสดงรายการไฟล์, หน้าต่างแสดงการเลือกไฟล์ (Selection list), หน้าต่างความช่วยเหลือ (Help menu) หรือหน้าต่างประวัติการทำงาน (Logs)
มีระบบนิเวศของ Plug-in ที่แข็งแกร่งซึ่งพัฒนาโดยชุมชน เช่น การทำ File Preview แสดงเนื้อหาไฟล์รูปภาพ หรือข้อความข้าง ๆ, การผสานการทำงานกับ Git หรือการใช้ไอคอนเพื่อความสวยงาม
มีความสามารถพิเศษในการ "ส่งค่า" ออกมาเมื่อปิดโปรแกรม เช่น สั่งให้ปิดแล้วพิมพ์พาธ (Path) ของไฟล์ที่เลือกไว้ หรือ Path ของโฟลเดอร์ปัจจุบันออกมา เพื่อนำไปใช้ต่อในคำสั่งถัดไปของ Shell
โปรแกรม xplr เป็นซอฟต์แวร์ ฟรี (Free) ที่พัฒนาแบบ โอเพ่นซอร์ส (Open-Source) ที่อยู่ภายใต้เงื่อนไขการใช้งานแบบ MIT License ซึ่งหมายความว่าผู้ใช้สามารถใช้งาน, ดัดแปลง, แจกจ่าย และเข้าถึง โค้ดต้นฉบับ (Source Code) ได้อย่างเสรี ภายใต้เงื่อนไขที่กำหนด
หากต้องการค้นหาข้อมูลเพิ่มเติม สามารถติดต่อกับทางผู้พัฒนาโปรแกรมนี้ได้ผ่านทางช่องทางเว็บไซต์ (Website) : https://xplr.dev/ (ภาษาอังกฤษ) ได้เลย
xplr is a terminal-based file explorer, often referred to as a Terminal UI (TUI) or a text-based user interface. It is designed to be lightweight, fast, and most importantly, highly hackable. Developed in Rust, the program utilizes LuaJIT as its core scripting engine for extending its capabilities.
The primary role of xplr is not to replace standard shell commands or Graphical User Interface (GUI) file managers. Instead, it functions as an "orchestrator" that allows users to seamlessly invoke existing Command-Line Interface (CLI) tools within the system. Through its entirely keyboard-driven interface, xplr enables power users who work primarily in the terminal to manage files with maximum efficiency.
คำสำคัญ