Aquí es un giro diferente en el guión de red888:
function Reload {
$CurrentFile = $psise.CurrentFile
$FilePath = $CurrentFile.FullPath
$lineNum = $psise.CurrentFile.Editor.CaretLine
$colNum = $psise.CurrentFile.Editor.CaretColumn
$PsISE.CurrentPowerShellTab.Files.remove($CurrentFile) > $null
$newFile = $PsISE.CurrentPowerShellTab.Files.add($FilePath)
$newfile.Editor.SetCaretPosition($lineNum,$colNum)
}
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Clear()
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus.Add("Reload File",{Reload},'f4') > $null
Restaura la posición del cursor después de la recarga. Quité la línea
iex $PsISE.CurrentPowerShellTab.Files.Editor.Text
Como no ella y su también no es el mismo que ejecutar la secuencia de comandos (y por lo que los resultados en el extraño comportamiento de declaraciones como $script:MyInvocation.MyCommand.Path
) necesitaba.
Dicho sea de paso, si coloca este código en su perfil ISE, se ejecutará automáticamente cuando cargue por primera vez el ISE. El perfil de ISE es solo un script de powershell cuya ubicación viene dada por la variable $profile
.
Aquí hay algunos comandos que crean el perfil si no existe, y luego lo abre. Ejecútelo desde el interior del ISE:
if (!(Test-Path (Split-Path $profile))) { mkdir (Split-Path $profile) } ;
if (!(Test-Path $profile)) { New-Item $profile -ItemType file } ;
notepad $profile
¿Qué versión de powershellgui está utilizando? La mía lo hace ahora y es la versión 2.4.0.1659 – JNK
@JPBlanc Fwiw, he encontrado que PowerGUI tiene problemas. [La finalización relativa de la ruta está desactivada] (http://en.community.dell.com/techcenter/powergui/f/4833/t/19603445), y con la depuración complicada, a menudo llegué a estados en los que lo que hay en algunas variables no cambiará hasta que reinicie PowerGUI, un estado que es difícil de detectar. También puede obtener un poco de RAM con hambre a veces. Si pudiéramos tener la estabilidad de ISE con las sutilezas de PowerGUI (o incluso solo la detección de edición), estaría mucho más feliz. Esta * es * la "característica asesina" que falta ISE 3. – ruffin
Desde PowerShell 3 utilizo ISE, está bien para mí. – JPBlanc