Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

uim-fepもしくはvimのバグ 256色のcolorschemeで点滅する日本語とNeoVimへの移行

$
0
0

uim-fepもしくはvimのバグ 256色のcolorschemeで点滅する日本語とNeoVimへの移行

長らく更新していなかった。

時々,
- uim-fepとuim-anthyの使い方と設定方法
- fbtermの日本語表示.uim-fepとuim-anthyで日本語入力も.ついでに,vimの256色化も
- w3m(w3m-img)をfbterm対応にして,インライン画像表示.ついでにrangerのサムネイルも
この辺の記事をいいねしてくれる人がいる.

こんなマニアックなものを見てくれるとはうれしい.

今回はそんなマニアックなお話の続き.

環境

  • ArchLinux
  • st
  • uim
  • i3-wm (dwmから乗り換え)

(´・ω・) < そもそもなんでこんな問題発生するのか...

(´・ω・) <st(simple terminal)を使っているから

(´・ω・ ) < すごくいい端末エミュレータなんだけど....fcitxとかuim-ximが使えないのよ

(´・ω・) <この 辺話や環境についてはまた別の記事で

前提条件であるst上での日本語の入力(uim-fep)

なんだかんだでuim-ximとかfcitxを使ってX上で日本語入力をしていたが,
(´・ω・) が愛する端末エミュレータstではうまく動いてくれない.

なんと,入力した文字がウィンドウの真下に現れるのだ.
そして,エンターを押して決定するとピョコンと瞬間移動して,文字が入力される.
基本フルスクリーンなのにそんな文字が見えるとでも?

さらに悪いことに,長文を打ってエンターを押すと文字化け(おそらく制御文字として入力される)し,ものの見事に画面をぐちゃぐちゃにしてくれる.

(´・ω・) < 使い辛くてしかたがない

というわけで,普段のX上ではuim-ximを使い,stではuim-fepを使うようにしたかった.

( ちなみにstは公式ではXIMをサポートしているらしいのだが...
suckless.org st - simple terminal)

そこで,~/.xprofileには,次のように書く.
ポイントはuim-xim&を外しておくことだ.
そうしないと,st上でもuim-ximが動いてしまう.

~/.xprofile
export GTK_IM_MODULE='uim'
export QT_IM_MODULE='uim'   
#uim-xim&
export XMODIFIERS='@im=uim'

xtermとかurxvtだと普通にfcitxやuim-ximが使えるのだろうか?

日本語が点滅する

そして,上のように設定した上でstを起動し,

(´・ω・)< uim-fepッターン

と気持ちよく叩き,いそいそとvimを立ち上げる(´・ω・)

iを打ちctrl + spaceで日本語に切り替えカチャカチャと文字を打ちEnterを叩く(´・ω・)

そしてその顔がこうなる

( д) ゚ ゚

なんと,入力した文字が点滅し始めているではないか.

xtermやurxvtでuim-fepしても同じような事が起こる.
なのにどこにも情報が乗っていない!!!

\(^o^)/ < オワタ

で諦められるかい,
というわけで色々原因やらを調べてみた.

わかったこと

  • vimで256色のcolorschemeを使った場合のみ発生する
    • molokaiとかgruvboxとかはアウト
    • 標準colorschemeだと大丈夫
    • TERM=xtermTERM=screenだとmolokaiやgruvboxでも大丈夫(色はあれだが)
    • TERM=st-256colorTERM=xterm-256colorTERM=screen-256colorだとアウト
  • たまにvimを終了しても点滅が残り,bash(uim-fep)まで点滅を始める
    • exitでuim-fepを終了すると大丈夫
  • uim-fepのオプションによる微妙な違い(オプションが何を意味するかは割愛)
    • uim-fep -slだと,最初っから点滅している.
    • uim-fep -snだと,日本語を入力してEnterを押すと入力した文字が点滅
      • この点滅はctrl + Lでフラッシュするとなくなる

以上の事から,uim-fepとvimどっちかが悪いか,どっちも悪いかであるが,確信もないし,yay -G uimで引っ張ってきたコードは最初からmakepkgでコンパイルが通らないし...

でもまあ,uim-fepとvimの相性が悪いなら別のものを...

(´・ω・)< vi... いや NeoVimとかあったな.

vimからNeoVimへ

vimの代わりにNeoVimを入れた結果,まだたまに文字が点滅するが,vimに比べれば格段にまし.

設定ファイルの場所が変わるけど,ln -sで張り直してやれば今までのままでも使える.

ただし,viminfoはフォーマットに互換性がないみたい.(よく調べていないが)

(´・ω・) <このついでにNeoVimに移行しちゃおっか.

というわけで,vim使いからNeoVim使いになりました.

NeoVimへの文句

NeoVimでこの記事を書いているんだけど,顔文字の表示がおかしい

set ambiwidth=double

の設定をしているんだけど眉毛と目がうまく表示されず,妙につまっている.
さらに,カーソルの下の文字と実際に操作している文字がずれているせいで,
まったく思い通りに文字が打てない.
vimだと綺麗に写ったのにね.NeoVimだと設定の書き方が違うのかな?
これが今の不満.

(´・ω・)


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>