Skip to content

uwfmt/emacs-fm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fman: File MANipulations for Emacs

GNU Emacs

File management for GNU/Emacs with Dired + fsel.

Features

  • fm.el - Core API for fsel integration
  • fm-dired.el - Dired integration with file selection commands

Dired Commands

  • * S (fm-dired-select) - Place marked items into selection
  • * C (fm-dired-copy-here) - Copy items from selection to current directory
  • * M (fm-dired-move-here) - Move items from selection to current directory
  • * D (fm-dired-remove) - Delete files from selection
  • * U (fm-dired-clear) - Clear selection and unmark all files

Testing

Tests are written using Buttercup.

Running Tests

# Run all tests
make test

# Run specific test suites
make test-fm        # Core fm.el tests
make test-fm-dired  # Dired integration tests

# Compile files
make compile

# Clean up
make clean

Prerequisites

  • Emacs 24.3+
  • Buttercup testing framework
  • fsel utility installed and in PATH

Installation

Prerequisites

First, install the fsel utility (see fsel repository):

git clone https://github.com/uwfmt/fsel.git
cd fsel
make
sudo make install

Using straight.el

Add to your Emacs configuration:

(use-package fm
  :straight (fm :type git :host github :repo "uwfmt/emacs-fm")
  :config
  (require 'fm-dired)
  :hook (dired-mode . fm-dired-mode))

Or without use-package:

(straight-use-package
 '(fm :type git :host github :repo "uwfmt/emacs-fm"))
(require 'fm)
(require 'fm-dired)
(add-hook 'dired-mode-hook #'fm-dired-mode)

Add to your packages.el:

(package! fm
  :recipe (:host github :repo "uwfmt/emacs-fm"))

Add to your config.el:

(use-package! fm
  :config
  (require 'fm-dired)
  :hook (dired-mode . fm-dired-mode))

Then run doom sync and restart Emacs.

Manual Installation

  1. Clone the repository:
git clone https://github.com/uwfmt/emacs-fm.git ~/.emacs.d/site-lisp/emacs-fm
  1. Add to your Emacs configuration:
(add-to-list 'load-path "~/.emacs.d/site-lisp/emacs-fm")
(require 'fm)
(require 'fm-dired)
(add-hook 'dired-mode-hook #'fm-dired-mode)

About

File management for GNU/Emacs with "fsel".

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published