2015-06-03 10 views
14

Ich versuche, ein Unicode-Zeichen in Ruby, speziell der Haufen von poo zu drucken. Es hat einen Unicode-Wert von U-1F4A9. Aber wenn ich versuche, "\ u1F4A9" auf die Ausgabe oder eine Datei zu drucken, sehe ich nichts.So drucken Sie Unicode-Zeichen U-1F4A9 'Haufen von Poo' Emoji

Muss ich auf einen bestimmten Dateityp drucken, um den Haufen von Kacke zu sehen? Wenn ja, welche Art von Datei? Gibt es eine Möglichkeit, dies auf den gemeinsamen Ausgang zu drucken? (Ich verwende RubyMine)

+1

Funktioniert '' \ u {1F4A9}? –

Antwort

27

Unicode-Codepunkte mit mehr als vier hexadezimalen Ziffern müssen in geschweiften Klammern werden:

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

Dieser ziemlich schlecht dokumentiert, so fühlen sich nicht schlecht über nicht Bezifferung aus. Eine nette Sache über die geschweifte Klammer Syntax ist, dass Sie durch Leerzeichen mehrere Codepunkte getrennt einbetten können:

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

Natürlich, da Ruby-2.0, UTF-8 die Standard-Kodierung gewesen ist, so kann man immer nur das setzen Emoji direkt in Ihre Quelle:

puts "" 
# => 
+0

Große Antwort in der Tat! Sie können sogar die KDE-Konsolenregisterkarten über die Emojis + qdbus-Schnittstelle umbenennen. Der Unicode-Schneemann oder das Katzengesicht funktioniert gut - jetzt sehen meine Tabs wirklich verrückt aus. Ich glaube nicht, dass das KDE-Team jemals darüber nachgedacht hat. – shevy