skkeleton
/kuuote/kuuote.iconさんが作ったDenopsで動くSKK
/kuuote/skkeleton
https://github.com/kuuote/dps-skkeleton
vim scriptとdenopsの学習がてらcode readingしてみたい
読んでみてわからないことがあれば/kuuote/kuuote.iconさんに聞いてみる
code:skkeleton.vim
function! s:getlinepos() abort
if mode() ==# 'i'
return getline('.'), col('.') - 2
else
return getcmdline(), getcmdpos() - 2
endif
endfunction
まずvimで関数を定義する方法からよくわからん
function! endfunctionというのを使うのか?
s:ってなに?
==#とは?
知らない関数
mode()
モード名を取得する関数だっていうことは推測できる
getline()
col()
getcmdline()
getcmdpos()
code:skkeleton.vim
function! skkeleton#get_henkan_str() abort
let line, idx = s:getlinepos()
let henkan_point = strridx(line, '▽', idx)
if henkan_point == -1
return ''
endif
return linehenkan_point : idx
endfunction
abortってなんぞ?
strridx()ってなにする関数だ?
根本的な疑問として、なぜこの部分だけvim scriptで記述しているのだろうか?
文字列処理程度ならdenoで完結すると思うのだが
2022-02-26 12:56:53 教えていただいた/icons/感謝.icon
/villagepump/@takker#62190bfc4bb2e20000fbfd87
deps.ts
https://deno.land/x/unknownutil@v1.0.0/mod.tsが重複している
JSDocで解説書きたい
#2022-02-26 12:56:58
#2021-07-31 01:34:28