BNU-FZH

fengzhenhua@outlook.com

vim-templates是一款相当好用的vim插件,同时支持neovim, 当使用vimneovim建立文件时,此插件会导入预先设置模板,这大大提高了工作效率。虽然默认配置了好多的模板,但都是一些通用模板,于是就需要自己定义模板,在定义模板的过程中一些变量的引用是重要的内容。本文从官方网站: tibabit/vim-templatesREADME.md文件中截取相关变量部分,以方便编写模板之用。同时也可以在安装插件后,使用命令::help template.txt调出使用细节。

Customization

Creating your own templates

  • Create a file <template_name>.template inside a folder which is searched by the plugin( see below), e.g. if you want to create a template file for a c++ main file you can name it cppmain.template or cppm.template
  • Open the file and edit, for example
阅读全文 »

在创建备份文件时,有些文件需要加密保存,这时使用命令加密文件就显得必不可少,当使用的时候运行脚本过程再解压,但是要求输入密码,而密码是掌握在作者手中的,所以确保了隐私安全。

使用ZIP压缩和解压

  1. 命令中直接输入密码

    1
    zip -rP yourpassword package.zip package

  2. 交互分步输入密码

    1
    zip -re package.zip package

  3. ZIP解压缩

    1
    unzip package.zip 

使用TAR压缩和解压

  1. TAR加密压缩

    1
    tar -zcvf - ./package | openssl des3 -salt -k yourpassword | dd of=meiyou.tar.gz

  2. TAR解压缩

    1
    dd if=meiyou.tar.gz | openssl des3 -d -k yourpassword |tar zxf -

Zsh(Z-shell)是一款用于交互式使用的shell,也可以作为脚本解释器来使用。它包含了bash,ksh,tcsh等其他shell中许多优秀功能,也拥有诸多自身特色。

zsh有一款语法高亮插件zsh-syntax-highlighting, 它可以为zsh添加色彩高亮,是一款必备插件,但是今天我又发现一款比它更优秀的插件fast-syntax-highlighting, 其自带有多款高亮主题,且可以自由切换。

安装插件

fast-syntax-highlighting
1
paru -S fast-syntax-highlighting-git

启用插件

~/.zshrc
1
2
# source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source /usr/share/zsh/plugins/fast-syntax-highlighting/fast-syntax-highlighting.plugin.zsh

配置插件

  • 列出可用的主题

    1
    fast-theme -l

  • 切换主题

    1
    fast-theme -t theme-name

插件zsh-syntax-highlightingfast-syntax-highlighting可以同时安装,并不冲突,但是在.zshrc配置文件中应当选择其中一个.

在写博客的时候需要引用一些网络文章,但是发现每次复制Firefox地址栏的链接时都会被自动编码, 于是当链接中包含中文时就会乱码。虽然粘贴到博客中一样使用,但是不方便识别。解决方法为:Firefox地址栏输入about:config 打开浏览器参数配置界面,提示小心之类的确定。

  • 老版本搜索: network.standard-url.escape-utf8 配置为
  • 新版本搜索: browser.urlbar.decodeURLsOnCopy 配置为

在Linux下打开或解压从Windows系统拷贝的zip文件,中文部分乱码,这个问题的根本原因是,windows下默认gb2312与linux中默认utf-8不兼容。

Ark 是KDE默认的解压缩软件,出现乱码的直接原因是Ark中用于zip打开和解压的插件不支持gb2312, 解决方案为:

  1. 安装p7zip-natspec(cn源里面有此软件)

    1
    2
    sudo pacman -S ark
    sudo pacman -S p7zip-natspec unarchiver lzop lrzip arj

  2. 在Ark中禁用libzip插件(该插件优先级高于p7zip): Ark菜单→设置→配置Ark→插件→取消Libzip插件对应的复选框→应用。同时应当确保p7zip插件使用中。

  3. 其他选择,使用unzip-natspecunzip-iconv.

  1. 安装p7zip-natspec(cn源里面有此软件)

    1
    2
    sudo pacman -S file-roller
    sudo pacman -S p7zip-natspec unarchiver lzop lrzip arj

  2. 在环境变量中,指定unzip参数,总是以指定的字符集显示和解压文件, 即在/etc/environment中加入

    /etc/environment
    1
    2
    UNZIP="-O CP936"
    ZIPINFO="-O CP936"

