0.0.16 • Published 4 years ago

fixme-cli v0.0.16

Weekly downloads
2
License
MIT
Repository
github
Last release
4 years ago

Fixme

Assisting you in fixing broken commands in the command line.

Install this globally and you'll have access to the fixme command anywhere on your system.

npm install -g fixme-cli

How to use it

We have all been there (probably many times a day). We execute a command, and it fails.

$ git status
HEAD detached at 084178d
nothing to commit, working directory clean

In some cases we know how to fix it, and in others we know how to google for a fix. Most of the time, the fix is simple, but it is still a time suck to get it fixed.

Let's see how fixme can solve this issue:

$ fixme !!

-------------------- Running --------------------
HEAD detached at 084178d
nothing to commit, working directory clean


-------------------- Fixing --------------------
We have found a fix: 

----
Fix  : Git Status Detached Head

      Something went wrong with this head, but we can get it back.

      git checkout master
      git pull origin master
----

Do you want to apply the fix? [Y] or return : y

By confirming with y, we allow fixme to automatically run the commands displayed in the fix.

How does it work

This is a proof of concept implementation. It simply checks the outputs of the last command (!! tells the command line to repeat the last command) and matches it with some code-based "database" (it's not really a database, it's just code) of fixes. If there is a fix, it generates the fixing code which can depend on parameters of the actual command.

That's it, and it is very much work in progress.

Currently supported fixes

Have a look at the db subfolder. It mostly revolves around:

  • Version Control (git and svn)
  • Package Management (composer, easy_install, npm, pip)
  • Compilers and Makers (grunt)
  • Shell Commands (rm)
  • Network Commands (ssh)

Adding fix recipes

Simply add them to the db subfolder. If you think your fixes might be beneficial to the rest of us, please add a pull request.

TODOs

  • Sandboxing fixes
  • Reading console output instead of re-running command
  • Add operating system to descriptor
  • Checking whether the execution of any of the commands of a fix require another fix (recursion)
0.0.16

4 years ago

0.0.15

5 years ago

0.0.13

7 years ago

0.0.12

8 years ago

0.0.11

8 years ago

0.0.10

8 years ago

0.0.6

9 years ago

0.0.4

9 years ago

0.0.3

9 years ago

0.0.1

9 years ago