PowerShellを実行するとコンソールフォントが変更されるのはなぜですか?


15

ラップトップに奇妙な問題があります-Powershellを既存のコンソールウィンドウ内で実行すると、ウィンドウのフォントの選択が変わります。

たとえば、これはウィンドウを開いた直後のcmd.exeです。 開いたときのコマンドコンソール

使用されているフォント、ウィンドウサイズ、色は正しいです-フォントは16ptのLucida Consoleです。

次に、実行するPowerShellと、これが結果です:

ここに画像の説明を入力してください

フォントは、12x16ピクセルで「ラスターフォント」に変更されました!他のウィンドウプロパティ(色、行数、列数)は変更されていません。

なぜ切り替わるのか?

注:これを調査中-Raster Fontはひどくいため、バグが発生します-PowerShellコンソールウィンドウのフォントの設定に関する問題を報告している人がいます(「PowershellのデフォルトフォントをLucida Consoleに変更できません」など)。私の問題は異なりますが(開始画面からではなく、既存のコンソールウィンドウからPowershellを起動しているため)、一方の解決策が他方を助けるかもしれないと思います。


ConEmuを使用して、問題を完全に回避できます。
ダンフ14年

@ChrisLivelyああ、答えが今日しか投稿されていないことに気付いていませんでした。何らかの理由で、私はそれがずっと古いと思った。コメントを削除します。
barlop

回答:


2

私はまったく同じ問題を抱えていて、それが私を夢中にさせていました。これが私がそれを修正するためにしたことです、うまくいけばそれもあなたのために働くでしょう:

1.)cmd.exeで、powershellコマンドを実行します。

2.)cmd.exeのpowershellプロンプトで、設定に移動し、フォントをLucida Consoleに変更します。

3.)PowerShellプロンプトを終了し、cmd.exeで設定に移動し、フォントをLucida Consoleに変更します。

4.)適切な測定のための追加手順として、start powershellcmd.exeから実行し、フォントも変更しました。

5.)私のOCDが休憩できるようになったので、笑ってください。今、start-> run-> cmd.exeに移動してpowershellコマンドを使用すると、Lucida Consoleに留まります。

コンピューターを再起動し、すべてを再開しましたが、これまでのところ、私に固執しているようです。

これがあなたの探求に役立つことを願っています=)


1
提案をありがとう-しかし、それは私のラップトップで違いを生みませんでした。:-(
ベヴァン

1

これは、少なくとも誰でも迅速な解決に役立つ場合のために、FYIです。これはWHYに答えないかもしれませんが、必要に応じて、または必要に応じて迅速に前進する可能性がある修正または修正する方法を提供します。

TechNet SetConsoleFontに移動して詳細を確認し、以下の手順に従って、以下のリソースセクションも参照してください。

これがSetConsoleFontモジュールの出番です。Set-ConsoleFontコマンドレットを使用する前に、モジュールをインポートする必要があります。まず、モジュールをローカルエディターにコピーします。テキストをコピーしたとき、最後の行に不要な改行があったことに注意してください。モジュールの最後の行が次のようになっていることを確認してください。

Export-ModuleMember -Variable _DefaultFont, _hConsoleScreen -Function Set-ConsoleFont, Get-ConsoleFontInfo

次に、ファイルをモジュールフォルダーに保存する必要があります。PowerShellコンソールで$ env:PSModulePathを使用すると、モジュールフォルダーのリストを取得できます。たとえば、次のようにSetConsoleFont.psm1というファイル名を使用して、DocumentsディレクトリのPowerShellモジュールフォルダーにSetConsoleFontモジュールを保存できます。

%USERPROFILE%\Documents\WindowsPowerShell\Modules\SetConsoleFont\SetConsoleFont.psm1

次に、以下を使用してモジュールをインポートできます。

Import-Module SetConsoleFont

以下を使用して、使用可能なフォントとそのサイズのリストを取得できます。

Get-ConsoleFontInfo | Format-Table -AutoSize

フォントサイズを設定するには、nFont列から数値を選択する必要があります。

Set-ConsoleFont 8

フォントサイズをデフォルトに変更するには、引数なしでSet-ConsoleFontを実行できます

リソース

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.