Vim için Tcl'yi arka uç dili olarak kullanarak bir eklenti yazmaya çalışıyorum. Kodun çoğunu yazdım ve test ettim ve üstesinden gelemediğim bir engel dışında iyi iş gibi görünüyor: kodlama.
Acaba buradaki biri teste katılmak ister mi?
Bu satırlarla ~ / .vim / plugin / tcltest.tcl oluşturun:
proc tcl.test {} {
array set CURSOR [[set ::vim::current(window)] cursor]
lassign "$CURSOR(row) $CURSOR(column)" CR CC
set bufferCommand [set ::vim::current(buffer)]
set string "já não bênção"
puts $string
$bufferCommand set $CR $string
}
Sonra bu satırları ~ / .vimrc dosyasına ekleyin:
if has("tcl")
tclfile ~/.vim/plugin/tcltest.tcl
endif
inoremap ? ^[:tcl tcl.test<CR>
Şimdi Vim'i yeni bir belge ile yeniden başlatın, Insert moduna geçin ve '?'
İki şey olmalı:
1) "já não bênção" dizgisinin mesaj alanında gösterilmesi gerekir.
2) "já não bênção" dizesi tampon belleğe eklenmelidir
Mesaj alanında iyi görünecek, ancak aksanlı karakterlerden dolayı tamponda tümü karışacaktır.
Tcl'de 'encoding' komutu var ve foreach döngüsünde TÜM olası kodlamaları denedim, ancak hiçbiri çalışmıyor.
Bunun bir hata olduğuna ikna oldum, çünkü dize en azından arabellek ve mesaj alanında aynı olmalıdır. Tcl kodumda yanlış bir şey yapsam bile, hata her iki yerde de yansıtılmalıdır.
Birisi lütfen bunu onaylayabilir (onaylamaz) veya Vim sürümünü ve işletim sistemi / platformunu rapor edebilir mi?