3

ファイルのいくつかの場所にファイル名と行番号を挿入したい。たとえば、次の行:

_debug('init');

交換したい

:s/debug('/debug('(%current_filename_here%:%current_line_number_here%)\ /g

これを取得するには

_debug('(filename.ext:88) init');

'%:t'Expand()を使用してファイル名を取得し、line( )を使用して行番号を取得しようとしまし"."たが、replace式で使用する方法がわかりません。

これどうやってするの?

4

1 に答える 1

8

を使用できます\=。例えば:

:s@_debug('\zs@\=printf('(%s:%d) ', expand('%:t'), line('.'))@

{replacement}がで始まる場合、"\="それは式として評価され、

于 2012-06-06T09:10:33.410 に答える