環境構築・零

環境構築のその先へ

Deniteの最新に対する所感

github.com

環境

・Vim8.1+Python3+mrkn256(カラースキーマ)

qiita.com

.vimrc

autocmd FileType denite call s:denite_my_settings()
function! s:denite_my_settings() abort
  nnoremap <silent><buffer><expr> <CR>
  \ denite#do_map('do_action')
  nnoremap <silent><buffer><expr> d
  \ denite#do_map('do_action', 'delete')
  nnoremap <silent><buffer><expr> p
  \ denite#do_map('do_action', 'preview')
  nnoremap <silent><buffer><expr> q
  \ denite#do_map('quit')
  nnoremap <silent><buffer><expr> i
  \ denite#do_map('open_filter_buffer')
  nnoremap <silent><buffer><expr> <Space>
  \ denite#do_map('toggle_select').'j'
endfunction

autocmd FileType denite-filter call s:denite_filter_my_setting()
function! s:denite_filter_my_setting() abort
  inoremap <silent><buffer><expr> <BS>    denite#do_map('move_up_path')
  inoremap <silent><buffer><expr> <C-c>   denite#do_map('quit')
  nnoremap <silent><buffer><expr> <C-c>   denite#do_map('quit')
endfunction

使い方

:Denite file/rec buffer

i (インサートモード)→検索したい文字列(ウインドウが増える)→補完リストが表示される→選択→バッファに移動→表示したいファイルを選択→ファイルへ移動

まだまだカスタムオプションがあるので改良は出来そう。シンプルで、いい感じなのはみた感じ明らか。

※ こういう操作もある。docには可能性が書かれている。

体験談。短め。

きっかけを作り、転職活動をしようと転職サイトを探した。Findy、プロシード、Green。なかでGreenに力を入れて、とりあえず最初にきた求人に応募して面談をしてみた。Wantedlyよりも好感触で実際、もしかしたらPHPを書くかもしれないと夢をみたほどだった。ニコニコ仮面め。C社は、役員会議で採用、不採用を決めるらしい。終始相手のペースで、こちらからどのような結果か打診をしても、判断はあちら側のような形で、時間を大幅にロストした。就活で必要なのはスピード。自分から攻撃的に進んで、積極性をみせないと進まない。渋る場合が多い。Greenを結局は、退会した。履歴書が悪かったわけじゃないと言われたので経歴をDisられることはなかった。面接時に、採用する気もなく相手を圧迫する行為というのはなるべくやめてほしい。相手も真剣にきているのだから。ハロワもそうだけど、だいたい決まることが少ない。IT系は年齢、年齢を積み重ねることでしか得られない資格もありながら、結局は経験。30代後半40代近いと転職活動はつらいものだ。

ビルド式

自前ビルド版

gist.github.com

使っているオプションにはメッセージを入れている。

Vim8.1の自前ビルド版。

興味がある人は参考に。

[deoplete] deoplete requires vim-hug-neovim-rpc plugin in Vim.

Vim(pythonx):ModuleNotFoundError: No module named 'neovim'

※Vimが連携するはずのpython3と繋がっていない。
pip3 install neovim, pip3 install pynvimが認識されていない原因がある。
Vimから:echo exepath('python3')で繋がっている先を確認後対処。



error: invalid command 'bdist_wheel'

※ wheelライブラリが入っていないので入れます。

pip install wheel



E370: ライブラリ libpython3.7m.a をロードできませんでした

pythonを使ったあとにpy3は使えません

Python3の接続先が間違っているため、ビルドオプションを見直す必要があります。
再ビルドするときは、レポジトリをクローンし直すのもいいかもしれません。

※ どれもVimとPython3、pip3でpynvimがきちんと接続されて
認識できるように環境構築されれば発生しません。
そうならない理由を開発者の方に
質問するまえに考えてみるのも一つの手です。

2次元配列のソートをRubyで書いてみた。

gist.github.com

課題は上記の通り、実装時にCSVを配列に型変換をしてメソッドチェーン、array型にしてメソッドチェーン、CSVに整形という形にしました。カラムを縦列で読み込めればまた方法は違うだろうし、テーブルとして取得したならさらに結果に近いものを書けたと思いつつ。uniqを使うと重複を消せると言うけども、これ2次元配列なんだよね。sliceで指定して削除も多様性がないと思いつつ。ただ、重複した配列はソートすると最後に1番目が並ぶ法則を見つけたのも事実。やりようによってはというやつ。やっていることは「1番目をソートして、重複している2番目を消す」です。

よき課題でした。

自作のプログラムで令和対応してみた。

新年号に対応することに失敗するのはポンコツぐらいですね。

ただ、私のは限定的なので更新要素はあります。

Pythonでsite-packageへPATHが通っていないときの対処

問題

:pythonx import neovim

module not found error no module named neovim

vim-hug-neovim-rpc vim(pythonx) traceback

failed executing pythonx import neovim

これがもしWindowsで発生していたら、環境変数にPYTHONPATHを作成し、

C:ドライブ直下にPython3を設置していると仮定。

C:\Python3\Lib\site-packages

を設定します。これで、pip3からインストールしたパッケージ群が呼ばれるようになります。

仮説

VisualStudio2019を入れたときにPythonパッケージなどをいれて衝突しました。おそらく、通常では遭遇しないと思います。遭遇したなら慌てずに、PYTHONPATHを環境変数に追加して、上記PATHを貼ってやりましょう。治る。

対処後

※ .vimフォルダのdeinキャッシュを消して、再度Vimを立ち上げると起動してますよ。

sqlite3.OperationalError: database is lockedを解決するには

sqlite3.OperationalError: database is locked

これが出現している間は、

インストールなどできないので、

yum install psmisc

※ fuserコマンドは入れられませんね

ポート番号
$ lsof -i -P | grep 8000
15502
15504
...

PIDをキル
$ kill -9 15502

なぜ、こんなことに?

yum update中にCtrl+Cを押して、強制終了したことでプロセスがキルできなかった。

これですよ、サーバ管理で起きたら参考に。

追記

ps aux | grep rails
or
ps aux | grep puma
kill -9 15502

起動中のrailsプロセスを探す、あれば切る。 railsはユーザ名がrailsのときにプロセスだけ残っていることがあった。 通常はpumaでデーモン化しているはず。

Copyright © 2007-2019 Takayuki Kamiyama. All Rights Reserved.