1
0
mirror of https://github.com/nvbn/thefuck.git synced 2025-04-17 08:10:47 +01:00
thefuck/thefuck/rules/nodenv_no_such_command.py
2020-07-06 15:09:30 +03:00

24 lines
757 B
Python

import re
from thefuck.utils import cache, for_app, replace_argument, replace_command, which
from thefuck.specific.devenv import env_available, COMMON_TYPOS, get_commands
enabled_by_default = env_available
@for_app('nodenv')
def match(command):
return 'nodenv: no such command' in command.output
if which('nodenv'):
get_commands = cache(which('nodenv'))(get_commands)
@for_app('nodenv')
def get_new_command(command):
broken = re.findall(r"nodenv: no such command `([^']*)'", command.output)[0]
matched = [replace_argument(command.script, broken, common_typo)
for common_typo in COMMON_TYPOS.get(broken, [])]
matched.extend(replace_command(command, broken, get_commands(command.script_parts[0])))
return matched