美文网首页Ubuntu 桌面环境使用
在Ubuntu下作妖之翻江倒海篇

在Ubuntu下作妖之翻江倒海篇

作者: 谭雅翔 | 来源:发表于2016-12-29 20:45 被阅读69次

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

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

    第一步,准备好大象

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

    sudo apt-get install fontforge
    

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

    制作字体

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

    修改基本信息

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

    第二步,打开冰箱门

    安装字体:

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

    第三步,把大象塞进去

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

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

    恩,效果不错

    初次更换

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

    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功能,不要怕。
    话说你们还记得“卧槽”病毒么?

    卧槽

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

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

    相关文章

      网友评论

      • 6d96978eeefb:你是说图形界面下的字体都变了,但是命令行下还是正常的?如果是这样的话,能否来一个图形界面与命令行界面下同样内容的对比,让我更加确信
        谭雅翔:@TW李鹏 Feedback已收

      本文标题:在Ubuntu下作妖之翻江倒海篇

      本文链接:https://www.haomeiwen.com/subject/lnypvttx.html