我正在从 .NET 世界转向 Python。 Visual Studio 是我使用的一个很棒的工具。
在 python 世界中,我们有基本的 IDLE,另一个是 VIM。我看到很多开发人员已经将 VIM 配置为一个很棒的 IDE。在 Windows 7 中使用基本的 VIM 似乎用处不大。 所以我想将我的 VIM 调整到具有文件资源管理器、语法突出显示、搜索、错误突出显示等功能的级别。这样它给人以 Visual Studio 的感觉并且更有效率。
但是所有可用的 hack/tips 主要是针对 Linux/Ubuntu 用户的,我以后可能会用到,但现在我需要让我的 Windows 中的 VIM 更高效、更直观。
请推荐一些技巧/技巧/资源来查看 VIM 配置?
谢谢
最佳答案
This question解决您的低级问题:使用非 VS 的 IDE 编写 Python。
有几篇热门博客文章解决了您的高级问题:为 Python 开发设置 Vim。他们是a quick google away…
我觉得有必要指出 Vim 不是 IDE。您可以对它进行大量自定义,最终得到看起来像 IDE 的东西,但您赢了'得到一个IDE。只是过度定制的文本编辑器。
无论如何,这里有一些开始使用 Vim 的技巧:
执行 $ vimtutor根据需要进行多次,以便熟悉基础知识。
熟悉 Vim 的内置文档:大部分问题的答案都在其中。 :help带你到首页,:help 'option'显示 option 的文档, :help :command显示 command 的文档……点击<C-]>在彩色词上跳转到它的定义。
不要使用 Janus 或 SPF13 或任何预打包的插件集。你只会养成坏习惯。同样,不要复制别人的vimrc批发。
Ctags是一个外部代码索引器,Vim 使用它通过 <C-]> 来“跳转到定义” . cscope是另一种选择,它更强大但也更复杂一些。参见 :help tags .
NERDTree是另一个流行的插件,它模仿许多 IDE/编辑器中的文件树。但是 Vim 自带 netrw ( :Ex ) 默认情况下,请在安装 NERDTree 之前尝试。
阅读:help motion.txt尽快。
观看 Drew Neil 的激光制导 vimcasts .
不要着急。
关于python - 在 Windows 中将 VIM 用于 Python IDE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13253510/
我的目标是转换表单输入,例如“100兆字节”或“1GB”,并将其转换为我可以存储在数据库中的文件大小(以千字节为单位)。目前,我有这个:defquota_convert@regex=/([0-9]+)(.*)s/@sizes=%w{kilobytemegabytegigabyte}m=self.quota.match(@regex)if@sizes.include?m[2]eval("self.quota=#{m[1]}.#{m[2]}")endend这有效,但前提是输入是倍数(“gigabytes”,而不是“gigabyte”)并且由于使用了eval看起来疯狂不安全。所以,功能正常,
我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
大约一年前,我决定确保每个包含非唯一文本的Flash通知都将从模块中的方法中获取文本。我这样做的最初原因是为了避免一遍又一遍地输入相同的字符串。如果我想更改措辞,我可以在一个地方轻松完成,而且一遍又一遍地重复同一件事而出现拼写错误的可能性也会降低。我最终得到的是这样的:moduleMessagesdefformat_error_messages(errors)errors.map{|attribute,message|"Error:#{attribute.to_s.titleize}#{message}."}enddeferror_message_could_not_find(obje
使用带有Rails插件的vim,您可以创建一个迁移文件,然后一次性打开该文件吗?textmate也可以这样吗? 最佳答案 你可以使用rails.vim然后做类似的事情::Rgeneratemigratonadd_foo_to_bar插件将打开迁移生成的文件,这正是您想要的。我不能代表textmate。 关于ruby-使用VimRails,您可以创建一个新的迁移文件并一次性打开它吗?,我们在StackOverflow上找到一个类似的问题: https://sta
我已经在Sinatra上创建了应用程序,它代表了一个简单的API。我想在生产和开发上进行部署。我想在部署时选择,是开发还是生产,一些方法的逻辑应该改变,这取决于部署类型。是否有任何想法,如何完成以及解决此问题的一些示例。例子:我有代码get'/api/test'doreturn"Itisdev"end但是在部署到生产环境之后我想在运行/api/test之后看到ItisPROD如何实现? 最佳答案 根据SinatraDocumentation:EnvironmentscanbesetthroughtheRACK_ENVenvironm
这似乎非常适得其反,因为太多的gem会在window上破裂。我一直在处理很多mysql和ruby-mysqlgem问题(gem本身发生段错误,一个名为UnixSocket的类显然在Windows机器上不能正常工作,等等)。我只是在浪费时间吗?我应该转向不同的脚本语言吗? 最佳答案 我在Windows上使用Ruby的经验很少,但是当我开始使用Ruby时,我是在Windows上,我的总体印象是它不是Windows原生系统。因此,在主要使用Windows多年之后,开始使用Ruby促使我切换回原来的系统Unix,这次是Linux。Rub
当我使用has_one时,它工作得很好,但在has_many上却不行。在这里您可以看到object_id不同,因为它运行了另一个SQL来再次获取它。ruby-1.9.2-p290:001>e=Employee.create(name:'rafael',active:false)ruby-1.9.2-p290:002>b=Badge.create(number:1,employee:e)ruby-1.9.2-p290:003>a=Address.create(street:"123MarketSt",city:"SanDiego",employee:e)ruby-1.9.2-p290
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Pythonconditionalassignmentoperator对于这样一个简单的问题表示歉意,但是谷歌搜索||=并不是很有帮助;)Python中是否有与Ruby和Perl中的||=语句等效的语句?例如:foo="hey"foo||="what"#assignfooifit'sundefined#fooisstill"hey"bar||="yeah"#baris"yeah"另外,类似这样的东西的通用术语是什么?条件分配是我的第一个猜测,但Wikipediapage跟我想的不太一样。
什么是ruby的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht