最近在学习deeplearning, 把理论看了一遍后,准备开始用TensorFlow做开发。当然了,我们现在需要用到Python了。习惯了自动补全功能,还是想在Python下可以自动补全的,看了很多的帖子,http://blog.csdn.net/robertsong2004/article/details/48165557,确实可以自动补全了。
但是发现了每次运行完Python后,exit()退出Python环境后,发现就进不去Python了,呵呵了,仔细看一下发现,history的命令也要加入到startup文件中,这不是很蛋疼,不能每次都要清理里面的exit()历史记录,所以进入里面发现,historyfile = os.path.join(os.environ['HOME'],'.pythonstartup') ,这句话把history的命令添加到该文件末尾,问题就出在这里了,所以,把这个文件改了就OK了,history文件单独建立一个history文件,在~下vim .pythonhistory, 然后把原来的语句改为:
history_file = os.path.join(os.environ["HOME"],".pythonhistory") ,其他都不变,这样可以了。最后原来的帖子变为:
- # python startup file
- import readline
- import rlcompleter
- import atexit
- import os
- #tab completion
- readline.parse_and_bind('tab: complete')
- #history file
- historyfile = os.path.join(os.environ['HOME'],'.pythonhistory')
- try:
- readline.read_history_file(historyfile)
- except:
- pass
- atexit.register(readline.write_history_file,historyfile)
- del os,historyfile,readline,rlcompleter
下面记录一下详细过程:
1. cd ~
2. vim .pythonstartup
复制上面的代码到该文件中,保存退出(:wq)
3. vim .pythonhistory
新建history文件: 继续保存退出(:wq)
4. vim .bashrc
在其末尾加上:export PYTHONSTARTUP="/home/xxxx/.pythonstartup" (最好绝对路径,xxxx对应你的用户名)
5. source .bashrc
source一下.bashrc文件就OK了
自动补全效果还是可以的,不过还是有些不完美的地方。
比如想要自动补全tensorflow,这个功能还是不可以实现的。用ipython就非常方便,
另外,我们经常会ftp到服务器上开发,在shell下编辑Python文件的话,还是少不了vim编辑文件,这时候,我们也要在编辑文件的时候需要自动补全,这时候就需要一个字典了,可以参考http://www.jb51.net/article/58009.htm这个,我测试过可以应用,不过字典中没有tensorflow的东西,需要自己添加,后面我会慢慢解决这个问题。
工欲善其事必先利其器,环境这一块先到这里了,后面再慢慢记录。当然了,希望寻找一些志同道合的一起学习tensorflow。
2017-5-2 续:
vim下安装TensorFlow支持
其实只需要一个命令:
python pydiction.py tensorflow
不过一定要注意,要把当前文件夹定位到pydiction.py文件所在的位置:~/.vim/pydiction
然后你会发现生成了新的字典文件,查找一下TensorFlow,就发现加入了好多
另外一个要注意的地方.vimrc里面的字典路径是在tools文件夹下,这里只需要把新生成的字典文件copy到tools文件夹下覆盖完成即可了。(cp命令,自行查找如何应用)
测试一下效果:
是不是感觉棒棒哒
这里面有个小技巧,你在import as之后,由于字典中没有tf关键词,我这里把所有的TensorFlow的命令全部复制添加到了文件尾,然后用tf批量替换tensorflow即可。注意不要全局替换,用CTRL+v的模式替换
更新2017-11-15
vim配置:https://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html,这是一个非常好用的配置文件,但是带来一个问题就是python没有办法补全了,解决方法非常简单:
"Pydiction
let g:pydiction_location =‘xxxxxxxx’
这里还是上面配置好的字典位置,这样看一下代码如何
有没有非常炫酷的样子
2019年9-3日更新
现在有个非常好用的vim配置文件,可以一键完成自动补全、语法高亮、文件管理、blabla等的功能,推荐用vimplus这个,现在用了半年了,非常好用,地址直通车:https://github.com/chxuan/vimplus
一切按照git说明来做,亲测有效。
如果要在服务器端进行配置,会出现没有root权限的问题,需要自己手动安装ctag这个软件,expert执行文件到PATH,服务器端也可以完美运行。如有什么问题,可以评论交流。