2015-06-03 9 views
14

Próbuję wydrukować znak Unicode w Ruby, a konkretnie stos poo. Ma wartość Unicode U-1F4A9. Ale kiedy próbuję wydrukować "\ u1F4A9" na wyjście lub plik, nic nie widzę.Jak wydrukować znak Unicode U-1F4A9 'kupa poo' emoji

Czy muszę drukować do określonego typu pliku, aby zobaczyć kupkę kupy? Jeśli tak, jaki typ pliku? Czy jest jakiś sposób wydrukowania tego na wspólne wyjście? (Używam rubymine)

+1

Czy "\ u {1F4A9}" działa? –

Odpowiedz

27

punkty kodowe Unicode z więcej niż czterech cyfr hex musi być ujęty w nawiasy klamrowe:

puts "\u{1f4a9}" 
# => 

ta jest dość słabo udokumentowane, więc nie czuję się źle nie figurującego na zewnątrz. Ładny rzeczą o kręconych składni nawiasów jest to, że można umieścić kilka punktów kodowych znak spacji

puts "\u{1f4a9 1f60e}" 
# => 

oczywiście od Ruby 2.0, UTF-8 został kodowanie domyślne, więc zawsze można po prostu umieścić emoji bezpośrednio w swoim źródle:

puts "" 
# => 
+0

Naprawdę dobra odpowiedź! Możesz nawet użyć powyższych opcji, aby zmienić nazwy zakładek Konsoli KDE za pośrednictwem interfejsu emojis + qdbus. Bałwan Unicode lub twarz kota działają dobrze - teraz moje zakładki wyglądają naprawdę szalenie. Nie sądzę, żeby zespół KDE kiedykolwiek o tym myślał. – shevy