Giter VIP home page Giter VIP logo

marlin's Introduction

Marlin

A silvery, fast learning and interactive directory navigator. Marlin provides quick access to your most frequently and recently used directories from right in your Fish shell.

Marlin is similar in design to popular scripts like fasd, z, and autojump, but is designed to take advantage of the unique features of Fish to provide an even more powerful tool. It is also designed to have a simpler implementation to provide the best performance and not lag your shell.

Here is a list of key features:

  • Lightweight on resources: Marlin only runs when you change directories or try to complete a path; it does not have pre-exec or post-exec hooks.
  • Path expansion for any command: Paths can be searched and expanded in any command, not just cd.
  • Frequent and recent paths: Results are ordered based on both the frequency you visit a directory and how recently you visited it.
  • Interactive searching: If more than one result matches an expansion, you can interactively choose a directory using an interactive filter tool like fzf, selecta, or peco.

Install

Install with Oh My Fish:

$ omf install marlin

That's it, Marlin is ready to go!

Usage

Marlin learns the directories you frequent while you navigate the filesystem. After cding around a few times, you can recall those directories using comma expansion, Marlin's way of substituting queries with a path. A comma expansion has the following form:

,query1,query2,query3,...

Each query is a case-insensitive regular expression that is applied to your directory history and filter only matching directories. To execute the expansion, just press the TAB key and the query will be replaced dynamically with the matching result. You can continue to press TAB to switch through all of the matching results in order of relevancy.

If you have an interactive filter tool installed like fzf, selecta, or peco, you can use one of those tools to page through multiple results instead. The popular tools will be used automatically if installed. To use a specific tool, set the $FILTER environment variable to the command desired. You can also disable interactive filtering by setting $FILTER to be empty:

set -g FILTER

Importing history

You can import your history from fasd by running the marlin:import-fasd command.

License

MIT © sagebind et al

marlin's People

Contributors

jeizsm avatar sagebind avatar

Watchers

 avatar  avatar

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.