前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >这个极客版编程速查表,怎一个绝字了得!

这个极客版编程速查表,怎一个绝字了得!

作者头像
somenzz
发布2023-01-03 19:10:20
3670
发布2023-01-03 19:10:20
举报
文章被收录于专栏:Python七号Python七号

让我们想象一下,好用的编程速查表(小抄),它应该是什么样子?它应该有什么特点?

  • 简洁——它应该只包含你需要的东西,没有别的。
  • 快速——应该可以立即使用它。
  • 全面——它应该包含每个可能问题的答案。
  • 通用——它应该随时随地可用,无需任何准备。
  • 不显眼——它不应该分散你对主要任务的注意力,可以润物细无声。
  • 辅导——它应该帮助你学习这门学科。

有这样的速查表吗?真的有,它易于安装,甚至可以自动完成。

它就是 cheat.sh,它不是脚本,而是一个网址。内部涵盖 56 种编程语言、多种 DBMS 和 1000 多个最重要的 UNIX/Linux 命令,与 StackOverflow 不相上下。

怎么用呢?

随处可用,无需安装,但可以安装以供离线使用。超快,通常在 100 毫秒内返回答案。

举个简单的例子,我们想找到 Python 关于文件的操作,最常用的有两种方式,一种在 Linux 终端,一种在浏览器:

Linux Terminal

1、可以在终端内键入

代码语言:javascript
复制
curl cheat.sh/python/file

即给出最佳的代码实践,同时又提供详细的注释和解释,虽说是英文注释,但很清晰,不影响你理解。

浏览器

2、可以在浏览器输入:cheat.sh/python/file,

查一些 Linux 命令:

如果你觉得输入的命令太长,那么我们可以给这个命令起一个别名,将以下内容保存在 install_cht.sh 中

代码语言:javascript
复制
PATH_DIR="$HOME/bin"  # Linux 的 $PATH
mkdir -p "$PATH_DIR"
curl https://cht.sh/:cht.sh > "$PATH_DIR/cht.sh"
chmod +x "$PATH_DIR/cht.sh"

然后执行 sh install_cht.sh

这样,我们在任何一个打开终端,执行这些命令,就可以查询使用方法了:

代码语言:javascript
复制
$ cht.sh go reverse a list
$ cht.sh python random list elements
$ cht.sh js parse json

内部涵盖 56 种编程语言、多种 DBMS 和 1000 多个最重要的 UNIX/Linux 命令,足够用了。例如 cht.sh js parse json

代码语言:javascript
复制
❯ cht.sh js parse json

/*
 * The standard way to parse JSON in JavaScript is
 * [**`JSON.parse()`**][1]
 *
 * The [`JSON`][2] API was introduced with
 * [ES5](https://en.wikipedia.org/wiki/ECMAScript#5th_Edition "ES5") (2011) and
 * has since been implemented in >99% of browsers by market share, and
 * Node.js. Its usage is simple:
 *
 * <!-- begin snippet: js hide: false console: true babel: false -->
 *
 * <!-- language: lang-js -->
 */

 const json = '{ "fruit": "pineapple", "fingers": 10 }';
 const obj = JSON.parse(json);
 console.log(obj.fruit, obj.fingers);

/*
 * <!-- end snippet -->
 *
 * ---
 *
 * The only time you won't be able to use `JSON.parse()` is if you are
 * programming for an ancient browser, such as IE 7 (2006), IE 6 (2001),
 ...

交互式访问

以 shell 模式启动客户端更方便:

代码语言:javascript
复制
$ cht.sh --shell
cht.sh> go reverse a list

交互式需要安装 rlwrap,可以执行下面命令安装:

代码语言:javascript
复制
sudo apt install rlwrap

Windows

Windows 用户也可以用,安装下 cht.exe[1] 就可以了

如果想自己部署在内网

有时候,开发环境可能没有联网,那么就可以自己部署,也非常方便,下载后用 Docker 启动下就可以了。

代码语言:javascript
复制
git clone https://github.com/chubin/cheat.sh.git
cd cheat.sh 
docker-compose up

然后打开 http://localhost:8002 就可以用了,在内网,就可以 curl http://localhost:8002/xxx 来查询。

集成到 IDE 中

这是高端一点的操作了。

可以直接从编辑器中使用 cheat.sh,目前支持 Emacs、Sublime、Vim 和 Visual Studio Code。但并非所有插件都支持所有功能:

这样无需打开浏览器、谷歌搜索、浏览 Stack Overflow 就可以将所需的代码片段复制到剪贴板中,然后将它们粘贴到编辑器中,而无需离开编辑器。比如说 Vim:

需要在 Vimrc 中配置插件:

代码语言:javascript
复制
" some configuration above ...

let mapleader=" "

call vundle#begin()
Bundle 'gmarik/vundle'
Bundle 'scrooloose/syntastic'
Bundle 'dbeniamine/cheat.sh-vim'
call vundle#end()

let g:syntastic_javascript_checkers = [ 'jshint' ]
let g:syntastic_ocaml_checkers = ['merlin']
let g:syntastic_python_checkers = ['pylint']
let g:syntastic_shell_checkers = ['shellcheck']
" some configuration below ...

然后我们在 Vim 的缓冲区中输入需要查找的关键字,然后按KK。如果想直接在缓冲区获得答案,可以按KB,这很 geek 不是吗?

其他编辑器请参考官方文档:IDE集成[2]

面试模式

没想到吧?这玩意在面试的时候可以偷偷帮你一把,只需要在面试前进入 shell 模式,然后输入 stealth Q:

请看这个动画:

最后的话

本文分享了一个终极版编程小抄,简洁,高效,很有极客范,强烈推荐你使用下,我已经离不开了。

参考资料

[1]

cht.exe: https://github.com/tpanj/cht.exe

[2]

IDE集成: https://github.com/chubin/cheat.sh#editors-integration

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-12-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python七号 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Linux Terminal
  • 浏览器
  • 交互式访问
  • Windows
  • 如果想自己部署在内网
  • 集成到 IDE 中
  • 面试模式
  • 最后的话
    • 参考资料
    相关产品与服务
    容器服务
    腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档