[前][次][番号順一覧][スレッド一覧]

sylpheed-jp:1049

From: Yasuzaki Masayoshi <hongo_yayoi@xxxxxxxxxx>
Date: Mon, 1 Oct 2001 20:59:42 +0900
Subject: [sylpheed-jp:01049] Ctrl-K で 1 行削除の gtk+ パッチ

はじめまして。

Sylpheedでメールを書くときCtrl-Kで改行が消えなくてやりにくかったので、
gtk+-1.2.8のパッチをつくりました(gtk+を改造するのは邪道かもしれませんが)。
これで、Ctrl-Kだけでどんどん消せるようになります。
ただしペーストは出来ないので注意してください。
消え方はEmacsで言えば(setq kill-whole-line nil)です。
Ctrl-Uの1行削除の方も改行が消えるようにしてあります。
よろしければ使ってみてください(自分の責任で)。

-----------以下パッチ------------
diff -uNr gtk+-1.2.8.org/gtk/gtktext.c gtk+-1.2.8/gtk/gtktext.c
--- gtk+-1.2.8.org/gtk/gtktext.c        Tue Feb  8 11:01:25 2000
+++ gtk+-1.2.8/gtk/gtktext.c    Wed Sep 12 15:35:14 2001
@@ -4308,13 +4308,28 @@
 gtk_text_delete_line (GtkText *text)
 {
   gtk_text_move_to_column (GTK_EDITABLE (text), 0);
-  gtk_text_kill_line (GTK_EDITABLE (text), 1);
+  if (GTK_TEXT_INDEX(text, GTK_EDITABLE (text)->current_pos) == LINE_DELIM)
+
+    {
+      gtk_text_kill_char (GTK_EDITABLE (text), 1);
+    }
+  else
+    {
+      gtk_text_kill_line (GTK_EDITABLE (text), 1);
+    }
 }
 
 static void
 gtk_text_delete_to_line_end (GtkText *text)
 {
-  gtk_text_kill_line (GTK_EDITABLE (text), 1);
+  if (GTK_TEXT_INDEX(text, GTK_EDITABLE (text)->current_pos) == LINE_DELIM)
+    {
+      gtk_text_kill_char (GTK_EDITABLE (text), 1);
+    }
+  else
+    {
+      gtk_text_kill_line (GTK_EDITABLE (text), 1);
+    }
 }
 
 static void
--------------------以上パッチ--------------------------

--
Yasuzaki



[前][次][番号順一覧][スレッド一覧]