Batu ini! Sebagai seorang gamer saya suka fitur gempa. Konsol tampaknya dikunci di atas layar (meskipun opsi terkunci di atas dinonaktifkan). Terima kasih
Ced
bagaimana Anda menjalankan cmd dengan tab?
Mikey
@ Mikey Apa? Baca jawabannya dulu.
Maximus
35
Tidak ada jawaban di halaman ini yang menyebutkan aspek penting dari dukungan baru untuk Kontrol Terminal ANSI yang ditambahkan ke host konsol Windows 10 di build 16257 (dan lebih baru). Yaitu, itu tidak diaktifkan secara default. Kecuali jika perangkat lunak khusus yang Anda gunakan memungkinkan pemrosesan ANSI dengan memanggil SetConsoleMode API dengan ENABLE_VIRTUAL_TERMINAL_PROCESSING (0x0400)bendera, Anda tidak akan melihat warna atau mendapatkan pemrosesan ANSI untuk aplikasi itu.
Saat menulis dengan WriteFile atau WriteConsole , karakter diurai untuk VT100 dan urutan karakter kontrol serupa yang mengontrol pergerakan kursor, mode warna / font, dan operasi lain yang juga dapat dilakukan melalui API Konsol yang ada. Untuk informasi lebih lanjut, lihat Urutan Terminal Virtual Konsol.
Saya menduga alasan contoh yang ditunjukkan pada halaman ini berfungsi adalah, ternyata echoperintah (atau mungkin bagian pemrosesan batch dari CMD.EXEatau conhost) memungkinkan pemrosesan ANSI dengan memanggil API yang baru saja disebutkan. Tetapi banyak alat atau executable lain yang menulis stdinatau stdoutmungkin tidak melakukan ini, dalam hal ini Anda tidak akan melihat warna untuk proses tersebut.
Untungnya, default global dapat diubah dari opt-in ke opt-out . Kunci registri at at HKEY_CURRENT_USER\Console\VirtualTerminalLevelmenetapkan perilaku default global untuk memproses urutan pelarian ANSI. Buat DWORDkunci (jika perlu) dan tetapkan nilainya untuk 1mengaktifkan (atau 0untuk menonaktifkan`) pemrosesan ANSI secara global .
Perhatikan bahwa pengaturan registri ini mengontrol default , artinya hanya memengaruhi aplikasi konsol yang tidak secara eksplisit memanipulasi mode konsol dengan menelepon SetConsoleMode(...). Oleh karena itu, meskipun nilai registri dapat membantu mengaktifkan ANSI untuk aplikasi yang tidak memperhatikan mode konsol , itu tidak akan berpengaruh pada aplikasi apa pun yang memahami mode konsol yang (karena alasan tertentu) dapat secara eksplisit menonaktifkan ANSI.
Anda juga dapat mengubah warna default menggunakan Colortool . Instalasi Windows 10 baru akan mendapatkan warna yang sedikit dimodifikasi yang lebih mudah dibaca (terutama biru hitam), tetapi pembaruan akan mempertahankan warna lama yang sulit dibaca.
10
Apakah ada emulator konsol untuk Windows yang menginterpretasikan pewarnaan ANSI?
Windows sebelum 10 - tidak ada dukungan asli untuk warna ANSI di konsol
Untuk versi Windows di bawah 10, konsol perintah Windows tidak mendukung pewarnaan keluaran secara default. Anda dapat menginstal Cmder , ConEmu , ANSICON atau Mintty (digunakan secara default di GitBash dan Cygwin) untuk menambahkan dukungan pewarnaan ke konsol perintah Windows Anda.
Windows 10 - Warna Baris Perintah
Mulai dari Windows 10, konsol Windows mendukung ANSI Escape Sequences dan beberapa warna secara default.
Saya tidak yakin apa tepatnya versi Win10, tetapi disebutkan di sini: github.com/symfony/symfony/issues/19520 Pada laptop perusahaan saya - Ver 1511 (OS Build 10586.753) - Saya tidak membutuhkannya. Di PC rumah saya, saya harus menggunakan ansicon, karena warna tidak menyala secara default.
geff_chang
4
Mereka hanya memperkenalkan flag, yang mengontrol output berwarna dan salah secara default. Lihat wpdev.uservoice.com/forums/… ) --- Symfony menggunakan PHP.exe di Windows, di mana bendera dimatikan, jadi mereka harus menunggu patch, yang mendarat di sini: github.com/php/php- src / pull / 2103 . Situasi teratasi. --- Untuk cmd.exe bendera selalu benar. Itu sebabnya Anda memiliki dukungan warna pada konsol.
Jens A. Koch
1
Apakah kode-kode ini berfungsi dalam skrip shell di linux juga? atau apakah itu dilakukan dengan cara yang berbeda?
Tidak ada jawaban di halaman ini yang menyebutkan aspek penting dari dukungan baru untuk Kontrol Terminal ANSI yang ditambahkan ke host konsol Windows 10 di build 16257 (dan lebih baru). Yaitu, itu tidak diaktifkan secara default. Kecuali jika perangkat lunak khusus yang Anda gunakan memungkinkan pemrosesan ANSI dengan memanggil SetConsoleMode API dengan
ENABLE_VIRTUAL_TERMINAL_PROCESSING (0x0400)
bendera, Anda tidak akan melihat warna atau mendapatkan pemrosesan ANSI untuk aplikasi itu.Saya menduga alasan contoh yang ditunjukkan pada halaman ini berfungsi adalah, ternyata
echo
perintah (atau mungkin bagian pemrosesan batch dariCMD.EXE
atauconhost
) memungkinkan pemrosesan ANSI dengan memanggil API yang baru saja disebutkan. Tetapi banyak alat atau executable lain yang menulisstdin
ataustdout
mungkin tidak melakukan ini, dalam hal ini Anda tidak akan melihat warna untuk proses tersebut.Untungnya, default global dapat diubah dari opt-in ke opt-out . Kunci registri at at
HKEY_CURRENT_USER\Console\VirtualTerminalLevel
menetapkan perilaku default global untuk memproses urutan pelarian ANSI. BuatDWORD
kunci (jika perlu) dan tetapkan nilainya untuk1
mengaktifkan (atau0
untuk menonaktifkan`) pemrosesan ANSI secara global .Perhatikan bahwa pengaturan registri ini mengontrol default , artinya hanya memengaruhi aplikasi konsol yang tidak secara eksplisit memanipulasi mode konsol dengan menelepon
SetConsoleMode(...)
. Oleh karena itu, meskipun nilai registri dapat membantu mengaktifkan ANSI untuk aplikasi yang tidak memperhatikan mode konsol , itu tidak akan berpengaruh pada aplikasi apa pun yang memahami mode konsol yang (karena alasan tertentu) dapat secara eksplisit menonaktifkan ANSI.sumber
Mulai dari Windows 10 TH2 (v1511),
conhost.exe
(dan, dengan ekstensi,cmd.exe
) mendukung ANSI Escape Sequences, dalam warna tertentu:The MSDN Halaman tentang Console Virtual Terminal Urutan menjelaskan apa urutan yang didukung dan cara mengaktifkan mereka:
sumber
Windows sebelum 10 - tidak ada dukungan asli untuk warna ANSI di konsol
Untuk versi Windows di bawah 10, konsol perintah Windows tidak mendukung pewarnaan keluaran secara default. Anda dapat menginstal Cmder , ConEmu , ANSICON atau Mintty (digunakan secara default di GitBash dan Cygwin) untuk menambahkan dukungan pewarnaan ke konsol perintah Windows Anda.
Windows 10 - Warna Baris Perintah
Mulai dari Windows 10, konsol Windows mendukung ANSI Escape Sequences dan beberapa warna secara default.
Dokumentasi MSDN
Demo
Perintah Batch
Itu
win10colors.cmd
ditulis oleh Michele Locati :sumber