vim-jp / issues

有志で既知のバグや要望を検討・管理し、オフィシャルへの還元をしていきます。
https://vim-jp.org/
341 stars 11 forks source link

全角文字が半角表示されてしまう #1429

Closed norikoba1968 closed 9 months ago

norikoba1968 commented 9 months ago

不具合の内容

gvim91で、全角文字が半角表示されてしまう。

現象・ログ

具体的には、■、→、▼などです。

再現手順

gvim91で、全角文字の■、→、▼を文字入力し、続けて何か文字を入力する。 TEST

期待動作

全角文字は、全角で表示されてほしい。

Vimのバージョン

gvim 9.1 2024 Jan 02, compiled Jan 2 2024 16:08:57)

OSの種類/ディストリ/バージョン

Windows 11 Home 23H2 22631.3155

使用している or 関係していそうなプラグイン

なし

その他

CUI版のVim は問題なく表示されています。

Shougo commented 9 months ago

set ambiwidth? の結果は何になっていますか。

norikoba1968 commented 9 months ago

singleです。

Shougo commented 9 months ago

具体的には、■、→、▼などです。

これは曖昧文字幅なので、ambiwidthがsingle に設定されていると半角表示になります。

Shougo commented 9 months ago

https://github.com/rbtnn/vim-ambiwidth

こちらを使えば問題は解決するのでは?と思います。

norikoba1968 commented 9 months ago

ありがとうございます。 ambiwidthのプラグインをインストールしたところ、無事表示できました。 でも、標準でこれらの文字が表示できないとしたら、他の人も困っているのではないでしょうか。

Shougo commented 9 months ago

困ってる人はおそらくいるのですが、困る人が限定的なので根本的解決は難しそうです

h-east commented 9 months ago

ん? 単純に ~/_vimrc に以下を書けば解決しますよ。

set ambiwidth=double
h-east commented 9 months ago

@norikoba1968 https://github.com/vim-jp/issues/issues/1429#issuecomment-1960003493 の確認をしていただいて、結果をこちらに反映していただけますか? (後からこのIssueを見た人が迷わないように)

mattn commented 9 months ago

ambiwitth だけでは解決しない問題があります。フォントにより■や→や▼、特に罫線が半角幅だったりもします。setcellwidths が入った経緯を以前、連ツイしましたので補足としてリンクを貼っておきます。

https://twitter.com/mattn_jp/status/1526718582264320000?t=ZYoJxHL2IoaPUg5AijNAwg&s=19

h-east commented 9 months ago

そうですね。fontによりますね。

ただ、少なくとも、set ambiwidth=double と以下のフォントの組み合わせで、私的には十数年問題は起きていません。 MS_ゴシック Osaka-等幅

質問内容が @mattn さんの書かれた問題まで踏まえて質問されていないようだったので、私はあのような回答をしました。