############################################################
#        Enhancement of picture mode			   #
############################################################

1. Enhancement of direction for inserting characters

Mule provides new direction wnw ene wsw ese for characters
which occupy more than one column.  Use the following keys
to specify these directions,

      (define-key picture-mode-map "\C-c~" 'picture-movement-wnw)
      (define-key picture-mode-map "\C-c\"" 'picture-movement-ene)
      (define-key picture-mode-map "\C-c?" 'picture-movement-wsw)
      (define-key picture-mode-map "\C-c|" 'picture-movement-ese)

Example: The difference of 'se' and 'ese' is:

s    e
 e     s
  -	 e
   d	   -
    i	     d
     r	       i
      e	    	 r
       c    	   e
	t   	     c
	 i  	       t
	  o 		 i
	   n		   o
	    		     n

2. New function

Mule provides self-insert-after-hook for those who want to
have their one self-insert-command.

self-insert-after-hook:
Hook to run when extended self insertion command exits.  Should take
two arguments START and END corresponding to character position.

And in picture-mode, Mule sets the function
picture-insert-after-hook to the hook.
picture-insert-after-hook will insert characters using new
function picture-insert-string, which can also be called
interactively by typing 'ctl-c k'.

picture-insert-string:
Insert STR one character by one in place of character previously
at the cursor while moving cursor in the direction you previously specified
with the commands picture-movement-right, picture-movement-up, etc.
Do C-h a  picture-movement  to see those commands.


#### Japanese text follows...

1. $BJ8;z$NA^F~J}8~$N3HD%(B

Emacs $B$G$O(B picture-mode $B$K$*$$$F$O#1J8;zA^F~$5$l$?8e$N%+!<%=(B
$B%k$N0\F0J}8~$r>e2<:81&<P$a$K;XDj$G$-$k!#<P$a$N;XDj$G$O=DJ}8~(B
$B2#J}8~$K$=$l$>$l#1%+%i%`!J9T!K0\F0$7$9$k$3$H$K$J$k!#<P$a;XDj(B
$B$N>uBV$O%b!<%I%i%$%s>e$N(B 'nw', 'ne', 'sw', 'se' $B$J$I$N%K!<%b(B
$B%K%C%/I=<($G<($5$l$k!#(B

Nemacs $B$G$OF|K\8lJ8;z$ODL>o$N%"%9%-!<J8;z$N#2G\$NJ8;zI}$r;}(B
$B$D$?$a!">e5-$K2C$(#2%+%i%`$H#19T<P$a$H$$$&;XDj$r2DG=$K$7!"(B'wnw',
'ene', 'wsw', 'ese' $B$N%K!<%b%K%C%/$rA}$d$7$?!#$^$?$3$l$i$r;X(B
$BDj$9$k$?$a$K?7$?$K0J2<$N%-!<%P%$%s%G%#%0$rDj5A$7$?!#(B

      (define-key picture-mode-map "\C-c~" 'picture-movement-wnw)
      (define-key picture-mode-map "\C-c\"" 'picture-movement-ene)
      (define-key picture-mode-map "\C-c?" 'picture-movement-wsw)
      (define-key picture-mode-map "\C-c|" 'picture-movement-ese)

$B0J2<$O(B 'se' $B$H(B 'ese' $B$N;XDj;~$N=hM}$N0c$$$NNc$G$"$k!#(B

s      	   e
 e	     s
  $B;X(B	       e
   $BDj(B            $B;X(B
    $B;~(B		   $BDj(B
     		     $B;~(B


2. $BF|K\8lF~NO$N$?$a$N=hM}(B

Emacs $B$N(B picture-mode $B$G$ODL>o$NJ8;z$OA4$F(B
picture-self-insert $B$H$$$&%3%^%s%I$K3d$jIU$1$i$l$F$$$k!#(B
Nemacs $B$G$O(B EGG $B;HMQ;~$K$O$3$l$i$rA4$F(B
egg-self-insert-command $B$K3d$jIU$1$k$3$H$K$h$j!"(BEGG $B$K$h$kF|(B
$BK\8lF~NO$,2DG=$K$J$C$F$$$k!#(BEGG $B$,J8;zNs$r3NDj$7$?8e$K8F$V(B
self-insert-after-hook $B$K$O(B picture-insert-after-hook $B$r3d$j(B
$BIU$1$F$"$j!"$3$N4X?t$,J8;zNs$NF~NO=hM}$r9T$J$&!#(B

picture-insert-after-hook:
Called as a hook after a string is inserted into the current buffer.
Two arguments BEGIN and END point the head and tail of just inserted string.

EGG $B0J30$NF|K\8lF~NOJ}<0(B (SKK $BEy(B) $B$rMQ$$$k>l9g$O!"(BC-c k $B$K%P(B
$B%$%s%I$5$l$?4X?t(B picture-insert-string $B$r<B9T$7!"%_%K%P%C%U%!(B
$B$+$iF|K\8lJ8;zNs$rFI$_9~$`I,MW$,$"$k!#(B

picture-insert-string:
Insert STR one character by one in place of character previously
at the cursor while moving cursor in the direction you previously specified
with the commands picture-movement-right, picture-movement-up, etc.
Do C-h a  picture-movement  to see those commands.
