在Ubuntu下作妖之翻江倒海篇

如何以正确的姿势让(逼)女/男朋友学习命令行

女/男朋友用Ubuntu?好现象!女/男朋友用Ubuntu但不用命令行?得治!!

第一步,准备好大象

首先需要一款字体制作软件:

sudo apt-get install fontforge

用它打开一个已有的字体文件(比如我用的是simsun),另存一下防止覆盖原来的字体文件,然后用复制粘贴大法做成下面这个样子:

在Ubuntu下作妖之翻江倒海篇_第1张图片
制作字体

修改文件基本信息,比如:

在Ubuntu下作妖之翻江倒海篇_第2张图片
修改基本信息

然后导出为ttf字体文件(注意大小限制,删除几个不常用的字符就行)。

第二步,打开冰箱门

安装字体:

mkdir ~/.fonts
cp SixSixSix.ttf ~/.fonts
fc-cache -fv

第三步,把大象塞进去

尝试着更换图形桌面的字体:

gsettings set org.gnome.desktop.interface font-name 'ZuoYao 12'

恩,效果不错

在Ubuntu下作妖之翻江倒海篇_第3张图片
初次更换

但是桌面上的图标文字还没变,先还原一下:

gsettings reset-recursively org.gnome.desktop.interface

第四步,把冰箱门关上

我们来看一下桌面环境有哪些选项供我们修改字体:

gsettings list-recursively |sort -u|grep "font.*'.*'"

com.canonical.unity-greeter font-name 'Ubuntu 11'
com.kylin.kylin-greeter font-name 'Ubuntu 11'
org.freedesktop.ibus.panel custom-font 'Sans 10'
org.gnome.desktop.interface document-font-name 'Sans 11'
org.gnome.desktop.interface font-name 'Ubuntu 11'
org.gnome.desktop.interface monospace-font-name 'Ubuntu Mono 13'
org.gnome.desktop.wm.preferences titlebar-font 'Ubuntu Bold 11'
org.gnome.gedit.plugins.externaltools font 'Monospace 10'
org.gnome.gedit.plugins.pythonconsole font 'Monospace 10'
org.gnome.gedit.preferences.editor editor-font 'Monospace 12'
org.gnome.gedit.preferences.print print-font-body-pango 'Monospace 9'
org.gnome.gedit.preferences.print print-font-header-pango 'Sans 11'
org.gnome.gedit.preferences.print print-font-numbers-pango 'Sans 8'
org.gnome.libgnomekbd.indicator font-family ''
org.gnome.nautilus.desktop font ''
org.onboard key-label-font ''
org.onboard.theme-settings key-label-font ''
org.yorba.shotwell.printing titles-font 'Sans Bold 12'

意外之喜啊,gedit的字体也能改,这下可以帮(qiang)助(po)女/男朋友学习vim了!
利用sed处理上面的字符串,写一个脚本(没写过shell,随便喷):

#!/bin/bash
List=`gsettings list-recursively |sort -u|grep "font.*'.*'" | sed "s/'.*'//g"`
# echo "$HOME"
FontDir="$HOME/.fonts"
# echo "$FontDir"
if [ $# -ne 1 ]; then
    echo "Usage: $0 [set|reset]"
elif [ $1 == "set" ]; then
    if [ ! -d "$FontDir" ]; then
        mkdir "$FontDir"
    fi
    if [ ! -f "$FontDir/SixSixSix.ttf" ]; then
        cp SixSixSix "$FontDir/SixSixSix.ttf"
        fc-cache "$FontDir"
        # fc-cache -f
        # echo "update cache OK"
    fi
    echo "$List" | while read a; do echo $a | sed "s/$/ 'ZuoYao 12'/g " |sed "s/^/gsettings set /g"| bash; done
elif [ $1 == "reset" ]; then
    echo "$List" | while read a; do echo $a | sed 's/^/gsettings reset /g'| bash ; done
elif [ $1 == "debug" ]; then
    echo "list:"
    echo "$List"
    echo "ResetCMD:"
    echo "$List" | while read a; do echo $a | sed 's/^/gsettings reset /g' ; done
    echo "SetCMD:"
    echo "$List" | while read a; do echo $a | sed "s/$/ 'ZuoYao 12'/g " |sed "s/^/gsettings set /g"; done
fi

(我把字体文件的后缀去了防止女/男朋友看出来~~)
然后愉快的运行吧!!!

补充:运行前一定要将所用的终端软件设置为自定义字体,否则终端的字体也会变。一旦发生这种情况,有两种方法恢复:

  1. 相信自己的手不要相信自己的眼睛,在终端中输入脚本的reset命令
  2. 使用Ctrl+Alt+F1(F1-F6都可以)在真实终端环境下登录并运行脚本的reset命令,然后用Ctrl+Alt+F7切换回默认登录终端。
效果

相关工程在这

后记

放心,大部分软件内部字体正常,脚本里也有reset功能,不要怕。
话说你们还记得“卧槽”病毒么?

在Ubuntu下作妖之翻江倒海篇_第4张图片
卧槽

不是同一个机制啊,不要搞混!
所以说看完文章你知道怎么调整图形界面的设置了么?还不知道?好吧,那就不要在意这些细节,重点是女/男朋友可以安心学习命令行了啊!!

恩,跪在搓衣板上打字有点累,这次就写这么多吧

你可能感兴趣的:(在Ubuntu下作妖之翻江倒海篇)