nvbn / thefuck

Magnificent app which corrects your previous console command.
MIT License
85.13k stars 3.43k forks source link

Delete which entries? #780

Closed FFY00 closed 5 years ago

FFY00 commented 6 years ago

The output of thefuck --version (something like The Fuck 3.1 using Python 3.5.0):

The Fuck 3.11 using Python 2.7.14+

Your shell and its version (bash, zsh, Windows PowerShell, etc.):

fish, version 2.7.1

Your system (Debian 7, ArchLinux, Windows, etc.):

Ubuntu 17.10 (artful)

How to reproduce the bug:

Just type 'fuck' with the omf wrapper installed.

The output of The Fuck with THEFUCK_DEBUG=true exported (typically execute export THEFUCK_DEBUG=true in your shell before The Fuck):

DEBUG: Run with settings: {'alter_history': True,
 'debug': True,
 'env': {'GIT_TRACE': '1', 'LANG': 'C', 'LC_ALL': 'C'},
 'exclude_rules': [],
 'history_limit': None,
 'no_colors': False,
 'priority': {},
 'require_confirmation': True,
 'rules': [<const: All rules enabled>],
 'slow_commands': ['lein', 'react-native', 'gradle', './gradlew'],
 'user_dir': PosixPath('/home/anubis/.config/thefuck'),
 'wait_command': 3,
 'wait_slow_command': 15}
DEBUG: Received stdout: 
DEBUG: Received stderr: /bin/sh: 1: sudp: not found

