zoukankan      html  css  js  c++  java
  • linux下Tab及shell 补全python

                                                Python自动补全

    Python自动补全有vim编辑下和python交互模式下,下面分别介绍如何在这2种情况下实现Tab键自动补全。

    一、vim python自动补全插件:pydiction

    可以实现下面python代码的自动补全:

        简单python关键词补全
        python 函数补全带括号
        python 模块补全
        python 模块内函数,变量补全
        from module import sub-module 补全

    想为vim启动自动补全需要下载插件,地址如下:
    http://vim.sourceforge.net/scripts/script.php?script_id=850
    https://github.com/rkulla/pydiction

    安装配置:

    wget https://github.com/rkulla/pydiction/archive/master.zip
    unzip -q master
    mv pydiction-master pydiction
    mkdir -p ~/.vim/tools/pydiction
    cp -r pydiction/after ~/.vim
    cp pydiction/complete-dict ~/.vim/tools/pydiction

    确保文件结构如下:

    # tree ~/.vim
    /root/.vim
    ├── after
    │   └── ftplugin
    │       └── python_pydiction.vim
    └── tools
        └── pydiction
            └── complete-dict

    创建~/.vimrc,确保其中内容如下:

    # cat ~/.vimrc
    filetype plugin on
    let g:pydiction_location = '~/.vim/tools/pydiction/complete-dict'

    用vim编辑一个py文件,import os.,这时候应该出现提示,证明成功,如下图

    二、python交互模式下Tab自动补齐
    创建文件如下:

    # cat ~/.pythonstartup
    # python startup file
    #!/usr/bin/env python
    import sys
    import readline
    import rlcompleter
    import atexit
    import os
    # tab completion
    readline.parse_and_bind('tab: complete')
    # history file
    histfile = os.path.join(os.environ['HOME'], '.pythonhistory')
    try:
        readline.read_history_file(histfile)
    except IOError:
        pass
    atexit.register(readline.write_history_file, histfile)
     
    del os, histfile, readline, rlcompleter
    1
        
    echo 'export PYTHONSTARTUP=~/.pythonstartup' >> ~/.bash_profile

    重新登陆shell,输入python命令进入交互模式,就可以用Tab键进行补全。如下图:

    当然了 还有别的方式同样可以实现

  • 相关阅读:
    CSS浮动(float、clear)通俗讲解
    JAVA 类的加载
    数据库操作 delete和truncate的区别
    正则表达式 匹配相同数字
    Oracle EBS OM 取消订单
    Oracle EBS OM 取消订单行
    Oracle EBS OM 已存在的OM订单增加物料
    Oracle EBS OM 创建订单
    Oracle EBS INV 创建物料搬运单头
    Oracle EBS INV 创建物料搬运单
  • 原文地址:https://www.cnblogs.com/senzhe/p/yijieshusheng.html
Copyright © 2011-2022 走看看