Path vim gf与资源://

Path vim gf与资源://,path,keyboard-shortcuts,vim,Path,Keyboard Shortcuts,Vim,我正在开发一些Firefox扩展,我正在尝试设置我的vim,以便使用gf键打开模块 包含内容如下所示: Components.utils.import(“resource://grwmodules/EventProvider.jsm“,范围) 应该是modules/EventProvider.jsm 我创建了一个文件来设置环境。以下是我到目前为止的情况: function! s:GetModuleName(name) let l:output = a:name if(a:name =~

我正在开发一些Firefox扩展,我正在尝试设置我的vim,以便使用gf键打开模块

包含内容如下所示: Components.utils.import(“resource://grwmodules/EventProvider.jsm“,范围)

应该是modules/EventProvider.jsm

我创建了一个文件来设置环境。以下是我到目前为止的情况:

function! s:GetModuleName(name)
  let l:output = a:name
  if(a:name =~ "^resource://grwmodules")
    let output = substitute(a:name, "resource://grwmodules", "modules", "")
  endif
  return l:output
endfunction

function! GetGrwFNName(name)
  let l:output = s:GetModuleName(a:name)
  return l:output
endfunction
set includeexpr=GetGrwFNName(v:fname)
set isf+=:
set include=Components.utils.import("resource[:/]\+.\+")
添加isf+=:行后,:checkpath命令起作用。但是当我在文件上按gf键时,vim会打开一个新文件,文件名为resource://grwmodules/EventProvider.jsm. 因此,当我按下gf键时,它不会使用GetGrwFNName转换名称


有什么想法吗?

您必须创建一个自动命令
FileReadCmd
,例如netrw对http://url的功能:

:verbose au FileReadCmd

HTH

您必须创建一个自动命令
FileReadCmd
,例如netrw对http://url的功能:

:verbose au FileReadCmd

HTH

'includeexpr'
是缓冲区的本地文件,因此最好将其放入
~/.vim/after/jsm.vim
中。假设
文件类型是
jsm
'includeexpr'
是缓冲区的本地文件,那么最好将其放在
~/.vim/after/jsm.vim
中。假设
filetype
jsm
非常感谢,这很有帮助谢谢,这很有帮助