在 Linux 下进行开发工作(二)

在 Linux 下进行开发工作(一)中记录了Manjaro的安装过程以及源设置等等,这一篇主要记录下常用软件的安装等等。Manjaro固然非常的方便,各种开发工具一条命令就可以安装好,但有些Windows常用软件Linux上也没有,有的可以使用Linux上的替代品,不过还是有少许软件不可避免的要使用(如微信,QQ等),这会给我们的工作带来了不少的麻烦,刚从Windows转Linux会有诸多的不习惯,不过都还好,我们总是有各种各样的办法来折腾Linux来适合我们用来做日常的开发桌面。还是那句话,如果没准备好用Linux作为日常开发桌面,千万不要尝试 : )。

输入法

毕竟日常还是使用中文,中文输入法是必须得安装的,Linux 下的输入框架常用的有 fcitxibus,我选用的是 fcitx

  • 安装 fcitx
    1
    $ sudo pacman -S fcitx fcitx-configtool 
  • 安装输入法引擎
    fcitx 默认自带了中文输入引擎,其他选择就比较多了,(比如国内常用的 sougou 拼音),我选择的是 Rime,配上一个 fcitx-skin-material 用来非常不错。不过 Rime 默认是繁体输入,如果要改为默认简体,需新增一个自定义配置文件 $HOME/.config/fcitx/rime/ luna_pinyin.custom.yaml
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    patch:
    "menu/page_size": 9
    switches: # 注意缩进
    - name: ascii_mode
    reset: 0 # reset 0 的作用是当从其他输入法切换到本输入法重设为指定状态
    states: [ 中文, 西文 ] # 选择输入方案后通常需要立即输入中文,故重设 ascii_mode = 0
    - name: full_shape
    states: [ 半角, 全角 ] # 而全/半角则可沿用之前方案的用法。
    - name: simplification
    reset: 1 # 增加这一行:默认启用「繁→簡」转换。
    states: [ 漢字, 汉字 ]
    这里面还包括候选字数,全 / 半角等配置。
  • 安装输入法模组
    要在桌面上使用(包括浏览器,应用等等),还需要安装输入法模组,尽可能的安装完全:
    1
    $ sudo pacman -S fcitx-gtk2 fcitx-gtk3 fcitx-qt4 fcitx-qt5
  • 添加配置
    $HOME/.xprofile 中添加如下配置
    1
    2
    3
    export GTK_IM_MODULE=fcitx
    export QT_IM_MODULE=fcitx
    export XMODIFIERS=@im=fcitx
    最后重启电脑,既可以使用输入法了,关于快捷键和字体大小,可在 fcitx config GUI 里面配置。至此,输入法基本上就搞定了。

微信

日常中微信使用的频率比较高,不可避免的要安装,一般有几种解决方案:

  • electronic-wechat
    使用的是微信 web 版,然后用 electronic 封装的,作者似乎以及停更了,安装后体验了下,弃了。
  • weweChat
    界面做得比较好看,和 electronic-wechat 使用同样的原理,没体验过。
  • deepin-wechat
    使用 deepin 自己定制的 wine,安装后,不知道为什么我电脑上问题挺多(比如不能贴图),遂弃之。

体验过这么多之后,最后还是决定使用 wine 版本的,不过是自己进行配置。在 github 上找到一个专门针对国内软件的 wine 脚本 winetricks-zh,会自动安装一些依赖,最后尝试下来这个版本体验最好,除了不能截图(当然有替代方案,shutter),其他基本和 Windows 上没太大差别。

  • 安装 wine 及相关依赖
    1
    $ sudo pacman -S wine wine-mono wine_gecko
  • 使用 winetricks-zh 安装微信
    作者有较长时间未更新了,目前微信官网的微信已更新,会导致文件校验失败,不过只需要把脚本中的 hash 值改一下即可(文件为在 winetricks-zh/verb/wechat.verb),下载官网最新安装包,然后计算 sha256:
    1
    $ sha256sum WeChatSetup.exe
    最后将 hash 值替换为此 hash 值即可,后续就会自动安装一些依赖。
  • 配置
    安装完后可以直接打开使用,不过由于屏幕适配以及字体问题,可能会导致乱码,字体小的问题,因此我们还需要修改些配置才能正常使用。
    • 字体安
      需要将微软雅黑新宋字体复制到 $HOME/.local/share/fonts 下,并刷新字体缓存:
      1
      $ fc-cache -fv
    • 修改 $HOME/.wine/system.reg
      找到 LogPixels,将值修改为 80(根据自己的屏幕调整)
    • 修改 $HOME/.wine/driver_c/windows/win.ini
      在文件尾新增:
      1
      2
      3
      4
      5
      [Desktop]
      menufontsize=13
      messagefontsize=13
      statusfontsize=13
      IconTitleSize=13
    • 新增 $HOME/.wine/zh.reg
      在文件中添加以下参数:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      REGEDIT4

      [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]

      "Arial"="simsun"
      "Arial CE,238"="simsun"
      "Arial CYR,204"="simsun"
      "Arial Greek,161"="simsun"
      "Arial TUR,162"="simsun"
      "Courier New"="simsun"
      "Courier New CE,238"="simsun"
      "Courier New CYR,204"="simsun"
      "Courier New Greek,161"="simsun"
      "Courier New TUR,162"="simsun"
      "FixedSys"="simsun"
      "Helv"="simsun"
      "Helvetica"="simsun"
      "MS Sans Serif"="simsun"
      "MS Shell Dlg"="simsun"
      "MS Shell Dlg 2"="simsun"
      "System"="simsun"
      "Tahoma"="simsun"
      "Times"="simsun"
      "Times New Roman CE,238"="simsun"
      "Times New Roman CYR,204"="simsun"
      "Times New Roman Greek,161"="simsun"
      "Times New Roman TUR,162"="simsun"
      "Tms Rmn"="simsun"
      重新打开微信,应该就没什么问题了。关于快捷键问题,Linux 下无法直接使用微信中的快捷键(其实是没有焦点,如果打开微信的设置页面,再使用打开快捷键,发现还是有用的,当然这非常不方便),最后找了个办法,在系统快捷键中,添加一个快捷键来打开微信即可,命令使用 wine 来打开:
      1
      env WINEPREFIX="/home/cooler/.wine" wine "/home/cooler/.wine/drive_c/Program Files/Tencent/WeChat/WeChat.exe"
      这样就可以使用快捷键打开微信,不过不能关闭,只能使用 Esc 来关闭,不过这点小问题不影响使用。至于其他软件,可以参考 winetricks-zh

开发软件

一般开发软件都有 Linux 版本的,除非是系统特有的软件(如 Windows 的 visual studio 等等),这种就没办法了,只能放弃使用 Linux 了。

截图软件

Linux 下首推 shutter,功能已经非常完善了,在系统快捷键中新增一个,命令如下:

1
shutter -s

然后配合微信,QQ 等使用,直接粘贴到对话框中即可。

办公软件

Windows 下办公软件莫过于 Office 全家桶,但 Linux 下就没这么好的办公软件了,替代品为 WPS OfficeLibre Office,wps 用起来比较接近 MS Office,这个看个人喜好选择。

其他

  • 制图软件 GIMP
  • 思维导图 XMind
  • PDF 阅读使用自带的 Atril Document Viewer 就可以了
  • 视频播放软件 VLC
  • 邮件客户端 Evolution
  • ……