用Termux打造手机编程神器

第一部分,termux的配置

本教程主要针对有Linux使用经验但又不是很精通的人,如果你还不会用Linux和vim,请学习后再来看会更好

这里我打算用termux原生写博客,所以在termux原生终端上我就不打算配置代码补全功能。我的代码是在arch上来写,所以主要配置是在arch上

termux换源

换源是第一步,当然,如果你的外网网络好,也就可以跳过这一步

复制下面这段代码到termux终端即可完成换源操作

1
2
3
4
sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main@' $PREFIX/etc/apt/sources.list 
sed -i 's@^\(deb.*games stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/game-packages-24 games stable@' $PREFIX/etc/apt/sources.list.d/game.list
sed -i 's@^\(deb.*science stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/science-packages-24 science stable@' $PREFIX/etc/apt/sources.list.d/science.list
apt update && apt upgrade

安装需要的软件

安装一些基本软件,如果你有些不需要的话也可以自己安装

1
apt install tar tree git curl python wget neovim zsh proot zip ranger neofetch

安装hexo博客,这里的安装命令来自酷安hshx123,安装时记得挂梯,不然慢死你

1
pkg update && pkg install curl wget git unzip nodejs-lts openssh && npm install hexo-cli -g && hexo init blog && cd blog && npm install hexo-deployer-git --save && npm audit fix

将neovim设为默认编辑器,如果用vim的话就把nvim该为vim就行了

1
export EDITOR=nvim

升级pip3:

1
pip install --upgrade pip

如果neovim不支持python的话,可以输入以下命令:

1
pip3 install pynvim neovim

安装完成后,neovim就可以支持python了

美化termux

  1. 安装ohmyzsh

    这个安装链接来自国光的termux教程
    国光termux

1
sh -c "$(curl -fsSL https://html.sqlsec.com/termux-install.sh)"
  1. 安装Powerlevel10k主题

安装:

1
git clone --depth=1 https://gitee.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k

设置:

编辑.zshrc

1
nvim ~/.zshrc

ZSH_THEME="agnoster"修改为ZSH_THEME="powerlevel10k/powerlevel10k",然后:wq保存退出,重新进入termux

进入后会出现主题的设置界面,简单配置下就行了,如果配置好后,感觉效果不行,可以输入p10k configure重新配置

  1. 安装highlighting语法高亮插件

安装:

1
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

设置:

编辑.zshrc

1
nvim ~/.zshrc

找到plugins=( [plugins...] ),然后添加上zsh-syntax-highlighting,如下

1
plugins=( [plugins...] zsh-syntax-highlighting)

然后保存退出就行了

  1. 安装autosuggestions自动建议插件
    1
    git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
    用法同前面的高亮插件,在.zshrc中添加上zsh-autosuggestions就行了

最终效果如图:
oh-my-zsh

设置底部快捷键

注意:如果先设置底部快捷键再安装ohmyzsh的话,底部快捷键会消失,这时需要重新配置底部快捷键

  1. 编辑~/.termux/termux.properties文件

    1
    nvim ~/.termux/termux.properties
  2. 写入以下信息

这是我在用的,你也可以用其他的,可以按照格式,添加或删除按钮

1
2
3
4
extra-keys = [ \
['ESC','|','/','`','UP','QUOTE','APOSTROPHE',';','PGUP'], \
['TAB','CTRL','ALT','LEFT','DOWN','RIGHT','(','{','PGDN'] \
]

最终效果如图:
keyboard

termux开头语修改

编辑文件:

1
nvim $PREFIX/etc/motd

写入你想修改的开头语,这样,在你每次启动termux或打开一个新窗口时就可以看到了,下面这个是我在用的,没必要和我的一样,写个喜欢的就行

1
2
3
4
5
 _____
