GithubHelp home page GithubHelp logo

dired-hist's Introduction

Eask badge melpazoid badge Melpa Melpa Stable

dired-hist

Adds two commands: "back" and "forward", as buttons in every modern file managers: Thunar, Microsoft Explorer, Nautilus, Konqueror.

Emacs Minor mode for Dired built-in file manager, that traverse buffer history (or just path) according to history.

Original author is Karthik Chikmagalur https://github.com/karthink/dired-hist

Tested with Emacs 29.2.

Features

  • supported for two Dired modes: open folder in new buffer or in the same (dired-kill-when-opening-new-dired-buffer)
  • if buffer is closed we remove his record from history
  • history is global only for now

Configuration

(require 'dired-hist)
(add-hook 'dired-mode-hook #'dired-hist-mode)
(define-key dired-mode-map (kbd "l") #'dired-hist-go-back)
(define-key dired-mode-map (kbd "r") #'dired-hist-go-forward)
(define-key dired-mode-map (kbd "C-c '") #'dired-hist-debug-activate)

Note: l and r keys are the defaults for info-mode, help-mode and eww, as well as for external packages like pdf-tools.

Consider instead "C-M-a" and "C-M-e".

TODO

  • simplify code, but raise required Emacs version. (26.1 for now)
  • New feature: Allow to show history with help of tab-line-mode for dired-kill-when-opening-new-dired-buffer with t

Alternative implementation based on tab-line-mode

Pros:

  • history is visible in tabs
  • relatively simplier
  • allow to to use two keys ("prev", "next") to switch between history and all tabs.

Cons:

  • support for only dired-kill-when-opening-new-dired-buffer is nil (default of Dired).
  • bound to Tab Line mode and harder to customize.

Featurs for alternative implementation

  • History showed with tabs in every Dired window
  • Tabs are sorted in order of creation, just as history
  • Should be compatible with global-tab-line-mode
  • Going back and up carefully programmed
  • Working under root console and terminal (theme modus-vivendi)

Configuration for alternative implementation

(require 'dired-hist-tl)
(add-hook 'dired-mode-hook #'dired-hist-tl-dired-mode-hook)
(define-key dired-mode-map (kbd "RET") #'dired-hist-tl-dired-find-file)
(define-key dired-mode-map (kbd "^") #'dired-hist-tl-dired-up-directory)
(global-set-key (kbd "C-M-a") #'dired-hist-tl-tab-line-switch-to-prev-tab)
(global-set-key (kbd "C-M-e") #'dired-hist-tl-tab-line-switch-to-next-tab)

Other packages with own history implementation

Alternative implementation screenshot

Demo

dired-hist's People

Contributors

anoncheg1 avatar

Stargazers

Viacheslav K. avatar  avatar Sebastian Wålinder avatar

Watchers

 avatar  avatar

Forkers

emacsmirror

dired-hist's Issues

Not enough credit to the original author

There's been some bad-faith development practice here, and I would advise you in future to not engage in development this way.

As you are aware, this is not all code you've written; this is a fork of another package of the same name. Instead of using the correct process for forking a project, you instead did this and have made some minor changes since. You've also pushed this to MELPA without any credit to Karthik.

You've filled in the author field wrong to add yourself as a secondary author, thus confusing things further. I would suggest renaming the package and adding proper credit to Karthik.

Of course you're not mandated to abide any of this, but continuing to follow this practice will have you shunned from the wider communities.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.