在 Linux 下进行开发工作(二)
在 Linux 下进行开发工作(一)中记录了Manjaro的安装过程以及源设置等等,这一篇主要记录下常用软件的安装等等。Manjaro固然非常的方便,各种开发工具一条命令就可以安装好,但有些Windows常用软件Linux上也没有,有的可以使用Linux上的替代品,不过还是有少许软件不可避免的要使用(如微信,QQ等),这会给我们的工作带来了不少的麻烦,刚从Windows转Linux会有诸多的不习惯,不过都还好,我们总是有各种各样的办法来折腾Linux来适合我们用来做日常的开发桌面。还是那句话,如果没准备好用Linux作为日常开发桌面,千万不要尝试 : )。
输入法
毕竟日常还是使用中文,中文输入法是必须得安装的,Linux 下的输入框架常用的有 fcitx
和 ibus
,我选用的是 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
11patch:
"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
中添加如下配置最后重启电脑,既可以使用输入法了,关于快捷键和字体大小,可在 fcitx config GUI 里面配置。至此,输入法基本上就搞定了。1
2
3export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
微信
日常中微信使用的频率比较高,不可避免的要安装,一般有几种解决方案:
- 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:最后将 hash 值替换为此 hash 值即可,后续就会自动安装一些依赖。1
sha256sum WeChatSetup.exe
- 配置
安装完后可以直接打开使用,不过由于屏幕适配以及字体问题,可能会导致乱码,字体小的问题,因此我们还需要修改些配置才能正常使用。- 字体安
需要将微软雅黑
和新宋
字体复制到$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
在文件中添加以下参数:重新打开微信,应该就没什么问题了。关于快捷键问题,Linux 下无法直接使用微信中的快捷键(其实是没有焦点,如果打开微信的设置页面,再使用打开快捷键,发现还是有用的,当然这非常不方便),最后找了个办法,在系统快捷键中,添加一个快捷键来打开微信即可,命令使用 wine 来打开: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
28REGEDIT4
[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"这样就可以使用快捷键打开微信,不过不能关闭,只能使用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 Office 和 Libre Office,wps 用起来比较接近 MS Office,这个看个人喜好选择。