ed24e4ca61
commit 8573f94c2f3ba17ec5d7dd123338c14a550e57e6
Author: Vladimir Iakovlev <nvbn.rm@gmail.com>
Date: Fri Feb 23 20:45:01 2018 +0100
#785: Remove functional test
commit 5484576d6e3ef4a53d69860ef953bb48037e8a72
Merge: a36a8b4 f59aa93
Author: Vladimir Iakovlev <nvbn.rm@gmail.com>
Date: Fri Feb 23 20:44:20 2018 +0100
Merge branch 'master' of https://github.com/alexbarcelo/thefuck into alexbarcelo-master
commit f59aa931c3d76b40b2078cf2926b239dc0798b74
Author: Alex Barcelo <alex.barcelo@gmail.com>
Date: Fri Feb 16 23:43:43 2018 +0100
rewritten match + fish output check for cd_* rules
commit 150ecee00ff3354a2b952a55565d08ed26161273
Author: Alex Barcelo <alex.barcelo@gmail.com>
Date: Fri Feb 16 23:43:19 2018 +0100
Adding unittest for cd_correction (with extra fish test case, also for cd_mkdir)
commit e73dd3f6d108fa081da891c61f91968afd9c5518
Author: Alex Barcelo <alex.barcelo@gmail.com>
Date: Fri Feb 16 22:48:22 2018 +0100
adding functional test for cd_correction rule
commit d1dbbb57d96df06cf0608f2d4325abf265498aa6
Author: Alex Barcelo <alex@betarho.net>
Date: Fri Feb 16 12:21:33 2018 +0100
Include root (start with /) case
22 lines
578 B
Python
22 lines
578 B
Python
import re
|
|
from thefuck.utils import for_app
|
|
from thefuck.specific.sudo import sudo_support
|
|
from thefuck.shells import shell
|
|
|
|
|
|
@sudo_support
|
|
@for_app('cd')
|
|
def match(command):
|
|
return (
|
|
command.script.startswith('cd ') and any((
|
|
'no such file or directory' in command.output.lower(),
|
|
'cd: can\'t cd to' in command.output.lower(),
|
|
'does not exist' in command.output.lower()
|
|
)))
|
|
|
|
|
|
@sudo_support
|
|
def get_new_command(command):
|
|
repl = shell.and_('mkdir -p \\1', 'cd \\1')
|
|
return re.sub(r'^cd (.*)', repl, command.script)
|