Why?🤔️#
确实,这个需求听起来很是有意思,谁会闲着没事干在手机 /iPad 上写代码。但是,这很酷不是吗?想象一下,随时随地拿起手机就可以写项目,而且是真正的可以 push 的。
实际上,怎样在手机上编写代码有着悠久的历史。极客们把设备压缩到极限,先别说生产力,光是这件事情就很酷了🤩!
所以,如果你现在还有着一颗好奇和折腾的,火热的心,接着往下看,我保证你马上就可以在朋友面前 show 一手。
第一步,陈列清单。🧾#
我们现明确目标:
- 能真正的写代码。
- 能真正的在本地运行。
- 可以提交到我的远程仓库。
我找遍了 App Store,留下了一些还不错的:
1. Code App 30¥#
Code App 是一个完全开源的项目。她拥有友善地页面和版本管理,拥有一个简易的命令行,支持十多种语言的编写和运行,不过大多数是建设在网络上的。目前支持 Node.js, Python, C, C++, PHP 的本地运行。
对于前端开发者来说,她是绝对友好的,因为几乎所有的前端框架都可以运行,其他语言的支持也很不错,可是,她对无键盘用户非常不友好,操作十分别扭,如果有钱买妙控板的话,她就是完美的开发工具。
但是!#
虽然 Code 很强大,但是这不符合我们随时随地折腾的心愿,而且由于终端是个假的,限制也有一大堆。
2. C Code Develop 5¥#
C Code Develop 是一位国人大佬开发的,能随时随地编写小玩具,还可以上传到作者搞的小商店里。作者写了很多好玩的东西,比如把 SwiftUI 搬到里面,编写小程序;编写小组件;搞到自己的 ip;发送 get 请求.....
而且,最重要的是,页面真的超级好看,可以自定义背景。代码上不仅有高光甚至拥有自动补全!
但是!#
她不支持 git...... 不仅如此,根本没有命令行....
ish 0¥#
ish 是一个完全开源免费的,运行在 ios 上的 Linux 仿真软件。你可以在上面使用一个近乎完整的Alpine Linux,你可能会疑惑:“苹果不是从来不允许虚拟机上架 App Store 嘛?”。小了,格局小了!这仿真器怎么能叫虚拟机呢!
总之,有了这玩意,你几乎可以在你的 iPhone 上 iPad 上愉快的尝试 Linux,然后灰溜溜跑回图形页面。
关于这个软件的介绍可就太多了,国内外都有,在上面几乎可以运行所以编程语言,比如我试过的 c,py3,py2,lua,OCaml。可惜的是,她现在还不支持 node 和 rust,当然,我还试了 dotnet,也是无法运行(顺带提一嘴,想要在 ios/iPadOS 上运行 dotnet 最好的软件我认为只有Continuous)。她的内核版本还是 AlpineLinux 3.14,而 rust 直到 3.18 才支持 AlpineLinux....
最重要的是,她还支持 git(毕竟就是半个 Linux 系统)。
但是!#
这玩意发展没多久,作者还在勤奋更新,坑实在是太多了,许多东西也不完善,不过已经是 ios/iPadOS 上最好的了。
综合评价下来,似乎只有 ish 能够大约满足我们的要求。而且,手机上的终端实在是太酷了!
现在,开始折腾!
Begin!🤩#
首先,下载好ish 然后打开她!
你会发现真的和终端一样,而你找不到设置。
其实,设置就在右下角,下面这张图给出了基本的操作。圈起来的就是设置。
好啦!个性化之后就是真正的编程啦!
开始前的调教!🎼#
我们需要先调教一下包管理器。
包管理器在这里的指令是apk
。
因为一些众所周知的原因,我们需要更换一下源才能正常的下载包。在终端里输入:
sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories && apk update
等待命令跑完,就可以愉快的 install 啦!
你也可以在/etc/apk/repositories
里自定义源。记得编辑完之后运行apk update
哦!
下载!配置!⬇️📦⚙️📄#
我们需要安装一些必须的东西。
软件原生携带了 gcc 和 make,但是等你真的写了你就会发现她其实还用不了,这时候我们需要下载一个 “补丁”。
在终端输入:
apk add build-base
如果你的软件没有携带 gcc 和 make 之类的必需品,你也可以用相同的方式下载。
apk add gcc make
或者你喜欢用 clang 也可以,随喜好。
现在,当你编写一段代码再去编译时,就不会再找不到头文件啦!
现在,我们还需要 git,按照之前的方法直接 add 即可
apk add git
如果你想,你也可以下载例如 vim,nvim,nano,emase 之类的编辑器。按照之前一样 add 即可!
注意⚠️#
这里有一个小问题,在 iPhone 上,nvim 十分不正常(或者说稳定),vim 在配制后也会发癫。但 iPad 上完全没有这个问题,我猜测可能是屏幕大小的问题。
关于 Git⬆️📊#
Git 可是开发人员或不可缺的工具,在 ish 里有些问题让 git 无法正常的链接 Github,不过我们仍然可以通过个人令牌进行 push 操作。
首先下载 git
apk add git
然后进行最基础的配置,比如邮箱和用户名,这些就不过多介绍了,不会请自行谷歌。
我们需要在 GitHub 上创建一个新项目,并且在设置里创建一个 30 天或者更长时间的个人令牌。
在修改完项目后,进行 push 项目时,GitHub 会提示您进行登录,这时候填密码是无法正常登录的,需要把你的个人令牌填进去,就可以正常的进行 push。
最后#
生命不息,折腾不止!