neovimとlazy.nvimでskkeletonを使いたい

# はじめに

とりあえず、なぜそうしようと決めたかといいますと、chromebookdeのlinux環境をバックアップしてパワーウォッシュしたつもりが、バックアップファイル0kbでまったくバックアップされてなく。。。
最初から構築するならvimもよいが、せっかくなのでneovim使いたいじゃん！！

# neovimインストール
で、neovimをインストール
sudo apt install neovim
![Screenshot 2024-05-15 23.57.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211553/97a44345-7c66-4338-623f-ac1ec5cb002d.png)



古いバージョンだと最新のプラグインマネージャが使用出来ないみたい。
しょうがないので、ソースからコンパイルして最新のバージョンを使います！
![Screenshot 2024-05-16 21.59.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211553/bba6063b-1c13-5d0f-0849-97a73f014036.png)
最新すぎましたorz

再コンパイルしてようやく、neovim v0.9.5になりました。
skkeleton作者様やこれまでに導入された先人様の記事を読みつつ設定に明け暮れること4日間。
色々と分らないことだらけで悪戦苦闘し、どうにか導入する事が出来ました♪
![Screenshot 2024-05-19 09.25.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211553/55bb50e9-578d-dd4b-3946-a2c52bf73666.png)



辞書を読み込み変換も出来るが、変換候補も出欲しいんだけどなぁ。
しかし、自分にはこれが精一杯でございました。ごちそうさま。


# やはりおかわり
skkeletonが起動しているのかそのままでは分らないので、インジゲーターを導入しました。
これも四苦八苦して、どうにか導入しておしまい。              


# 補完に苦しむ
補完は。。。難しいです。ネット記事を読んでもlazy.nvimで入れている人が見付からなくて、
いたとしてもどのように入れたのかが分らない。
ネットで調べていくうちに、プラグインが足りてないような感じだったんで、プラグインのドキュメントを読み、作者様の記事を読み、読み、読み
あげくの果てに結果導入することができてよかったです。
![Screenshot 2024-05-22 20.21.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211553/90141074-2f88-3725-2380-de0127790738.png)
沖縄辞書も導入して表示もオッケイでした！

あと、vimmerな先人の方々、このような素晴らしいプラグインをありがとうございます。

自分が一番知りたかった所をのせておきます。
もっとスマートな方法があるかもしれませんが、教えてください。
※辞書ファイルは自分が置いているところのパスです。
~~~skkeleton.lua
return {
        {
        "vim-skk/skkeleton",
        dependencies = {"vim-denops/denops.vim",
                        "Shougo/ddc.vim"},
        config = function()
        vim.cmd([[ call skkeleton#config({
        \ 'globalDictionaries': ['~/.skk/SKK-JISYO.L', '~/.skk/SKK-JISYO.okinawa'],
        \ 'completionRankFile': '~/.skk/rank.json',
        \ 'eggLikeNewline': v:true,
        \ })]])
        vim.cmd([[ call ddc#custom#patch_global( 'sources', ['skkeleton'])]])
        vim.cmd([[ call ddc#custom#patch_global( 'sourceOptions', {
        \ '_': {
        \ 'matchers': ['matcher_head'],
        \ 'sorters': ['sorter_rank'],
        \ },
        \ 'skkeleton' : {
        \ 'mark': 'skkeleton',
        \ 'matchers': [],
        \ 'sorters': [],
        \ 'converters': [],
        \ 'isVolatile': v:true,
        \ 'minAutoCompleteLength': 1
        \ }})]])
        vim.cmd( [[call ddc#enable()]])
        vim.cmd([[ call ddc#custom#patch_global('ui', 'pum')]])
end
 },
}
~~~

~~~denops.lua
return {
        {
        "vim-denops/denops.vim", lazy = false,
        },
}
~~~

~~~ddc.lua
return {
        {
    "Shougo/ddc.vim",
    "Shougo/pum.vim",
    "Shougo/ddc-ui-pum"
   },
}
~~~

keymaps.luaに下記を追加
~~~keymaps.lua
vim.keymap.set({"i", "c"}, [[<C-j>]], [[<Plug>(skkeleton-toggle)]], { noremap = false }) vim.keymap.set({"i", "c"}, [[<C-n>]], "<cmd>call pum#map#insert_relative(+1)<CR>")
vim.keymap.set({"i", "c"}, [[<C-p>]], "<cmd>call pum#map#insert_relative(-1)<CR>")
vim.keymap.set({"i", "c"}, [[<C-y>]], "<cmd>call pum#map#confirm()<CR>")
vim.keymap.set({"i", "c"}, [[<C-e>]], "<cmd>call pum#map#cancel()<CR>")
vim.keymap.set({"i", "c"}, [[<PageDown>]], "<cmd>call pum#map#insert_relative_page(+1)<CR>")
vim.keymap.set({"i", "c"}, [[<PageUp>]], "<cmd>call pum#map#insert_relative_page(-1)<CR>")
~~~


~~~indicater.lua
return{
      {
      "delphinus/skkeleton_indicator.nvim",
       config = function()
       vim.cmd([[ lua require("skkeleton_indicator").setup{}]])
       
end
},
}
~~~