mirror of
				https://github.com/nvbn/thefuck.git
				synced 2025-10-31 07:04:12 +00:00 
			
		
		
		
	#495: Alter history only when configured to do so
This commit is contained in:
		| @@ -74,10 +74,12 @@ class TestFish(object): | ||||
|         assert 'TF_ALIAS=fuck PYTHONIOENCODING' in shell.app_alias('fuck') | ||||
|         assert 'PYTHONIOENCODING=utf-8 thefuck' in shell.app_alias('fuck') | ||||
|  | ||||
|     def test_app_alias_history_merge(self, settings, shell): | ||||
|     def test_app_alias_alter_history(self, settings, shell): | ||||
|         settings.alter_history = True | ||||
|         assert 'history --delete' in shell.app_alias('FUCK') | ||||
|         assert 'history --merge' in shell.app_alias('FUCK') | ||||
|         settings.alter_history = False | ||||
|         assert 'history --delete' not in shell.app_alias('FUCK') | ||||
|         assert 'history --merge' not in shell.app_alias('FUCK') | ||||
|  | ||||
|     def test_get_history(self, history_lines, shell): | ||||
|   | ||||
| @@ -20,19 +20,19 @@ class Fish(Generic): | ||||
|  | ||||
|     def app_alias(self, fuck): | ||||
|         if settings.alter_history: | ||||
|             hist_merge = '    history --merge ^ /dev/null\n' | ||||
|             alter_history = ('    history --delete $fucked_up_command\n' | ||||
|                              '    history --merge ^ /dev/null\n') | ||||
|         else: | ||||
|             hist_merge = '' | ||||
|             alter_history = '' | ||||
|         # It is VERY important to have the variables declared WITHIN the alias | ||||
|         return ('function {0} -d "Correct your previous console command"\n' | ||||
|                 '  set -l fucked_up_command $history[1]\n' | ||||
|                 '  env TF_ALIAS={0} PYTHONIOENCODING=utf-8' | ||||
|                 ' thefuck $fucked_up_command | read -l unfucked_command\n' | ||||
|                 '  if [ "$unfucked_command" != "" ]\n' | ||||
|                 '    eval $unfucked_command\n' | ||||
|                 '    history --delete $fucked_up_command\n{1}' | ||||
|                 '    eval $unfucked_command\n{1}' | ||||
|                 '  end\n' | ||||
|                 'end').format(fuck, hist_merge) | ||||
|                 'end').format(fuck, alter_history) | ||||
|  | ||||
|     @memoize | ||||
|     @cache('.config/fish/config.fish', '.config/fish/functions') | ||||
|   | ||||
		Reference in New Issue
	
	Block a user