当前位置: 首页 > 面试题库 >

Vim,Python和Django自动补全功能(pysmell?)

上官羽
2023-03-14
问题内容

有谁知道如何设置自动完成功能以与python,django和vim完美配合?

我一直在尝试使用pysmell,但是我似乎无法正确设置它(或者也许我不知道它是如何工作的)。现在,我在django目录中运行pysmell(我正在使用中继),并将结果标签移到我的项目目录中,然后我也在项目目录中运行pysmell。但是,Vim不会拾取django标记,并且它们不会自动完成。

有谁知道如何在vim中设置自动完成功能,以便它可以完成长的Django函数(如get_object_or_404)以及我自己的代码中的类/函数?我在Google上闲逛,但是找不到任何好的资源。

谢谢。


问题答案:

首先,感谢您提出这个问题,因为它迫使我自己弄清楚这个问题,太好了!

这是我用作参考的页面:PySmell
v0.6已发布:orestis.gr

  1. 使用setup.py install命令安装PySmell 。
  2. PYSMELLTAGS通过转到site-packages/django目录并运行,为django生成文件:pysmell . -o ~/PYSMELLTAGS.django
  3. 将该文件复制到您的项目目录,然后运行pysmell .以生成项目PYSMELLTAGS文件
  4. 确保pysmell位于PYTHONPATHexport PYTHONPATH=${PYTHONPATH}:/path/to/pysmell/)中
  5. 运行vim(vim .
  6. 来源pysmell.vim:source /path/to/pysmell/pysmell.vim
  7. 设置自动完成命令(:set omnifunc=pysmell#Complete
  8. 输入^ x ^ o以自动完成,它应该可以工作

我意识到这不是一个可持续的解决方案,但是您应该能够以此作为使其安装程序始终运行的开始(例如,将导出添加到.bashrc中,将:source添加到您的.vimrc中,安装autocmd FileType python set omnifunc=pysmell#Complete等) )

让我知道这是否足以让您入门。它为我工作!

编辑
我只是将其添加到我的.vimrc中,只要PYSMELLTAGSPYSMELLTAGS.django文件在我的项目根目录中,它就可以正常工作,而无需任何其他工作:

python << EOF
import os
import sys
import vim
sys.path.append("/usr/local/python/lib/python2.5/site-packages")
EOF
exe ":source ~/src/pysmell/pysmell.vim"
autocmd FileType python set omnifunc=pysmell#Complete


 类似资料:
  • 本文向大家介绍Python 自动补全(vim),包括了Python 自动补全(vim)的使用技巧和注意事项,需要的朋友参考一下 一、vim python自动补全插件:pydiction 可以实现下面python代码的自动补全: 1.简单python关键词补全 2.python 函数补全带括号 3.python 模块补全 4.python 模块内函数,变量补全 5.from module impor

  • 本文向大家介绍给Python IDLE加上自动补全和历史功能,包括了给Python IDLE加上自动补全和历史功能的使用技巧和注意事项,需要的朋友参考一下 许多时候,我们使用Python,并不用写一个程序,一些不复杂的任务,我更喜欢在 IDLE(也就是交互式提示模式)下输入几行代码完成。然而,在这个模式下编辑代码,也有不够便利的地方,最主要的就是,不能用Tab自动补全,不能记忆 上一次输入的命令(

  • 本文向大家介绍eclipse自动提示和自动补全功能实现方法,包括了eclipse自动提示和自动补全功能实现方法的使用技巧和注意事项,需要的朋友参考一下 解决代码的自动提示问题: 1、打开 Eclipse -> Window -> Perferences 2、找到Java 下的 Editor 下的 Content Assist , 右边出现的选项中,有一个Auto activation trigge

  • 本文向大家介绍基于jquery实现的自动补全功能,包括了基于jquery实现的自动补全功能的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了基于jquery实现的自动补全功能的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的jQuery程序设计有所帮助。

  • 如果你仍旧希望节约一些打字时间,Atom自带简单的自动补全功能。 通过使用ctrl-space,自动补全工具可以让你看到并插入可选的完整单词。 通常,自动补全工具会浏览当前打开的整个文档,寻找匹配你开始打出来的单词。 如果你想要更多选项,在设置面板的Autocomplete包中,你可以设置为在所有你打开的缓冲区中寻找字符串,而不仅仅是当前文件。 自动补全功能在atom/autocomplete包中

  • 因为之前微软推出了typescript语言,结合tsd文件,用visual studio写typescript代码是相当爽的,智能提示的功能非常nb。 这个功能理所应当也被vsc继承了。 vsc的自动补全用的是typings。 The TypeScript Definition Manager(之前的tsd已经弃用了,faq里有说明) https://github.com/typings/typi