vim-jp / issues

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

sign placeされた状態だとfolding部分がsignカラムに食い込んですごく不格好 #182

Closed LeafCage closed 12 years ago

LeafCage commented 12 years ago

signで新しく追加される2文字分のカラムのせいでフォールドが左に食い込むのが不格好すぎてsign placeを使うのを躊躇らってしまいます。

WinXP sp3 Vim7.3 (2010 Aug 15,compiled Dec 21 2011 13:00:12) パッチ1-382 (念のため香り屋最新版7.3.480で試してみましたが再現しました)


再現方法。 foldingを有効にする。(:set foldenable) 折り畳みを作成する。(キーバインドzf 移動コマンド) 折り畳みを閉じた状態にしておく。(折り畳み内でzc)

同じバッファ内で適当なsignを設置する。 ( :sign define test text=ts :sign place 999 line=任意の行番号 name=test buffer=現在のバッファ番号 ) signによって左にカラムが追加されて、行全体が2文字分右にずれる。 しかし折り畳み行のハイライトがずれないのでカラムに折り畳み行のハイライトが食い込んだ形になる。


’foldcolumn’を表示して、(:set foldcolumn=5) syntax highlightのFoldedの色を変更しているなら、 この不格好さが余計に際立ちます。

h-east commented 12 years ago

これは不具合報告?それとも改善要望? 「不格好すぎて」というのは何と比較されていますか?

簡単な再現手順を教えてください。あと確認したOSとVimバージョンを教えて下さい。

LeafCage commented 12 years ago

あっと。言葉足らずでしたね。申し訳ないです。 実用に支障はありませんが見た目が汚くなって不具合です。 FoldedがSignColumnに食い込まないでSignColumnの方が優位となる挙動を望んでいます。

環境と再現方法をトップに追記しました。

ynkdir commented 12 years ago

http://thread.gmane.org/gmane.editors.vim.devel/1361

Patch 6.1.278
Problem:    When using signs the line number of a closed fold doesn't line up
        with the other line numbers. (Kamil Burzynski)
Solution:   Insert two spaces for the sign column.
Files:      src/screen.c

http://thread.gmane.org/gmane.editors.vim.devel/6551

Patch 6.2.516
Problem:    The sign column cannot be seen, looks like there are two spaces
        before the text. (Rob Retter)
Solution:   Add the SignColumn highlight group.
Files:      runtime/doc/options.txt, runtime/doc/sign.txt, src/option.c,
        src/screen.c, src/syntax.c, src/vim.h

hl-SignColumn の追加が後なので修正忘れですかね。 一応動作確認お願いできますか。

diff -r bfdab0bcf4f5 src/screen.c
--- a/src/screen.c  Fri Mar 23 18:39:18 2012 +0100
+++ b/src/screen.c  Mon Mar 26 21:23:44 2012 +0900
@@ -2293,10 +2293,10 @@
        if (wp->w_p_rl)
        /* the line number isn't reversed */
        copy_text_attr(off + W_WIDTH(wp) - len - col,
-                   (char_u *)"  ", len, hl_attr(HLF_FL));
+                   (char_u *)"  ", len, hl_attr(HLF_SC));
        else
 # endif
-       copy_text_attr(off + col, (char_u *)"  ", len, hl_attr(HLF_FL));
+       copy_text_attr(off + col, (char_u *)"  ", len, hl_attr(HLF_SC));
        col += len;
    }
     }
h-east commented 12 years ago

@LeafCage 追記ありがとうございます。 @ynkdir GJ!

LeafCage commented 12 years ago

@ynkdir ありがとうございます。 コンパイルする方法が分かりませんので試していませんが、恐らくはそれで修正されているでしょう。

(issueに報告するのが初めてなので勝手が分かりませんがもう閉じてもいいのでしょうか?)

ynkdir commented 12 years ago

vim_dev に投げました。

解決さえすれば誰が閉じても構わないと思いますが 一般的には担当者的な人が閉じるのかなーと思います。 今回はとりあえず私が閉じてみます。

mattn commented 12 years ago

リンク付けときます。

https://groups.google.com/d/topic/vim_dev/cDzdYZLhDdQ/discussion

h-east commented 12 years ago

あっコメントボタン押すの忘れたすまそ。

まだクローズするタイミングではないので再オープンさせてもらいました。

Issueを閉じる手順 https://github.com/vim-jp/issues/wiki/Member

ynkdir commented 12 years ago

既出でした。意図的にそうしてるそうです。

http://groups.google.com/group/vim_dev/msg/cf0c5c29c4b6f414

Since we don't show signs for the folded region, I think it's good to also use the closed-fold color in the sign column.

mattn commented 12 years ago

ってことで 見づらい(私は確認してませんが)という意見を持って既存仕様を覆すなら残しましょう。 でない場合は閉じましょう。

LeafCage commented 12 years ago

意図的な仕様であるなら仕方ないです。 お騒がせしました。 xlose/wontfix