2010-11-23 14 views
5

C:\[test]\xというフォルダがあるとしたら、[test]フォルダの中にPowerShellのタブ補完をまったく使用できません。PowerShellタブの完了問題

私はC:\からタブインするときに完了するので、フォルダ名を´[test´]にエスケープする必要があると考えています(これはマークダウンの問題を引き起こします)。

C:\の内部に入力した場合に[t...と入力すると、タブの補完機能が失われることはありませんが、そのフォルダ内でタブ補完機能を使用したいと考えています。その行動を修正する方法はありますか?

+0

'Set-Location'でそのフォルダを入力することもできません...' LiteralPath'引数が必要です。 Yikes。 – Joey

答えて

2

PowerShellとその多くの機能は、最初に特別な記号([および])を持つパスではうまく機能しません。 PowerShellコアを修正することはできませんが、いくつかの機能を修正/置き換えることができます。 TabExpansionはその1つです。改善された実装に置き換えることができる単なるグローバル関数です。

いくつかのカスタムTabExpansion実装がここにあります。私は自分自身を使用しています。それはホストにとらわれません(少なくともコンソール、ISE、自分のホストでうまく動作します)、それはかなりシンプルですが、多くの改善をもたらします。あなたの特定の問題も解決されています。

TabExpansionのコード(ドットソースそれが中または単にあなたのPowerShellプロファイルからそれを呼び出す): http://code.google.com/p/farnet/source/browse/trunk/PowerShellFar/TabExpansion.ps1

は、その機能の一部は、このテストでカバーされています http://code.google.com/p/farnet/source/browse/trunk/PowerShellFar/Bench/Test/Test-TabExpansion-.ps1 (テストのみで動作します特別な環境では、実行しないでください。TabExpansionが何ができるのかを見るためにコード内のコメントを見てください)。

+0

ありがとう、私はこれを見てみましょう! – poke

関連する問題