Skip to content

Latest commit

 

History

111 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lds

An alternative to the ls command that makes it easier to navigate complicated directories with lots of files.

lds

Table of Contents

Features

  • Easy navigation in complex directories
  • Search functionality
  • File and directory operations (rename, move, delete, copy)
  • Git repository status
  • Customizable key bindings and themes

Prerequisites

  • Git
  • Go programming language

Installation

Linux

Dependencies

Install Git and Go:

  • Arch Linux:
    sudo pacman -S git go
  • Fedora:
    sudo dnf install git go
  • Ubuntu/Debian:
    sudo apt install git golang-go
  • Snap:
    sudo snap install --classic go

Install lds

Option A: Download the binary

  1. Go to the latest release and download the binary.
  2. Make it executable:
    chmod +x ~/Downloads/lds
  3. Move it to /usr/local/bin/:
    sudo mv ~/Downloads/lds /usr/local/bin/

Option B: Build from source

  1. Clone the repository:
    git clone https://github.com/OpusMag/lds
    cd lds
  2. Build the binary:
    go mod tidy
    go build -o lds main.go
  3. Move it to /usr/local/bin/:
    sudo mv lds /usr/local/bin/

Windows

Dependencies

Install Git and Go:

Install lds

Option A: Download the binary

  1. Go to the latest release and download lds.exe.
  2. Move the binary to a directory (e.g., C:\Tools).
  3. Add the directory to PATH:
    • Press Win + X and select System.
    • Click on Advanced system settings.
    • In the System properties window, click on Environment variables.
    • Find the Path variable in the System variables section and click Edit.
    • Click New and add the path to the directory where you placed lds.exe (e.g., C:\Tools).

Option B: Build from source

  1. Clone the repository:
    git clone https://github.com/OpusMag/lds
    cd lds
  2. Build the binary:
    go mod tidy
    go build -o lds.exe main.go

macOS

Dependencies

Install Git and Go:

  • Git:
    • Using Homebrew (Recommended):
      brew install git
    • Using Xcode Command Line Tools:
      xcode-select --install
  • Go:
    • Using Homebrew (Recommended):
      brew install go
    • Manual Installation:
      1. Download Go.
      2. Open the downloaded .pkg file and follow the instructions to install Go.

Install lds

Option A: Download the binary

  1. Go to the latest release and download the binary.
  2. Make it executable:
    chmod +x ~/Downloads/lds
  3. Move it to /usr/local/bin/:
    sudo mv ~/Downloads/lds /usr/local/bin/

Option B: Build from source

  1. Clone the repository:
    git clone https://github.com/OpusMag/lds
    cd lds
  2. Build the binary:
    go mod tidy
    go build -o lds main.go
  3. Move it to /usr/local/bin/:
    sudo mv lds /usr/local/bin/

Getting Started

To start lds, simply run: lds

Usage

How to navigate, configure and change keybindings in lds:

Navigation

  • Move between boxes: Tab
  • Navigate to parent directory: Press escape
  • Navigate to sub directory: Highlight directory and press Enter (navigate to Directory box and use arrow keys)
  • Highlight a file: Tab to the Files box and use the up and down arrow keys
  • Open a file in an editor: highlight the file and hit Enter (highlighting can be done by searching or navigating to Files box and using arrow keys)

Configuration

Default config locations:

  • Linux and macOS: ~/.config/lds/config.json
  • Windows: %LOCALAPPDATA%\lds\config.json (e.g., C:\Users\YOURUSERNAME\AppData\Local\lds\config.json)

Create the directory and copy your config:

  • Linux/macOS:

    mkdir -p ~/.config/lds
    cp /path/to/config.json ~/.config/lds/config.json
  • Windows (Command Prompt):

    mkdir "%LOCALAPPDATA%\lds"
    copy "C:\path\to\config.json" "%LOCALAPPDATA%\lds\config.json"

In the config file you can customize colors, key bindings, and other settings.

Key Bindings

  • Quit: Ctrl+C
  • Next Box: Tab
  • Previous Box: Shift+Tab
  • Go to parent directory: Press escape
  • Go to sub directory: Highlight directory and press Enter
  • Open a file in an editor : After highlighting a file, press Enter (highlighting can be done by searching or navigating to Files box and using arrow keys)
  • Backspace: Backspace
  • Rename: Alt+r
  • Move: Alt+m
  • Delete: Alt+d
  • Copy: Alt+c

Contributing

Contributions are welcome! Please open an issue or submit a pull request on GitHub.

Support

For support, please open an issue on GitHub.

License

This project is licensed under the MIT License.

About

An alternative to the ls command that makes it easier to get your bearings in a complicated directory with lots of files

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages