view leim/quail/cyril-jis.el @ 83167:69ebc75cb461

Implemented display ids for multiple emacsclients on the same tty. Plus assorted bugfixes. * lisp/frame.el (make-frame-on-display): Update doc. (make-frame): Handle display-id parameter. Update doc. (frames-on-display-list): Update for display ids. (framep-on-display): Ditto. (suspend-frame): Use display-name, not frame-tty-name. (selected-display): New function. * lisp/server.el (server-delete-client): Use delete-display, not delete-tty. (server-tty-live-p, server-handle-delete-tty): Removed. (server-handle-delete-frame): Delete tty clients, if needed. (server-process-filter): Set the display parameter, and use it when appropriate. (server-handle-suspend-tty): Use the display parameter. (server-start, server-unload-hook): Removed obsolete delete-tty hook. * lisp/talk.el (talk): Always use talk-add-display. (talk-add-tty-frame, talk-handle-delete-tty): Removed. (talk-handle-delete-frame): New function. (talk-add-display): Open a new frame only if parameter was not a frame. * src/dispextern.h (get_display, Fdisplay_tty_type): New prototypes. (Fframe_tty_type): Removed. * src/dispnew.c (init_display): Use Fdisplay_tty_type, not Fframe_tty_type. * src/frame.c (Qdisplay_id, Qdisplay_live_p): New symbols. (make_terminal_frame): Get display as a parameter. (Fmake_terminal_frame): Get/create display here; pass it to make_terminal_frame. (Fframe_display): New function. (Fdelete_frame): Stop if the hook deleted the frame. (syms_of_frame): Register new stuff. * src/frame.h (Qdisplay_id, Qdisplay_live_p, make_terminal_frame): Updated prototypes. * src/keyboard.c (interrupt_signal): Updated comment. * src/term.c (Vdelete_tty_after_functions): Removed variable. (Qframe_tty_name, Qframe_tty_type): Removed. (next_display_id): New var. (tty_ring_bell): Don't do anything on suspended frames. (Ftty_display_color_p, Ftty_display_color_cells): Doc update. (get_display): New function. (get_tty_display): Use it. (get_named_tty_display): Ignore suspended displays. (Fframe_tty_name): Renamed to Fdisplay_name. Handle all kinds of displays. (Fframe_tty_type): Renamed to Fdisplay_tty_type. (init_initial_display): Set display name. (term_init): Allow more displays on the same device. Set display name. (Fdelete_tty): Removed. (delete_tty): Don't run hooks. (create_display): Set display id. (delete_display): Free display name. (Fdelete_display, Fdisplay_live_p, Fdisplay_list): New functions. (Fsuspend_tty): Call hook with display id. Doc update. (Fresume_tty): Refuse to resume when there is already an active display on the same device. Call hook with display id. Doc update. (syms_of_term): Reflect above changes. * src/termhooks.h (struct display): Added `id' and `name' members. (DISPLAY_ACTIVE_P): New macro. * src/xfns.c (check_x_display_info): Handle display ids. (Fx_create_frame): Try to get display from `display-id' parameter. * src/xterm.c (x_term_init): Set display name. (x_delete_display): Handle the case when `font_table' is NULL. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-207
author Karoly Lorentey <lorentey@elte.hu>
date Sun, 04 Jul 2004 04:48:55 +0000
parents 695cf19ef79e
children 23a17af379b1 375f2633d815
line wrap: on
line source

;;; cyril-jis.el --- Quail package for inputting JISX0208 Cyrillic letters

;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
;; Licensed to the Free Software Foundation.

;; Keywords: multilingual, input method, Cyrillic

;; This file is part of GNU Emacs.

;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING.  If not, write to the
;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
;; Boston, MA 02111-1307, USA.

;;; Commentary:

;; This Quail package is for inputting Cyrillic letters of Japanese
;; character set JISX0208, not for inputting Cyrillic letters of
;; ISO-8859-5.  For the latter, use packages in quail/cyrillic.el.

;;; Code:

(quail-define-package
 "cyrillic-jis-russian" "Cyrillic" "$B'('+(B" nil
 "$B'+'8'5','&'/(B keyboard layout same as JCUKEN (JIS X0208.1983 encoding)"
 nil t t t t nil nil nil nil nil t)

;;  1! 2@ 3# 4" 5: 6, 7. 8* 9( 0) -_ =+ ,L!(B
;;   ,L9(B  ,LF(B  ,LC(B  ,L:(B  ,L5(B  ,L=(B  ,L3(B  ,LH(B  ,LI(B  ,L7(B  ,LE(B  ,Lj(B
;;    ,LD(B  ,LK(B  ,L2(B  ,L0(B  ,L?(B  ,L@(B  ,L>(B  ,L;(B  ,L4(B  ,L6(B  ,LM(B
;;     ,LO(B  ,LG(B  ,LA(B  ,L<(B  ,L8(B  ,LB(B  ,LL(B  ,L1(B  ,LN(B  /?

(quail-define-rules
 ("1" ?$B#1(B)
 ("2" ?$B#2(B)
 ("3" ?$B#3(B)
 ("4" ?$B#4(B)
 ("5" ?$B#5(B)
 ("6" ?$B#6(B)
 ("7" ?$B#7(B)
 ("8" ?$B#8(B)
 ("9" ?$B#9(B)
 ("0" ?$B#0(B)
 ("-" ?$B!](B)
 ("=" ?$B!a(B)
 ("`" ?$B'W(B)
 ("q" ?$B'[(B)
 ("w" ?$B'h(B)
 ("e" ?$B'e(B)
 ("r" ?$B'\(B)
 ("t" ?$B'V(B)
 ("y" ?$B'_(B)
 ("u" ?$B'T(B)
 ("i" ?$B'j(B)
 ("o" ?$B'k(B)
 ("p" ?$B'Y(B)
 ("[" ?$B'g(B)
 ("]" ?$B'l(B)
 ("a" ?$B'f(B)
 ("s" ?$B'm(B)
 ("d" ?$B'S(B)
 ("f" ?$B'Q(B)
 ("g" ?$B'a(B)
 ("h" ?$B'b(B)
 ("j" ?$B'`(B)
 ("k" ?$B'](B)
 ("l" ?$B'U(B)
 (";" ?$B'X(B)
 ("'" ?$B'o(B)
 ("\\" ?$B!@(B)
 ("z" ?$B'q(B)
 ("x" ?$B'i(B)
 ("c" ?$B'c(B)
 ("v" ?$B'^(B)
 ("b" ?$B'Z(B)
 ("n" ?$B'd(B)
 ("m" ?$B'n(B)
 ("," ?$B'R(B)
 ("." ?$B'p(B)
 ("/" ?$B!?(B)

 ("!" ?$B!*(B)
 ("@" ?$B!w(B)
 ("#" ?$B!t(B)
 ("$" ?$B!I(B)
 ("%" ?$B!'(B)
 ("^" ?$B!$(B)
 ("&" ?$B!%(B)
 ("*" ?$B!v(B)
 ("(" ?$B!J(B)
  (")" ?$B!K(B)
 ("_" ?$B!2(B)
 ("+" ?$B!\(B)
 ("~" ?$B''(B)
 ("Q" ?$B'+(B)
 ("W" ?$B'8(B)
 ("E" ?$B'5(B)
 ("R" ?$B',(B)
 ("T" ?$B'&(B)
 ("Y" ?$B'/(B)
 ("U" ?$B'$(B)
 ("I" ?$B':(B)
 ("O" ?$B';(B)
 ("P" ?$B')(B)
 ("{" ?$B'7(B)
 ("}" ?$B'<(B)
 ("A" ?$B'6(B)
 ("S" ?$B'=(B)
 ("D" ?$B'#(B)
 ("F" ?$B'!(B)
 ("G" ?$B'1(B)
 ("H" ?$B'2(B)
 ("J" ?$B'0(B)
 ("K" ?$B'-(B)
 ("L" ?$B'%(B)
 (":" ?$B'((B)
 ("\"" ?$B'?(B)
 ("|" ?$B!C(B)
 ("Z" ?$B'A(B)
 ("X" ?$B'9(B)
 ("C" ?$B'3(B)
 ("V" ?$B'.(B)
 ("B" ?$B'*(B)
 ("N" ?$B'4(B)
 ("M" ?$B'>(B)
 ("<" ?$B'"(B)
 (">" ?$B'@(B)
 ("?" ?$B!)(B))

;; Local Variables:
;; coding: iso-2022-7bit
;; End:

;;; arch-tag: 3a0cc2ac-de48-42fe-9e80-05d8aa6faa36
;;; cyril-jis.el ends here