Server IP : 111.118.215.189 / Your IP : 3.128.31.200 Web Server : Apache System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 User : a1673wkz ( 2475) PHP Version : 8.2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /usr/share/emacs/24.3/lisp/play/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
;ELC ;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:06:35 2024 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/play/gomoku.el ;;; in Emacs version 24.3.1 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301\302\303\304\305\306\307&\210\310\311\302\312\313\314\306\301&\207" [custom-declare-group gomoku nil "Gomoku game between you and Emacs." :prefix "gomoku-" :group games custom-declare-variable gomoku-mode-hook "If non-nil, its value is called on entry to Gomoku mode.\nOne useful value to include is `turn-on-font-lock' to highlight the pieces." :type hook] 8) #@28 Name of the Gomoku buffer. (defconst gomoku-buffer-name "*Gomoku*" (#$ . 937)) #@57 Horizontal spacing between squares on the Gomoku board. (defconst gomoku-square-width 4 (#$ . 1022)) #@55 Vertical spacing between squares on the Gomoku board. (defconst gomoku-square-height 2 (#$ . 1129)) #@72 Number of columns between the Gomoku board and the side of the window. (defconst gomoku-x-offset 3 (#$ . 1235)) #@69 Number of lines between the Gomoku board and the top of the window. (defconst gomoku-y-offset 1 (#$ . 1353)) #@37 Local keymap to use in Gomoku mode. (defvar gomoku-mode-map (byte-code "\301 \302\303\304#\210\302\305\306#\210\302\307\310#\210\302\311\312#\210\302\313\314#\210\302\315\316#\210\302\317\320#\210\302\321\322#\210\302\323\304#\210\302\324\306#\210\302\325\310#\210\302\326\312#\210\302\327\314#\210\302\330\316#\210\302\331\320#\210\302\332\322#\210\302\333\320#\210\302\334\322#\210\302\335\336#\210\302\337\336#\210\302\340\336#\210\302\341\336#\210\302\342\336#\210\302\343\344#\210\302\345\346#\210\302\347\350#\210\302\351\336#\210\302\352\336#\210\302\353\354#\210\302\355\354#\210\302\356\354#\210\302\357\354#\210\302\360\361#\210\302\362\361#\210\302\363\322#\210\302\364\320#\210\302\365\366#\210\302\367\370#\210\302\371\344#\210\302\372\344#\210)\207" [map make-sparse-keymap define-key "y" gomoku-move-nw "u" gomoku-move-ne "b" gomoku-move-sw "n" gomoku-move-se "h" backward-char "l" forward-char "j" gomoku-move-down "k" gomoku-move-up [kp-7] [kp-9] [kp-1] [kp-3] [kp-4] [kp-6] [kp-2] [kp-8] "" "" "X" gomoku-human-plays "x" " " " " "" "" gomoku-human-takes-back "" gomoku-human-resigns "" gomoku-emacs-plays [kp-enter] [insert] [down-mouse-1] gomoku-click [drag-mouse-1] [mouse-1] [down-mouse-2] [mouse-2] gomoku-mouse-play [drag-mouse-2] [remap previous-line] [remap next-line] [remap move-beginning-of-line] gomoku-beginning-of-line [remap move-end-of-line] gomoku-end-of-line [remap undo] [remap advertised-undo]] 4) (#$ . 1468)) #@58 For making font-lock use the winner's face for the line. (defvar gomoku-emacs-won nil (#$ . 2974)) (byte-code "\300\301\302\303\304\305%\210\300\306\307\310\304\305%\207" [custom-declare-face gomoku-O ((((class color)) (:foreground "red" :weight bold))) "Face to use for Emacs's O." :group gomoku gomoku-X ((((class color)) (:foreground "green" :weight bold))) "Face to use for your X."] 6) #@29 Font lock rules for Gomoku. (defvar gomoku-font-lock-keywords '(("O" quote gomoku-O) ("X" quote gomoku-X) ("[-|/\\]" 0 (if gomoku-emacs-won 'gomoku-O 'gomoku-X))) (#$ . 3371)) (byte-code "\300\301\302\300\301\303\304##\210\300\301\305\306#\210\300\301\307\310#\210\311\312N\204$ \300\311\312\313\314!#\210\315\316!\2040 \300\316\317\301#\210\300\207" [put gomoku-mode front-sticky rear-nonsticky (intangible) intangible 1 mode-class special gomoku-mode-hook variable-documentation purecopy "Hook run when entering Gomoku mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp gomoku-mode-map definition-name] 7) (defvar gomoku-mode-map (make-sparse-keymap)) (byte-code "\300\301N\204 \302\300\301\303\304!#\210\305\306!\204 \302\306\307\310#\210\300\207" [gomoku-mode-map variable-documentation put purecopy "Keymap for `gomoku-mode'." boundp gomoku-mode-syntax-table definition-name gomoku-mode] 5) (defvar gomoku-mode-syntax-table (make-syntax-table)) (byte-code "\300\301N\204 \302\300\301\303\304!#\210\302\305\306\307#\207" [gomoku-mode-syntax-table variable-documentation put purecopy "Syntax table for `gomoku-mode'." gomoku-mode-abbrev-table definition-name gomoku-mode] 5) (defvar gomoku-mode-abbrev-table (progn (define-abbrev-table 'gomoku-mode-abbrev-table nil) gomoku-mode-abbrev-table)) (byte-code "\300\301N\204 \302\300\301\303\304!#\210\302\305\306\307#\207" [gomoku-mode-abbrev-table variable-documentation put purecopy "Abbrev table for `gomoku-mode'." gomoku-mode derived-mode-parent nil] 5) #@482 Major mode for playing Gomoku against Emacs. You and Emacs play in turn by marking a free square. You mark it with X and Emacs marks it with O. The winner is the first to get five contiguous marks horizontally, vertically or in diagonal. \<gomoku-mode-map> You play by moving the cursor over the square you choose and hitting \[gomoku-human-plays]. Other useful commands: \{gomoku-mode-map} This mode runs the hook `gomoku-mode-hook', as the final step during initialization. (defalias 'gomoku-mode #[nil "\306\300!\210\307\310 \210\311\312\313!\210\314\f!\210 \315 \210\306\316!\210\317\307)\320\321!\207" [delay-mode-hooks major-mode mode-name gomoku-mode-map gomoku-mode-syntax-table gomoku-mode-abbrev-table make-local-variable t kill-all-local-variables gomoku-mode "Gomoku" use-local-map set-syntax-table gomoku-display-statistics font-lock-defaults (gomoku-font-lock-keywords t) run-mode-hooks gomoku-mode-hook local-abbrev-table buffer-read-only] 2 (#$ . 4980) nil]) #@40 Number of columns on the Gomoku board. (defvar gomoku-board-width nil (#$ . 5976)) #@38 Number of lines on the Gomoku board. (defvar gomoku-board-height nil (#$ . 6065)) #@56 Vector recording the actual state of the Gomoku board. (defvar gomoku-board nil (#$ . 6153)) #@34 Length of `gomoku-board' vector. (defvar gomoku-vector-length nil (#$ . 6252)) #@47 After how many moves will Emacs offer a draw? (defvar gomoku-draw-limit nil (#$ . 6337)) #@69 Translate X, Y cartesian coords into the corresponding board index. (defalias 'gomoku-xy-to-index #[(x y) "\303 _\n#\207" [y gomoku-board-width x +] 4 (#$ . 6432)]) #@46 Return corresponding x-coord of board INDEX. (defalias 'gomoku-index-to-x #[(index) " T\246\207" [index gomoku-board-width] 2 (#$ . 6605)]) #@46 Return corresponding y-coord of board INDEX. (defalias 'gomoku-index-to-y #[(index) " T\245\207" [index gomoku-board-width] 2 (#$ . 6752)]) #@67 Create the `gomoku-board' vector and fill it with initial values. (defalias 'gomoku-init-board #[nil "\305\306\"\306S\fX\203# \307I\210 \n\307I\210T\nS\202\n *\306\211W\205; \307I\210\310\f\311#\211\202'