首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将目录添加和删除到vim解释器的导入路径

将目录添加和删除到vim解释器的导入路径
EN

Stack Overflow用户
提问于 2011-03-13 15:39:33
回答 1查看 535关注 0票数 2

以下代码的of方案等效于什么?

  • python: python导入sys,vim python sys.path.append(vim.eval("var")) <...> python sys.path.remove(vim.eval("var"))
  • perl: perl push @INC,VIM::Eval("var")->1;<...> perl @INC=(grep {$_ ne::Eval(“var”)} @INC);
  • 卢阿: 设str=‘;’..var.‘/. lua;’..var.‘/?/init.lua’lua package.path=package.path..vim.eval("str") <...> let ppath=[] lua vim.eval(“..string.format(%q,package.path).”)设importidx=stridx(ppath,str)让importendidx=importidx+len(str)让ppath=((importidx>0)?(ppath):(""))。\ppath lua package.path=vim.eval("ppath")
  • 红宝石: $LOAD_PATH << VIM::<...> (Var)<...> ruby $LOAD_PATH.delete(VIM::<<(“var”))
  • tcl: 静默tcl lappend auto_path ::vim::expr "dir“<...>静默tcl set auto_path \[l置换$auto_path \{*} [lsearch -exact $auto_path \ ::vim::expr”a:fdict.imported“]]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-24 20:50:38

这取决于你想用你的脚本做什么。球拍 (它已经很长时间没有被称为“called”)与模块一起工作,所以很少使用“向动态加载路径添加路径”类型的工作流。相反,使用require表单从库的核心集合或已安装的包导入模块。

如果确实需要动态加载东西,一个选项是设置current-directory参数,然后使用dynamic-require

代码语言:javascript
复制
(require (prefix-in vim- vimext))
(parameterize ([current-directory (vim-eval "var")])
  (define add (dynamic-require "add.rkt" 'add)))

dynamic-require将从提供的目录中的add.rkt文件中提取add函数。注意:我还没有测试过这段代码,因为我找不到一个版本的vim,该版本中编译了Racket支持。

您可以在Racket 这里中找到vim接口的文档。球拍这里的一般文档。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5290378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档