玩转PMan
来源:互联网 发布:网络企鹅使用方法 编辑:程序博客网 时间:2024/05/22 00:34
本文转自:http://huoding.com/2011/09/07/112
参考: https://www.surfchen.org/archives/715
所谓PMan,指的是PHP Man Pages,可以通过它方便的在命令行上查看PHP文档。它就好比Perl里的PerlDoc,或者Python中的PyDoc,亦或者Ruby里的Ri。
安装
假设你的系统已经存在pear命令了,那么接下来就是一招鲜了:
shell> pear install doc.php.net/pman
安装好后使用非常方便,就和Linux下常见的man命令一样的用法:
shell> pman strlen
显示效果上也和man命令一样,如下图所示:
扩展
以前我习惯于使用CHM格式的PHP文档,因为它的检索功能很方便,只要记住开头几个字母就能查到想要的内容,可惜坏消息是PMan在这方面比较衰,但是好消息是不用重复发明轮子,bash-completion已经实现了我们想要的大部分功能。
下面以CentOS为例(其它Linux可能有差异),前提是先安装EPEL,然后执行命令:
shell> yum install bash-completion
缺省会安装不少现成的bash-completion脚本,可以参考它们实现PMan的对应脚本:
shell> cat /usr/share/bash-completion/pman# pman(1) completionhave pman &&_pman(){ local cur manpath COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" manpath="$(tail -n 1 $(which pman))" manpath="$(echo ${manpath%/*} | awk '{print $NF}')" if [ -n "$cur" ]; then COMPREPLY=($manpath/man*/$cur*) else COMPREPLY=($manpath/man*/*) fi COMPREPLY=(${COMPREPLY[@]##*/}) COMPREPLY=(${COMPREPLY[@]%.*.*}) COMPREPLY=($(compgen -W '${COMPREPLY[@]}' -- "$cur")) return 0} &&complete -F _pman pman
接着还需要在指定目录做一个软连接以便激活脚本:
shell> ln -s /usr/share/bash-completion/pman /etc/bash_completion.d/pman
重新登录后,PMan就拥有按TAB键提示的功能了,如下图所示:
技巧
VIM是命令行下最常用的编辑器之一,PMan和VIM可以完美结合,在命令模式下键入如下指令,就可以即时显示函数的文档内容:
:!pman strlen
实际上还可以更方便些,编辑VIM配置文件,加入keywordprg设置:
shell> cat ~/.vimrcautocmd FileType php setlocal keywordprg=pman
打开PHP文件后,把光标移动到某个函数下,按大写的K键即可查看函数的文档内容。如果想退出文档界面,回到VIM界面,只需按q键。
5 THOUGHTS ON “玩转PMAN”
- 玩转PMan
- pman – 官方的PHP Man
- 玩转指针,玩转C语言
- 玩转static, 玩转模块化设计
- 【转】玩转key_event
- 【转】玩转key_event
- 玩转ptrace(转)
- 转 ptrace玩转
- 玩转Xwindow 终端
- 玩转 Fox
- 玩转DataGrid
- (转载)玩转ARP
- 玩转boot.ini
- 玩转keybd_event
- 玩转Google
- 玩转VC(快捷键)
- 玩转弹出窗口
- 玩转linux
- 黑马程序员之IO流
- UVA - 12124 Assemble
- cocos2dx 移值到android平台问题总结
- ubuntu中运行程序libg2c.so.0 文件找不到 解决方法
- 用比较简单的方法实现堆排序
- 玩转PMan
- poj1002 487-3279 (简单字符串处理)
- iphone有关QQ和微信无法收到推送通知的终极解决方案
- JavaScript -- Input Select 操作, 级联菜单
- Adjacency Matrix of Graph(图的邻接矩阵)
- WinMain函数
- PIG安装配置及案例应用
- 速度与激情男主角车祸身亡
- Android中调用webservice
Pingback: 網站製作學習誌 » [Web] 連結分享
Pingback: pman命令 – 帅朱|朱帅's Blog
Pingback: Thinking In LAMP Blog » Blog Archive » PHP每月通讯(2011年10月)