字体安装
选择fcitx进行安装,qt版本选择qt5:
sudo pacman -S fcitx fcitx-qt5
或者可以使用工具集合fcitx-im进行安装:
sudo pacman -S fcitx-im
完成后系统中出现输入法与输入法配置,输入法配置可以以vim形式打开,为了方便管理,安装配置工具configtool:
sudo pacman -S fcitx-configtool
重新打开输入法配置以后发现已经变成图形界面了,试着添加汉语键盘,但是依旧无法输入中文,
需要重新安装中文输入法,个人测试googlepinyin是无法使用的,推荐libpinyin,除此以外还有:fcitx-sunpinyin,fcitx-rime,fcitx-sogoupinyin,fcitx-cloudpinyin,fcitx-chewing,fcitx-baidupinyin,fcitx-table-extra,这里选择安装libpinyin:
sudo pacman libpinyin
按照arch wiki中所说在~/.pam_environment创建文件:
vim pam_environment
按~a~或者~i~进入编辑模式:
GTK_IM_MODULE DEFAULT=fcitx
QT_IM_MODULE DEFAULT=fcitx
XMODIFIERS DEFAULT=\@im=fcitx
注意不要空格,且不要乱写在其他文本上,~esc~键退出编辑模式后输入~:wq~保存并退出
对右下角fcitx的小键盘进行重新启动,再次打开配置后会发现多了三个输入法。
我选择只留下pinyin(LibPinyin)
与键盘-汉语
,顺便可以偷偷修改一波键盘布局显示国旗(PS:个人尝试过在设置中的配置布局将US的标签删除掉,结果国旗直接不显示了)
在附加组件中找到LibPinyin,配置调整好后可以在搜索附加组件后随便打几个字,应该是能够正常使用的,右键小图标可以调整皮肤,我选择了Dark,在全局配置中关掉~启用输入法间切换~,在~窗口见共享状态~选择所有
基本配置全部选择好以后重启,重新开机后设置随便输入法应该就能正常运行了。
刚开始可能会有点问题,比如~左shift~无法切换输入法,用各种方式反复切换一下输入法,过一会儿应该就能正常切换了。
配置终端
终端模拟器选用的是konsole,我比较中意sakura,但是konsole配好以后感觉挺骚气,而且配置简单。arch wiki网站上其实写得很清楚,
sudo pacman -S konsole
安装好以后程序是无法直接配置颜色方案的,或者说配置好以后打开其他终端又恢复成默认了。 进入到隐藏文件夹中找到终端位置设置环境变量:
cd .local/share/konsole
vim konsole.profile
这里新建了一个konsole文件,后面的配置将在这个文件中实现。~a~或者~i~进入编辑模式:
[General]
Name=konsole
Environment=TERM=konsole-256color,COLORTREM=truecolor
~esc~退出编辑模式,使用~:wq~保存并退出,重新打开终端进入配置方案,可以发现出现了新的方案,对其进行编辑,完成后将konsole设置为默认,完成后重新打开终端可以发现已经设置完成了。
配置python
相信pacman,做到这里的时候因为犹豫,走了一些歪路,最后拿着一堆乱七八糟的库完全不知所措,果断恢复了一波备份。 没记错的话python可以直接用pacman -S下载:
pacman -S python
我装了目前的最新版:python 3.10.8,作为一个常年在玩python的废物,我当时习惯性地输入了一句pip list,发现竟然没有这个东西。 pip是需要单独安装的,于是当时我大脑突然下线打开了CSDN——arch,die(请使用大脑渲染灰色背景+红色字体特效) 据arch wiki解释pip会与pacman冲突,使用pipx的话可以建立一个孤立环境,但我测试了一下,pipx似乎不能使用pip的镜像,安装方式也有些微妙,所以选择安装pip,输入:
pacman -S python-pip
安装好后输入pip list,会出现一些不认识的库,大概是用pacman管理时留下的,为尽量避免冲突,如果能用pacman安装就最好不使用pip,比如sqlmap:
sudo pacman -S sqlmap
另外在pip输出结尾可能会有报错:
WARNING: There was error checking the lastest version of pip. (警告:检查最新版本pip时出错)
经过与win10安装版本对照可以发现pip已经是最新版本,且可以正常操作,为避免系统崩溃,我没有升级pip,奥卡姆剃刀原理,只要报错影响不大,就不要改出更严重的问题了(误)。
配置vim
其实我应该给大家推荐一个新的编辑器,比如最经典的vscode,轻量的kate,强大的Spyder,甚至哪怕是体验感最差的pycharm,对于资源过剩的现在,vim实在显得有那么一点不适合练习写代码,不过能想到来玩arch的人也应该属于那少部分的极客吧,所以现在依旧选择介绍vim。
语法高亮
从这里开始,arch wiki开始显得不是那么靠谱了,在网上也很难找到需要配置的文件路径。 首先是配置颜色高亮,官方提示语法高亮在defaults.vim中启用,经过寻找路径如下:
cd /usr/share/vim/vim90
进入每一级之前可以先用ls(或者dir)扫一下文件是否存在,使用vim进入文件:
sudo vim defaults.vim
需要更改的位置共有两处,
:filetype plugin off
:syntax off
分别将其中off打开为on,如下图所示: 方式同样为~a~或~i~进行编辑,~esc~退出编辑模式,~:wq~进行保存。展示一波随便写的颜色高亮后的python代码 顺便附上代码:
txt = 'welcome_to_arch'
a = 0.04
b = 0.09
print('\n'.join(
[
''.join([
(txt[
(x-y)%len(txt)
]if(
(x*a)**2+(y*b)**2-1
)**3-(x*a)**2*(y*b)**3<=0 else' '
)for x in range(-30,30)
])for y in range(15,-15,-1)
])
)
联想功能
同样使用pacman,这里推荐使用youcompleteme插件,除了python以外还支持c/c++,c#,go,rust,java等常用语言,可惜vscode的pylance似乎并没有开源,没有找到从vim中获取pylance的途径。
sudo pacman -S vim-youcompleyeme-git
完成后打开一个python文件,随便写几句代码试试 可以发现vim已经可以联想代码了,示例图中的代码来自【python】for循环对批量变量进行判别
crni0 = 0
crni1 = 0
crni2 = 2
read = lambda x:'crni' + str(x)
for i in range(3):
if loacls()[read(i)] == 2:
print('找到对应变量')
else:
print('非对应变量'.format(read(i)))
理论上能得到结果:
快速调试
按照很多教程所说在中是无法找到~/.vimrc的文件的,最多只有~/.viminfo,arch应该是故意去掉了这个位置的文件,就我而言没必要强行再把文件创建起来,以免出现一些不必要的问题。 首先解释调试原理,如果是写python文件,在vim的查看模式,或从编辑模式按~esc~键进入查看模式,可以通过输入:
:!time python %
进行调试,调整vim的脚本原理只需围绕这段代码进行即可。 引用一波arch wiki的话:
常用的功能,如语法高亮在defaults.vim中启用,当没有~.vimre(这里猜测是官方忘记打“/”了)时加载。
所以回到梦开始的位置:
cd /usr/share/vim/vim90
sudo vim defaults.vim
在最后另起一行:
map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
if &filetype == 'python'
exec "!time python %"
代码来自如何使Vim下开发Python调试更方便?,出于个人需求,我只调用了其中的python与html文件调试,本文中只引用了python的一键调试运行脚本,但是if判别依旧存在,除此之外如果对“c”,“cpp”,“java”,“html”,“mkd”(应该是markdown格式)感兴趣可以在原文章中寻找调试方法。 完成后尝试打开一个python文件,笔记本用户注意键盘上~fn键~是否打开,为了方便,同样运行之前的test.py文件,注意使用~f5键~前需要~esc~退出编辑模式,按下后出现如下结果,测试成功。