|_ _|__ _ __ _ __ ___ _ ___ __
| |/ _ \ '__| '_ ` _ \| | | \ \/ /
| | __/ | | | | | | | |_| |> <
|_|\___|_| |_| |_| |_|\__,_/_/\_\

如图
开头语

安装发行版linux

这里我推荐安装archlinux,因为arch的软件包能达到我的要求,而且系统安装后整体不大,而像ubuntu这类发行版,由于aarch64版本的软件包版本过低,无法达到要求

直接复制以下命令进行安装

1
pkg update && pkg install proot git bsdtar && git clone https://github.com/sdrausty/TermuxArch && cd TermuxArch && bash setupTermuxArch.sh

arch的github项目地址: TermuxArch

第二部分,配置arch

arch这里的配置,我参考了酷安it石头202 的一部分

安装时的一些注意事项

安装命令上面有写,所以这里就不再重复了,这里主要写一些注意事项:

  • 输入安装命令时,注意看一下命令是否有错误,之前我复制的时候老是喜欢多出一些莫名其妙的反斜线

  • 安装完成后,要仔细检查安装命令,查看是否出错,如果发现有错误(警告不算),就把出现错误的地方的上面部分的命令再执行一遍,如下图,这里出现了error(错误),所以就把pacman -S archlinux-keyring archlinuxarm-keyring ca-certificates-utils --noconfirm --color=always复制过来,然后再执行一遍(我安装过很多次,基本上每次都是这出现问题)
    error

  • 启动的arch的命令为startarch,启动后你需要手动输入cd才能到达arch的家目录

换源

换源命令:

1
sed -i -e '1i Server = http://mirrors.tuna.tsinghua.edu.cn/archlinuxarm/$arch/$repo' /etc/pacman.d/mirrorlist

添加中文社区的源:

1
echo -e '[archlinuxcn]\nSigLevel = Optional TrustAll\nServer = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch' >> /etc/pacman.conf

更新系统:

1
pacman -Sy

安装秘钥:

1
pacman -S archlinuxcn-keyring

最好把/etc/pacman.confSigLevel = Optional TrustAll这一行注释掉,这一行默认信任所有Arch Linux CN源中的所有软件包,为了安全,最好注释掉(其实我感觉安不安全都一样)


最后再更新系统就行了

1
pacman -Syu

安装一些基本的软件

1
pacman -S tar tree git curl wget neovim zsh zip ranger neofetch

将neovim设为默认编辑器

1
export EDITOR=nvim

这里推荐使用neovim而不是vim,经过我的测试,vim在加载Java补全的jdt时老是卡死,而neovim则不会

配置国区的一些东西

全局中文配置方法

注: 这里已经默认配置好了中文,没必要二次配置,我只是讲讲以后如果没中文该如何配置而已

编辑/etc/locale.gen,将#zh_CN.UTF-8 UTF-8这一行前的#去掉,或直接使用以下命令:

1
sed -i 's/#zh_CN.UTF-8 UTF-8/zh_CN.UTF-8 UTF-8/g' /etc/locale.gen

编辑/etc/locale.conf,将里面的内容改为:

1
2
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN:zh:en_US

或者使用以下命令:

1
echo -e "LANG=zh_CN.UTF-8\nLANGUAGE=zh_CN:zh:en_US" > /etc/locale.conf

设置时区

直接使用以下命令:

1
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

安装中文手册

1
pacman -S man-pages-zh_cn

配置pacman

启用彩色输出:

1
sed -i 's/#Color/Color/g' /etc/pacman.conf

在升级前对比软件包:

1
sed -i 's/#VerbosePkgLists/VerbosePkgLists/g' /etc/pacman.conf

图形界面

其实我感觉没什么必要配置图形界面的,反正手机上又没什么好用的

安装

这里使用的桌面是xfce4桌面,直接输入以下命令安装(这里包括了wqy字体,xfce4桌面,和tigervnc 一款vnc管理器):

1
pacman -S wqy-zenhei xfce4 tigervnc

安装时提示选择xfce4时直接回车,选择全部即可

tigervnc配置

先启动一遍:

1
vncserver -geometry 720x1440 -depth 24 -name remote-desktop :1

然后关闭:

1
vncserver -kill :1

编辑~/.vnc/xstartup文件,这是在每次打开VNC时运行的脚本,删除所有并写入:

1
2
3
4
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec dbus-launch startxfce4

设置环境变量:

1
2
3
export DISPLAY=:1
export USER=root
export HOME=/root

完成!

启动和关闭vnc服务器

直接启动:

1
vncserver :[端口号(一般是1)]

指定各个参数后启动:

1
vncserver -geometry [分辨率大小(竖屏为720x1440)] -depth 24 -name remote-desktop :[端口号]

关闭vnc服务:

1
vncserver -kill :[端口号]

配置代码补全

我选用的补全插件为coc.nvim,更详细的配置可参考我的这篇博客coc.nvim基本配置

这地方才是重头戏,配置完成后我们就可以使用Termux来编程了,这里我主要配置java,python和前端三件套的补全

配置Java环境

安装openjdk:

1
jdk11-openjdk

配置环境变量:

  1. 编辑文件

    1
    nvim /etc/profile
  2. 在下面加上

    1
    2
    3
    4
    export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    export PATH=${JAVA_HOME}/bin:$PATH

    Java环境变量

这样你就完成了openjdk的配置了

安装其他的一些东西

这里的请务必安装,否则在使用时会报错

1
pacman -S python nodejs python-pynvim python-pip npm
1
2
npm install typescript
pip install jedi

配置init.vim

安装vim-plug插件管理器:

1
2
sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'

输入下面命令创建neovim的配置文件夹:

1
mkdir -p ~/.config/nvim

你可以自己写配置:

1
nvim ~/.config/nvim/init.vim

也可以直接克隆我的配置:

1
git clone https://github.com/WenAnrong/vimrc && cd vimrc && cp .vimrc ~/.config/nvim/init.vim

我的配置自定义了一些按键,需要学习学习才能用

然后输入nvim,进入neovim,最后就是:PlugInstall就可以开始安装插件了

配置coc.nvim

coc官方:coc.nvim

你只需要进入neovim,然后输入以下命令,就可以安装关于Java,python,前端三件套的补全了

1
:CocInstall coc-markdownlint coc-snippets coc-json coc-highlight coc-css coc-html coc-java coc-python coc-tsserver coc-pairs coc-lists

关于Java补全的一些问题

  • 刚安装好,进入一个Java文件时会自动下载一个jdt,下面会有进度显示
  • Java补全加载非常慢,我这里大概要花3分钟才能加载好
  • Java的补全有时候不灵,这时候需要重新进入,然后再加载
  • Java进行补全时,并不会帮你抛出异常

Java_jdt下载

到这里教程正式结束,下面是一些coc.nvim的补全图片

一些补全的图片

java
python
javaScript

评论