sinshutu_kibotuの日記

大体、大抵、大半、備忘録

neovimの補完プラグインdeopleteが重い(快適設定にする)

はじめに

neovimにしてdeopleteを突っ込んだは良いけどなんか重くて使えん。。。ってなっていろいろいじった結果のまとめです。 結論から言いますと、auto_complete_delayを0に設定してくださいデフォルト設定が150になってます(現在:2017/1/27)

経緯

deopleteの設定どうするんだろ -> 公式とか導入系の記事を見る -> 大体exampleに

  let g:deoplete#enable_at_startup = 1

しか書いてなくてhook_sourceへ設定を突っ込んだりしてみたけど、とにかく入力が重くてなんでだろってなってました。 他の人の設定ファイルみたりしてたらauto_complete_delayとか他のオプションが設定されていてそれらをいじっていたら良い感じになりました。

快適設定ってタイトルなのに全然最適化みたいなことはしてないです(それ目的な人はすいません)

とりあえず、「deoplete 重い」で記事があまり引っかからなかったので同じ感じでdeoplete導入できてない人が解消できてくれればうれしいです。

単純に設定がおかしいなどの指摘があればバシバシお願いします。

deinでの設定

[[plugins]]
repo = 'Shougo/deoplete.nvim'
on_event = 'InsertCharPre'
hook_source = '''
  let g:deoplete#enable_at_startup = 1
  let g:deoplete#auto_complete_delay = 0
  let g:deoplete#auto_complete_start_length = 1
  let g:deoplete#enable_camel_case = 0
  let g:deoplete#enable_ignore_case = 0
  let g:deoplete#enable_refresh_always = 0
  let g:deoplete#enable_smart_case = 1
  let g:deoplete#file#enable_buffer_path = 1
  let g:deoplete#max_list = 10000
  inoremap <expr><tab> pumvisible() ? "\<C-n>" :
        \ neosnippet#expandable_or_jumpable() ?
        \    "\<Plug>(neosnippet_expand_or_jump)" : "\<tab>"
'''
on_i = 1

謝辞

zcheeさんの設定ファイル(init.vim)を参考にさせていただきました (人の設定ファイルみて書くの楽ですね・・・) github.com

deopleteの開発ありがとうございます (開発手伝えるようになりたい) GitHub - Shougo/deoplete.nvim: Dark powered asynchronous completion framework for neovim/Vim8

ArchLinuxにEgisonをインストール

はじめに

先ほどツイッターでEgisonって言語見つけてインストールしてみたがapt-get以外の方法があまり見当たらなかったのでそれのまとめ

www.egison.org

インストール方法

前提

haskellのHackageというパッケージシステムを使ってegisonが配布されているらしいのでhaskellがないといけない ただし、叩くコマンドはcabal

コマンド

haskellの環境とcabalをインストール

# pacman -S ghc cabal-install

cabalのパッケージリストを更新

$ cabal update

egisonをインストール $ cabal install egison

おわりに

cabal updateを忘れてパッケージないよって言われてちょっと戸惑ってしまった(ちゃんと読もうな)

ArchLinuxで音のが小さくなりすぎて困った話

原因と解決方法だけ先に

原因は、puleaudioをアンインストールしたため、pulseaudioによって書き換えられた設定ファイルが原因だった。 解決策としては、

PulseAudio/トラブルシューティング - ArchWiki

の 「Pulse が ALSA の設定を上書きする」 にもあるようにalsaの設定ファイルを上書きすること

以下のコードを実行すれば元に戻った。

$ alsactl -f /var/lib/alsa/asound.state restore

なにが起きたか

音がでなくなって、困っていろいろ調べた、 lspciやら、lsmodやら、aplayやら、speaker-testなど ってかspeaker-testで動いてるっぽいで他に調べるところも思い当たらず、ボーッと適当に音を流してたら何か聞こえる。 よくよく聞いたら、蚊の泣くような音量で音でてる!

結局何が原因なのかが分からず(ちょっと前にbluetoothのheadsetを試すのにpulseaudioを入れて抜いていた)、何となくpulseaudioのGUI設定に頼ろうとして入れてみたら爆音がでて耳が壊れそうになった。

pulseaudioで音量最大にしてもう一度pulseaudioをアンインストールとかしても元に戻らず、まぁ結局諸悪の根源が分かったので適当に調べてたどり着いたのが上記のurl、pulseaudioが勝手にalsaの設定ファイル上書きしてるなんて思いもしなかったよ・・・