1. 前言
刚发布一个叫做lincell的模块,第一版放出来遛遛,可以通过npm安装使用。等下一版本会对代码做大的更改,不过使用者不用管,除非你要看代码,github地址在这里,项目页面在这里。
它的前端是通过nide改造的,我对整个代码做了较大更改,后面计划的功能更会改得面目全非,所以也没有fork,只是重开了一个项目命名为lincell,本来我更中意linc,但npm上的坑儿已经被占了,无奈。
为什么要开发lincell:
- nide作者很懒,都一年多不维护了,估计我以后也会很懒
- nide不支持windows,有人问那你为什么需要windows,好吧,很苦逼的是我有一台windows主机要维护;还有个原因是,我在windows上做开发的时候也想用它,毕竟它足够轻量
- nide依赖的node和库版本都太老,我有喜新厌旧强迫症
- 后台基于Event的处理有bug
- 我特别想要的功能它没有,比如上传下载,代码折叠,多标签页显示,markdown预览等等
分享publish到npm时的一个坑:
- 问题:平常一般用linux开发,所以不会遇到文件格式或是编码的问题,但这次lincell的大部分代码是在windows上写的,所以发布到npm上后,在windows上安装使用都没问题,但在linux上就错了(找不到文件)
- 解决:在程序入口文件app.js的头部添加
#!/usr/bin/env node
让linux知道用node去运行它,然后把文件格式改为UNIX
2. 介绍
LinCell [List all in Cell] 是一个用 Node.js 开发的编辑器, 只需执行一条命令即可将文件夹变成一个工作空间,也可以作为简单的IDE使用, 它有以下特性:
- 可遍历并展示目录下所有文件夹和文件
- 对文件夹或文件的CRUD操作
- 基于ACE Editor,支持各种类型文件的预览和编辑, 如图片预览、代码高亮、markdown语法支持等
- 文件编辑过程中自动保存
- 文件夹、文件查询(按名称)
3. 安装
npm install -g lincell
4. 使用
Usage: lincell [options]
Options:
-h, --help output usage information
-V, --version output the version number
-p, --port <number> use a custom http port(default port is 8222)
-d, --dir <string> use a custom path to show(default is current path)
Examples:
lincell # use default port and current path
lincell -p 9234 # custom port
lincell -d /home/sumory # custom path
lincell -p 8726 -d /home/sumory # absolute path is supported
lincell -p 8843 -d ../path # relative path is also supported