普通视图

发现新文章,点击刷新页面。
昨天以前刘荣星的博客

python3去除emoji表情符号

作者 JavasBoy
2021年2月20日 17:15

最近项目中使用load file导入文件到低版本MySQL中遇到卡住问题,最终问题为文本文件中某些行包含了emoji表情符号。所以使用python去掉这个emoji符号,然后再导出数据库。

需要安装如下模块:

https://pypi.org/project/demoji/

安装完demoji模块后需要手动下载emoji json文件,如果服务器无法上网,可以本地电脑运行,然后提取这个codes.json文件上传到服务器对应的目录。

>>> import demoji
>>> demoji.download_codes()
Downloading emoji data ...
... OK (Got response in 0.14 seconds)
Writing emoji data to /Users/brad/.demoji/codes.json ...
... OK

代码如下:

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-

import os
import demoji

file_path = "org_loadfile.txt"
final_fine = "loadfile.txt"

# 如果最终文件存在,则删除
if os.path.exists(final_fine):
    os.remove(final_fine)

with open(file_path, 'r') as file:
    for line in file:
        # print(demoji.replace(line, "__"))
        # 替换表情符号为 空
        rap_line = demoji.replace(line, "")
        # 写入文件
        with open(final_fine, 'a') as f:
            f.write(rap_line)


Linux Mint 20 gnome-terminal 使用等距更纱黑体 SC字体

作者 JavasBoy
2020年12月2日 20:35

最近在使用Linux Mint 20 Cinnamon桌面,默认的终端为 gnome terminal,一直无法修改为我想要的等宽字体,比如最近喜欢上的 等距更纱黑体 SC,英文名为:Sarasa Mono SC

原因是gnome terminal只认Monospace系列家族字体,所以想办法让系统认为等距更纱黑体 SC就是monospace字体就能解决这个问题。

还是先记录一下怎么安装等距更纱黑体 SC字体吧,从github下载最新压缩包,然后使用7z解压,只要复制sarasa-mono-sc-regular.ttf到/usr/share/fonts/目录下的其中一个目录即可。

# https://github.com/be5invis/Sarasa-Gothic/releases

sudo mkdir /usr/share/fonts/sarasa_mono_sc
sudo cp sarasa-gothic-ttf-0.15.3/sarasa-mono-sc-regular.ttf /usr/share/fonts/sarasa_mono_sc/
# 刷新字体缓存
sudo fc-cache  -fv

# 使用如下命令可查看字体
fc-match "Sarasa Mono SC"
# 或者使用 fonts 工具也可以查看到安装好的字体。

下面是修改字体配置文件,替换字体,我是从ArchLinux Wiki中查找到的方法,网上使用alias的方法没有效果。

vim ~/.config/fontconfig/fonts.conf

在<fontconfig></fontconfig>里面增加下面一段:

<match target="pattern">
    <test qual="any" name="family"><string>Monospace</string></test>
    <edit name="family" mode="assign" binding="same"><string>Sarasa Mono SC</string></edit>
</match>


保存文件,重新打开 gnome-terminal 即可看到字体变化为等距更纱黑体 SC的效果了。

ArchLinux Wiki上的描述为:

关键点在于使用“binding”属性可以有更好的效果,例如在Firefox你可能只想替换字体但并不想改变被替换字体的属性。

可以使用一下命令检查是否生效:

# 查看 Monospace 目前使用的是哪个字体
fc-match "Monospace"
# 排序,这里可以看到排在第一行的为 等距更纱黑体 SC
fc-match --sort "Monospace"

sarasa-mono-sc-regular.ttf: "等距更纱黑体 SC" "Regular"


注意:在gnome-terminal的首选项设置中 需要钩选自定义字体,选择Monospace Regular 字体。

❌
❌