1

午前中ずっと試しても解決できない非常に奇妙な問題があります。

これは私の機能とマッピングです:

nnoremap ,zz :call SwapAW("2-2","5")<CR>
nnoremap ,zc :call SwapAW("2-2","5")<CR> 


function! SwapAW(keyw,number)
  let li = line('.')
  let co = col('.')  

 exe "call cursor(li,co)" 
 let linew= line('.')
 let conew= col('.')
 echo linew conew
endfunction

,zc --> カーソルを右に移動
,zz --> カーソルをその位置にとどめる

すべてを変更しましたが、どちらの場合もカーソルがその場所にとどまらない理由がわかりません。
マッピングを ,zc から ,zd および zz から ,zw に変更し(他のものも試しました)、リーダーキーを から,に変更し\、両方のマッピング行を交換しようとしました。何も変わりません。何が起こっていますか?私は何を間違えたのですか?

前もって感謝します。

4

1 に答える 1

4

マッピングに末尾の<Space>文字があります(の後に)。これにより、関数の呼び出し後にカーソルが移動します。,zc<CR>

マッピングでは、隠し文字に注意する必要があります。<Space>したがって、実際に特別なフォームを含める必要がある場合は、文字通り特別なフォームを作成することをお勧めします(場合によっては、マッピングの開始時に必要になることもあります) 。


私のShowTrailingWhitespaceプラグインは、多くのコードガイドラインが眉をひそめているので、これらの末尾のスペースとタブを強調表示します。プラグインページには、代替案へのリンクも含まれています。

于 2012-12-12T14:37:01.170 に答える