这样Gnome桌面的归档文件管理器(file-roller)可以正常使用unzip解压中文,但是file-roller本身并不能设置编码传递给unzip。

如果您习惯于使用命令,由于已经安装了unarchiver, 所以直接使用命令unar解压zip文件也是可以解决文件名乱码问题的,这在所有Linux中都是一个通用的方案。

2023-12-27 在安装完新系统后配置中文环境时,根据Locale-ArchWiki的描述,对于KDE Plasma 则删除 后发现各项翻译包括SDDM增均顺利转换成了英文。如果SDDM没有转成中文,请再按下述方法配置。


新配置的ArchLinux解决完一些重要的问题后,还剩下SDDM的语言一直显示为英文,需要将语言修改为中文。方法为: 修改文件/usr/lib/systemd/system/sddm.service, 在[Service]下添加Environment=LANG=zh_CN.UTF-8, 即

/usr/lib/systemd/system/sddm.service
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[Unit]
Description=Simple Desktop Display Manager
Documentation=man:sddm(1) man:sddm.conf(5)
Conflicts=getty@tty1.service
After=systemd-user-sessions.service getty@tty1.service plymouth-quit.service systemd-logind.service
PartOf=graphical.target
StartLimitIntervalSec=30
StartLimitBurst=2

[Service]
ExecStart=/usr/bin/sddm
Restart=always
Environment=LANG=zh_CN.UTF-8

[Install]
Alias=display-manager.service

注意:按ArchLinuxWiki简体中文本地化,不推荐在/etc/locale.conf里把全局的LANG locale设置成中文LANG=zh_CN.UTF-8,因为TTY下没有CJK字体,这样设置会导致TTY中显示豆腐块(除非你使用的内核打了cjktty补丁能绘制中文字体,比如linux-lilyCNRepo)。

ArchLinux执行更新时,如果内核有更新则会出现如下警告:

While doing a 'sudo pacman -Syu' pacman warns
1
2
3
==> WARNING: Possibly missing firmware for module: wd719x
==> WARNING: Possibly missing firmware for module: aic94xx
==> WARNING: Possibly missing firmware for module: xhci_pci

解决方法安装mkinitcpio-firmware

1
paru --skipreview -S mkinitcpio-firmware

or

1
paru --skipreview -S wd719x-firmware aic94xx-firmware upd72020x-fw

查看警告是否消失

1
sudo mkinitcpio -p linux

还有一个warning是关于consolefont的,根据arch社区的回答,把/etc/mkinitcpio.conf文件中的HOOKS中的consolefont删掉就行。 参考文章:

在文章Fcitxe5与Calibre的兼容中介绍了与Calibre兼容的要求安装了那些带gitcn库里的Fcitxe5版本,同时同于其更新较频繁所以用这个版本比较好。但是在我的笔记本Thinkpad-T490由于升级硬件重新安装系统后,发现Fcit5不能使用自己的皮肤,而只是显示了默认与Plasma相对应的皮肤。经过长时间的百度也没有解决问题,不过参考Fcitxe5-Archwiki 中的一个Note, 同时也是我的使用Gnome3的时候就知道的地方,如果安装了插件gnome-shell-extension-kimpanel-git则会显示一个借鉴了kde输入法状态栏的kimpanel, 此时Fcitxe5的皮肤将会失效。在KDE中本身就存在这个挂件,如果启用了挂件,虽然在状态栏上看起来也能显示输入法,但是Fcitxe5却因为这个挂件而不能使用自己的皮肤。正确的做法应当是添加挂件, 同时去掉,这样即可以显示输入法面板又不启用kimpanel, 于是Fcitxe5就可以正常使用自己的皮肤了。