Giter Site home page Giter Site logo

done's Introduction

done

A fish shell package to automatically receive notifications when long processes finish.

Stability: Stable Release version fish >=2.3.0 License: MIT


Just go on with your normal life. You will get a notification when a process takes more than 5 seconds finish, and the terminal window not in the foreground.

After installing you could type, for instance sleep 6, and start using other app. After 6 seconds you should get a notification.

Installation

Using Fisher

fisher install franciscolourenco/done

Manually

curl -Lo ~/.config/fish/conf.d/done.fish --create-dirs https://raw.githubusercontent.com/franciscolourenco/done/master/conf.d/done.fish

Arch Linux

Install the fish-done package from AUR.

yay -S fish-done

Dependencies

  • If you want notifications with icons on macOS, please install terminal-notifier with
brew install terminal-notifier
  • If you are using https://swaywm.org please install jq.

  • If you are using Windows Subsystem for Linux (WSL) you may need to install wslu, but usually it is pre-installed.

Updating

fisher update franciscolourenco/done

Settings

Only display notifications if a command takes more than a certain amount of time

set -U __done_min_cmd_duration 5000  # default: 5000 ms

Prevent specific commands from triggering notifications. Accepts a regex.

This is useful to exclude commands like git commit for instance, since it could trigger unwanted notifications if it is configured to use an external editor. This is also useful with set -U __done_allow_nongraphical 1 to prevent notifications for commands normally run interactively that you do not want to get done notifications for.

set -U __done_exclude 'git (?!push|pull)'  # default: all git commands, except push and pull. accepts a regex.

Execute a custom command instead of showing the default notifications. The done notification title and message can also be passed.

set -U __done_notification_command "your-command \$title \$message"

Play sound when showing notifications.

set -U __done_notify_sound 1

When using sway, do not show notifications for visible windows.

set -U __done_sway_ignore_visible 1

For Linux, set the urgency level for notifications sent via notify-send (low, normal, critical). The default is "normal" for regular commands, and "critical" for failed commands.

set -U __done_notification_urgency_level low
set -U __done_notification_urgency_level_failure normal

Allow notifications to be sent on systems without graphical capabilities. Note this requires you to also set __done_notification_command.

set -U __done_allow_nongraphical 1

Support

  • fish 2.3.0+
  • macOS 10.8+ via Notification Center.
  • Linux via notify-send. Otherwise bell sound is played.
  • Windows 10 via Windows Subsystem for Linux (WSL) and PowerShell.

Credits

Contributors

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

License

Done is MIT licensed. See LICENSE for details.

done's People

Contributors

9999years avatar aaronlasseigne avatar ammgws avatar asymmetric avatar barbzyhool avatar charliemaiors avatar eugene-babichenko avatar evanrelf avatar franciscolourenco avatar frazar avatar gpanders avatar grimpy avatar ilancosman avatar joehillen avatar jorgebucaran avatar jriddy avatar kidonng avatar liblit avatar monkeywithacupcake avatar nzig avatar peng1999 avatar raphant avatar rstacruz avatar samuelsarle avatar scrumplex avatar skorokithakis avatar wan-tan avatar yajo avatar ypconstante 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.