2013-05-28 31 views

回答

9

兩件事情:Vim內部存儲字節(即[email protected])實施理由<NL> == CTRL-J(文本被存儲爲C字符串,它們是空終止)。

此外,append()函數僅在傳遞文本行的列表作爲其第二個參數時才插入多行。單個字符串將被插入爲一行,並且(由於翻譯),換行符將顯示爲[email protected]

因此,你需要傳遞一個List,無論是通過構建一個Python列表,或通過使用split() Vim的功能,把你的單串入一個列表:

function! Test() 
python << EOF 
import vim 
str = "\n" 
vim.command("let rs = append(line('$'), split('%s', '\\n', 1))"%str) 
EOF 
endfunction 
相關問題