写在前面

本文适合什么样的人?

  • 有一定的动手能力
  • 有一定的动手能力
  • 了解 Linux 的基础
  • 愿意折腾
  • 善用搜索引擎
  • vim/neovim(可选的)
  • 希望学习或者使用 Linux
    演示效果:

本文的效果

  • 基本全功能 Neovim (启动时间在 30 - 50ms 左右)

    有一些小问题, 但是主要功能齐全, 具体会在后面说

    Neovim 效果图 可以直接在 Termux 里,也可以 chroot

演示效果

  • 现代化的 shell

    我的方案是 zsh + zinit + 部分插件,没有使用 oh-my-zsh

      zsh和实时的自动补全
    

  • 类 IDE (vscode)的体验

      图中配置了ts, js, golang, c/c++, lua, html, bash, python, json的LSP支持..
    

  • 常用的 Linux 工具

      Lazygit: 一款优秀的Git TUI
    

      Tmux: 终端复用器, 能够帮助你在终端下分屏, 多开等操作
    

      Ranger: Vim-like终端下的文件管理器, 可以和Neovim很好的集成, 同时高度可自定义
    

先决条件

  • Root (可选的)

    本文大部分的操作基本都是可以在无 root 的条件下做到的

  • 键盘 (可选的)

    不过如果没有键盘,我觉得操作 terminal 的效果差点意思

  • 鼠标 (同样也是可选的)

    我的配置是基于 neovim 的操作, 也就是完全可以全键盘流, 所以用到鼠标的地方, 可能只有打开 Termux 了

你需要知道的

  • 该文章是本人原创, 如果有相关错误,或者更好的解决办法,可以提出来共同进步

  • vim / neovim 的入门门槛并不低

    如果你不是一个热爱折腾的人,并不希望再不断遇到各种各样的问题独立解决, 我觉得这篇文章可能对你来说会有点困难

  • neovim 目前遇到了以下问题:

    • Termux:API 提供的剪贴板功能,似乎工作的不是很好, 有时候会失效(最新开发版本)

    • 输入中文可能有点麻烦

         指: 直接全屏打开似乎不能按shift切换中文输入, 需要手动左滑下方的快捷栏, 打开文本框之后才可以正常输入
           就算可以切换,neovim的模式切换也不能自动切换成英文,也需要找到能够操控手机输入法的命令才能进行配置
      
    • 部分键无法发送到 Termux 里, 意味着你没办法做相应的映射

      已知的:

      • Ctrl + Shift + key

      • Meta(Cmd) + key
        不知道是我的问题还是 termux 的原因, 暂时这个问题属于未知

    • 暂时没有找到完美映射 capslock 为单击 Esc, 组合为 Ctrl 键的完美方法

           目前我的方案是: 双击Capslock为Esc, 组合为Ctrl
      
    • 配置 Termux,没有使用到 GUI

      意味着基于X11和Wayland的功能无法正常使用
      
      我也尝试了GUi, 但是我觉得没人想在体验有延迟的neovim和Terminal吧
      

      如果需要 GUI, 现成的方案有 Termux:X11 和 VNC 服务,后续出教程的时候应该会简单介绍

    • 应该没有对内存的要求

      因为我的就是 6 +128 的丐版, 没有进行扩容,没有遇到什么性能问题