Saya baru saja kehilangan sebagian dari akhir pekan saya karena ini ... joker - nol lebar ruang. Saya hanya menggunakan beberapa cuplikan dari grup google dan tidak mengenali bahwa ada karakter yang berlipat ganda, karena Idea (11) tidak menunjukkannya, yang menyebabkan masalah dengan parsing file konfigurasi aplikasi saya ... Saya menemukannya secara tidak sengaja di vi .
Apakah ada cara untuk menampilkan hal-hal seperti itu di IntelliJ (atau cara lain untuk memeriksa file) tanpa menggunakan editor eksternal.
IntelliJ 11 / Mac OS 10.7
edit - sampel
Dua baris ini terlihat identik, di browser dan juga di Idea. Anda dapat melihat dalam kode halaman bahwa pada baris pertama yang dikomentari ada spasi nol tersembunyi antara mysql://
dan localhost
yang menyebabkan masalah. Tentu saja jika Anda mengharapkan 'joker', Anda dapat mencoba menggunakan pencarian dan menggantinya, namun tidak ada yang mengharapkan tanda yang seharusnya tidak ada di sana, terutama jika dia tidak dapat melihatnya dengan cara apa pun.
#db.default.url="jdbc:mysql://localhost/play-fullcalendar"
db.default.url="jdbc:mysql://localhost/play-fullcalendar"
sumber
Uncaught SyntaxError: Unexpected token ILLEGAL
dan sedikit meneliti menuntun saya pada gagasan bahwa itu adalah masalah simbol tersembunyi. Bagaimana saya menemukan karakter misterius nol-lebar yang sedang Anda bicarakan? Hanya untuk melihat apakah itu masalahnya ...Jawaban:
Tidak yakin apa yang Anda maksudkan, tetapi Anda dapat secara permanen mengaktifkan dan menonaktifkan ruang putih
Settings -> Editor -> General -> Appearance -> Show whitespaces
.Anda juga dapat mengaturnya untuk file saat ini hanya di
View -> Active Editor -> Show WhiteSpaces
.Edit:
Punya waktu luang karena sepertinya masalah yang populer, saya telah menulis sebuah plugin untuk memeriksa kode untuk kelainan tersebut. Ini disebut pelacak Karakter Lebar Nol dan Anda dapat mencobanya .
sumber
Settings -> Editor -> General -> Appearance -> Show whitespaces -> Leading | Inner | Trailing
Settings -> Editor -> Color Scheme -> General
, lalu dalam kategori itu, bukaText -> Whitespaces
. Saya mengubah milik saya dari Foreground # 505050 default menjadi # 404040, dan menemukan mereka terlihat tetapi tidak menggangguSolusi yang sangat sederhana adalah mencari karakter non-ascii file Anda menggunakan ekspresi reguler. Ini dengan baik akan menyoroti semua tempat di mana mereka ditemukan dengan perbatasan.
Cari
[^\x00-\x7F]
dan centang kotak untuk Regex.Hasilnya akan terlihat seperti ini (dalam mode gelap):
sumber
$string = preg_replace( '/[^\x00-\x7F]/', null, $string ); htmlspecialchars_decode( htmlentities( html_entity_decode( $string ) ) );
Jika Anda datang ke sini mencari plugin Jetbrains IDE, periksa bagian ilahi ini
https://plugins.jetbrains.com/plugin/7448-zero-width-characters-locator
Ini menambah inspeksi Anda semua keinginan
sumber