DEBUG: Call: sudp vim ~/.bashrc; with env: {'LC_NUMERIC': 'pt_PT.UTF-8', 'QT_QPA_PLATFORMTHEME': 'gtk2', 'XDG_GREETER_DATA_DIR': '/var/lib/lightdm-data/anubis', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'LC_CTYPE': 'pt_PT.UTF-8', 'XDG_CURRENT_DESKTOP': 'Budgie:GNOME', 'TILIX_ID': '55a6ae27-3da8-4cd5-98f5-fbb4d0084c38', 'QT_IM_MODULE': 'ibus', 'LOGNAME': 'anubis', 'USER': 'anubis', 'PATH': '/home/anubis/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin', 'LC_PAPER': 'pt_PT.UTF-8', 'HOME': '/home/anubis', 'GTK_IM_MODULE': 'ibus', 'DISPLAY': ':0', 'SSH_AGENT_PID': '4242', 'LANG': 'C', 'THEFUCK_DEBUG': 'true', 'MANAGERPID': '1550', 'SHELL': '/usr/bin/fish', 'XDG_SESSION_PATH': '/org/freedesktop/DisplayManager/Session1', 'QT_STYLE_OVERRIDE': '', 'JOURNAL_STREAM': '9:47379', 'SESSION_MANAGER': 'local/genesis:@/tmp/.ICE-unix/4131,unix/genesis:/tmp/.ICE-unix/4131', 'LC_MEASUREMENT': 'pt_PT.UTF-8', 'XDG_VTNR': '7', 'DBUS_STARTER_ADDRESS': 'unix:path=/run/user/1000/bus,guid=079c1b48a32896b3ee5750a65a6de901', 'CLUTTER_IM_MODULE': 'xim', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus,guid=079c1b48a32896b3ee5750a65a6de901', 'QT4_IM_MODULE': 'xim', 'QT_ACCESSIBILITY': '1', 'TEXTDOMAIN': 'im-config', 'GIT_TRACE': '1', 'XMODIFIERS': '@im=ibus', 'IM_CONFIG_PHASE': '2', 'GPG_AGENT_INFO': '/run/user/1000/gnupg/S.gpg-agent:0:1', 'INVOCATION_ID': 'a954bbf67f1349b08bbd07b58ad2043c', 'XDG_SESSION_DESKTOP': 'budgie-desktop', 'LC_ALL': 'C', 'XDG_RUNTIME_DIR': '/run/user/1000', 'TF_ALIAS': '__tf_alias', 'OMF_PATH': '/home/anubis/.local/share/omf', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'TERM': 'xterm-256color', 'VTE_VERSION': '5002', 'GDMSESSION': 'budgie-desktop', 'MANDATORY_PATH': '/usr/share/gconf/budgie-desktop.mandatory.path', 'TEXTDOMAINDIR': '/usr/share/locale/', 'XDG_DATA_DIRS': '/usr/share/budgie-desktop:/usr/share/budgie-desktop:/usr/local/share:/usr/share:/var/lib/snapd/desktop', 'XDG_SEAT_PATH': '/org/freedesktop/DisplayManager/Seat0', 'DBUS_STARTER_BUS_TYPE': 'session', 'XDG_SESSION_ID': 'c4', 'OMF_CONFIG': '/home/anubis/.config/omf', 'DEFAULTS_PATH': '/usr/share/gconf/budgie-desktop.default.path', 'LC_IDENTIFICATION': 'pt_PT.UTF-8', 'DESKTOP_SESSION': 'budgie-desktop', 'XDG_CONFIG_DIRS': '/etc/xdg/xdg-budgie-desktop:/etc/xdg/xdg-budgie-desktop:/etc/xdg', 'GTK_MODULES': 'unity-gtk-module:gail:atk-bridge', 'XDG_SESSION_TYPE': 'x11', 'UBUNTU_MENUPROXY': '1', 'LC_ADDRESS': 'pt_PT.UTF-8', 'XAUTHORITY': '/home/anubis/.Xauthority', 'PYTHONIOENCODING': 'utf-8', 'SHLVL': '1', 'PWD': '/home/anubis', 'LC_MONETARY': 'pt_PT.UTF-8', 'COLORTERM': 'truecolor', 'LC_NAME': 'pt_PT.UTF-8', 'LC_TELEPHONE': 'pt_PT.UTF-8', 'LC_TIME': 'pt_PT.UTF-8', 'XDG_MENU_PREFIX': 'gnome-', 'XDG_SEAT': 'seat0'}; is slow:  took: 0:00:00.001977
DEBUG: Importing rule: apt_get; took: 0:00:00.000259
DEBUG: Importing rule: apt_get_search; took: 0:00:00.000195
DEBUG: Importing rule: apt_invalid_operation; took: 0:00:00.000410
DEBUG: Importing rule: brew_install; took: 0:00:00.000162
DEBUG: Importing rule: brew_unknown_command; took: 0:00:00.000058
DEBUG: Importing rule: brew_update_formula; took: 0:00:00.000144
DEBUG: Importing rule: brew_upgrade; took: 0:00:00.000025
DEBUG: Importing rule: cargo; took: 0:00:00.000021
DEBUG: Importing rule: cargo_no_command; took: 0:00:00.000137
DEBUG: Importing rule: cd_correction; took: 0:00:00.000463
DEBUG: Importing rule: cd_mkdir; took: 0:00:00.000199
DEBUG: Importing rule: cd_parent; took: 0:00:00.000022
DEBUG: Importing rule: chmod_x; took: 0:00:00.000024
DEBUG: Importing rule: composer_not_command; took: 0:00:00.000120
DEBUG: Importing rule: cp_omitting_directory; took: 0:00:00.000225
DEBUG: Importing rule: cpp11; took: 0:00:00.000117
DEBUG: Importing rule: dirty_untar; took: 0:00:00.000777
DEBUG: Importing rule: dirty_unzip; took: 0:00:00.000134
DEBUG: Importing rule: django_south_ghost; took: 0:00:00.000023
DEBUG: Importing rule: django_south_merge; took: 0:00:00.000019
DEBUG: Importing rule: docker_not_command; took: 0:00:00.000230
DEBUG: Importing rule: dry; took: 0:00:00.000024
DEBUG: Importing rule: fab_command_not_found; took: 0:00:00.000179
DEBUG: Importing rule: fix_alt_space; took: 0:00:00.000126
DEBUG: Importing rule: fix_file; took: 0:00:00.001453
DEBUG: Importing rule: git_add; took: 0:00:00.000214
DEBUG: Importing rule: git_branch_delete; took: 0:00:00.000125
DEBUG: Importing rule: git_branch_exists; took: 0:00:00.000189
DEBUG: Importing rule: git_branch_list; took: 0:00:00.000122
DEBUG: Importing rule: git_checkout; took: 0:00:00.000129
DEBUG: Importing rule: git_diff_staged; took: 0:00:00.000125
DEBUG: Importing rule: git_fix_stash; took: 0:00:00.000123
DEBUG: Importing rule: git_help_aliased; took: 0:00:00.000117
DEBUG: Importing rule: git_not_command; took: 0:00:00.000122
DEBUG: Importing rule: git_pull; took: 0:00:00.000118
DEBUG: Importing rule: git_pull_clone; took: 0:00:00.000121
DEBUG: Importing rule: git_push; took: 0:00:00.000115
DEBUG: Importing rule: git_push_force; took: 0:00:00.000120
DEBUG: Importing rule: git_push_pull; took: 0:00:00.000120
DEBUG: Importing rule: git_rebase_no_changes; took: 0:00:00.000075
DEBUG: Importing rule: git_remote_seturl_add; took: 0:00:00.000076
DEBUG: Importing rule: git_rm_recursive; took: 0:00:00.000118
DEBUG: Importing rule: git_stash; took: 0:00:00.000119
DEBUG: Importing rule: git_two_dashes; took: 0:00:00.000119
DEBUG: Importing rule: go_run; took: 0:00:00.000113
DEBUG: Importing rule: gradle_no_task; took: 0:00:00.000305
DEBUG: Importing rule: gradle_wrapper; took: 0:00:00.000121
DEBUG: Importing rule: grep_arguments_order; took: 0:00:00.000116
DEBUG: Importing rule: grep_recursive; took: 0:00:00.000173
DEBUG: Importing rule: grunt_task_not_found; took: 0:00:00.000284
DEBUG: Importing rule: gulp_not_task; took: 0:00:00.000120
DEBUG: Importing rule: has_exists_script; took: 0:00:00.000124
DEBUG: Importing rule: heroku_not_command; took: 0:00:00.000117
DEBUG: Importing rule: history; took: 0:00:00.000029
DEBUG: Importing rule: java; took: 0:00:00.000114
DEBUG: Importing rule: javac; took: 0:00:00.000115
DEBUG: Importing rule: lein_not_task; took: 0:00:00.000197
DEBUG: Importing rule: ln_no_hard_link; took: 0:00:00.000125
DEBUG: Importing rule: ln_s_order; took: 0:00:00.000127
DEBUG: Importing rule: ls_lah; took: 0:00:00.000110
DEBUG: Importing rule: man; took: 0:00:00.000113
DEBUG: Importing rule: man_no_space; took: 0:00:00.000022
DEBUG: Importing rule: mercurial; took: 0:00:00.000145
DEBUG: Importing rule: mkdir_p; took: 0:00:00.000122
DEBUG: Importing rule: mvn_no_command; took: 0:00:00.000113
DEBUG: Importing rule: mvn_unknown_lifecycle_phase; took: 0:00:00.000115
DEBUG: Importing rule: no_command; took: 0:00:00.000129
DEBUG: Importing rule: no_such_file; took: 0:00:00.000028
DEBUG: Importing rule: npm_missing_script; took: 0:00:00.000312
DEBUG: Importing rule: npm_run_script; took: 0:00:00.000127
DEBUG: Importing rule: npm_wrong_command; took: 0:00:00.000217
DEBUG: Importing rule: open; took: 0:00:00.000250
DEBUG: Importing rule: pacman; took: 0:00:00.000176
DEBUG: Importing rule: pacman_not_found; took: 0:00:00.000063
DEBUG: Importing rule: pip_unknown_command; took: 0:00:00.000173
DEBUG: Importing rule: port_already_in_use; took: 0:00:00.000095
DEBUG: Importing rule: python_command; took: 0:00:00.000133
DEBUG: Importing rule: python_execute; took: 0:00:00.000115
DEBUG: Importing rule: quotation_marks; took: 0:00:00.000020
DEBUG: Importing rule: react_native_command_unrecognized; took: 0:00:00.000118
DEBUG: Importing rule: rm_dir; took: 0:00:00.000129
DEBUG: Importing rule: rm_root; took: 0:00:00.000126
DEBUG: Importing rule: sed_unterminated_s; took: 0:00:00.000116
DEBUG: Importing rule: sl_ls; took: 0:00:00.000020
DEBUG: Importing rule: ssh_known_hosts; took: 0:00:00.000121
DEBUG: Importing rule: sudo; took: 0:00:00.000027
DEBUG: Importing rule: switch_lang; took: 0:00:00.000037
DEBUG: Importing rule: systemctl; took: 0:00:00.000213
DEBUG: Importing rule: test.py; took: 0:00:00.000021
DEBUG: Importing rule: tmux; took: 0:00:00.000134
DEBUG: Importing rule: touch; took: 0:00:00.000117
DEBUG: Importing rule: tsuru_login; took: 0:00:00.000111
DEBUG: Importing rule: tsuru_not_command; took: 0:00:00.000113
DEBUG: Importing rule: unknown_command; took: 0:00:00.000026
DEBUG: Importing rule: vagrant_up; took: 0:00:00.000110
DEBUG: Importing rule: whois; took: 0:00:00.000157
DEBUG: Importing rule: workon_doesnt_exists; took: 0:00:00.000224
DEBUG: Trying rule: dry; took: 0:00:00.000083
DEBUG: Trying rule: test.py; took: 0:00:00.000010
DEBUG: Trying rule: apt_get_search; took: 0:00:00.000189
DEBUG: Trying rule: apt_invalid_operation; took: 0:00:00.000082
DEBUG: Trying rule: brew_update_formula; took: 0:00:00.000080
DEBUG: Trying rule: cargo; took: 0:00:00.000010
DEBUG: Trying rule: cargo_no_command; took: 0:00:00.000076
DEBUG: Trying rule: cd_correction; took: 0:00:00.000074
DEBUG: Trying rule: cd_mkdir; took: 0:00:00.000074
DEBUG: Trying rule: cd_parent; took: 0:00:00.000009
DEBUG: Trying rule: chmod_x; took: 0:00:00.000008
DEBUG: Trying rule: composer_not_command; took: 0:00:00.000071
DEBUG: Trying rule: cp_omitting_directory; took: 0:00:00.000071
DEBUG: Trying rule: cpp11; took: 0:00:00.000073
DEBUG: Trying rule: dirty_untar; took: 0:00:00.000069
DEBUG: Trying rule: dirty_unzip; took: 0:00:00.000069
DEBUG: Trying rule: django_south_ghost; took: 0:00:00.000010
DEBUG: Trying rule: django_south_merge; took: 0:00:00.000008
DEBUG: Trying rule: docker_not_command; took: 0:00:00.000070
DEBUG: Trying rule: fab_command_not_found; took: 0:00:00.000069
DEBUG: Trying rule: fix_alt_space; took: 0:00:00.000012
DEBUG: Trying rule: fix_file; took: 0:00:00.000011
DEBUG: Trying rule: git_add; took: 0:00:00.000072
DEBUG: Trying rule: git_branch_delete; took: 0:00:00.000069
DEBUG: Trying rule: git_branch_exists; took: 0:00:00.000074
DEBUG: Trying rule: git_branch_list; took: 0:00:00.000069
DEBUG: Trying rule: git_checkout; took: 0:00:00.000067
DEBUG: Trying rule: git_diff_staged; took: 0:00:00.000067
DEBUG: Trying rule: git_fix_stash; took: 0:00:00.000068
DEBUG: Trying rule: git_help_aliased; took: 0:00:00.000068
DEBUG: Trying rule: git_not_command; took: 0:00:00.000068
DEBUG: Trying rule: git_pull; took: 0:00:00.000067
DEBUG: Trying rule: git_pull_clone; took: 0:00:00.000071
DEBUG: Trying rule: git_push; took: 0:00:00.000068
DEBUG: Trying rule: git_push_pull; took: 0:00:00.000068
DEBUG: Trying rule: git_rebase_no_changes; took: 0:00:00.000068
DEBUG: Trying rule: git_remote_seturl_add; took: 0:00:00.000069
DEBUG: Trying rule: git_rm_recursive; took: 0:00:00.000068
DEBUG: Trying rule: git_stash; took: 0:00:00.000068
DEBUG: Trying rule: git_two_dashes; took: 0:00:00.000067
DEBUG: Trying rule: go_run; took: 0:00:00.000069
DEBUG: Trying rule: gradle_no_task; took: 0:00:00.000071
DEBUG: Trying rule: gradle_wrapper; took: 0:00:00.000068
DEBUG: Trying rule: grep_arguments_order; took: 0:00:00.000071
DEBUG: Trying rule: grep_recursive; took: 0:00:00.000068
DEBUG: Trying rule: grunt_task_not_found; took: 0:00:00.000068
DEBUG: Trying rule: gulp_not_task; took: 0:00:00.000067
DEBUG: Trying rule: has_exists_script; took: 0:00:00.000016
DEBUG: Trying rule: heroku_not_command; took: 0:00:00.000073
DEBUG: Trying rule: java; took: 0:00:00.000069
DEBUG: Trying rule: javac; took: 0:00:00.000070
DEBUG: Trying rule: lein_not_task; took: 0:00:00.000068
DEBUG: Trying rule: ln_no_hard_link; took: 0:00:00.000010
DEBUG: Trying rule: ln_s_order; took: 0:00:00.000009
DEBUG: Trying rule: ls_lah; took: 0:00:00.000070
DEBUG: Trying rule: man; took: 0:00:00.000072
DEBUG: Trying rule: mercurial; took: 0:00:00.000068
DEBUG: Trying rule: mkdir_p; took: 0:00:00.000010
DEBUG: Trying rule: mvn_no_command; took: 0:00:00.000068
DEBUG: Trying rule: mvn_unknown_lifecycle_phase; took: 0:00:00.000068
DEBUG: Trying rule: no_such_file; took: 0:00:00.000483
DEBUG: Trying rule: open; took: 0:00:00.000095
DEBUG: Trying rule: pip_unknown_command; took: 0:00:00.000082
DEBUG: Trying rule: port_already_in_use; took: 0:00:00.000452
DEBUG: Trying rule: python_command; took: 0:00:00.000015
DEBUG: Trying rule: python_execute; took: 0:00:00.000094
DEBUG: Trying rule: quotation_marks; took: 0:00:00.000010
DEBUG: Trying rule: react_native_command_unrecognized; took: 0:00:00.000072
DEBUG: Trying rule: rm_dir; took: 0:00:00.000011
DEBUG: Trying rule: sed_unterminated_s; took: 0:00:00.000072
DEBUG: Trying rule: sl_ls; took: 0:00:00.000009
DEBUG: Trying rule: ssh_known_hosts; took: 0:00:00.000074
DEBUG: Trying rule: sudo; took: 0:00:00.000023
DEBUG: Trying rule: switch_lang; took: 0:00:00.000074
DEBUG: Trying rule: systemctl; took: 0:00:00.000071
DEBUG: Trying rule: tmux; took: 0:00:00.000087
DEBUG: Trying rule: touch; took: 0:00:00.000081
DEBUG: Trying rule: tsuru_login; took: 0:00:00.000073
DEBUG: Trying rule: tsuru_not_command; took: 0:00:00.000068
DEBUG: Trying rule: unknown_command; took: 0:00:00.000094
DEBUG: Trying rule: vagrant_up; took: 0:00:00.000080
DEBUG: Trying rule: whois; took: 0:00:00.000076
DEBUG: Trying rule: workon_doesnt_exists; took: 0:00:00.000070
DEBUG: Trying rule: man_no_space; took: 0:00:00.000010
DEBUG: Trying rule: no_command; took: 0:00:00.026293
sudo vim ~/.bashrc [enter/↑/↓/ctrl+c]
DEBUG: PYTHONIOENCODING: utf-8
DEBUG: Total took: 0:00:01.664870
[1] sudp vim ~/.bashrc

Enter nothing to cancel the delete, or
Enter one or more of the entry IDs separated by a space, or
Enter "all" to delete all the matching entries.

Delete which entries? > 

Cancelling the delete!

Anything else you think is relevant:

This shouldn't be printed.

Enter nothing to cancel the delete, or
Enter one or more of the entry IDs separated by a space, or
Enter "all" to delete all the matching entries.

Delete which entries? > 

Cancelling the delete!
scorphus commented 6 years ago

Hi! Can you please share with us the output sequence of the following commands?

type __tf_alias

echo $__tf_vers

grep 'sudp vim' ~/.local/share/fish/fish_history . # *omit* sensitive information from this one

Thanks!

scorphus commented 6 years ago

The Fuck 3.11 using Python 2.7.14+

Sorry I missed this – your TheFuck is outdated. Current version is 3.25 but it has a bug in which it requires you to manually set the running shell, as reported in #717. This bug is not present in version 3.23, however.

So, let's see what that output sequence looks like and then we proceed.