Vim adalah editor teks yang bagus untuk sistem unix, tetapi terkenal sulit untuk keluar.
Tulis program lengkap yang akan ditampilkan :q
untuk keluar dari Vim. Kemudian harus membaca satu baris input, karena kemudian akan diberikan bash prompt, dalam hal ini keluar berhasil, atau kesalahan, dalam hal ini ada perubahan yang belum disimpan.
Bash prompt akan menjadi ini:
E37@vimmachine: /var/override)
Sementara kesalahannya adalah ini:
E37: No write since last change (add ! to override)
Setelah diberi bash prompt, pekerjaan program selesai, dan seharusnya tidak memberikan output lagi (kecuali untuk spasi putih).
Setelah diberi kesalahan, program Anda harus secara acak (yaitu setiap kemungkinan memiliki probabilitas yang tidak nol untuk dipilih) :q!
, untuk keluar tanpa menyimpan, atau :x
, untuk menyimpan dan keluar.
Ini adalah kode-golf sehingga byte paling sedikit di setiap bahasa menang!
E37: No write since last change
? Artinya, bagaimana suatu algoritma dapat membedakan prompt dari pesan kesalahan?
E37@vimmachine: /var/override)
:x
untuk keluar dari vim. Suatu hari Anda secara tidak sengaja akan menekan :X
tombol acak ketika Anda bingung. Setelah Anda akhirnya, :wq
Anda tidak akan pernah melihat file Anda lagi.
:x
apa-apa! Saya selalu menggunakan:wq
:)