显示中英文字符 Conky

显示中英文字符 Conky

所以我试图在 conky 中添加一些当天的单词,但是用中文单词。我尝试过几种方法,但都没有成功。

我将我的话保存在一个 csv 文件中,格式类似于 电脑,dia4nna3o,computer 在 conky 中,我尝试运行 ${exec mycommand} Where mycommand 有几件事:

1)编写一个Python脚本来打印随机行。什么结果都没有(在 bash 中有效)

2) 一个回显随机行的 bash 脚本。什么结果都没有(在 bash 中有效)

3)尝试将上述之一的输出转换为图像,然后显示该图像。使用

python randword.py | convert label:@- tmp.png

将文本转换为图像。虽然这显示了图像,但没有中文字符应该在的地方(但英文字符在那里)。看起来像这样:

输出图像

我真的不知道该怎么办了。任何想法?


系统信息:发行版:Manjaro x86_64 DE:XFCE Con​​ky 版本:

[ steven ] [~] > conky --version                                        
conky 1.10.6_pre compiled Thu Dec 29 16:29:51 UTC 2016 for Linux 4.1.37-1-MANJARO x86_64

Compiled in features:

System config file: /etc/conky/conky.conf
Package library path: /usr/lib/conky


 General:
  * math
  * hddtemp
  * portmon
  * IPv6
  * Curl
  * RSS
  * Weather (METAR)
  * Weather (XOAP)
  * wireless
  * support for IBM/Lenovo notebooks
  * nvidia
  * builtin default configuration
  * old configuration syntax
  * Imlib2
  * apcupsd
  * iostats
  * ncurses
  * Internationalization support

 Lua bindings:
  * Cairo
  * Imlib2
  * RSVG
 X11:
  * Xdamage extension
  * Xinerama extension (virtual display)
  * XDBE (double buffer extension)
  * Xft
  * ARGB visual
  * Own window

 Music detection:
  * MPD
  * MOC

 Default values:
  * Netdevice: eth0
  * Local configfile: $HOME/.conkyrc
  * Localedir: /usr/share/locale
  * Maximum netdevices: 64
  * Maximum text size: 16384
  * Size text buffer: 256

答案1

您需要有合适的字体,并设置 conky 的区域设置。我在 Linux Fedora 上使用 conky 1.10.4 尝试了以下操作。安装字体:

sudo dnf install google-noto-cjk-fonts 

创建一个带有一些 utf8 字符的文件:

    printf '\xe5\xba\x83\n' >chars

创建一个.conkyrc设置全局 cjk 字体的文件,并尝试在文本部分中设置变体,并用于cat读取上述文件:

conky.config = {
    minimum_height = 400,
    minimum_width = 600,
    font = 'Noto Sans CJK TC Regular:size=40',
    use_xft = true,
 };
conky.text = [[
 start  ${exec cat chars}  end
 ${font Noto Sans CJK TC Bold:size=20} start ${exec cat chars} end ${font}
]]

在 utf8 语言环境中运行 conky

    LC_ALL=en_US.utf8 conky -c .conkyrc -o

得到结果:

康基

相关内容