403Webshell
Server IP : 217.160.0.212  /  Your IP : 216.73.216.71
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/obsolete/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/emacs/28.2/lisp/obsolete/vip.elc
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



(custom-declare-group 'vip nil "A VI Package for GNU Emacs." :prefix "vip-" :group 'emulations)
#@51 Local map used in Emacs mode.  (Buffer-specific.)
(defvar vip-emacs-local-map nil (#$ . 180))
#@60 Local map used in insert command mode.  (Buffer-specific.)
(defvar vip-insert-local-map nil (#$ . 280))
(byte-code "\300\301!\210\300\302!\207" [make-variable-buffer-local vip-emacs-local-map vip-insert-local-map] 2)
#@56 Remember insert point as a marker.  (Buffer-specific.)
(defvar vip-insert-point nil (#$ . 503))
(byte-code "\300\301\302 \"\210\303\301!\207" [set-default vip-insert-point make-marker make-variable-buffer-local] 3)
#@53 Remember com point as a marker.  (Buffer-specific.)
(defvar vip-com-point nil (#$ . 724))
(byte-code "\300\301\302 \"\210\303\301!\207" [set-default vip-com-point make-marker make-variable-buffer-local] 3)
#@63 Current mode.  One of `emacs-mode', `vi-mode', `insert-mode'.
(defvar vip-current-mode nil (#$ . 936))
(byte-code "\300\301!\210\302\301\303\"\207" [make-variable-buffer-local vip-current-mode set-default emacs-mode] 3)
#@68 Value of mode-line-buffer-identification in Emacs mode within vip.
(defvar vip-emacs-mode-line-buffer-identification nil (#$ . 1162))
(byte-code "\300\301!\210\302\301\303\"\207" [make-variable-buffer-local vip-emacs-mode-line-buffer-identification set-default ("Emacs: %17b")] 3)
#@84 vip-current-major-mode is the major-mode vi considers it is now.
(buffer specific)
(defvar vip-current-major-mode nil (#$ . 1449))
(make-variable-buffer-local 'vip-current-major-mode)
#@43 Last shell command executed by ! command.
(defvar vip-last-shell-com nil (#$ . 1639))
#@54 Name of register to store deleted or yanked strings.
(defvar vip-use-register nil (#$ . 1731))
#@76 How to reexecute last destructive command.  Value is list (M-COM VAL COM).
(defvar vip-d-com nil (#$ . 1832))
(byte-code "\300\301\302\303\304DD\305\306\307%\210\300\310\302\303\311DD\312\306\313%\207" [custom-declare-variable vip-shift-width funcall function #[0 "\300\207" [8] 1 #1=""] "The number of columns shifted by > and < command." :type integer vip-re-replace #[0 "\300\207" [nil] 1 #1#] "If t then do regexp replace, if nil then do string replace." boolean] 6)
#@49 The character remembered by the vi "r" command.
(defvar vip-d-char nil (#$ . 2309))
#@25 For use by ";" command.
(defvar vip-f-char nil (#$ . 2399))
#@25 For use by "." command.
(defvar vip-F-char nil (#$ . 2465))
#@25 For use by ";" command.
(defvar vip-f-forward nil (#$ . 2531))
#@25 For use by ";" command.
(defvar vip-f-offset nil (#$ . 2600))
(byte-code "\300\301\302\303\304DD\305\306\307%\210\300\310\302\303\311DD\312\306\307%\207" [custom-declare-variable vip-search-wrap-around funcall function #[0 "\300\207" [t] 1 #1=""] "If t, search wraps around." :type boolean vip-re-search #[0 "\300\207" [nil] 1 #1#] "If t, search is reg-exp search, otherwise vanilla search."] 6)
#@25 Last vip search string.
(defvar vip-s-string nil (#$ . 3002))
#@26 If t, search is forward.
(defvar vip-s-forward nil (#$ . 3070))
(byte-code "\300\301\302\303\304DD\305\306\307%\210\300\310\302\303\311DD\312\306\307%\210\300\313\302\303\314DD\315\306\307%\210\300\316\302\303\317DD\320\306\307%\207" [custom-declare-variable vip-case-fold-search funcall function #[0 "\300\207" [nil] 1 #1=""] "If t, search ignores cases." :type boolean vip-re-query-replace #[0 "\300\207" [nil] 1 #1#] "If t then do regexp replace, if nil then do string replace." vip-open-with-indent #[0 "\300\207" [nil] 1 #1#] "If t, indent when open a new line." vip-help-in-insert-mode #[0 "\300\207" [nil] 1 #1#] "If t then C-h is bound to help-command in insert mode.\nIf nil then it is bound to `delete-backward-char'."] 6)
#@45 String inserted at the beginning of region.
(defvar vip-quote-string "> " (#$ . 3809))
(defvar vip-tags-file-name "TAGS")
(defvar vip-inhibit-startup-message nil)
#@40 Filename used as startup file for vip.
(defvar vip-startup-file (locate-user-emacs-file "vip" ".vip") (#$ . 3978))
(defvar vip-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\305#\210\301\323\324#\210\301\325\326#\210\301\327\330#\210\301\331\332#\210\301\333\334#\210\301\335\336#\210\301\337\340#\210\301\341\305#\210\301\342\315#\210\301\343\344#\210\301\345\344#\210\301\346\344#\210\301\347\350#\210\301\351\352#\210\301\353\354#\210\301\355\356#\210\301\357\360#\210\301\361\362#\210\301\363\364#\210\301\365\366#\210\301\367\370#\210\301\371\372#\210\301\373\374#\210\301\375\376#\210\301\377\201@#\210\301\201A\201B#\210\301\201C\201B#\210\301\201D\201B#\210\301\201E\201B#\210\301\201F\201B#\210\301\201G\201B#\210\301\201H\201B#\210\301\201I\201B#\210\301\201J\201B#\210\301\201K\201L#\210\301\201M\201N#\210\301\201O\344#\210\301\201P\344#\210\301\201Q\344#\210\301\201R\201S#\210\301\201T\354#\210\301\201U\201V#\210\301\201W\201X#\210\301\201Y\201Z#\210\301\201[\201\\#\210\301\201]\201^#\210\301\201_\201`#\210\301\201a\201b#\210\301\201c\201d#\210\301\201e\201f#\210\301\201g\201h#\210\301\201i\201j#\210\301\201k\201l#\210\301\201m\201n#\210\301\201o\201p#\210\301\201q\201r#\210\301\201s\201t#\210\301\201u\201v#\210\301\201w\201x#\210\301\201y\201z#\210\301\201{\201|#\210\301\201}\354#\210\301\201~\201#\210\301\201\200\201\201#\210\301\201\202\201\203#\210\301\201\204\201\205#\210\301\201\206\201\207#\210\301\201\210\354#\210\301\201\211\201\212#\210\301\201\213\354#\210\301\201\214\201\215#\210\301\201\216\354#\210\301\201\217\201\220#\210\301\201\221\201\222#\210\301\201\223\201\224#\210\301\201\225\344#\210\301\201\226\344#\210\301\201\227\201\230#\210\301\201\231\201\232#\210\301\201\233\201\234#\210\301\201\235\201\236#\210\301\201\237\201\240#\210\301\201\241\201\242#\210\301\201\243\201\244#\210\301\201\245\201\246#\210\301\201\247\201\250#\210\301\201\251\201\252#\210\301\201\253\201\254#\210\301\201\255\201\256#\210\301\201\257\354#\210\301\201\260\201\261#\210\301\201\262\201\263#\210\301\201\264\201\265#\210\301\201\266\201\267#\210\301\201\270\201\271#\210\301\201\272\201\273#\210\301\201\274\201\275#\210\301\201\276\344#\210\301\201\277\201\300#\210\301\201\301\201\302#\210\301\201\303\201\304#\210\301\201\305\201\300#\210\301\201\306\201\302#\210\301\201\307\201\304#\210\301\201\310\201\311#\210\301\201\312\201\313#\210\301\201\314\201\315#\210\301\201\316\354#\210\301\201\317\201\320#\210\207" [make-keymap define-key "" beginning-of-line "" vip-scroll-back "" vip-ctl-c "" vip-scroll-up "" vip-scroll-up-one "" vip-scroll "" vip-keyboard-quit "" help-command "
" "" vip-other-window "" vip-open-line-at-point "" vip-scroll-down "" vip-ctl-x "" vip-scroll-down-one "" vip-change-mode-to-emacs "" vip-ESC [33554464] " " "!" vip-command-argument "\"" "#" "$" vip-goto-eol "%" vip-paren-match "&" vip-nil "'" vip-goto-mark-and-skip-white "(" vip-backward-sentence ")" vip-forward-sentence "*" call-last-kbd-macro "+" vip-next-line-at-bol "," vip-repeat-find-opposite "-" vip-previous-line-at-bol "." vip-repeat "/" vip-search-forward "0" vip-beginning-of-line "1" vip-digit-argument "2" "3" "4" "5" "6" "7" "8" "9" ":" vip-ex ";" vip-repeat-find "<" "=" ">" "?" vip-search-backward "@" "A" vip-Append "B" vip-backward-Word "C" vip-ctl-c-equivalent "D" vip-kill-line "E" vip-end-of-Word "F" vip-find-char-backward "G" vip-goto-line "H" vip-window-top "I" vip-Insert "J" vip-join-lines "K" vip-kill-buffer "L" vip-window-bottom "M" vip-window-middle "N" vip-search-Next "O" vip-Open-line "P" vip-Put-back "Q" vip-query-replace "R" vip-replace-string "S" vip-switch-to-buffer-other-window "T" vip-goto-char-backward "U" "V" vip-find-file-other-window "W" vip-forward-Word "X" vip-ctl-x-equivalent "Y" vip-yank-line "ZZ" save-buffers-kill-emacs "[" "\\" vip-escape-to-emacs "]" "^" vip-bol-and-skip-white "_" "`" vip-goto-mark "a" vip-append "b" vip-backward-word "c" "d" "e" vip-end-of-word "f" vip-find-char-forward "g" vip-info-on-file "h" vip-backward-char "i" vip-insert "j" vip-next-line "k" vip-previous-line "l" vip-forward-char "m" vip-mark-point "n" vip-search-next "o" vip-open-line "p" vip-put-back "q" "r" vip-replace-char "s" vip-switch-to-buffer "t" vip-goto-char-forward "u" vip-undo "v" vip-find-file "w" vip-forward-word "x" vip-delete-char "y" "zH" vip-line-to-top "zM" vip-line-to-middle "zL" vip-line-to-bottom "z
" "z." "z-" "{" vip-backward-paragraph "|" vip-goto-col "}" vip-forward-paragraph "~" "" vip-delete-backward-char] 5))
(defalias 'vip-version #[0 "\300\301!\207" [message "VIP version 3.5 of September 15, 1987"] 2 nil nil])
#@66 Set up bindings for C-x 7 and C-z that are useful for VIP users.
(defalias 'vip-setup #[0 "\301\302\303#\210\304\305\306\"\207" [ctl-x-map define-key "7" vip-buffer-in-two-windows global-set-key "" vip-change-mode-to-vi] 4 (#$ . 9006)])
#@57 (COUNT BODY) Execute BODY COUNT times.

(fn COUNT BODY)
(defalias 'vip-loop '(macro . #[514 "\300\301DC\302\303\304BBBE\207" [let count while (> count 0) ((setq count (1- count)))] 8 (#$ . 9251)]))
#@111 Set mark at LOCATION (point, by default) and push old mark on mark ring.
No message.

(fn &optional LOCATION)
(defalias 'vip-push-mark-silent #[256 "\302\303!\203#\304\305 !B\211G	V\203#	\233@\306\211\223\210	S\233\306\241\210\307\206)`!\207" [mark-ring mark-ring-max mark t copy-marker mark-marker nil set-mark] 5 (#$ . 9458)])
#@31 Go to ARG's column.

(fn ARG)
(defalias 'vip-goto-col #[257 "\301!\302!\212\303\210iTV\203\304\305!\210)\211\203`\303\223\210\306 \210Su\210\211\205/\307\310#\207" [vip-com-point vip-p-val vip-getcom nil error "" beginning-of-line vip-execute-com vip-goto-col] 7 (#$ . 9801) "P"])
#@12 

(fn MAP)
(defalias 'vip-copy-keymap #[257 "\211\204\300 \207\301!\207" [make-sparse-keymap copy-keymap] 3 (#$ . 10101)])
#@86 Change mode to NEW-MODE---either emacs-mode, vi-mode, or insert-mode.

(fn NEW-MODE)
(defalias 'vip-change-mode #[257 "\211=\206\207\211\306\267\202\203\307=\203\310`	\"\210\311 \210\202'\312 \313\312 !\314\315!\210\316!\210\202\203	`\317\223\210\320=\203K\312 \313\312 !\202O\313\n!\314\321!\210\316
!\210\322
\323\324#\210\322
\325\326#\210\322
\327\203o\330\202p\331#\210\322
\332\333#\210\202\203\314\334!\210\316\n!\210\211\335 \207" [vip-current-mode vip-insert-point vip-emacs-local-map mode-line-buffer-identification vip-emacs-mode-line-buffer-identification vip-insert-local-map #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (vi-mode 12 insert-mode 51 emacs-mode 123)) insert-mode vip-copy-region-as-kill vip-repeat-insert-command current-local-map vip-copy-keymap vip-change-mode-line "Vi:   " use-local-map nil emacs-mode "Insert" define-key "" vip-change-mode-to-vi "" vip-ESC "" help-command delete-backward-char "" vip-delete-backward-word "Emacs:" force-mode-line-update vip-mode-map vip-help-in-insert-mode] 5 (#$ . 10233)])
#@88 If BEG and END do not belong to the same buffer, it copies empty region.

(fn BEG END)
(defalias 'vip-copy-region-as-kill #[514 "\3001\n\301\"0\207\210\301\211\"\207" [(error) copy-region-as-kill] 5 (#$ . 11352)])
#@130 Assuming that the mode line format contains the string "Emacs:", this
function replaces the string by "Vi:   " etc.

(fn STRING)
(defalias 'vip-change-mode-line #[257 "\211\302\230\203\n\202\211\303PC\211\207" [vip-emacs-mode-line-buffer-identification mode-line-buffer-identification "Emacs:" " %17b"] 3 (#$ . 11577)])
#@30 Turn on VIP emulation of VI.
(defalias 'vip-mode #[0 "\204?\302\303!\210\304 \210\305c\210eb\210\306\307!\2035r\310\311	!!q\210db\210\312c\210\313 \210\314p!\210)\315\316!\210\317\320!\210\314p!\210\315\321!\210\322\323 \207" [vip-inhibit-startup-message vip-startup-file switch-to-buffer "VIP Startup Message" erase-buffer "VIP is a Vi emulation package for GNU Emacs.  VIP provides most Vi commands\nincluding Ex commands.  VIP is however different from Vi in several points.\nYou can get more information on VIP by:\n    1.  Typing `M-x info' and selecting menu item \"vip\".\n    2.  Typing `C-h k' followed by a key whose description you want.\n    3.  Printing VIP manual which can be found as GNU/man/vip.texinfo\n    4.  Printing VIP Reference Card which can be found as GNU/etc/vipcard.tex\n\nThis startup message appears whenever you load VIP unless you type `y' now.\nType `n' to quit this window for now.\n" y-or-n-p "Inhibit VIP startup message? " find-file-noselect substitute-in-file-name "\n(setq vip-inhibit-startup-message t)\n" save-buffer kill-buffer message "VIP startup message inhibited." sit-for 2 "" t vip-change-mode-to-vi] 3 (#$ . 11908) nil])
#@25 Change mode to vi mode.
(defalias 'vip-change-mode-to-vi #[0 "\300\301!\207" [vip-change-mode vi-mode] 2 (#$ . 13089) nil])
#@29 Change mode to insert mode.
(defalias 'vip-change-mode-to-insert #[0 "\300\301!\207" [vip-change-mode insert-mode] 2 (#$ . 13219) nil])
#@28 Change mode to Emacs mode.
(defalias 'vip-change-mode-to-emacs #[0 "\300\301!\207" [vip-change-mode emacs-mode] 2 (#$ . 13361) nil])
#@205 Escape to Emacs mode for one Emacs command.
ARG is used as the prefix value for the executed command.  If
EVENTS is a list of events, which become the beginning of the command.

(fn ARG &optional EVENTS)
(defalias 'vip-escape-to-emacs #[513 "\303\304 \203\f\305\"\306\n!\210\307\310\"\216\311\312\303!!\262)\313	\"\210\303\211\207" [unread-command-events prefix-arg vip-emacs-local-map nil current-local-map append use-local-map make-closure #[0 "\301\300!\207" [V0 use-local-map] 2] key-binding read-key-sequence command-execute] 7 (#$ . 13501) "P"])
#@49 Print CONDITIONS as a message.

(fn CONDITIONS)
(defalias 'vip-message-conditions #[257 "\211@A\211\204\300\301\"\210\202\300\302\303!#\210\304 \207" [message "%s" "%s %s" prin1-to-string ding] 8 (#$ . 14070)])
#@42 Emulate ESC key in Emacs mode.

(fn ARG)
(defalias 'vip-ESC #[257 "\300\301\"\207" [vip-escape-to-emacs (27)] 4 (#$ . 14295) "P"])
#@42 Emulate C-c key in Emacs mode.

(fn ARG)
(defalias 'vip-ctl-c #[257 "\300\301\"\207" [vip-escape-to-emacs (3)] 4 (#$ . 14433) "P"])
#@42 Emulate C-x key in Emacs mode.

(fn ARG)
(defalias 'vip-ctl-x #[257 "\300\301\"\207" [vip-escape-to-emacs (24)] 4 (#$ . 14572) "P"])
#@42 Emulate C-h key in Emacs mode.

(fn ARG)
(defalias 'vip-ctl-h #[257 "\300\301\"\207" [vip-escape-to-emacs (8)] 4 (#$ . 14712) "P"])
#@156 Compute numeric prefix arg value.  Invoked by CHAR.  VALUE is the value
obtained so far, and COM is the command part obtained so far.

(fn CHAR VALUE COM)
(defalias 'vip-prefix-arg-value #[771 "\302Y\203%\303X\203%\247\203\202\304\305_\302Z\\\262\306 \262\202\211\203/B\307U\203@\310!\210\306 \262\202/	B\211\207" [prefix-arg unread-command-events 48 57 0 10 read-char 85 vip-describe-arg] 6 (#$ . 14852)])
#@54 Vi operator as prefix argument.

(fn CHAR VALUE COM)
(defalias 'vip-prefix-arg-com #[771 "\303\211\203\364\304U\204G\305U\204G\306U\204G\307U\204G\310U\204G\311U\204G\312U\204G\313U\204G\314U\204G\315U\204G\316U\203\364\203f\313U\204W\316U\203[\317\320!\210B\262\321\262\202\307U\204r\312U\203\262\322 \262\321\262\202\313U\203\225\323\322 \\\262\322 \262\321\262\202\310U\204\241\311U\203\271\262\322 \262U\203\263B\262\321\262\202\316U\203\352\322 \324X\203\315\211\325X\204\331\326X\203\336\211\327X\203\336\211\202\342\317\320!\210\322 \262\210\202\262\322 \262\202\210\211:\204B\330U\203\331	!\210\322 \262\202\376\nB\211\207\211@\314U\204#\211@\315U\203@\211@AB\314U\2038\332	!\210\202<\333	!\210\321\211\207\204H\334\202I\262\321\211\335\267\202\200\336\337B!\207\336\340B!\207\341 \207\336\342B!\207\336\310B!\207\336\311B!\207\336\307B!\207\336\312B!\207\317\320!\207" [vip-use-register prefix-arg unread-command-events t 99 100 121 33 60 62 61 35 114 82 34 error "" nil read-char 128 65 122 49 57 85 vip-describe-arg vip-region vip-Region 1 #s(hash-table size 8 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ((99 . 99) 339 (100 . 100) 345 (100 . 121) 351 (121 . 121) 354 (60 . 60) 360 (62 . 62) 366 (33 . 33) 372 (61 . 61) 378)) vip-line 67 68 vip-yank-defun 89] 7 (#$ . 15293)])
#@12 

(fn ARG)
(defalias 'vip-describe-arg #[257 "\300\211\301!\262\302!\262\204\211\204\303\304!\207\303\305\"\207\211\204&\303\306\"\207\303\307#\207" [nil vip-P-val vip-getcom message "Value is nil, and command is nil." "Value is nil, and command is %c." "Value is %d, and command is nil." "Value is %d, and command is %c."] 7 (#$ . 16733)])
#@56 Begin numeric argument for the next command.

(fn ARG)
(defalias 'vip-digit-argument #[257 "\301\302:\205\nA#\207" [last-command-event vip-prefix-arg-value nil] 5 (#$ . 17094) "P"])
#@51 Accept a motion command as an argument.

(fn ARG)
(defalias 'vip-command-argument #[257 "\3021E\303\204\304\202$:\203@\202$\247\203!\202$\305\306!\204,\304\202B:\2036A\202B\247\203?\304\202B\305\306!#0\207\210\304\307\310\304\"\207" [last-command-event vip-use-register (quit) vip-prefix-arg-com nil error "Strange arg" signal quit] 6 (#$ . 17286) "P"])
#@50 Get value part of prefix-argument ARG.

(fn ARG)
(defalias 'vip-p-val #[257 "\211\204\300\207\211:\203\211@\204\300\207\211@\207\207" [1] 2 (#$ . 17672)])
#@50 Get value part of prefix-argument ARG.

(fn ARG)
(defalias 'vip-P-val #[257 "\211:\203\211@\207\207" [] 2 (#$ . 17839)])
#@48 Get com part of prefix-argument ARG.

(fn ARG)
(defalias 'vip-getcom #[257 "\211\204\300\207\211:\203\211A\207\300\207" [nil] 2 (#$ . 17968)])
#@62 Get com part of prefix-argument ARG and modify it.

(fn ARG)
(defalias 'vip-getCom #[257 "\300!\211\301\267\207\302\207\303\207\304\207\207" [vip-getcom #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (99 7 100 9 121 11)) 67 68 89] 4 (#$ . 18121)])
#@122 Append region to text in register REG.
START and END are buffer positions indicating what to append.

(fn REG START END)
(defalias 'vip-append-to-register #[771 "\300\301!\206	\302{P\"\207" [set-register get-register ""] 8 (#$ . 18415)])
#@132 (M-COM VAL COM)  Execute command COM. The list (M-COM VAL COM) is set
to vip-d-com for later use by vip-repeat

(fn M-COM VAL COM)
(defalias 'vip-execute-com #[771 "\203\223\306U\203\307	`\"\210\202\223\310U\203!\311	`\"\210\202\223\312U\204-\313U\203\217\212\314	!\210\315\316 `\"\210\203s\317X\203S\320X\203S\321\316 `\322$\210\202q\323X\203k\324X\203k\325\326\\\316 `#\210\202q\322\327\330!\210\322\316 `|\210)\331\332!\210\312U\203\211\333 \210\202\223\334 \210\202\223\335U\203\340\203\316\317X\203\257\320X\203\257\321	`\322$\210\202\314\323X\203\306\324X\203\306\325\326\\	`#\210\202\314\322\327\330!\210\322\n\336=\205\325\337\337	`\"\210\336\202\223\340U\203I\212\314	!\210\315\316 `\"\210\203,\317X\203\f\320X\203\f\321\316 `\322$\210\202*\323X\203$\324X\203$\325\326\\\316 `#\210\202*\322\327\330!\210\322\n\341=\2053\337\337\316 `\"\210\342=\203B\341)\343 \210\202\223\344U\203\225\203\210\317X\203i\320X\203i\321	`\322$\210\202\206\323X\203\200\324X\203\200\325\326\\	`#\210\202\206\322\327\330!\210\322\322\345	`\"\210	b\210\202\223\346U\203\360\212\314	!\210\315\316 `\"\210\203\341\317X\203\301\320X\203\301\321\316 `\322$\210\202\337\323X\203\331\324X\203\331\325\326\\\316 `#\210\202\337\322\327\330!\210\322\322\345\316 `\"\210)	b\210\202\223\347U\204\374\350U\203\"\212\314	!\210\315\316 `\"\210\351\316 `\347U\203\352\353!\211\202\f\354\211%\210)\202\223\355U\203H\212\314	!\210\315\316 `\"\210\316 `V\203=\356 \210\357\316 `\322#\210)\202\223\360U\203h\212\314	!\210\315\316 `\"\210\361\316 `
[#\210)	b\210\202\223\362U\203\207\212\314	!\210\315\316 `\"\210\361\316 `
#\210)	b\210\202\223\363Y\203\223\364\363Z!\210\306U\204\247\312U\204\247\347U\203\254[\202\255F\2115\207" [vip-use-register vip-com-point last-command this-command vip-last-shell-com vip-shift-width 99 vip-change -99 vip-change-subr 67 -67 set-mark vip-enlarge-region mark 97 122 copy-to-register nil 65 90 vip-append-to-register 32 error "" open-line 1 vip-change-mode-to-insert yank 100 d-command kill-region 68 D-command vip-line back-to-indentation 121 copy-region-as-kill 89 33 -33 shell-command-on-region vip-read-string "!" t 61 exchange-point-and-mark indent-region 60 indent-rigidly 62 128 vip-special-prefix-com vip-d-com] 10 (#$ . 18665)])
#@266 (ARG)  Re-execute last destructive command.  vip-d-com has the form
(COM ARG CH REG), where COM is the command to be re-executed, ARG is the
argument for COM, CH is a flag for repeat, and REG is optional and if exists
is the name of the register for COM.

(fn ARG)
(defalias 'vip-repeat #[257 "\303=\203	\304 \207	@\305!	AA@\306	8\204	A@\262\204&\307\310!\210\211B!\207" [last-command vip-d-com vip-use-register vip-undo vip-undo-more vip-P-val 3 error "No previous command to repeat"] 8 (#$ . 21071) "P"])
#@78 This command is invoked interactively by the key sequence #<char>

(fn CHAR)
(defalias 'vip-special-prefix-com #[257 "\211\301U\203\302`^`]\"\207\211\303U\203\304`^`]\"\207\211\305U\203+\306!\210\307 \207\211\310U\2038\306!\210\311 \207\211\312U\205B\313`\"\207" [vip-com-point 99 downcase-region 67 upcase-region 103 set-mark vip-global-execute 113 vip-quote-region 115 ispell-region] 5 (#$ . 21597)])
#@23 Undo previous change.
(defalias 'vip-undo #[0 "\301\302!\210\303 \210\304\305!\210\306\211\207" [this-command message "undo!" undo-start undo-more 2 vip-undo] 2 (#$ . 22020) nil])
#@36 Continue undoing previous changes.
(defalias 'vip-undo-more #[0 "\301\302!\210\303\304!\210\305\211\207" [this-command message "undo more!" undo-more 1 vip-undo] 2 (#$ . 22207)])
#@12 

(fn STR)
(defalias 'vip-string-tail #[257 "\211?\206\211\300\230?\205\211\301\302O\207" ["" 1 nil] 4 (#$ . 22393)])
(defalias 'vip-yank-defun #[0 "\300 \210\301`\302 \"\207" [mark-defun copy-region-as-kill mark] 3])
#@51 Enlarge region between BEG and END.

(fn BEG END)
(defalias 'vip-enlarge-region #[514 "W\203b\210\300!\210\202\211b\210\300!\210\301 \210\302 \210m\203%n\204)\303\304!\210\301 \210V\2054\302 \207" [set-mark beginning-of-line exchange-point-and-mark next-line 1] 4 (#$ . 22621)])
#@55 Call last keyboard macro for each line in the region.
(defalias 'vip-global-execute #[0 "`\300 V\203\n\301 \210\302 \210\303 \210`\300 W\205#\304y\210\302 \210\303 \210\202\207" [mark exchange-point-and-mark beginning-of-line call-last-kbd-macro 1] 2 (#$ . 22920)])
#@97 Quote region by inserting the user supplied string at the beginning of
each line in the region.
(defalias 'vip-quote-region #[0 "\301\302\303\"!\211\304\230\203\202\211\262\305`\306 \"\210`\306 V\203$\307 \210c\210\310 \210\311y\210`\306 W\205Dn\205Dc\210\310 \210\311y\210\202-\207" [vip-quote-string vip-read-string format "quote string (default %s): " "" vip-enlarge-region mark exchange-point-and-mark beginning-of-line 1] 4 (#$ . 23196)])
#@55 Check if the string ends with a newline.

(fn STRING)
(defalias 'vip-end-with-a-newline-p #[257 "\211\300\230\206
\211GSH\301U\207" ["" 10] 3 (#$ . 23660)])
#@30 

(fn PROMPT &optional INIT)
(defalias 'vip-read-string #[513 "\302!\303\304\305#\210\303\306\307#\210\303\310\311#\210\312\3131'\314\"\211\2620\210\202/\210	\315\316\312\"\210	\207" [minibuffer-local-map vip-save-minibuffer-local-map copy-keymap define-key "" backward-char "" backward-word "" exit-minibuffer nil (quit) read-string signal quit] 6 (#$ . 23825)])
#@182 This function is called when mode changes from insertion mode to
vi command mode.  It will repeat the insertion command if original insertion
command was invoked with argument > 1.
(defalias 'vip-repeat-insert-command #[0 "@A@\211\205\211\301V\205S\302E\303\304!\210\302E\211\207" [vip-d-com 1 114 vip-repeat nil] 5 (#$ . 24211)])
#@12 

(fn ARG)
(defalias 'vip-insert #[257 "\301!\302!\303\304E\211\203!\211\305V\205 \306 \210\211S\262\202\207\307 \207" [vip-d-com vip-p-val vip-getcom vip-insert 114 0 yank vip-change-mode-to-insert] 6 (#$ . 24560) "P"])
#@31 Append after point.

(fn ARG)
(defalias 'vip-append #[257 "\301!\302!\303\304El\204\305u\210\211\304=\203*\211\306V\205)\307 \210\211S\262\202\207\310 \207" [vip-d-com vip-p-val vip-getcom vip-append 114 nil 0 yank vip-change-mode-to-insert] 6 (#$ . 24797) "P"])
#@34 Append at end of line.

(fn ARG)
(defalias 'vip-Append #[257 "\301!\302!\303\304E\305\210\211\304=\203&\211\306V\205%\307 \210\211S\262\202\207\310 \207" [vip-d-com vip-p-val vip-getcom vip-Append 114 nil 0 yank vip-change-mode-to-insert] 6 (#$ . 25078) "P"])
#@42 Insert before first non-white.

(fn ARG)
(defalias 'vip-Insert #[257 "\301!\302!\303\304E\305 \210\211\304=\203&\211\306V\205%\307 \210\211S\262\202\207\310 \207" [vip-d-com vip-p-val vip-getcom vip-Insert 114 back-to-indentation 0 yank vip-change-mode-to-insert] 6 (#$ . 25355) "P"])
#@28 Open line below.

(fn ARG)
(defalias 'vip-open-line #[257 "\302!\303!\304\305E\306 \305=\2033\211\307V\2052\310\210\311\312!\210	\203(j\210\313 \210\211S\262\202\207\310\210\311\312!\210	\203A\211j\210\314 \207" [vip-d-com vip-open-with-indent vip-p-val vip-getcom vip-open-line 114 current-indentation 0 nil newline 1 yank vip-change-mode-to-insert] 7 (#$ . 25656) "P"])
#@28 Open line above.

(fn ARG)
(defalias 'vip-Open-line #[257 "\302!\303!\304\305E\306 \305=\2033\211\307V\2052\310 \210\311\312!\210	\203(j\210\313 \210\211S\262\202\207\310 \210\311\312!\210	\203A\211j\210\314 \207" [vip-d-com vip-open-with-indent vip-p-val vip-getcom vip-Open-line 114 current-indentation 0 beginning-of-line open-line 1 yank vip-change-mode-to-insert] 7 (#$ . 26050) "P"])
#@31 Open line at point.

(fn ARG)
(defalias 'vip-open-line-at-point #[257 "\301!\302!\303\304E\211\304=\203'\211\305V\205&\306\307!\210\310 \210\211S\262\202\207\306\307!\210\311 \207" [vip-d-com vip-p-val vip-getcom vip-open-line-at-point 114 0 open-line 1 yank vip-change-mode-to-insert] 6 (#$ . 26460) "P"])
#@34 Substitute characters.

(fn ARG)
(defalias 'vip-substitute #[257 "\301!\302!\212\303`!\210u\210\211\304=\203\305\306 `\"\210\202#\307\306 `\"\210)\310\304E\211\207" [vip-d-com vip-p-val vip-getcom set-mark 114 vip-change-subr mark vip-change vip-substitute] 6 (#$ . 26783) "P"])
#@29 Substitute lines.

(fn ARG)
(defalias 'vip-substitute-line #[257 "\300\301B!\207" [vip-line 67] 4 (#$ . 27076) "p"])
#@12 

(fn ARG)
(defalias 'vip-line #[257 "\211@A`\301\223\210\302S!\210\303\304#\207" [vip-com-point nil next-line vip-execute-com vip-line] 7 (#$ . 27200)])
#@42 Yank ARG lines (in vi's sense)

(fn ARG)
(defalias 'vip-yank-line #[257 "\300!\301\302B!\207" [vip-p-val vip-line 89] 5 (#$ . 27365) "P"])
#@12 

(fn ARG)
(defalias 'vip-region #[257 "\301!\302!`\303\223\210\304 \210\305\306#\207" [vip-com-point vip-P-val vip-getcom nil exchange-point-and-mark vip-execute-com vip-region] 7 (#$ . 27512) "P"])
#@12 

(fn ARG)
(defalias 'vip-Region #[257 "\301!\302!`\303\223\210\304 \210\305\306#\207" [vip-com-point vip-P-val vip-getCom nil exchange-point-and-mark vip-execute-com vip-Region] 7 (#$ . 27723) "P"])
#@66 Replace the following ARG chars by the character read.

(fn ARG)
(defalias 'vip-replace-char #[257 "\302!\303!\304\305E\306\305=\203	\202\307 \"\207" [vip-d-com vip-d-char vip-p-val vip-getcom vip-replace-char 114 vip-replace-char-subr read-char] 6 (#$ . 27934) "P"])
#@17 

(fn CHAR ARG)
(defalias 'vip-replace-char-subr #[514 "\301\302\"\210\211\303V\203\211\202\211[\211\303V\203#c\210\211S\262\202\210\211\206)\304[u\207" [vip-d-char delete-char t 0 1] 5 (#$ . 28218)])
#@152 Replace string.  If you supply null string as the string to be replaced,
the query replace mode will toggle between string replace and regexp replace.
(defalias 'vip-replace-string #[0 "\301\302\203\n\303\202\304!\262\211\305\230\203$?\306\307\203!\310\202\"\311\"\207\203>\312\301\313#\205G\314\302\315\316\"!\301\211#\210\202(\317\302\315\320\"!\"\207" [vip-re-replace nil vip-read-string "Replace regexp: " "Replace string: " "" message "Replace mode changed to %s." "regexp replace" "string replace" re-search-forward t replace-match format "Replace regexp \"%s\" with: " replace-string "Replace \"%s\" with: "] 7 (#$ . 28439) nil])
#@116 Move point right ARG characters (left if ARG negative).On reaching end
of buffer, stop and signal error.

(fn ARG)
(defalias 'vip-forward-char #[257 "\301!\302!\211\203`\303\223\210u\210\211\205\304\305#\207" [vip-com-point vip-p-val vip-getcom nil vip-execute-com vip-forward-char] 7 (#$ . 29102) "P"])
#@124 Move point left ARG characters (right if ARG negative).  On reaching
beginning of buffer, stop and signal error.

(fn ARG)
(defalias 'vip-backward-char #[257 "\301!\302!\211\203`\303\223\210\206\304[u\210\211\205 \305\306#\207" [vip-com-point vip-p-val vip-getcom nil 1 vip-execute-com vip-backward-char] 7 (#$ . 29423) "P"])
#@25 Forward word.

(fn ARG)
(defalias 'vip-forward-word #[257 "\301!\302!\211\203`\303\223\210v\210\304\303w\210\211\205G\211\305U\204&\211\306U\203,\307v\210\310v\210\211\311U\2048\211\312U\203B\307v\210\310v\210\313\303w\210\314\315#\207" [vip-com-point vip-p-val vip-getcom nil " 	\n" 99 -99 -1 1 100 121 " 	" vip-execute-com vip-forward-word] 7 (#$ . 29766) "P"])
#@46 Move point to end of current word.

(fn ARG)
(defalias 'vip-end-of-word #[257 "\301!\302!\211\203`\303\223\210\303u\210v\210\304u\210\211\205$\303u\210\305\306#\207" [vip-com-point vip-p-val vip-getcom nil -1 vip-execute-com vip-end-of-word] 7 (#$ . 30149) "P"])
#@26 Backward word.

(fn ARG)
(defalias 'vip-backward-word #[257 "\301!\302!\211\203`\303\223\210\206\304[v\210\211\205 \305\306#\207" [vip-com-point vip-p-val vip-getcom nil 1 vip-execute-com vip-backward-word] 7 (#$ . 30427) "P"])
#@54 Forward word delimited by white character.

(fn ARG)
(defalias 'vip-forward-Word #[257 "\301!\302!\211\203`\303\223\210\304\305\303\306$\210\211\205G\211\307U\204&\211\310U\203,\311v\210\312v\210\211\313U\2048\211\314U\203B\311v\210\312v\210\315\303w\210\316\317#\207" [vip-com-point vip-p-val vip-getcom nil re-search-forward "[^ 	\n]*[ 	\n]+" t 99 -99 -1 1 100 121 " 	" vip-execute-com vip-forward-Word] 8 (#$ . 30672) "P"])
#@69 Move forward to end of word delimited by white character.

(fn ARG)
(defalias 'vip-end-of-Word #[257 "\301!\302!\211\203`\303\223\210\303u\210\304\305\303\306$\203\307u\210\211\205*\303u\210\310\311#\207" [vip-com-point vip-p-val vip-getcom nil re-search-forward "[^ 	\n]+" t -1 vip-execute-com vip-end-of-Word] 8 (#$ . 31118) "P"])
#@55 Backward word delimited by white character.

(fn ARG)
(defalias 'vip-backward-Word #[257 "\301!\302!\211\203`\303\223\210\304\305\303\306$\203\303u\210\202!eb\210\211\205*\307\310#\207" [vip-com-point vip-p-val vip-getcom nil re-search-backward "[ 	\n]+[^ 	\n]+" t vip-execute-com vip-backward-Word] 8 (#$ . 31468) "P"])
#@36 Go to beginning of line.

(fn ARG)
(defalias 'vip-beginning-of-line #[257 "\301!\302!\211\203`\303\223\210\304!\210\211\205\305\306#\207" [vip-com-point vip-p-val vip-getcom nil beginning-of-line vip-execute-com vip-beginning-of-line] 7 (#$ . 31807) "P"])
#@59 Beginning of line at first non-white character.

(fn ARG)
(defalias 'vip-bol-and-skip-white #[257 "\301!\302!\211\203`\303\223\210\304 \210\211\205\305\306#\207" [vip-com-point vip-p-val vip-getcom nil back-to-indentation vip-execute-com vip-bol-and-skip-white] 7 (#$ . 32079) "P"])
#@30 Go to end of line.

(fn ARG)
(defalias 'vip-goto-eol #[257 "\301!\302!\211\203`\303\223\210\210\211\205\304\305#\207" [vip-com-point vip-p-val vip-getcom nil vip-execute-com vip-goto-eol] 7 (#$ . 32377) "P"])
#@28 Go to next line.

(fn ARG)
(defalias 'vip-next-line #[257 "\302!\303!\211\203`\304\223\210\305!\210\306\211\205\307\310#\207" [vip-com-point this-command vip-p-val vip-getCom nil line-move next-line vip-execute-com vip-next-line] 7 (#$ . 32603) "P"])
#@43 Next line at beginning of line.

(fn ARG)
(defalias 'vip-next-line-at-bol #[257 "\301!\302!\211\203`\303\223\210\304!\210\305 \210\211\205\306\307#\207" [vip-com-point vip-p-val vip-getCom nil next-line back-to-indentation vip-execute-com vip-next-line-at-bol] 7 (#$ . 32871) "P"])
#@32 Go to previous line.

(fn ARG)
(defalias 'vip-previous-line #[257 "\302!\303!\211\203`\304\223\210\305[!\210\306\211\205\307\310#\207" [vip-com-point this-command vip-p-val vip-getCom nil next-line previous-line vip-execute-com vip-previous-line] 7 (#$ . 33169) "P"])
#@47 Previous line at beginning of line.

(fn ARG)
(defalias 'vip-previous-line-at-bol #[257 "\301!\302!\211\203`\303\223\210\304[!\210\305 \210\211\205 \306\307#\207" [vip-com-point vip-p-val vip-getCom nil next-line back-to-indentation vip-execute-com vip-previous-line] 7 (#$ . 33454) "P"])
#@34 Change to end of line.

(fn ARG)
(defalias 'vip-change-to-eol #[257 "\300\301B!\207" [vip-goto-eol 99] 4 (#$ . 33758) "P"])
#@24 Delete line.

(fn ARG)
(defalias 'vip-kill-line #[257 "\300\301B!\207" [vip-goto-eol 100] 4 (#$ . 33889) "P"])
#@63 Go to ARG's line.  Without ARG go to end of buffer.

(fn ARG)
(defalias 'vip-goto-line #[257 "\301!\302!`\303\223\210\304`!\210\204db\210\202 eb\210Sy\210\305 \210\211\205,\306\307#\207" [vip-com-point vip-P-val vip-getCom nil set-mark back-to-indentation vip-execute-com vip-goto-line] 7 (#$ . 34007) "P"])
#@184 Find ARG's occurrence of CHAR on the current line.  If FORWARD then
search is forward, otherwise backward.  OFFSET is used to adjust point
after search.

(fn ARG CHAR FORWARD OFFSET)
(defalias 'vip-find-char #[1028 "\203\202\n[\301\212\214\302V\203+l\203\303\304!\202`\305\306!\210\307 \210`}\210\202<n\2035\303\304!\2026`\307 \210`}\210\302V\203IeTb\210\202Ldb\210\301\310\311!\301\302$\210)`\262\302V\203h\211dU\204t\302W\203x\211eU\203x\303\304!\210*\211\302V\203\214\203\210\312\202\225\313\202\225\203\224\306\202\225\302\\b\207" [case-fold-search nil 0 error "" next-line 1 beginning-of-line search-forward char-to-string -2 -1] 11 (#$ . 34333)])
#@225 Find char on the line.  If called interactively read the char to find
from the terminal, and if called from vip-repeat, the char last used is
used.  This behavior is controlled by the sign of prefix numeric value.

(fn ARG)
(defalias 'vip-find-char-forward #[257 "\305!\306!\307V\203\310 \311\312\202[\262\211\203#`\312\223\210\313\305!\307V\2031\2022\f\311\312$\210[\262\211\205H\312u\210\314\315#\207" [vip-f-char vip-f-forward vip-f-offset vip-com-point vip-F-char vip-p-val vip-getcom 0 read-char t nil vip-find-char vip-execute-com vip-find-char-forward] 8 (#$ . 35031) "P"])
#@46 Go up to char ARG forward on line.

(fn ARG)
(defalias 'vip-goto-char-forward #[257 "\305!\306!\307V\203\310 \311\211\202[\262\211\203#`\312\223\210\313\305!\307V\2031\2022\f\311\211$\210[\262\211\205H\312u\210\314\315#\207" [vip-f-char vip-f-forward vip-f-offset vip-com-point vip-F-char vip-p-val vip-getcom 0 read-char t nil vip-find-char vip-execute-com vip-goto-char-forward] 9 (#$ . 35644) "P"])
#@43 Find char ARG on line backward.

(fn ARG)
(defalias 'vip-find-char-backward #[257 "\305!\306!\307V\203\310 \311\211\202[\262\211\203#`\311\223\210\312\305!\307V\2031\2022\f\311\211$\210[\262\211\205E\313\314#\207" [vip-f-char vip-f-forward vip-f-offset vip-com-point vip-F-char vip-p-val vip-getcom 0 read-char nil vip-find-char vip-execute-com vip-find-char-backward] 9 (#$ . 36078) "P"])
#@47 Go up to char ARG backward on line.

(fn ARG)
(defalias 'vip-goto-char-backward #[257 "\305!\306!\307V\203\310 \311\312\202[\262\211\203#`\311\223\210\313\305!\307V\2031\2022\f\311\312$\210[\262\211\205E\314\315#\207" [vip-f-char vip-f-forward vip-f-offset vip-com-point vip-F-char vip-p-val vip-getcom 0 read-char nil t vip-find-char vip-execute-com vip-goto-char-backward] 8 (#$ . 36500) "P"])
#@41 Repeat previous find command.

(fn ARG)
(defalias 'vip-repeat-find #[257 "\304!\305!\211\203`\306\223\210\307	\n$\210\211\205&\n\203!\306u\210\310\311#\207" [vip-com-point vip-f-char vip-f-forward vip-f-offset vip-p-val vip-getcom nil vip-find-char vip-execute-com vip-repeat-find] 8 (#$ . 36928) "P"])
#@67 Repeat previous find command in the opposite direction.

(fn ARG)
(defalias 'vip-repeat-find-opposite #[257 "\304!\305!\211\203`\306\223\210\307	\n?$\210\211\205'\n\203\"\306u\210\310\311#\207" [vip-com-point vip-f-char vip-f-forward vip-f-offset vip-p-val vip-getcom nil vip-find-char vip-execute-com vip-repeat-find-opposite] 8 (#$ . 37248) "P"])
#@35 Switch to other window.

(fn ARG)
(defalias 'vip-other-window #[257 "\301!\210\302=?\206\303p!\304\230\206\305 \207" [vip-current-mode other-window emacs-mode buffer-name " *Minibuf-1*" vip-change-mode-to-vi] 3 (#$ . 37614) "p"])
#@35 Go to home window line.

(fn ARG)
(defalias 'vip-window-top #[257 "\301!\302!\211\203`\303\223\210\304S!\210\211\205\305\306#\207" [vip-com-point vip-p-val vip-getCom nil move-to-window-line vip-execute-com vip-window-top] 7 (#$ . 37856) "P"])
#@37 Go to middle window line.

(fn ARG)
(defalias 'vip-window-middle #[257 "\301!\302!\211\203`\303\223\210\304\305 S\306\245S\\!\210\211\205#\307\310#\207" [vip-com-point vip-p-val vip-getCom nil move-to-window-line window-height 2 vip-execute-com vip-window-middle] 7 (#$ . 38116) "P"])
#@35 Go to last window line.

(fn ARG)
(defalias 'vip-window-bottom #[257 "\301!\302!\211\203`\303\223\210\304[!\210\211\205\305\306#\207" [vip-com-point vip-p-val vip-getCom nil move-to-window-line vip-execute-com vip-window-bottom] 7 (#$ . 38416) "P"])
#@46 Put current line on the home line.

(fn ARG)
(defalias 'vip-line-to-top #[257 "\300S!\207" [recenter] 3 (#$ . 38682) "p"])
#@48 Put current line on the middle line.

(fn ARG)
(defalias 'vip-line-to-middle #[257 "\300S\301 S\302\245\\!\207" [recenter window-height 2] 5 (#$ . 38812) "p"])
#@46 Put current line on the last line.

(fn ARG)
(defalias 'vip-line-to-bottom #[257 "\300\301 TZ!\207" [recenter window-height] 4 (#$ . 38979) "p"])
#@43 Go to the matching parenthesis.

(fn ARG)
(defalias 'vip-paren-match #[257 "\301!\247\2030\302V\204\303W\203\304\305!\207d\306V\203&d\307\245_\202+d_\307\245b\210\310 \207\311\312!\203P\211\203?`\313\223\210\314\303!\210\211\203M\315\316\313#\207\317u\207\311\320!\203p\313u\210\211\203b`\313\223\210\321\303!\210\211\205s\315\316\313#\207\304\322!\207" [vip-com-point vip-getcom 99 1 error "Prefix must be between 1 and 99" 80000 100 back-to-indentation looking-at "[([{]" nil forward-sexp vip-execute-com vip-paren-match -1 "[])}]" backward-sexp ""] 6 (#$ . 39132) "P"])
#@29 Forward sentence.

(fn ARG)
(defalias 'vip-forward-sentence #[257 "\301!\302!\211\203`\303\223\210\304!\210\211\205\305\306\303#\207" [vip-com-point vip-p-val vip-getcom nil forward-sentence vip-execute-com vip-forward-sentence] 7 (#$ . 39734) "P"])
#@30 Backward sentence.

(fn ARG)
(defalias 'vip-backward-sentence #[257 "\301!\302!\211\203`\303\223\210\304!\210\211\205\305\306\303#\207" [vip-com-point vip-p-val vip-getcom nil backward-sentence vip-execute-com vip-backward-sentence] 7 (#$ . 39999) "P"])
#@30 Forward paragraph.

(fn ARG)
(defalias 'vip-forward-paragraph #[257 "\301!\302!\211\203`\303\223\210\304!\210\211\205\305\306\303#\207" [vip-com-point vip-p-val vip-getCom nil forward-paragraph vip-execute-com vip-forward-paragraph] 7 (#$ . 40268) "P"])
#@31 Backward paragraph.

(fn ARG)
(defalias 'vip-backward-paragraph #[257 "\301!\302!\211\203`\303\223\210\304!\210\211\205\305\306\303#\207" [vip-com-point vip-p-val vip-getCom nil backward-paragraph vip-execute-com vip-backward-paragraph] 7 (#$ . 40537) "P"])
#@34 Scroll to next screen.

(fn ARG)
(defalias 'vip-scroll #[257 "\211\300V\203\211\300V\205&\301 \210\211S\262\202\300V\205&\302 \210\211T\262\202\207" [0 scroll-up scroll-down] 3 (#$ . 40810) "p"])
#@38 Scroll to previous screen.

(fn ARG)
(defalias 'vip-scroll-back #[257 "\300[!\207" [vip-scroll] 3 (#$ . 41023) "p"])
#@34 Scroll up half screen.

(fn ARG)
(defalias 'vip-scroll-down #[257 "\211\204\300\301 \302\245!\207\300!\207" [scroll-down window-height 2] 4 (#$ . 41147) "P"])
#@31 Scroll up one line.

(fn ARG)
(defalias 'vip-scroll-down-one #[257 "\300!\207" [scroll-down] 3 (#$ . 41315) "p"])
#@36 Scroll down half screen.

(fn ARG)
(defalias 'vip-scroll-up #[257 "\211\204\300\301 \302\245!\207\300!\207" [scroll-up window-height 2] 4 (#$ . 41436) "P"])
#@33 Scroll down one line.

(fn ARG)
(defalias 'vip-scroll-up-one #[257 "\300!\207" [scroll-up] 3 (#$ . 41602) "p"])
#@37 Show current buffer in two windows.
(defalias 'vip-buffer-in-two-windows #[0 "\300 \210\301 \207" [delete-other-windows split-window-below] 1 (#$ . 41721) nil])
#@179 Search a string forward.  ARG is used to find the ARG's occurrence
of the string.  Default is vanilla search.  Search mode can be toggled by
giving null search string.

(fn ARG)
(defalias 'vip-search-forward #[257 "\304!\305!\306\307	\203\310\202\311!\211\312\230\203*	?\313\314	\203'\315\202(\316\"\207\317\n\306#\210\211\205?\320 \321\223\210\322\323#\207" [vip-s-forward vip-re-search vip-s-string vip-com-point vip-P-val vip-getcom t vip-read-string "RE-/" "/" "" message "Search mode changed to %s search." "regular expression" "vanilla" vip-search mark nil vip-execute-com vip-search-next] 8 (#$ . 41889) "P"])
#@180 Search a string backward.  ARG is used to find the ARG's occurrence
of the string.  Default is vanilla search.  Search mode can be toggled by
giving null search string.

(fn ARG)
(defalias 'vip-search-backward #[257 "\304!\305!\306\307	\203\310\202\311!\211\312\230\203*	?\313\314	\203'\315\202(\316\"\207\317\n\306#\210\211\205?\320 \306\223\210\321\322#\207" [vip-s-forward vip-re-search vip-s-string vip-com-point vip-P-val vip-getcom nil vip-read-string "RE-?" "?" "" message "Search mode changed to %s search." "regular expression" "vanilla" vip-search mark vip-execute-com vip-search-next] 8 (#$ . 42530) "P"])
#@193 (STRING FORWARD COUNT &optional NO-OFFSET) Search COUNT's occurrence of
STRING.  Search will be forward if FORWARD, otherwise backward.

(fn STRING FORWARD ARG &optional NO-OFFSET INIT-POINT)
(defalias 'vip-search #[1283 "\304!\305!\306!??\206`	\203z\3071R\203(m\204(\310u\210\n\203=\311\310\211	$\210\312!\210\202K\313\310\211	$\210\314!\210\315!0\202\303\203m\203meb\210\316\f\f\317	B\320%\202ub\210\321\322A\"\262\202\303\3231\236\n\203\216\312\310\211	$\210\202\227\314\310\211	$\210\315!0\202\303\203\271\203\271db\210\316\f\f\317	B\320%\202\301b\210\321\322A\"\262)\207" [vip-case-fold-search case-fold-search vip-re-search vip-search-wrap-around vip-p-val vip-getcom vip-P-val (search-failed) nil re-search-forward re-search-backward search-forward search-backward push-mark vip-search 1 t signal search-failed (search-failed)] 18 (#$ . 43171)])
#@35 Repeat previous search.

(fn ARG)
(defalias 'vip-search-next #[257 "\302!\303!\204\304\305!\210\306	#\210\211\205\307\310#\207" [vip-s-string vip-s-forward vip-p-val vip-getcom error "No previous search string" vip-search vip-execute-com vip-search-next] 7 (#$ . 44098) "P"])
#@60 Repeat previous search in the reverse direction.

(fn ARG)
(defalias 'vip-search-Next #[257 "\302!\303!\204\304\305!\210\306	?#\210\211\205\307\310#\207" [vip-s-string vip-s-forward vip-p-val vip-getcom error "No previous search string" vip-search vip-execute-com vip-search-Next] 7 (#$ . 44391) "P"])
#@41 Switch to buffer in the current window.
(defalias 'vip-switch-to-buffer #[0 "\300\301\302\303\304\305p!!\"!\262\306!\210\307 \207" [nil read-buffer format "switch to buffer (%s): " buffer-name other-buffer switch-to-buffer vip-change-mode-to-vi] 7 (#$ . 44710) nil])
#@37 Switch to buffer in another window.
(defalias 'vip-switch-to-buffer-other-window #[0 "\300\301\302\303\304\305p!!\"!\262\306!\210\307 \207" [nil read-buffer format "Switch to buffer (%s): " buffer-name other-buffer switch-to-buffer-other-window vip-change-mode-to-vi] 7 (#$ . 44985) nil])
#@16 Kill a buffer.
(defalias 'vip-kill-buffer #[0 "\300\211\301\302\303\304p!\"!\262\211\204p\202\305!\262\204\"\306\307\"\210\310!\203.\311\312!\2032\313!\207\306\314!\207" [nil read-buffer format "Kill buffer (%s): " buffer-name get-buffer error "Buffer %s nonexistent" buffer-modified-p y-or-n-p "Buffer is modified, are you sure? " kill-buffer "Buffer not killed"] 7 (#$ . 45282) nil])
#@35 Visit file in the current window.
(defalias 'vip-find-file #[0 "\300\301\302!\262\303\304!!\210\305 \207" [nil read-file-name "visit file: " switch-to-buffer find-file-noselect vip-change-mode-to-vi] 4 (#$ . 45688) nil])
#@31 Visit file in another window.
(defalias 'vip-find-file-other-window #[0 "\300\301\302!\262\303\304!!\210\305 \207" [nil read-file-name "Visit file: " switch-to-buffer-other-window find-file-noselect vip-change-mode-to-vi] 4 (#$ . 45917) nil])
#@64 Give information of the file associated to the current buffer.
(defalias 'vip-info-on-file #[0 "\300\301\302 \203\f\302 \202
\303\304e`\"T\304ed\"T$\207" [message "\"%s\" line %d of %d" buffer-file-name "" count-lines] 7 (#$ . 46168) nil])
#@32 yank TEXT silently.

(fn TEXT)
(defalias 'vip-yank #[257 "\212\300`!\210\211c\210\301 \210)\302\303w\207" [vip-push-mark-silent exchange-point-and-mark " 	" nil] 3 (#$ . 46416)])
#@44 Put back after point/below line.

(fn ARG)
(defalias 'vip-put-back #[257 "\302!\203\"\303X\203\304X\203\305\303Z\306\"\202%\307!\202%\305\310!\211\204=\2039\311\312\313\"\266\202=\312\314!\210\311\315!\203O\316\317!\210\320 \210\202Zl\204Zm\204Z\311u\210\321\311F\211\310V\205r\322!\210\211S\262\202a\207" [vip-use-register vip-d-com vip-p-val 49 57 current-kill do-not-rotate get-register 0 nil error "Nothing in register %c" "" vip-end-with-a-newline-p next-line 1 beginning-of-line vip-put-back vip-yank] 7 (#$ . 46601) "P"])
#@41 Put back at point/above line.

(fn ARG)
(defalias 'vip-Put-back #[257 "\302!\203\"\303X\203\304X\203\305\303Z\306\"\202%\307!\202%\305\310!\211\204=\2039\311\312\313\"\266\202=\312\314!\210\311\315!\203H\316 \210\317\311F\211\310V\205`\320!\210\211S\262\202O\207" [vip-use-register vip-d-com vip-p-val 49 57 current-kill do-not-rotate get-register 0 nil error "Nothing in register %c" "" vip-end-with-a-newline-p beginning-of-line vip-Put-back vip-yank] 7 (#$ . 47171) "P"])
#@29 Delete character.

(fn ARG)
(defalias 'vip-delete-char #[257 "\302!\303\304E	\2030\305	X\203%	\306X\203%\307	\310\\``Z#\210\202.\311	``Z\304$\210\304\312\313\"\207" [vip-d-com vip-use-register vip-p-val vip-delete-char nil 65 90 vip-append-to-register 32 copy-to-register delete-char t] 7 (#$ . 47684) "P"])
#@38 Delete previous character.

(fn ARG)
(defalias 'vip-delete-backward-char #[257 "\302!\303\304E	\2030\305	X\203%	\306X\203%\307	\310\\``\\#\210\202.\311	``\\\304$\210\304\312\313\"\207" [vip-d-com vip-use-register vip-p-val vip-delete-backward-char nil 65 90 vip-append-to-register 32 copy-to-register delete-backward-char t] 7 (#$ . 48009) "P"])
#@77 Join this line to next, if ARG is nil.  Otherwise, join ARG lines

(fn ARG)
(defalias 'vip-join-lines #[257 "\301!\302\303E\211\204\304\202\211S\211\305V\2051\303\210m\204*\304y\210``S|\210\306 \210\211S\262\202\207" [vip-d-com vip-P-val vip-join-lines nil 1 0 fixup-whitespace] 5 (#$ . 48372) "*P"])
#@16 

(fn BEG END)
(defalias 'vip-change #[514 "\301\302\303{\"!\304\"\207" [vip-c-string vip-read-string format "%s => " vip-change-subr] 7 (#$ . 48692)])
#@16 

(fn BEG END)
(defalias 'vip-change-subr #[514 "\203
\303\304$\210\304\305\"\210\306\nc\207" [vip-use-register this-command vip-c-string copy-to-register nil kill-region vip-change] 7 (#$ . 48855)])
#@151 Query replace.  If you supply null string as the string to be replaced,
the query replace mode will toggle between string replace and regexp replace.
(defalias 'vip-query-replace #[0 "\301\302\203\n\303\202\304!\262\211\305\230\203$?\306\307\203!\310\202\"\311\"\207\2032\312\302\313\314\"!\"\207\315\302\313\316\"!\"\207" [vip-re-query-replace nil vip-read-string "Query replace regexp: " "Query replace: " "" message "Query replace mode changed to %s." "regexp replace" "string replace" query-replace-regexp format "Query replace regexp \"%s\" with: " query-replace "Query replace \"%s\" with: "] 7 (#$ . 49071) nil])
(defalias 'vip-mark-beginning-of-buffer #[0 "\300`!\210eb\210\301 \210\302\303!\207" [set-mark exchange-point-and-mark message "mark set at the beginning of buffer"] 2 nil nil])
(defalias 'vip-mark-end-of-buffer #[0 "\300`!\210db\210\301 \210\302\303!\207" [set-mark exchange-point-and-mark message "mark set at the end of buffer"] 2 nil nil])
#@13 

(fn CHAR)
(defalias 'vip-mark-point #[257 "\300X\203\211\301X\203\302\303Z\304\"\207\211\305U\203\306 \207\211\307U\203%\310 \207\211\311U\203.\312 \207\211\313U\2038\314\315!\207\211\316U\203A\317 \207\320\321!\207" [97 122 point-to-register 96 nil 60 vip-mark-beginning-of-buffer 62 vip-mark-end-of-buffer 46 push-mark 44 set-mark-command 1 68 mark-defun error ""] 4 (#$ . 50058) "c"])
#@23 Go to mark.

(fn ARG)
(defalias 'vip-goto-mark #[257 "\300 \301!\302\303#\207" [read-char vip-getcom vip-goto-mark-subr nil] 7 (#$ . 50466) "P"])
#@59 Go to mark and skip to first non-white on line.

(fn ARG)
(defalias 'vip-goto-mark-and-skip-white #[257 "\300 \301!\302\303#\207" [read-char vip-getCom vip-goto-mark-subr t] 7 (#$ . 50621) "P"])
#@28 

(fn CHAR COM SKIP-WHITE)
(defalias 'vip-goto-mark-subr #[771 "\301X\203M\302X\203Mp\203`\303\223\210\304\305Z!b\210\203$\306 \210\307 \210\205L\211p\232\203?\310\203:\311\202;\312\303#\207\313!\210b\210\307 \210\314\315!\207\211\204m\305U\203m\203``\303\223\210\316 \210\205\223\310\312\303#\207\211\203\220\317U\203\220\203\200`\303\223\210\316 \210\306 \210\205\223\310\311\303#\207\314\315!\207" [vip-com-point 97 122 nil register-to-point 96 back-to-indentation vip-change-mode-to-vi vip-execute-com vip-goto-mark-and-skip-white vip-goto-mark switch-to-buffer error "" exchange-point-and-mark 39] 8 (#$ . 50825)])
(defalias 'vip-exchange-point-and-mark #[0 "\300 \210\301 \207" [exchange-point-and-mark back-to-indentation] 1 nil nil])
#@44 Abort partially formed or running command.
(defalias 'vip-keyboard-quit #[0 "\301\302 \207" [vip-use-register nil keyboard-quit] 1 (#$ . 51611) nil])
#@38 Emulate C-c in Emacs mode.

(fn ARG)
(defalias 'vip-ctl-c-equivalent #[257 "\300\301\"\207" [vip-ctl-key-equivalent ""] 4 (#$ . 51768) "P"])
#@38 Emulate C-x in Emacs mode.

(fn ARG)
(defalias 'vip-ctl-x-equivalent #[257 "\300\301\"\207" [vip-ctl-key-equivalent ""] 4 (#$ . 51917) "P"])
#@16 

(fn KEY ARG)
(defalias 'vip-ctl-key-equivalent #[514 "\300 \301X\203\211\302X\203\211\303Z\262\304\305HD\"\207" [read-char 65 90 64 vip-escape-to-emacs 0] 7 (#$ . 52066)])
#@33 Delete previous word.

(fn ARG)
(defalias 'vip-delete-backward-word #[257 "\212\300`!\210\211\206\n\301[v\210`\302 |)\207" [set-mark 1 mark] 3 (#$ . 52255) "p"])
#@78 type of token.  if non-nil, gives type of address.  if nil, it
is a command.
(defvar ex-token-type nil (#$ . 52424))
#@17 value of token.
(defvar ex-token nil (#$ . 52547))
#@22 list of ex addresses
(defvar ex-addresses nil (#$ . 52604))
#@18 flag for ex flag
(defvar ex-flag nil (#$ . 52670))
#@19 name of ex buffer
(defvar ex-buffer nil (#$ . 52727))
#@19 value of ex count
(defvar ex-count nil (#$ . 52787))
#@25 flag for global command
(defvar ex-g-flag nil (#$ . 52846))
#@64 if t global command is executed on lines not matching ex-g-pat
(defvar ex-g-variant nil (#$ . 52912))
#@33 save reg-exp used in substitute
(defvar ex-reg-exp nil (#$ . 53020))
#@32 replace pattern for substitute
(defvar ex-repl nil (#$ . 53095))
#@28 pattern for global command
(defvar ex-g-pat nil (#$ . 53166))
#@31 save commands for mapped keys
(defvar ex-map (make-sparse-keymap) (#$ . 53234))
#@13 save ex tag
(defvar ex-tag nil (#$ . 53320))
(defvar ex-file nil)
(defvar ex-variant nil)
(defvar ex-offset nil)
(defvar ex-append nil)
(defalias 'vip-nil #[0 "\300\301!\207" [error ""] 2 nil nil])
#@63 returns t if looking back reg-exp STR before point.

(fn STR)
(defalias 'vip-looking-back #[257 "\212\300\301\302#)\205`\303\225U\207" [re-search-backward nil t 0] 5 (#$ . 53524)])
#@58 check if ex-token is an initial segment of STR

(fn STR)
(defalias 'vip-check-sub #[257 "G\211GX\203\302O\230\203\211\207\303\211\207" [ex-token ex-token-type 0 "non-command"] 6 (#$ . 53714)])
#@27 get a complete ex command
(defalias 'vip-get-ex-com-subr #[0 "\302`!\210\303\304!\210\305`\306 {\307 \210\310\311!\2039\310\312!\203%\313\314!\210\202\232\310\315!\2032\313\316!\210\202\232\313\317!\210\202\232\310\320!\203D\321\202\232\310\322!\203^\310\323!\203W\313\324!\210\202\232\313\325!\210\202\232\310\326!\203k\313\327!\210\202\232\310\330!\203\205\310\331!\203~\313\331!\210\202\232\313\332!\210\202\232\310\333!\203\222\313\334!\210\202\232\310\335!\203\237\313\336!\210\202\232\310\337!\203\254\313\340!\210\202\232\310\341!\203\271\313\342!\210\202\232\310\343!\203\306\313\344!\210\202\232\310\345!\203\355\310\346!\203\331\313\346!\210\202\232\310\347!\203\346\313\350!\210\202\232\313\351!\210\202\232\310\352!\203\310\353!\203\313\354!\210\202\232\313\355!\210\202\232\310\356!\203\313\357!\210\202\232\310\360!\203;\310\361!\203'\313\362!\210\202\232\310\363!\2034\313\364!\210\202\232\313\365!\210\202\232\310\366!\203H\313\367!\210\202\232\310\370!\203o\310\371!\203[\313\372!\210\202\232\310\373!\203h\313\374!\210\202\232\313\375!\210\202\232\310\376!\203\300\310\377!\203\204\313\201@!\210\202\232\310\201A!\203\225\313\201B!\210\202\232\310\201C!\203\246\313\201D!\210\202\232\310\201E!\203\267\313\201F!\210\202\232\313\201G!\210\202\232\310\201H!\203\342\310\201I!\203\331\313\201J!\210\202\232\313\201H!\210\202\232\310\201K!\203\310\201L!\203\373\313\201M!\210\202\232\310\201N!\203\f\313\201O!\210\202\232\313\201P!\210\202\232\310\201Q!\203H\310\201R!\203.\313\201S!\210\202\232\310\201T!\203?\313\201U!\210\202\232\313\201Q!\210\202\232\310\201V!\203j\310\201W!\203a\313\201W!\210\202\232\313\201X!\210\202\232\310\201Y!\203{\313\201Z!\210\202\232\310\201[!\203\214\313\201\\!\210\202\232\310\201]!\203\232\313\201]!\210\307 \207" [ex-token-type ex-token set-mark re-search-forward "[a-z][a-z]*" "command" mark exchange-point-and-mark looking-at "a" "ab" vip-check-sub "abbreviate" "ar" "args" "append" "[bh]" "non-command" "c" "co" "copy" "change" "d" "delete" "e" "ex" "edit" "f" "file" "g" "global" "i" "insert" "j" "join" "l" "list" "m" "map" "mar" "mark" "move" "n" "nu" "number" "next" "o" "open" "p" "pre" "preserve" "pu" "put" "print" "q" "quit" "r" "rec" "recover" "rew" "rewind" "read" "s" "se" "set" "sh" "shell" "so" "source" "st" "stop" "substitute" "t" "ta" "tag" "u" "una" "unabbreviate" "unm" "unmap" "undo" "v" "ve" "version" "vi" "visual" "w" "wq" "write" "x" "xit" "y" "yank" "z"] 2 (#$ . 53925)])
#@115 get an ex-token which is either an address or a command.
a token has type (command, address, end-mark) and value.
(defalias 'vip-get-ex-token #[0 "r\302q\210\303\304w\210\305\306!\203\307\310g!\311u\202\310\305\312!\203$\313 \202\310\305\314!\2033\311u\210\315\211\202\310\305\316!\203b\317`!\210\320\321!\210\322\230\203K\323\202V\324\230\203U\325\202V\326\327`\330 {!\211\202\310\305\331!\203q\311u\210\332\211\202\310\305\333!\203\200\311u\210\334\211\202\310\305\335!\203\260\305\336!\203\233\311u\210\337c\210\340u\210\322\211\202\310\305\341!\203\252\311u\210\322\211\202\310\342\343!\202\310\305\344!\203\340\305\345!\203\313\311u\210\337c\210\340u\210\324\211\202\310\305\346!\203\332\311u\210\324\211\202\310\342\343!\202\310\305\347!\203\311u\210\317`!\210\350l\204\211\203\320\351!\210\352\353!\204\356\304\262\202\356\210\340u\210`\330 {\305\347!\203\311u\210\354\211\202\310\305\355!\203]\311u\210\317`!\210\350l\204P\211\203P\320\356!\210\352\357!\204A\304\262\340u\210\305\360!\204,\311u\210\202,\210\361`S\330 {\211\202\310\305\362!\203l\311u\210\363\211\202\310\305\364!\203{\311u\210\365\211\202\310\305\366!\203\214\307\310g!\311u\202\310\305\367!\203\267\370\311u\210\305\367!\203\242\304\202\262\305\312!\203\255g\202\262\342\371\372\"\210\311u\202\310\305\360!\203\305\373\374\211\202\310\342\375!)\207" [ex-token-type ex-token " *ex-working-space*" " 	" nil looking-at "[k#]" "command" char-to-string 1 "[a-z]" vip-get-ex-com-subr "\\." "dot" "[0-9]" set-mark re-search-forward "[0-9]*" "plus" "add-number" "minus" "sub-number" "abs-number" string-to-number mark "\\$" "end" "%" "whole" "\\+" "\\+[-+\n|]" "1" -1 "\\+[0-9]" error "Badly formed address" "-" "-[-+\n|]" "-[0-9]" "/" t "[^/]*\\(/\\|\n\\)" vip-looking-back "[^\\]\\(\\\\\\\\\\)*\\\\/" "search-forward" "\\?" "[^\\?]*\\(\\?\\|\n\\)" "[^\\]\\(\\\\\\\\\\)*\\\\\\?" "\n" "search-backward" "," "comma" ";" "semi-colon" "[!=><&~]" "'" "goto-mark" "%s" "Marks are ' and a-z" "end-mark" "goto" "Invalid token"] 3 (#$ . 56511)])
#@48 ex commands within VIP.

(fn &optional STRING)
(defalias 'vip-ex #[256 "\211\204\305\211\211\206\306\307!\305\310`r\311\312!q\210ed|\210\313\261\210eb\210)\314\305\205\354\315 \210\n\316\230\204<\n\317\230\203\217\203DB\f\320\230\203T\321\305!\210\305\262\202)\f\322\230\203d\321\310!\210\305\262\202)\323 \210r\312q\210\324\305w\210\325\326!\203{\327u\210\202\213\325\313!\203\207\305\262\202\213\330\331!\210)\202)\n\332\230\203\235\330\333\f\"\210\202)\n\334\230\203\254deBB\202)\n\335\230\203\301\204\272`\202\273B\202)\n\336\230\203\335\203\316\262\204\326`\202\327B\202)\337\"\211\203\350\211\262\210\202)\207" [ex-g-flag ex-g-variant ex-token-type ex-addresses ex-token nil vip-read-string ":" t get-buffer-create " *ex-working-space*" "\n" "" vip-get-ex-token "command" "end-mark" "global" ex-global "v" vip-execute-ex-command " 	" looking-at "|" 1 error "Extra character at end of a command" "non-command" "%s: Not an editor command" "whole" "comma" "semi-colon" vip-get-ex-address-subr] 9 (#$ . 58612) nil])
#@54 get a regular expression and set ex-variant if found
(defalias 'vip-get-ex-pat #[0 "r\303q\210\304\305w\210\306\307!\203?	?\310u\210\304\305w\210\306\311!\203X\310u\210\312`!\210\313l\204A\211\203A\314\315!\210\316\317!\204)\305\262\202)\210\320 `U\203M\321\202R`S\320 {\322u\202[\305\211)\207" [ex-g-variant ex-g-flag ex-token " *ex-working-space*" " 	" nil looking-at "!" 1 "/" set-mark t re-search-forward "[^/]*\\(/\\|\n\\)" vip-looking-back "[^\\]\\(\\\\\\\\\\)*\\\\/" mark "" -1] 3 (#$ . 59698)])
#@19 get an ex command
(defalias 'vip-get-ex-command #[0 "r\302q\210\303\304!\203
\305u\210\306\307w\210\303\310!\203'\311 \210\312\230\2059\313\314	\"\2029\303\315!\2036\316g!\305u\2029\313\317!)\207" [ex-token-type ex-token " *ex-working-space*" looking-at "/" 1 " 	" nil "[a-z]" vip-get-ex-com-subr "non-command" error "%s: Not an editor command" "[!=><&~]" char-to-string "Could not find an ex command"] 3 (#$ . 60223)])
#@25 get an ex option g or c
(defalias 'vip-get-ex-opt-gc #[0 "r\301q\210\302\303!\203
\304u\210\305\306w\210\302\307!\203 \307\304u\210\310\2020\302\311!\203/\311\304u\210\310\2020\306)\207" [ex-token " *ex-working-space*" looking-at "/" 1 " 	" nil "g" t "c"] 2 (#$ . 60657)])
#@87 compute default addresses.  whole-flag means whole buffer.

(fn &optional WHOLE-FLAG)
(defalias 'vip-default-ex-addresses #[256 "\204\211\203deCB\202``CB\211\207A?\205\"@B\211\207" [ex-addresses] 3 (#$ . 60943)])
#@66 get an ex-address as a marker and set ex-flag if a flag is found
(defalias 'vip-get-ex-address #[0 "\303 \304\305\306\211\203k\307 \210\n\310\230\2035\311\230\204&\312\230\204&\313\230\203.\304\306\262\202\314\315!\210\202\n\316\230\203A\306\262\202\n\317\230\203N\314\320!\210\202\n\321\230\203[\314\322!\210\202\323\303 \"\211\203g\211\262\210\202\207" [ex-token ex-flag ex-token-type point-marker t "" nil vip-get-ex-token "command" "print" "list" "#" error "Address expected" "end-mark" "whole" "a trailing address is expected" "comma" "Extra characters after an address" vip-get-ex-address-subr] 5 (#$ . 61175)])
#@53 returns an address as a point

(fn OLD-ADDRESS DOT)
(defalias 'vip-get-ex-address-subr #[514 "\302\204\262\303\230\203\207\304\230\203.\212b\210\305U\203%	S\202&	y\210\306 \262)\207\307\230\203B\212b\210	[y\210\306 \262)\207\310\230\203b\212eb\210	\305U\203X\305\262\202`	Sy\210\306 \262)\207\311\230\203k\312 \207\313\230\204\266\314\230\204\266\315\230\203\210\212\316\317!\210\306 \262)\207\320\230\203\231\212\316\302!\210\306 \262)\207\321\230\203\266\212	\204\252\322 \210\202\261\323	\324Z!b\210\306 \262)\207" [ex-token-type ex-token nil "dot" "add-number" 0 point-marker "sub-number" "abs-number" "end" point-max-marker "plus" "minus" "search-forward" ex-search-address t "search-backward" "goto-mark" exchange-point-and-mark register-to-point 96] 6 (#$ . 61831)])
#@46 search pattern and set address

(fn FORWARD)
(defalias 'ex-search-address #[257 "\302\230\203	\204\303\304!\210\202	\202\211\203#\305y\210\306!\207\307y\210\310!\207" [ex-token vip-s-string "" error "No previous search string" 1 re-search-forward -1 re-search-backward] 3 (#$ . 62654)])
#@57 get a buffer name and set ex-count and ex-flag if found
(defalias 'vip-get-ex-buffer #[0 "\303\211\303r\304q\210\305\303w\210\306\307!\203g\310u\210\305\303w\210\306\311!\2036\312`!\210\313\314!\210\315`\316 {!\305\303w\210\306\317!\203A\320\310u\210\306\321!?\205K\322\323!)\207" [ex-buffer ex-count ex-flag nil " *ex-working-space*" " 	" looking-at "[a-zA-Z]" 1 "[0-9]" set-mark re-search-forward "[0-9][0-9]*" string-to-number mark "[pl#]" t "[\n|]" error "Invalid extra characters"] 4 (#$ . 62962)])
(defalias 'vip-get-ex-count #[0 "\303\211\303r\304q\210\305\303w\210\306\307!\203\310\311u\210\305\303w\210\306\312!\2036\313`!\210\314\315!\210\316`\317 {!\305\303w\210\306\320!\203A\310\311u\210\306\321!?\205K\322\323!)\207" [ex-variant ex-count ex-flag nil " *ex-working-space*" " 	" looking-at "!" t 1 "[0-9]" set-mark re-search-forward "[0-9][0-9]*" string-to-number mark "[pl#]" "[\n|]" error "Invalid extra characters"] 4])
#@70 get a file name and set ex-variant, ex-append and ex-offset if found
(defalias 'vip-get-ex-file #[0 "\304\211\304\211r\305q\210\306\304w\210\307\310!\203\311\312u\210\306\304w\210\307\313!\2030\311\211\314u\210\306\304w\210\307\315!\203P\312u\210\316`!\210\317\320!\210\321u\210`\322 {\312u\210\306\304w\210\316`!\210\317\320!\210\321u\210`\322 {\211)\207" [ex-file ex-variant ex-append ex-offset nil " *ex-working-space*" " 	" looking-at "!" t 1 ">>" 2 "\\+" set-mark re-search-forward "[ 	\n]" -1 mark] 3 (#$ . 63925)])
#@50 execute ex command using the value of addresses.
(defalias 'vip-execute-ex-command #[0 "\301\230\203	\302 \207\303\230\203\304\305!\207\306\230\203\307 \207\310\230\203%\311 \207\312\230\203.\313 \207\314\230\2038\315\314!\207\316\230\203A\317 \207\320\230\203J\317 \207\321\230\203S\322 \207\323\230\203]\304\324!\207\325\230\203f\326 \207\327\230\203o\330 \207\331\230\203x\332 \207\333\230\203\201\334 \207\335\230\203\212\336 \207\337\230\203\223\340 \207\341\230\203\234\342 \207\343\230\203\246\304\305!\207\344\230\203\257\345 \207\346\230\203\270\347 \207\350\230\203\301\351 \207\352\230\203\312\353 \207\354\230\203\323\311 \207\355\230\203\335\356\305!\207\357\230\203\347\356\324!\207\360\230\203\360\361 \207\362\230\203\371\363 \207\364\230\203\365 \207\366\230\203\f\315\367!\207\370\230\203\315\371!\207\372\230\203 \340\324!\207\373\230\203+\340\324\211\"\207\374\230\204K\375\230\204K\376\230\204K\377\230\204K\201@\230\203T\201A\201B\"\207\201C\230\204\254\201D\230\204\254\201E\230\204\254\201F\230\204\254\201G\230\204\254\201H\230\204\254\201I\230\204\254\201J\230\204\254\201K\230\204\254\201L\230\204\254\201M\230\203\265\201A\201N\"\207\201A\201O\"\207" [ex-token "goto" ex-goto "copy" ex-copy nil "delete" ex-delete "edit" ex-edit "file" vip-info-on-file "join" ex-line "k" ex-mark "mark" "map" ex-map "move" t "put" ex-put "quit" ex-quit "read" ex-read "set" ex-set "shell" ex-shell "substitute" ex-substitute "stop" suspend-emacs "t" "tag" ex-tag "undo" vip-undo "unmap" ex-unmap "version" vip-version "visual" "write" ex-write "wq" "yank" ex-yank "!" ex-command "=" ex-line-no ">" "right" "<" "left" "&" "~" "append" "args" "change" "insert" "open" error "%s: No such command from VIP" "abbreviate" "list" "next" "print" "preserve" "recover" "rewind" "source" "unabbreviate" "xit" "z" "%s: Not implemented in VIP" "%s: Not an editor command"] 3 (#$ . 64466)])
#@17 ex goto command
(defalias 'ex-goto #[0 "\204`C\301 \210@b\210\302 \207" [ex-addresses push-mark beginning-of-line] 1 (#$ . 66482)])
#@66 ex copy and move command.  DEL-FLAG means delete.

(fn DEL-FLAG)
(defalias 'ex-copy #[257 "\306 \210\307 @A@b\210\212\310!\210\311\312 `\"\210\203%\313`\312 \"\210\202+\314`\312 \"\210	\203\224\nr\315\316!q\210p\317 \210\320\211\321\211\321 !\322 \210\323\324!\210+\211\"\325\204c#\204c$\203i\326\327!\202m`\312 {!\210\330!\210)\266\3311\210\332\333!\210\212\334\316!)0\210\202\224\210\212\334\316!\210)\335\336\320\"\210)\327U\203\241eb\210\202\247b\210\337y\210\326\327!c\207" [ex-addresses ex-flag default-directory buffer-read-only buffer-file-name buffer-undo-list vip-default-ex-addresses vip-get-ex-address set-mark vip-enlarge-region mark kill-region copy-region-as-kill get-buffer-create "*copy text*" kill-all-local-variables nil t erase-buffer run-hooks temp-buffer-setup-hook princ current-kill 0 internal-temp-output-buffer-show (quit) vip-read-string "[Hit return to continue] " kill-buffer signal quit 1 inhibit-modification-hooks inhibit-read-only standard-output ex-g-flag ex-g-variant] 10 (#$ . 66625)])
#@11 ex delete
(defalias 'ex-delete #[0 "\306 \210\307 \210@A@\211V\203\310\311!\210\212\312\"\210\313 \210	\203-\314`!\210	Sy\210\2021\314!\210\312`\315 \"\210\n\203\215r\316\317!q\210p\320 \210\321\211\322\211\"\322#$\323 \210\324\325!\210+\211%\326`\315 {!\210\327!\210)\266\3301z\331\332!0\210\202\205\210\212\333\317!\210)\310\334!\210\212\333\317!)\202\272&\203\266\335&X\203\255&\336X\203\255\337&\340\\`\315 #\210\202\266\341&`\315 \321$\210`\315 |)\207" [ex-addresses ex-count ex-flag default-directory buffer-read-only buffer-file-name vip-default-ex-addresses vip-get-ex-buffer error "First address exceeds second" vip-enlarge-region exchange-point-and-mark set-mark mark get-buffer-create " *delete text*" kill-all-local-variables nil t erase-buffer run-hooks temp-buffer-setup-hook princ internal-temp-output-buffer-show (quit) vip-read-string "[Hit return to continue] " kill-buffer "" 65 90 vip-append-to-register 32 copy-to-register buffer-undo-list inhibit-modification-hooks inhibit-read-only standard-output ex-buffer] 8 (#$ . 67685)])
#@9 ex-edit
(defalias 'ex-edit #[0 "\305 \210\204\306 \203	\203\307\310!\210\311 \210\312\nP!q\210\313 \210eb\210\f\205?r\314q\210ed|\210\f\315\261\210eb\210)\316 b\210\317 \207" [ex-variant buffer-file-name default-directory ex-file ex-offset vip-get-ex-file buffer-modified-p error "No write since last change (:e! overrides)" vip-change-mode-to-emacs find-file-noselect vip-change-mode-to-vi " *ex-working-space*" "\n" vip-get-ex-address beginning-of-line] 3 (#$ . 68774)])
#@33 ex global command

(fn VARIANT)
(defalias 'ex-global #[257 "\204	\203\306\307!\210\202\211\203\310\311\202\311\310\312 \210\n\204)\306\313!\210\n\314\230\203?\204:\306\315!\210\202C\202C\n\n
\204KdeD\310\316\310
@
A@\211V\203]\306\317!\210\212\320\"\210\321 \210\311\322 \321 \210\323 \210m\203zo\204z\324u\210\203\316o\204\316`Y\203\316\323 \210\325`!\210\310\210\326\f\327 \311#\203\240\211\204\250	\203\267\211\204\267\310\210T\262\322 B\262\210\323 \210o\203\305\310\262\202z\324y\210\310\210\202z\266)r\330q\210`TdS{\262)\205\364@b\210\331!\210S\262A\262\202\335\207" [ex-g-flag ex-g-variant ex-token vip-s-string ex-g-pat ex-addresses error "Global within global not allowed" nil t vip-get-ex-pat "Missing regular expression for global command" "" "No previous search string" 0 "First address exceeds second" vip-enlarge-region exchange-point-and-mark point-marker beginning-of-line -1 set-mark re-search-backward mark " *ex-working-space*" vip-ex] 12 (#$ . 69263)])
#@70 ex line commands.  COM is join, shift-right or shift-left.

(fn COM)
(defalias 'ex-line #[257 "\306 \210\307 \210@A@\310V\203\311\312!\210\212\313\"\210\314 \210	\203*\315`!\210	y\210\n\203\201r\316\317!q\210p\320 \210\310\211\321\211\321 !\322 \210\323\324!\210+\211\"\325`\326 {!\210\327!\210)\266\3301t\331\332!\210\333`\326 #0\210\202x\210\334 \210\212\335\317!\210)\202\210\333`\326 #\210`\262)\211Sb\210\336 \207" [ex-addresses ex-count ex-flag default-directory buffer-read-only buffer-file-name vip-default-ex-addresses vip-get-ex-count nil error "First address exceeds second" vip-enlarge-region exchange-point-and-mark set-mark get-buffer-create " *text*" kill-all-local-variables t erase-buffer run-hooks temp-buffer-setup-hook princ mark internal-temp-output-buffer-show (quit) vip-read-string "[Hit return to continue] " ex-line-subr ding kill-buffer beginning-of-line buffer-undo-list inhibit-modification-hooks inhibit-read-only standard-output] 10 (#$ . 70309)])
#@20 

(fn COM BEG END)
(defalias 'ex-line-subr #[771 "\302\230\203:^b\210m?\2059`]W\205e\303\210`]X\203m\204\304y\210``S|\210\204\305 \210\202\207\306\230\204F\307\230\205e\310^]\306\230\203W	\202Y	[#\210]b\210\303\210\304u\207" [ex-variant vip-shift-width "join" nil 1 fixup-whitespace "right" "left" indent-rigidly] 8 (#$ . 71322)])
#@9 ex mark
(defalias 'ex-mark #[0 "\301\204`Cr\302q\210\303\301w\210\304\305!\203-g\262\306u\210\303\301w\210\304\307!\204>\310\311!\210\202>\304\307!\203:\310\312!\210\202>\310\313!\210)\212@b\210\314\315Z\301\")\207" [ex-addresses nil " *ex-working-space*" " 	" looking-at "[a-z]" 1 "[\n|]" error "Extra characters at end of \"k\" command" "\"k\" requires a following letter" "Mark must specify a letter" point-to-register 96] 4 (#$ . 71692)])
#@8 ex map
(defalias 'ex-map #[0 "\302\211Cr\303q\210\304\302w\210\305g!\262\306u\210\304\302w\210\307\310!\203!\311\312!\210\313`!\210\314 \210\315u\210\211\316 `{\240\210)\317\"\204H\320\317	\"\206F\321#\210\320	\322\323\"#\207" [ex-map vip-mode-map nil " *ex-working-space*" " 	" char-to-string 1 looking-at "[\n|]" error "Missing rhs" set-mark end-of-buffer -1 mark lookup-key define-key vip-nil make-closure #[257 "\301\300\242\"\207" [V0 execute-kbd-macro] 4 "\n\n(fn COUNT)" "p"]] 8 (#$ . 72152)])
#@10 ex unmap
(defalias 'ex-unmap #[0 "\302r\303q\210\304\302w\210\305g!\262\306u\210\304\302w\210\307\310!\204\311\312!\210)\313\"\204+\311\314!\210\315	\313\"#\210\315\302#\207" [ex-map vip-mode-map nil " *ex-working-space*" " 	" char-to-string 1 looking-at "[\n|]" error "Macro must be a character" lookup-key "That macro wasn't mapped" define-key] 7 (#$ . 72672)])
#@8 ex put
(defalias 'ex-put #[0 "\204`\202\n@\303 \210	\211b\210\211\304U\203\305\306!\207\307\306!\207" [ex-addresses ex-buffer vip-use-register vip-get-ex-buffer 0 vip-Put-back 1 vip-put-back] 3 (#$ . 73052)])
#@9 ex quit
(defalias 'ex-quit #[0 "\300r\301q\210\302\300w\210g\262)\211\303U\203\304\305!\207\306 \207" [nil " *ex-working-space*" " 	" 33 kill-emacs t save-buffers-kill-emacs] 3 (#$ . 73274)])
#@9 ex read
(defalias 'ex-read #[0 "\204`\202\n@\301\211\211b\210\302U\204\303\304!\210\305 \210r\306q\210\307\301w\210\310\311!\203E\312\262\304u\210\307\301w\210\313`!\210\301\210\314 `{\262\202V\313`!\210\315\316!\210\317u\210`\314 {\262)\203`\320\312\"\207\321!\207" [ex-addresses nil 0 next-line 1 beginning-of-line " *ex-working-space*" " 	" looking-at "!" t set-mark mark re-search-forward "[ 	\n]" -1 shell-command insert-file] 7 (#$ . 73474)])
(defalias 'ex-set 'set-variable)
#@10 ex shell
(defalias 'ex-shell #[0 "\300 \210\301 \207" [vip-change-mode-to-emacs shell] 1 (#$ . 73981)])
#@113 ex substitute.
If REPEAT use previous reg-exp which is ex-reg-exp or
vip-s-string

(fn &optional REPEAT R-FLAG)
(defalias 'ex-substitute #[512 "\306\211\211\211\211\203\306\202\307 \210\204'\203	\202\n\262\262\202K\310\230\2031	\2022\262\307 \210\204F\310\211\202K\262\311 \203b\312\230\203\\\313\262\202K\313\262\202K\314 \210\f\203\204\212
\203r
@b\210\315`!\210\fSy\210`\316 CB)\202\232
\204\220``CB\202\232
A\204\232
@
B
@
A@\306\212\317\"\210\212`\316 ]b\210\320 )`\316 ^b\210`W\203\306\210\320 \262\321 \210\203\366l\204\355\322	\313#\203\355\203\342\323\324!\203\313`\262\325!\210\202\313\306\210\306u\210\202\266\322	\313#\203\203	\323\324!\203`\262\325!\210\306\210\306u\210\202\266\210)\266\211\203%\211b\210\321 \210\205/\326\327!\207" [ex-token vip-s-string ex-reg-exp ex-repl ex-count ex-addresses nil vip-get-ex-pat "" vip-get-ex-opt-gc "g" t vip-get-ex-count set-mark mark vip-enlarge-region point-marker beginning-of-line re-search-forward y-or-n-p "Replace? " replace-match message "done"] 16 (#$ . 74092)])
#@8 ex tag
(defalias 'ex-tag #[0 "\301r\302q\210\303\301w\210\304`!\210\305\301w\210\306 `{\262)\211\307\230\204 \211\310 \210\3111=\211\307\230\2035\312\313\"\210\2029\314!\210\315 0\207\315 \210\316!\207" [ex-tag nil " *ex-working-space*" " 	" set-mark "^ |	\n" mark "" vip-change-mode-to-emacs (error) find-tag t find-tag-other-window vip-change-mode-to-vi vip-message-conditions] 4 (#$ . 75214)])
#@23 ex write

(fn Q-FLAG)
(defalias 'ex-write #[257 "\305\306!\210\307 \210\310\230\203	\204\311\312!\210	\202\313!\301 \230\2044\314!\2034\n\2044\311\315\"\210@A@\211V\203C\311\316!\210\212\317\"\210\320`\321 \f\306%\210)\266	\204[\211\205a\322 \207" [ex-file buffer-file-name ex-variant ex-addresses ex-append vip-default-ex-addresses t vip-get-ex-file "" error "No file associated with this buffer" expand-file-name file-exists-p "\"%s\" File exists - use w! to override" "First address exceeds second" vip-enlarge-region write-region mark save-buffers-kill-emacs] 9 (#$ . 75626)])
#@9 ex yank
(defalias 'ex-yank #[0 "\306 \210\307 \210@A@\211V\203\310\311!\210\212\312\"\210\313 \210	\204&\n\203*\310\314!\210\2039\315`!\210Sy\210\202=\315!\210\312`\316 \"\210\f\203K\310\317!\210
\203W\320
`\316 \321$\210\322`\316 \")\207" [ex-addresses ex-g-flag ex-g-variant ex-count ex-flag ex-buffer vip-default-ex-addresses vip-get-ex-buffer error "First address exceeds second" vip-enlarge-region exchange-point-and-mark "Can't yank within global" set-mark mark "Extra characters at end of command" copy-to-register nil copy-region-as-kill] 7 (#$ . 76240)])
#@23 execute shell command
(defalias 'ex-command #[0 "\301r\302q\210\303\301w\210\304`!\210\301\210\305 `{\262)\204\306!\207@A@\211\204+\262\212\211b\210\304!\210\307`\305 \"\210\310`\305 \311\211%\210)\211b\207" [ex-addresses nil " *ex-working-space*" " 	" set-mark mark shell-command vip-enlarge-region shell-command-on-region t] 9 (#$ . 76826)])
#@19 print line number
(defalias 'ex-line-no #[0 "\301\302\303e\204\fd\202@\"T\"\207" [ex-addresses message "%d" count-lines] 5 (#$ . 77189)])
(byte-code "\301!\203\n\302!\210\303\304!\207" [vip-startup-file file-exists-p load provide vip] 2)

Youez - 2016 - github.com/yon3zu
LinuXploit