Обновить вкладку ConEmu текущим путем

9

На ConEmu я открываю консоль PowerShell. Мне бы хотелось, чтобы заголовок вкладки отражал текущую папку, в которой я нахожусь. Однако по умолчанию заголовок «Windows Powershell».

Я указал заголовок вкладки в моей задаче как «C: \ Code», и он обновляется, но это жестко закодировано.

Есть ли способ открыть консоль PowerShell, и пока я перемещаюсь, он показывает мне текущий каталог в заголовке вкладки?

taylonr
источник

Ответы:

10

PowerShell

Измените promptфункцию в вашем профиле PowerShell.

Откройте свой профиль в редакторе, например, в блокноте

new-item -itemtype file -path $profile
notepad $profile

Добавьте следующую функцию, чтобы изменить (переименовать) вкладку ConEmu каждый раз, когда появляется подсказка

function prompt
{
  & "$env:ConEmuBaseDir\ConEmuC.exe" "/GUIMACRO", 'Rename(0,@"'$(Get-Location)'")' > $null
  return "PS " + $(Get-Location) + ">"
}

или используйте следующий код, чтобы изменить заголовок консоли, но не вкладку

function prompt
{
  & "$env:ConEmuBaseDir\ConEmuC.exe" "/GUIMACRO", 'Rename(1,@"'$(Get-Location)'")' > $null
  return "PS " + $(Get-Location) + ">"
}

Может потребоваться изменить этот код, если вам нужно использовать PowerShell вне ConEmu.


cmd (пусть будет в одном ответе)

Если вы используете cmd.exe, вы можете обновить вкладку ConEmu с текущим каталогом CMD, используя promptи ANSI . Просто запустите ваш cmd следующим образом:

cmd /k prompt $p$e]9;3;"$p"$e\$g & title cmd

Чтобы иметь возможность обрабатывать ANSI, вам нужно включить Inject ConEmuHkи ANSI X3.64опции на Featuresстранице настроек ConEmu (они включены по умолчанию). Щелкните правой кнопкой мыши заголовок окна ConEmu или нажмите, WinAltPчтобы открыть Settingsдиалоговое окно.

Обратите внимание, что & title cmdв примере не требуется, только для заголовка окна prettify.

Maximus
источник
В последней версии вы можете использовать %dмакрос в шаблоне вкладок. Однако может потребоваться настроить оболочку code.google.com/p/conemu-maximus5/wiki/ShellWorkDir
Maximus