当我在 Powershell 中执行显而易见的事情时:
Start-Process "C:\bin\emacs-23.3\bin\emacs.exe" -ArgumentList "-nw"
然后 emacs 会加载一个新的“cmd.exe”终端,在该终端中它处于终端模式,而不是在 Powershell 中以终端模式启动。如何在现有的 Powershell 终端中以终端模式启动 emacs?
答案1
我无法测试它,因为我不使用 emacs。如果您只是调用它,它会在 PowerShell 中加载吗?
C:\bin\emacs-23.3\bin\emacs.exe -nw
答案2
从 winget 安装 GNU Emacs
winget install "GNU Emacs"
然后将此代码块添加到您的Microsoft.PowerShell_profile.ps1
$emacs_wildcard = "${Env:ProgramFiles}\Emacs\*\bin\emacs.exe"
if ($(Test-Path $emacs_wildcard)) {
$emacs_path = (Get-ChildItem $emacs_wildcard)[-1].FullName -replace ' ', '` '
function emacs { "$emacs_path -nw $args" | Invoke-Expression }
}