私は vimscript の初心者で、ウェブを何時間も検索しても、次のことを行う方法を見つけることができません。
いくつかの文字を入力するだけでファイルを開くことができる vimscript を作成したい:
仮定
- 現在の作業ディレクトリのみを検索します
- フォルダーを再帰的に調べ、指定された文字を含むファイルを配列に保存できるPythonスクリプトがあります
私が欲しいもの
<leader><leader>p
必要なことを行う関数を呼び出します (現時点では正確にはわかりません...)
この関数は、ユーザーに目的の文字を入力するように求めます。彼が文字を入力している間、利用可能な結果がメニューに表示されます (そのため、このメニューは自動的に更新する必要があります)。
ユーザーが入力を終了し、目的のファイルを強調表示して移動できることを願っています。
例えば :
私が現在持っているもの
if !has('python')
echo "Error: Sublime Search require vim compiled with +python"
finish
endif
let s:current_file=expand("<sfile>:r")
let s:script_path = s:current_file . '.py'
exec 'pyfile ' . s:script_path
function SublimeSearchTrigger()
python lookFor()
endfun
if !exists('g:sublimesearch_keys')
let g:sublimesearch_keys = 1
endif
if g:sublimesearch_keys
inoremap <leader><leader>p :call SublimeSearchTrigger()<cr>
nnoremap <leader><leader>p :call SublimeSearchTrigger()<cr>
endif
そしてpythonファイル
# -*- encoding: utf-8 -*-
import vim
import sys
def lookFor():
# Ask user to type something to find
vim.command("let user_input = input('Sublime search : ')")
vim.command("call inputrestore()")
# Visual return of what we typed
vim.current.buffer.append( vim.eval( 'user_input' ) )
開始方法は?
ご覧のとおり、どうやって始めればよいかわかりませんが、本当にやる気があります (もっと複雑な機能を計画していますが、Python で実装する予定です)。
誰かが私が始めるのを手伝ってくれますか?
ありがとう、
ダミアン