403Webshell
Server IP : 217.160.0.212  /  Your IP : 216.73.216.141
Web Server : Apache
System : Linux www 6.18.51-i1-ampere #1196 SMP Fri Sep 11 20:43:55 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/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

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



(byte-code "\300\301\302\303\304\305\306\307\310\311&	\210\312\313\314\315\316DD\317\320\321%\210\312\322\314\315\323DD\324\320\321%\210\312\325\314\315\326DD\327\320\321%\210\312\330\314\315\331DD\332\320\321%\210\312\333\314\315\334DD\335\320\321%\210\312\336\314\315\337DD\340\320\341%\210\312\342\314\315\343DD\344\320\341%\210\312\345\314\315\346DD\347\320\341%\210\312\350\314\315\351DD\352\320\341%\210\312\353\314\315\354DD\355\320\341%\210\312\356\314\315\357DD\360\320\361%\210\362\363\364\"\210\312\364\314\315\365DD\366\320\367%\210\312\370\314\315\371DD\372\320\373%\210\312\374\314\315\375DD\376\320\377%\210\312\201@\314\315\201ADD\201B\201C\201D\320\201E&\210\312\201F\314\315\201GDD\201H\320\201I%\210\201J\313!\210\201J\322!\210\201J\325!\210\201J\330!\210\201J\333!\210\201J\336!\210\201J\342!\210\201J\345!\210\201J\353!\210\201J\364!\210\201J\370!\207" [custom-declare-group ff nil "Find a file corresponding to this one given a pattern." :prefix "ff-" :link (emacs-commentary-link "find-file") :group find-file custom-declare-variable ff-pre-find-hook funcall function #[0 "\300\207" [nil] 1 #1=""] "List of functions to be called before the search for the file starts." :type hook ff-pre-load-hook #[0 "\300\207" [nil] 1 #1#] "List of functions to be called before the other file is loaded." ff-post-load-hook #[0 "\300\207" [nil] 1 #1#] "List of functions to be called after the other file is loaded." ff-not-found-hook #[0 "\300\207" [nil] 1 #1#] "List of functions to be called if the other file could not be found." ff-file-created-hook #[0 "\300\207" [nil] 1 #1#] "List of functions to be called if the other file needs to be created." ff-case-fold-search #[0 "\300\207" [nil] 1 #1#] "Non-nil means ignore cases in matches (see `case-fold-search').\nIf you have extensions in different cases, you will want this to be nil." boolean ff-always-in-other-window #[0 "\300\207" [nil] 1 #1#] "If non-nil, find the corresponding file in another window by default.\nTo override this, give an argument to `ff-find-other-file'." ff-ignore-include #[0 "\300\207" [nil] 1 #1#] "If non-nil, ignore `#include' lines." ff-always-try-to-create #[0 "\300\207" [t] 1 #1#] "If non-nil, always attempt to create the other file if it was not found." ff-quiet-mode #[0 "\300\207" [nil] 1 #1#] "If non-nil, trace which directories are being searched." ff-special-constructs #[0 "\300\301!\302BC\207" [purecopy "^#\\s *\\(include\\|import\\)\\s +[<\"]\\(.*\\)[>\"]" #[0 "\300\301!\207" [match-string 2] 2]] 2 #1#] "List of special constructs recognized by `ff-treat-as-special'.\nEach element, tried in order, has the form (REGEXP . EXTRACT).\nIf REGEXP matches the current line (from the beginning of the line),\n`ff-treat-as-special' calls function EXTRACT with no args.\nIf EXTRACT returns nil, keep trying.  Otherwise, return the\nfilename that EXTRACT returned." (repeat (cons regexp function)) defvaralias ff-related-file-alist ff-other-file-alist #[0 "\300\207" [cc-other-file-alist] 1 #1#] "Alist of extensions to find given the current file's extension.\n\nThe value could be an alist or a symbol whose value is an alist.\nEach element of the alist has the form\n\n   (REGEXP (EXTENSION...))\n\nwhere REGEXP is the regular expression matching a file's extension,\nand EXTENSIONs is the list of literal file-name extensions to search\nfor.  The list of extensions should contain the most used extensions\nbefore the others, since the search algorithm searches sequentially\nthrough each directory specified in `ff-search-directories'.\n\nAlist elements can also be of the form\n\n   (REGEXP FUNCTION)\n\nwhere FUNCTION is a function of one argument, the current file's name,\nthat returns the list of possible names of the corresponding files, with\nor without leading directories.  Note the difference: FUNCTION returns\nthe list of file names, not their extensions.  This is for the case when\nREGEXP is not enough to determine the file name of the other file.\n\nIf a file is not found, a new one is created with the first\nmatching extension or name (e.g., `.cc' yields `.hh').\n\nThis alist should be set by the major mode.\n\nNote: if an element of the alist names a FUNCTION as its cdr, that\nfunction must return a non-nil list of file-names.  It cannot\nreturn nil, nor can it signal in any way a failure to find a suitable\nlist of file names." (choice (repeat (list regexp (choice (repeat string) function))) symbol) ff-search-directories #[0 "\300\207" [cc-search-directories] 1 #1#] "List of directories to search for a specific file.\n\nSet by default to `cc-search-directories', expanded at run-time.\n\nThis list is searched through with each extension specified in\n`ff-other-file-alist' that matches this file's extension.  So the\nlonger the list, the longer it'll take to realize that a file\nmay not exist.\n\nA typical format is\n\n    (\".\" \"/usr/include\" \"$PROJECT/*/include\")\n\nEnvironment variables can be inserted between slashes (`/').\nThey will be replaced by their definition.  If a variable does\nnot exist, it is replaced (silently) with an empty string.\n\nThe stars are *not* wildcards: they are searched for together with\nthe preceding slash.  The star represents all the subdirectories except\n`..', and each of these subdirectories will be searched in turn." (choice (repeat directory) symbol) cc-search-directories #[0 "\300\207" [("." "/usr/include" "/usr/local/include/*")] 1 #1#] "See the description of the `ff-search-directories' variable." (repeat directory) cc-other-file-alist #[0 "\300\207" [(("\\.cc\\'" (".hh" ".h")) ("\\.hh\\'" (".cc" ".C" ".CC" ".cxx" ".cpp" ".c++")) ("\\.c\\'" (".h")) ("\\.m\\'" (".h")) ("\\.h\\'" (".c" ".cc" ".C" ".CC" ".cxx" ".cpp" ".c++" ".m")) ("\\.C\\'" (".H" ".hh" ".h")) ("\\.H\\'" (".C" ".CC")) ("\\.CC\\'" (".HH" ".H" ".hh" ".h")) ("\\.HH\\'" (".CC")) ("\\.c\\+\\+\\'" (".h++" ".hh" ".h")) ("\\.h\\+\\+\\'" (".c++")) ("\\.cpp\\'" (".hpp" ".hh" ".h")) ("\\.hpp\\'" (".cpp")) ("\\.cxx\\'" (".hxx" ".hh" ".h")) ("\\.hxx\\'" (".cxx")))] 1 #1#] "Alist of extensions to find given the current file's extension.\n\nThis list should contain the most used extensions before the others,\nsince the search algorithm searches sequentially through each directory\nspecified in `ff-search-directories'.  If a file is not found, a new one\nis created with the first matching extension (`.cc' yields `.hh')." :version "24.4" (repeat (list regexp (choice (repeat string) function))) modula2-other-file-alist #[0 "\300\207" [(("\\.mi\\'" (".md")) ("\\.md\\'" (".mi")))] 1 #1#] "See the description for the `ff-search-directories' variable." (repeat (list regexp (choice (repeat string) function))) make-variable-buffer-local] 10)
#@219 Find the header or source file corresponding to this file.
See also the documentation for `ff-find-other-file'.

If optional IN-OTHER-WINDOW is non-nil, find the file in another window.

(fn &optional IN-OTHER-WINDOW)
(defalias 'ff-get-other-file #[256 "\301\302!)\207" [ff-ignore-include t ff-find-the-other-file] 3 (#$ . 6819) "P"])
(defalias 'ff-find-related-file 'ff-find-other-file)
#@1992 Find the header or source file corresponding to this file.
Being on a `#include' line pulls in that file.

If optional IN-OTHER-WINDOW is non-nil, find the file in the other window.
If optional IGNORE-INCLUDE is non-nil, ignore being on `#include' lines.

If optional EVENT is non-nil (default `last-nonmenu-event', move
point to the end position of that event before calling the
various ff-* hooks.

Variables of interest include:

 - `ff-case-fold-search'
   Non-nil means ignore cases in matches (see `case-fold-search').
   If you have extensions in different cases, you will want this to be nil.

 - `ff-always-in-other-window'
   If non-nil, always open the other file in another window, unless an
   argument is given to `ff-find-other-file'.

 - `ff-ignore-include'
   If non-nil, ignores #include lines.

 - `ff-always-try-to-create'
   If non-nil, always attempt to create the other file if it was not found.

 - `ff-quiet-mode'
   If non-nil, traces which directories are being searched.

 - `ff-special-constructs'
   A list of regular expressions specifying how to recognize special
   constructs such as include files etc, and an associated method for
   extracting the filename from that construct.

 - `ff-other-file-alist'
   Alist of extensions to find given the current file's extension.

 - `ff-search-directories'
   List of directories searched through with each extension specified in
   `ff-other-file-alist' that matches this file's extension.

 - `ff-pre-find-hook'
   List of functions to be called before the search for the file starts.

 - `ff-pre-load-hook'
   List of functions to be called before the other file is loaded.

 - `ff-post-load-hook'
   List of functions to be called after the other file is loaded.

 - `ff-not-found-hook'
   List of functions to be called if the other file could not be found.

 - `ff-file-created-hook'
   List of functions to be called if the other file has been created.

(fn &optional IN-OTHER-WINDOW IGNORE-INCLUDE EVENT)
(defalias 'ff-find-other-file #[768 "p`\301\302!!\210\303!\210)rq\210\211b)\207" [ff-ignore-include posn-set-point event-end ff-find-the-other-file] 8 (#$ . 7217) (list current-prefix-arg nil last-nonmenu-event)])
#@126 Like `buffer-file-name' but works with indirect buffers as well.
If BUF is nil, uses the current buffer.

(fn &optional BUF)
(defalias 'ff-buffer-file-name #[256 "\211\204p\262\300!\206\301!\205\300\301!!\207" [buffer-file-name buffer-base-buffer] 4 (#$ . 9434)])
#@274 Find the header or source file corresponding to the current file.
Being on a `#include' line pulls in that file, but see the help on
the `ff-ignore-include' variable.

If optional IN-OTHER-WINDOW is non-nil, find the file in another window.

(fn &optional IN-OTHER-WINDOW)
(defalias 'ff-find-the-other-file #[256 "\305\211\211\211\211\211\211\211\211\211\211\211\211\306\307\310\"\210\311\312!\210\3139\203!J\202\"!\262\314 \262\n	\204C	\203C	\262\315\305$\262\202\n9\203M\nJ\202N\n\262\316 \206V\317\262\320!\262\n\305\262@\262
\321
@\"\262	\f\203\233\203\200\322Y\204\233\204\233A\262@\262
\321
@\"\262	\202o\f\204\246\323\262\202\fA@\262\f\fA@\262\305\262\n:\204\335\324!\203\335\n\316 !\262\f\f@\fCB\262
\305\262@\262\202\322U\203\355\325\262\325\262\202\326
@P\262\327\"\210\330\331\"\262
A@@P\262\315	$\262\211\203!\311\325!\210\202e\204e\306\332\333\"\210\203_\305\211\334\335\336\337\n\"\f\n\305$!\262\340!\203N\341!P\202R\211\262\262\342\323#\266\202e\311\343\"\210\207" [ff-search-directories ff-ignore-include ff-other-file-alist ff-always-try-to-create default-directory nil run-hooks ff-pre-find-hook ff-pre-find-hooks message "Working..." ff-list-replace-env-vars ff-treat-as-special ff-get-file ff-buffer-file-name "/none.none" file-name-nondirectory ff-string-match 0 t fboundp "" "\\(.+\\)" string-match match-string 1 ff-not-found-hook ff-not-found-hooks expand-file-name read-directory-name format "Find or create %s in: " file-directory-p file-name-as-directory ff-find-file "No file found for %s"] 22 (#$ . 9715)])
#@343 Find a file in the SEARCH-DIRS with the given FILENAME (or filename stub).
If (optional) SUFFIX-LIST is nil, search for FILENAME, otherwise search
for FILENAME with each of the given suffixes.  Get the file or the buffer
corresponding to the name of the first file found, or nil.

(fn SEARCH-DIRS FILENAME &optional SUFFIX-LIST OTHER-WINDOW)
(defalias 'ff-get-file #[1026 "\300#\211\204\301\207\302\303!!\203\304\303!\"\210\207\305!\203(\306\301#\210\207\301\207" [ff-get-file-name nil bufferp get-file-buffer ff-switch-to-buffer file-exists-p ff-find-file] 9 (#$ . 11385)])
#@285 Find a file in SEARCH-DIRS with the given name (or stub) FNAME-STUB.
If (optional) SUFFIX-LIST is nil, search for FNAME-STUB, otherwise
search for FNAME-STUB with each of the given suffixes.  Return the
name of the first file found.

(fn SEARCH-DIRS FNAME-STUB &optional SUFFIX-LIST)
(defalias 'ff-get-file-name #[770 "\302\211\211\211\211\211\211\211\211\211\n\262\203@\262\202 \303\262\303C\262\203\211\211\204\211P\262\2048\304\305\"\210\306\307!!\203G\310\307!!\262\311 \262\312@!\262\203~\211\204~\313P\302\314\315#)\266\203\203q\310@!\262A\262\312@!\262\202QA\262@\262\202 \f\262\n	@\262	\211\204K	\203K\n\262\203\364\315\316\n\"\204\364\203\267@\262\202\276\303\262\303C\262\203>\211\204>P\262\317\n\"\262\204\336\304\320	\"\210\321!\203\351\262A\262@\262\202\276\322\224\203\323\322\n\"\202\303\262\323\324\n\"\262	\325	\326\"\302\211@\262\203/\327\fPC\"\262A\262@\262\202\211\203<\330#\262\266	A\262\n	@\262	\202\222\211\203T\304\331\"\210\207" [ff-quiet-mode inhibit-changing-match-data nil "" message "Finding buffer %s..." bufferp get-file-buffer ff-buffer-file-name buffer-list buffer-name "<[0-9]+>" t string-match "\\([^*]*\\)/\\*\\(/.*\\)*" expand-file-name "Finding %s..." file-exists-p 2 match-string 1 ff-all-dirs-under ("..") append ff-get-file-name "%s found"] 20 (#$ . 11981)])
#@147 Like `string-match', but set `case-fold-search' temporarily.
The value used comes from `ff-case-fold-search'.

(fn REGEXP STRING &optional START)
(defalias 'ff-string-match #[770 "\205\f\302#)\207" [ff-case-fold-search case-fold-search string-match] 7 (#$ . 13417)])
#@89 Replace environment variables (of the form $VARIABLE) in SEARCH-LIST.

(fn SEARCH-LIST)
(defalias 'ff-list-replace-env-vars #[257 "\300@\203/\301\302\"\203\303\304\"\305\303\306\"!\303\307\"Q\262A\262\211B\262@\262\202\310!\211\262\207" [nil string-match "\\(.*\\)\\$[({]*\\([[:alnum:]_]+\\)[)}]*\\(.*\\)" match-string 1 getenv 2 3 reverse] 8 (#$ . 13697)])
#@107 Return the file to look for if the construct was special, else nil.
See variable `ff-special-constructs'.
(defalias 'ff-treat-as-special #[0 "\212\301\302!\210\303\211@\211@A\2036\2046\304!\203#\211\203#\211 \262A\262@\262@\262A\262\202
\266\205)\207" [ff-special-constructs beginning-of-line 1 nil looking-at] 7 (#$ . 14082)])
(byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias ff-basename file-name-nondirectory nil make-obsolete "28.1"] 4)
#@128 Get all the directory files under directory HERE.
Exclude all files in the optional EXCLUDE list.

(fn HERE &optional EXCLUDE)
(defalias 'ff-all-dirs-under #[513 "\300!\205>\3011<\302\303\"\304\211\2032@\262\300!\203+\305!\235\204+\211B\262A\262\202\306!\211\262\266\2030\207\210\304\207" [file-directory-p (error) directory-files t nil file-name-nondirectory reverse] 7 (#$ . 14567)])
#@562 Call F1 or F2 on FILE, according to IN-OTHER-WINDOW.
In addition, this runs various hooks.

Either F1 or F2 receives FILE as the sole argument.
The decision of which one to call is based on IN-OTHER-WINDOW
and on the global variable `ff-always-in-other-window'.

F1 and F2 are typically `find-file' / `find-file-other-window'
or `switch-to-buffer' / `switch-to-buffer-other-window' function pairs.

If optional NEW-FILE is t, then a special hook (`ff-file-created-hook') is
called before `ff-post-load-hook'.

(fn F1 F2 FILE &optional IN-OTHER-WINDOW NEW-FILE)
(defalias 'ff-switch-file #[1283 "\301\302\303\"\210\203
\203\204\203\202!\210\211\203&\301\304\305\"\210\301\306\307\"\207" [ff-always-in-other-window run-hooks ff-pre-load-hook ff-pre-load-hooks ff-file-created-hook ff-file-created-hooks ff-post-load-hook ff-post-load-hooks] 8 (#$ . 14981)])
#@106 Like `find-file', but may show the file in another window.

(fn FILE &optional IN-OTHER-WINDOW NEW-FILE)
(defalias 'ff-find-file #[769 "\300\301\302%\207" [ff-switch-file find-file find-file-other-window] 9 (#$ . 15861)])
#@116 Like `switch-to-buffer', but may show the buffer in another window.

(fn BUFFER-OR-NAME &optional IN-OTHER-WINDOW)
(defalias 'ff-switch-to-buffer #[513 "\300\301\302\303%\207" [ff-switch-file switch-to-buffer switch-to-buffer-other-window nil] 8 (#$ . 16093)])
(byte-code "\300\301\302\303#\210\304\301\302\305#\210\300\306\307\303#\210\304\306\307\305#\207" [defalias ff-mouse-find-other-file ff-find-other-file nil make-obsolete "28.1" ff-mouse-find-other-file-other-window ff-find-other-file-other-window] 4)
#@60 Visit the file you point at in another window.

(fn EVENT)
(defalias 'ff-find-other-file-other-window #[257 "\300\301\302#\207" [ff-find-other-file t nil] 5 (#$ . 16613) (list last-nonmenu-event)])
#@51 Return t if STRING is all uppercase.

(fn STRING)
(defalias 'ff-upcase-p #[257 "\300\301\"\207" [ff-string-match "\\`[[:upper:]]*\\'"] 4 (#$ . 16818)])
#@147 Discriminate file extensions.
Build up a new file list based possibly on part of the directory name
and the name of the file passed in.

(fn ARG)
(defalias 'ff-cc-hh-converter #[257 "\300\301\"\210\302\303\"\302\304\"\302\305\"\306\307\230\2039\300\310\"\2039\302\303\"\302\311\"\226\262\211\312P\313P\312P\313PF\207\314\230\203\\\315!\203\\\203\\\227P\211\316P\317P\316P\317PF\207\307\230\203j\312P\313PD\207\314\230\203y\316P\317PD\262\207" [ff-string-match "\\(.*\\)/\\([^/]+\\)/\\([^.]+\\).\\([^/]+\\)$" match-string 2 3 4 nil "cc" "^\\([[:lower:]]+\\)\\([[:upper:]].+\\)$" 1 ".hh" ".h" "hh" ff-upcase-p ".cc" ".C"] 11 (#$ . 16978)])
#@33 Name of the function we are in.
(defvar ff-function-name nil (#$ . 17658))
#@122 Return the name of the function whose definition/declaration point is in.
Also remember that name in `ff-function-name'.
(defalias 'ff-which-function-are-we-in #[0 "\212\303\304\305#\204\303	\304\305#\205\306\307!)\211\207" [ada-procedure-start-regexp ada-package-start-regexp ff-function-name re-search-backward nil t match-string 0] 4 (#$ . 17740)])
#@122 Find the function specified in `ff-function-name'.
That name was previously determined by `ff-which-function-are-we-in'.
(defalias 'ff-set-point-accordingly #[0 "\205\feb\210\301\302\303#\207" [ff-function-name search-forward nil t] 4 (#$ . 18105)])
(provide 'find-file)

Youez - 2016 - github.com/yon3zu
LinuXploit