| Server IP : 217.160.0.212 / Your IP : 216.73.216.76 Web Server : Apache System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64 User : sws1073854427 ( 1073854427) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/share/emacs/28.2/lisp/play/ |
Upload File : |
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.
(byte-code "\300\301\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\317%\210\323\320!\210\310\324\312\313\325DD\326\316\327%\210\310\330\312\313\331DD\332\316\333%\207" [custom-declare-group decipher nil "Cryptanalyze monoalphabetic substitution ciphers." :prefix "decipher-" :group games custom-declare-variable decipher-force-uppercase funcall function #[0 "\300\207" [t] 1 #1=""] "Non-nil means to convert ciphertext to uppercase.\nnil means the case of the ciphertext is preserved.\nThis variable must be set before typing `\\[decipher]'." :type boolean decipher-ignore-spaces #[0 "\300\207" [nil] 1 #1#] "Non-nil means to ignore spaces and punctuation when counting digrams.\nYou should set this to nil if the cipher message is divided into words,\nor t if it is not.\nThis variable is buffer-local." make-variable-buffer-local decipher-undo-limit #[0 "\300\207" [5000] 1 #1#] "The maximum number of entries in the undo list.\nWhen the undo list exceeds this number, 100 entries are deleted from\nthe tail of the list." integer decipher-mode-hook #[0 "\300\207" [nil] 1 #1#] "Hook to run upon entry to decipher." hook] 8)
#@39 Font Lock keywords for Decipher mode.
(defvar decipher-font-lock-keywords '(("^:.*" . font-lock-keyword-face) ("^>.*" . font-lock-string-face) ("^%!.*" . font-lock-constant-face) ("^%.*" . font-lock-comment-face) ("\\`(\\([a-z]+\\) +\\([A-Z]+\\)" (1 font-lock-string-face) (2 font-lock-keyword-face)) ("^)\\([A-Z ]+\\)\\([a-z ]+\\)" (1 font-lock-keyword-face) (2 font-lock-string-face))) (#$ . 1263))
#@27 Keymap for Decipher mode.
(defvar decipher-mode-map (byte-code "\300 \301!\210\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\324#\210\302\325\322#\210\302\326\322#\210\327\211\330X\203^ \302\331!\324#\210\211T\262\202I \210\207" [make-keymap suppress-keymap define-key "A" decipher-show-alphabet "C" decipher-complete-alphabet "D" decipher-digram-list "F" decipher-frequency-count "M" decipher-make-checkpoint "N" decipher-adjacency-list "R" decipher-restore-checkpoint "U" decipher-undo " " decipher-keypress [remap undo] [remap advertised-undo] 97 122 vector] 6) (#$ . 1670))
#@33 Keymap for Decipher-Stats mode.
(defvar decipher-stats-mode-map (byte-code "\300 \301!\210\302\303\304#\210\302\305\306#\210\302\307\310#\210\207" [make-keymap suppress-keymap define-key "D" decipher-digram-list "F" decipher-frequency-count "N" decipher-adjacency-list] 5) (#$ . 2367))
#@29 Decipher mode syntax table.
(defvar decipher-mode-syntax-table (byte-code "\300 \301\211\302X\203 \303\304#\210\211T\262\202 \207" [make-syntax-table 48 57 modify-syntax-entry "_"] 6) (#$ . 2663))
(defvar decipher-alphabet nil nil)
(make-variable-buffer-local 'decipher-alphabet)
#@147 The buffer which displays statistics for this ciphertext.
Do not access this variable directly, use the function
`decipher-stats-buffer' instead.
(defvar decipher-stats-buffer nil (#$ . 2956))
(make-variable-buffer-local 'decipher-stats-buffer)
#@41 The number of entries in the undo list.
(defvar decipher-undo-list-size 0 (#$ . 3207))
(make-variable-buffer-local 'decipher-undo-list-size)
#@124 The undo list for this buffer.
Each element is either a cons cell (PLAIN-CHAR . CIPHER-CHAR) or a
list of such cons cells.
(defvar decipher-undo-list nil (#$ . 3355))
(make-variable-buffer-local 'decipher-undo-list)
(defvar decipher-pending-undo-list nil)
#@74 See the functions decipher-loop-with-breaks and decipher-loop-no-breaks.
(defvar decipher-char nil (#$ . 3617))
#@74 Format a buffer of ciphertext for cryptanalysis and enter Decipher mode.
(defalias 'decipher #[0 "db\210n\204\n \301c\210eb\210\302\303!\203 \304\305!\210\202Z \306c\210\307m\204S \302\310!\203. \307y\210\202 \311 \210l\203; \307y\210\202 \312c\210`\262\307y\210\203M \313`\"\210\314c\210\202 \210\315 \210\315 \210eb\210\316y\210\317 \207" [decipher-force-uppercase "\n" looking-at "^(abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ -\\*-decipher-\\*-\n)" message "Buffer is already formatted, entering Decipher mode..." "(abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ -*-decipher-*-\n)\n\n" nil "^%" delete-horizontal-space ":" upcase-region ">\n" delete-blank-lines 3 decipher-mode] 4 (#$ . 3735) nil])
(defvar decipher-mode-hook nil)
(byte-code "\300\301N\204\f \302\300\301\303#\210\304\305!\204 \302\305\306\307#\210\300\207" [decipher-mode-hook variable-documentation put "Hook run after entering Decipher mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp decipher-mode-map definition-name decipher-mode] 4)
(defvar decipher-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204 \303\301\302\304\305!#\210\306\307!\204 \303\307\310\311#\210\312\313 !\210\307\302N\204- \303\307\302\304\314!#\210\306\300!\204B \303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P \303\300\302\304\320!#\210\303\311\321\317#\207" [decipher-mode-abbrev-table decipher-mode-map variable-documentation put purecopy "Keymap for `decipher-mode'." boundp decipher-mode-syntax-table definition-name decipher-mode (lambda (#1=#:def-tmp-var) (defvar decipher-mode-syntax-table #1#)) make-syntax-table "Syntax table for `decipher-mode'." (lambda (#1#) (defvar decipher-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `decipher-mode'." derived-mode-parent] 5)
#@772 Major mode for decrypting monoalphabetic substitution ciphers.
Lower-case letters enter plaintext.
Upper-case letters are commands.
The buffer is made read-only so that normal Emacs commands cannot
modify it.
The most useful commands are:
\<decipher-mode-map>
\[decipher-digram-list] Display a list of all digrams & their frequency
\[decipher-frequency-count] Display the frequency of each ciphertext letter
\[decipher-adjacency-list] Show adjacency list for current letter (lists letters appearing next to it)
\[decipher-make-checkpoint] Save the current cipher alphabet (checkpoint)
\[decipher-restore-checkpoint] Restore a saved cipher alphabet (checkpoint)
This mode runs the hook `decipher-mode-hook', as the final or
penultimate step during initialization.
(defalias 'decipher-mode #[0 "\306\300!\210\307\310 \210\311\312\313!\210\314\f!\210
\307\315\203&