nodejs:将希伯来语RTL字符串打印到shell

时间:2017-07-24 10:37:07

标签: node.js shell unicode right-to-left hebrew

以下JS对象包含希伯来语字符串:

  { stationId: 359,
    location: { lat: 32.0732, lon: 34.7859, address: 'קפלן פינת ארניה' },
    bikes: { availableBikes: 12, availableParkingSlots: 16 } },
  { stationId: 116,
    location: { lat: 32.1022, lon: 34.7854, address: 'שי עגנון 59' },
    bikes: { availableBikes: 5, availableParkingSlots: 13 } },
  { stationId: 314,
    location: { lat: 32.0917, lon: 34.7826, address: 'נורדאו 101בשדרה' },
    bikes: { availableBikes: 9, availableParkingSlots: 10 } },

但是,当对象打印到shell(iTerm2并带有zsh)时,希伯来字符串显示为LTR(第一个字母位于字符串的左侧,而不是正确的右手边。)

Object in shell

请注意,只需反转字符串就无法解决此问题,因为它也会反转出现LTR的数字和英文单词。

如何在nodejs中正确地将希伯来语RTL字符串打印到shell?

1 个答案:

答案 0 :(得分:1)

问题在于iTerm2,而不是node.js. iTerm2不能正确支持RTL。见https://gitlab.com/gnachman/iterm2/issues/1611

使用标准Mac OS X终端应正确显示文本。

相关问题