パスワードfind-xargs(less)-gvim
%http://unix.stackexchange.com/a/277889/16920
find . -name "*.tex" -exec grep -il "agent" {} + | less -s -M +Gg
出力
./InfectiousDiseases/1.4.2016.tex
./InfectiousDiseases/2.11.2015.tex
./InfectiousDiseases/21.4.2016.tex
...
Less では、次のコマンドを使用します。!gvim
- 下部のステータスバーで現在の行番号を設定できます。ウィンドウの上部にあります。
- 期待される出力はファイルです。./感染症/1.4.2016.tex新しいウィンドウの現在の行キム。
- 現在の出力が失敗し、vimのファイルが空です。
MuruはXargsの提案が少ない。
|X xargs gvim
これはおおよそ
|Xcommand現在の位置とXマークの間のパイプファイルをシェルコマンドで表示します。
...
ムルのアドバイスfind-vim-gvim
find . -name "*.tex" -exec grep -il "agent" {} + | vim -
私はこれをうまくやったか、カーソルを:tabe <cfile>
現在:vs <cfile>
の行に残しました。成功したが!gvim <cfile>
リストビューがPress ENTER or type command to continue
気に入らない別のビューに移動します。リストビューでビューを維持したいです。現在の行から多くの外部ウィンドウをすばやく起動できるバインディング/マクロがあるとよいでしょう。
:nnoremap gff :silent! exec "!gvim " shellescape('<cfile>') <bar> redraw!<cr>
gff
現在のカーソル位置を押すと正常に動作します。シーケンスバインディングがgff
遅すぎるようです。 2つのボタンを押してマクロを有効にするステレオ機器があればいいようです。 CTRL-1、CTRL-ESC、またはCTRL-F1がすべて可能であることを覚えておいてください。
...
<C-1>
Vimではステレオキーバインディングは不可能ですが、一部のGvimでは不可能なため、ステレオキーバインディングにはいくつかの問題があります。 OS Xの特定の部分を拡張しました。ここ私はApple Stackexchangeにいますが、Vim Stackexchangeはもっとよく知っていると言いました。ここ。
ビューアの現在の行でgvimを実行する方法は?
答え1
トラブルシューティング方法[廃止予定]
それでは、最初にすべきことは
find . -name "*.tex" -exec grep -il "agent" {} + | vim -
.vimrcでは、vi.stackexchangeのマクロはgff
複数のビジュアル選択ウィンドウを開きます。
% https://vi.stackexchange.com/a/7627/2923
if has("win32") || has("win64")
:vnoremap gff :<C-U>'<,'>g/^/silent! exec "!START /B gnvim " . shellescape('<cfile>') <bar> redraw!<cr>
else
:vnoremap gff :<C-U>'<,'>g/^/silent! exec "!gnvim " . shellescape('<cfile>') . " &" <bar> redraw!<cr>
endif
挑戦
- OS Xでのウィンドウの均一な分布、https://vi.stackexchange.com/q/7637/2923;Ubuntu 16.04では、配布は均等に実行されます。
より良いソリューション
提案の使用ここタブを利用できます.vimrc
nnoremap <leader>gf :silent! execute "tabe " . expand('<cfile>') <bar> redraw!<CR>
function! OpenSelectionAsTabs() range
let tabnr = tabpagenr()
for line in range(a:firstline, a:lastline)
execute "tabedit " . getline(line)
execute "tabp"
endfor
endfunction
nnoremap <leader>gf :'<,'>call OpenSelectionAsTabs()<CR>
vnoremap <leader>gf :call OpenSelectionAsTabs()<CR>