[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:31394] tk8.0-ja の del キー動作の Debian ポリシー違反 ( パッチ添付しました。 )



菊地ともうします。
woodyを使わせていただいています。

submit@bugs.debian.or.jp
へバグ報告を送信しましたが、debian-users@debian.or.jp にも流れて来るはずと
思うのですが、流れて来ないので、念のために、debian-users@debian.or.jp に投
稿します。今回はパッチを添付しています。



tk8.0-jaを使うテキストエディターにおいて、delキーの動作が
back space動作になってしまいます。
この件に関して、
debian-users@debian.or.jp
のメーリングリストでアドバスをいただいて、

Debian ポリシー (Section 3.8) で、DEL キーの動作が定められていて、

`Delete'
    カーソルの右側の文字を消す。

となっているそうです。

ポリシー違反は Debian ではバグと考えられているそうですので、今回、バグ報告
をさせていただきました。

そして、その原因が
/usr/lib/tk8.0jp/kinput.tcl と /usr/lib/tk8.0jp/xim.tcl の中の

bind Text <Delete> {
    if {[%W tag nextrange sel 1.0 end] != ""} {
        %W delete sel.first sel.last
        tkTextSetCursor %W insert
    } else {
        tkTextSetCursor %W insert-1c
        %W delete insert
        %W see insert
    }
}

の部分にあり、
delキーの動作をDebianポリシーに従うようにするには、
下記のようにすることで、達成されることがわかりました。

bind Text <Delete> {
    if {[%W tag nextrange sel 1.0 end] != ""} {
        %W delete sel.first sel.last
        tkTextSetCursor %W insert
    } else {
        tkTextSetCursor %W insert
        %W delete insert
        %W see insert
    }
}

つまり、"insert-1c" -> "insert" です。

今回、パッチを作りましたので、添付します。
kinput.diff
xim.diff
上記です。
/usr/lib/tk8.0jp/kinput.tcl
と
/usr/lib/tk8.0jp/xim.tcl
に
当ててください。

--
菊地 white@xxxxxxxxxxxxxxxx




--- kinput.tcl.orig	Sun Dec 23 15:29:11 2001
+++ kinput.tcl	Sun Dec 23 15:30:51 2001
@@ -274,7 +274,7 @@
 	%W delete sel.first sel.last
 	tkTextSetCursor %W insert
     } else {
-	tkTextSetCursor %W insert-1c
+	tkTextSetCursor %W insert
 	%W delete insert
 	%W see insert
     }
--- xim.tcl.orig	Sun Dec 23 15:28:32 2001
+++ xim.tcl	Sun Dec 23 15:54:23 2001
@@ -371,7 +371,7 @@
 	%W delete sel.first sel.last
 	tkTextSetCursor %W insert
     } else {
-	tkTextSetCursor %W insert-1c
+	tkTextSetCursor %W insert
 	%W delete insert
 	%W see insert
     }