Add Powershell as a supported shell

- There may be additional functionality to implement, but I've been
  running this way for a month with no known issues
This commit is contained in:
Matt Kotsenas
2016-03-15 14:12:37 -07:00
parent 2207dd2668
commit 6daf687237
3 changed files with 40 additions and 1 deletions
+3 -1
View File
@@ -9,12 +9,14 @@ from .fish import Fish
from .generic import Generic
from .tcsh import Tcsh
from .zsh import Zsh
from .powershell import Powershell
shells = {'bash': Bash,
'fish': Fish,
'zsh': Zsh,
'csh': Tcsh,
'tcsh': Tcsh}
'tcsh': Tcsh,
'powershell': Powershell}
def _get_shell():
+18
View File
@@ -0,0 +1,18 @@
from .generic import Generic
class Powershell(Generic):
def app_alias(self, fuck):
return 'function ' + fuck + ' { \n' \
' $fuck = $(thefuck (Get-History -Count 1).CommandLine)\n' \
' if (-not [string]::IsNullOrWhiteSpace($fuck)) {\n' \
' if ($fuck.StartsWith("echo")) { $fuck = $fuck.Substring(5) }\n' \
' else { iex "$fuck" }\n' \
' }\n' \
'}\n'
def and_(self, *commands):
return u' -and '.join('({0})'.format(c) for c in commands)
def how_to_configure(self):
return 'iex "thefuck --alias"', '$profile'