Linux iad1-shared-b7-18 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
Apache
: 67.205.6.31 | : 216.73.216.47
Cant Read [ /etc/named.conf ]
8.2.29
fernandoquevedo
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
share /
jed /
lib /
[ HOME SHELL ]
Name
Size
Permission
Action
colors
[ DIR ]
drwxr-xr-x
abbrev.sl
838
B
-rw-r--r--
abbrev.slc
636
B
-rw-r--r--
abbrmisc.sl
2.15
KB
-rw-r--r--
abbrmisc.slc
1.98
KB
-rw-r--r--
aboutjed.hlp
252
B
-rw-r--r--
acompile.sl
2.04
KB
-rw-r--r--
acompile.slc
2.02
KB
-rw-r--r--
aprocess.sl
267
B
-rw-r--r--
aprocess.slc
238
B
-rw-r--r--
ashell.sl
7.69
KB
-rw-r--r--
ashell.slc
6.96
KB
-rw-r--r--
backups.sl
1.41
KB
-rw-r--r--
backups.slc
637
B
-rw-r--r--
bibtex.sl
17.05
KB
-rw-r--r--
bibtex.slc
12.74
KB
-rw-r--r--
binary.sl
589
B
-rw-r--r--
binary.slc
522
B
-rw-r--r--
bookmark.sl
1.6
KB
-rw-r--r--
bookmark.slc
1.2
KB
-rw-r--r--
brief.sl
5.98
KB
-rw-r--r--
buf.sl
3.41
KB
-rw-r--r--
buf.slc
1.96
KB
-rw-r--r--
bufed.sl
6.69
KB
-rw-r--r--
bufed.slc
4.68
KB
-rw-r--r--
bytecomp.sl
3.38
KB
-rw-r--r--
cal.sl
6.4
KB
-rw-r--r--
cal.slc
4.44
KB
-rw-r--r--
chglog.sl
3.13
KB
-rw-r--r--
chglog.slc
2.62
KB
-rw-r--r--
cmisc.sl
4.91
KB
-rw-r--r--
cmisc.slc
4
KB
-rw-r--r--
cmode.dfa
7.58
KB
-rw-r--r--
cmode.sl
40.06
KB
-rw-r--r--
cmode.slc
27.9
KB
-rw-r--r--
comments.sl
7.99
KB
-rw-r--r--
comments.slc
5.93
KB
-rw-r--r--
compat.sl
1.39
KB
-rw-r--r--
compile.sl
11.44
KB
-rw-r--r--
compile.slc
5.83
KB
-rw-r--r--
compress.sl
3.12
KB
-rw-r--r--
compress.slc
2.73
KB
-rw-r--r--
cpright.hlp
464
B
-rw-r--r--
ctags.sl
9.53
KB
-rw-r--r--
ctags.slc
7.34
KB
-rw-r--r--
cua.hlp
385
B
-rw-r--r--
cua.sl
7.56
KB
-rw-r--r--
cua.slc
3.91
KB
-rw-r--r--
cuamisc.sl
5.7
KB
-rw-r--r--
cuamisc.slc
1.63
KB
-rw-r--r--
dabbrev.sl
13.77
KB
-rw-r--r--
dabbrev.slc
8.05
KB
-rw-r--r--
dcl.sl
4.68
KB
-rw-r--r--
dcl.slc
4.5
KB
-rw-r--r--
defaults.sl
1.07
KB
-rw-r--r--
digraph.sl
3.8
KB
-rw-r--r--
digraph.slc
1.04
KB
-rw-r--r--
dired.sl
17.78
KB
-rw-r--r--
dired.slc
12.69
KB
-rw-r--r--
docbook.sl
38.33
KB
-rw-r--r--
docbook.slc
38.41
KB
-rw-r--r--
dos437.sl
998
B
-rw-r--r--
dos850.sl
1.3
KB
-rw-r--r--
dos852.sl
1.14
KB
-rw-r--r--
edt.hlp
1.6
KB
-rw-r--r--
edt.sl
14.55
KB
-rw-r--r--
edt.slc
7.93
KB
-rw-r--r--
emacs.hlp
227
B
-rw-r--r--
emacs.sl
6.86
KB
-rw-r--r--
emacs.slc
6.31
KB
-rw-r--r--
emacsmsc.sl
3.52
KB
-rw-r--r--
emacsmsc.slc
3.52
KB
-rw-r--r--
emul.sl
87
B
-rw-r--r--
f90.sl
22.75
KB
-rw-r--r--
f90.slc
18.39
KB
-rw-r--r--
ff90.sl
56
B
-rw-r--r--
ff90.slc
82
B
-rw-r--r--
filter.sl
646
B
-rw-r--r--
filter.slc
562
B
-rw-r--r--
folding.sl
13.47
KB
-rw-r--r--
folding.slc
11.13
KB
-rw-r--r--
fortran.sl
10.65
KB
-rw-r--r--
fortran.slc
7.79
KB
-rw-r--r--
generic.hlp
135
B
-rw-r--r--
gpg.sl
4.89
KB
-rw-r--r--
gpg.slc
4.51
KB
-rw-r--r--
help.sl
15.37
KB
-rw-r--r--
help.slc
12
KB
-rw-r--r--
history.sl
5.73
KB
-rw-r--r--
history.slc
2.2
KB
-rw-r--r--
hooks.sl
1.95
KB
-rw-r--r--
hooks.slc
1.74
KB
-rw-r--r--
html.dfa
6.13
KB
-rw-r--r--
html.sl
13.63
KB
-rw-r--r--
html.slc
10.06
KB
-rw-r--r--
ide.hlp
1.25
KB
-rw-r--r--
ide.sl
22.57
KB
-rw-r--r--
ide.slc
20.07
KB
-rw-r--r--
idl.sl
5.58
KB
-rw-r--r--
idl.slc
5.34
KB
-rw-r--r--
info.sl
19.92
KB
-rw-r--r--
info.slc
17.16
KB
-rw-r--r--
isearch.sl
7.7
KB
-rw-r--r--
isearch.slc
5.01
KB
-rw-r--r--
iso-lat2.sl
963
B
-rw-r--r--
iso-lat2.slc
1010
B
-rw-r--r--
iso-lat3.sl
1.3
KB
-rw-r--r--
iso-lat3.slc
994
B
-rw-r--r--
iso-latin.sl
625
B
-rw-r--r--
iso-latin.slc
420
B
-rw-r--r--
iso2xxx.sl
1.77
KB
-rw-r--r--
iso2xxx.slc
1.39
KB
-rw-r--r--
ispell.sl
2.99
KB
-rw-r--r--
ispell.slc
2.26
KB
-rw-r--r--
javamode.dfa
7.59
KB
-rw-r--r--
javamode.sl
3.24
KB
-rw-r--r--
javamode.slc
3.29
KB
-rw-r--r--
jed.hlp
356
B
-rw-r--r--
jed.rc
9.43
KB
-rw-r--r--
jed.sl
3.57
KB
-rw-r--r--
jed.slc
4.01
KB
-rw-r--r--
jedhelp.sl
1.43
KB
-rw-r--r--
jedhelp.slc
1.49
KB
-rw-r--r--
jedusage.sl
967
B
-rw-r--r--
jedusage.slc
1.08
KB
-rw-r--r--
keycode.sl
4.46
KB
-rw-r--r--
keydefs.sl
9.21
KB
-rw-r--r--
keydefs.slc
6.63
KB
-rw-r--r--
krconv.sl
1.86
KB
-rw-r--r--
krconv.slc
1.45
KB
-rw-r--r--
latex.sl
27.01
KB
-rw-r--r--
latex.slc
20.94
KB
-rw-r--r--
latex209.sl
2.24
KB
-rw-r--r--
latex209.slc
1.57
KB
-rw-r--r--
linux.sl
821
B
-rw-r--r--
lisp.sl
1.21
KB
-rw-r--r--
lisp.slc
1.1
KB
-rw-r--r--
ltx-comp.dat
2.01
KB
-rw-r--r--
ltx-math.sl
4.12
KB
-rw-r--r--
ltx-math.slc
3.95
KB
-rw-r--r--
lua.sl
13.05
KB
-rw-r--r--
macro.sl
2.08
KB
-rw-r--r--
macro.slc
1.95
KB
-rw-r--r--
mail.sl
4.82
KB
-rw-r--r--
mail.slc
4.17
KB
-rw-r--r--
mailalias.sl
6.21
KB
-rw-r--r--
mailalias.slc
3.61
KB
-rw-r--r--
mailedit.sl
10.79
KB
-rw-r--r--
mailutils.sl
3.52
KB
-rw-r--r--
makemode.sl
6.83
KB
-rw-r--r--
man.sl
1.8
KB
-rw-r--r--
man.slc
948
B
-rw-r--r--
maple.sl
2.14
KB
-rw-r--r--
maple.slc
1.91
KB
-rw-r--r--
matlab.sl
5.07
KB
-rw-r--r--
matlab.slc
4.07
KB
-rw-r--r--
menu.sl
4.7
KB
-rw-r--r--
menu.slc
3.91
KB
-rw-r--r--
menus.sl
2.31
KB
-rw-r--r--
menus.slc
1.74
KB
-rw-r--r--
mime.sl
1.98
KB
-rw-r--r--
mime.slc
1.75
KB
-rw-r--r--
mimemisc.sl
684
B
-rw-r--r--
mimemisc.slc
733
B
-rw-r--r--
mini.sl
4.54
KB
-rw-r--r--
mini.slc
3.73
KB
-rw-r--r--
minued.sl
8.99
KB
-rw-r--r--
minued.slc
4.37
KB
-rw-r--r--
misc.sl
4.01
KB
-rw-r--r--
misc.slc
2.51
KB
-rw-r--r--
modehook.sl
3.71
KB
-rw-r--r--
modehook.slc
1.64
KB
-rw-r--r--
modeinfo.sl
1.6
KB
-rw-r--r--
modeinfo.slc
1.48
KB
-rw-r--r--
most.sl
3.64
KB
-rw-r--r--
most.slc
3.13
KB
-rw-r--r--
mouse.sl
5.15
KB
-rw-r--r--
mousex.sl
8.33
KB
-rw-r--r--
mousex.slc
4.36
KB
-rw-r--r--
mswmouse.sl
6.85
KB
-rw-r--r--
mutekeys.sl
3.19
KB
-rw-r--r--
mutekeys.slc
1.49
KB
-rw-r--r--
nroff.sl
1.09
KB
-rw-r--r--
nroff.slc
709
B
-rw-r--r--
occur.sl
1.48
KB
-rw-r--r--
occur.slc
1.03
KB
-rw-r--r--
os.sl
4.22
KB
-rw-r--r--
paste.sl
509
B
-rw-r--r--
paste.slc
485
B
-rw-r--r--
perl.sl
33.63
KB
-rw-r--r--
perl.slc
13.77
KB
-rw-r--r--
perlxtra.sl
13.1
KB
-rw-r--r--
perlxtra.slc
5.18
KB
-rw-r--r--
php.sl
83.23
KB
-rw-r--r--
php.slc
54.16
KB
-rw-r--r--
pipe.sl
567
B
-rw-r--r--
pipe.slc
579
B
-rw-r--r--
popups.sl
9.03
KB
-rw-r--r--
popups.slc
8.88
KB
-rw-r--r--
preparse.sl
1.69
KB
-rw-r--r--
pscript.dfa
21.64
KB
-rw-r--r--
pscript.sl
4.79
KB
-rw-r--r--
pscript.slc
4.3
KB
-rw-r--r--
pushmode.sl
1.84
KB
-rw-r--r--
pushmode.slc
1.55
KB
-rw-r--r--
pymode.sl
17.24
KB
-rw-r--r--
pymode.slc
12.9
KB
-rw-r--r--
python.dfa
6.54
KB
-rw-r--r--
rcs.sl
4.27
KB
-rw-r--r--
rcs.slc
2.86
KB
-rw-r--r--
recent.sl
4.53
KB
-rw-r--r--
recent.slc
2.73
KB
-rw-r--r--
recentx.sl
10.13
KB
-rw-r--r--
recentx.slc
6.38
KB
-rw-r--r--
regexp.sl
1.63
KB
-rw-r--r--
regexp.slc
1.54
KB
-rw-r--r--
register.sl
4.11
KB
-rw-r--r--
register.slc
3.1
KB
-rw-r--r--
replace.sl
1.39
KB
-rw-r--r--
replace.slc
1.09
KB
-rw-r--r--
rmail.sl
38.64
KB
-rw-r--r--
rmail.slc
35.99
KB
-rw-r--r--
rot13.sl
497
B
-rw-r--r--
rot13.slc
379
B
-rw-r--r--
runpgm.sl
690
B
-rw-r--r--
sccs.sl
4.33
KB
-rw-r--r--
sccs.slc
2.54
KB
-rw-r--r--
search.sl
2.5
KB
-rw-r--r--
search.slc
2.29
KB
-rw-r--r--
seldisp.sl
806
B
-rw-r--r--
seldisp.slc
617
B
-rw-r--r--
sendmail.sl
7.02
KB
-rw-r--r--
sendmail.slc
5.73
KB
-rw-r--r--
session.sl
5.91
KB
-rw-r--r--
session.slc
3.46
KB
-rw-r--r--
shell.sl
6.26
KB
-rw-r--r--
shell.slc
3.32
KB
-rw-r--r--
shmode.dfa
1.57
KB
-rw-r--r--
shmode.sl
2.33
KB
-rw-r--r--
shmode.slc
1.91
KB
-rw-r--r--
simple.hlp
407
B
-rw-r--r--
site.sl
76.36
KB
-rw-r--r--
site.slc
36.67
KB
-rw-r--r--
slmode.dfa
3.22
KB
-rw-r--r--
slmode.sl
7.1
KB
-rw-r--r--
slmode.slc
5.79
KB
-rw-r--r--
sort.sl
1.21
KB
-rw-r--r--
sort.slc
1.13
KB
-rw-r--r--
sortmisc.sl
751
B
-rw-r--r--
sortmisc.slc
546
B
-rw-r--r--
spicemod.sl
1.06
KB
-rw-r--r--
spicemod.slc
1.03
KB
-rw-r--r--
srchmisc.sl
3.22
KB
-rw-r--r--
srchmisc.slc
2.56
KB
-rw-r--r--
syncproc.sl
3.58
KB
-rw-r--r--
syncproc.slc
2.36
KB
-rw-r--r--
syntax.sl
3.05
KB
-rw-r--r--
syntax.slc
1.47
KB
-rw-r--r--
tabs.sl
1.39
KB
-rw-r--r--
tabs.slc
1.31
KB
-rw-r--r--
tclmode.dfa
4.69
KB
-rw-r--r--
tclmode.sl
10.41
KB
-rw-r--r--
tclmode.slc
6.11
KB
-rw-r--r--
tex.sl
2.39
KB
-rw-r--r--
tex.slc
779
B
-rw-r--r--
texcom.dfa
1.5
KB
-rw-r--r--
texcom.sl
4.75
KB
-rw-r--r--
texcom.slc
4.12
KB
-rw-r--r--
textmode.sl
2.05
KB
-rw-r--r--
textmode.slc
974
B
-rw-r--r--
tiasm.sl
1.16
KB
-rw-r--r--
tiasm.slc
1.11
KB
-rw-r--r--
tmisc.sl
841
B
-rw-r--r--
tmisc.slc
786
B
-rw-r--r--
tmmode.sl
2.01
KB
-rw-r--r--
tmmode.slc
1.65
KB
-rw-r--r--
tmpfile.sl
2.83
KB
-rw-r--r--
tmpfile.slc
1.56
KB
-rw-r--r--
tpascal.dfa
7.65
KB
-rw-r--r--
tpascal.sl
5.77
KB
-rw-r--r--
tpascal.slc
5.51
KB
-rw-r--r--
untab.sl
1021
B
-rw-r--r--
untab.slc
569
B
-rw-r--r--
util.sl
544
B
-rw-r--r--
util.slc
293
B
-rw-r--r--
verilog.sl
1.49
KB
-rw-r--r--
verilog.slc
1.52
KB
-rw-r--r--
vhdlmode.sl
8.45
KB
-rw-r--r--
vhdlmode.slc
5.6
KB
-rw-r--r--
vmshelp.sl
2.25
KB
-rw-r--r--
win1250.sl
1.29
KB
-rw-r--r--
wmark.sl
4.36
KB
-rw-r--r--
wmark.slc
3.61
KB
-rw-r--r--
wmenu.sl
4.72
KB
-rw-r--r--
wmenu.slc
4.86
KB
-rw-r--r--
wordstar.hlp
909
B
-rw-r--r--
wordstar.sl
15.56
KB
-rw-r--r--
wordstar.slc
13.93
KB
-rw-r--r--
xformreg.sl
1.7
KB
-rw-r--r--
xformreg.slc
1.36
KB
-rw-r--r--
yankpop.sl
2.21
KB
-rw-r--r--
yankpop.slc
2.01
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : recentx.sl
% This file is like recent.sl, except that it logs files according to % filename extension. It draws upon the ideas in recent.sl, as well % as upon those of the version at % <http://jedmodes.sourceforge.net/mode/recent>. % % To make use of this file, put the following in your .jedrc file: % % require ("recentx"); % Recentx_Cache_Filename = ".jedrecent"; % Recentx_Max_Files = 15; % The number of files per extension % Recentx_Cache_Exclude_Patterns = {"^/tmp/", "\.tmp$"R}; %---------------------------------------------------------------------- #ifdef IBMPC_SYSTEM custom_variable ("Recentx_Cache_Filename", "_jedrcnt"); #else custom_variable ("Recentx_Cache_Filename", ".jedrecent"); #endif %!%+ %\variable{Recentx_Cache_Filename} %\synopsis{The name of the file used for the recent file cache} %\usage{Recentx_Cache_Filename = ".jedrecent";} %\description % This value of this variable specifies the name of the cache file % used for recently accessed files. If the filename is given % as a relative path, it will be taken as relative to value of the % Jed_Home_Directory variable, which typically coincides with the % users's HOME directory. %\notes % This variable is defined in \file{recentx.sl}. %\seealso{Recentx_Cache_Exclude_Patterns, Recentx_Max_Files, Recentx_Use_Cache} %!%- custom_variable ("Recentx_Use_Cache", 1); %!%+ %\variable{Recentx_Use_Cache} %\synopsis{Turn on/off caching of recent filenames} %\usage{Recentx_Use_Cache=1;} %\description % If non-zero, the recent-filename-cache will be enabled. Otherwise, % caching will be turned off. %\notes % This variable is defined in \file{recentx.sl}. %\seealso{Recentx_Cache_Exclude_Patterns, Recentx_Max_Files, Recentx_Cache_Filename} %!%- custom_variable ("Recentx_Max_Files", 15); %!%+ %\variable{Recentx_Max_Files} %\synopsis{Set the maximum number of recent-files to cache per extension} %\usage{Recentx_Max_Files=15;} %\description % The value of this variable specifies the maximum number of number of % files per extension to store in the recent-files-cache. The maximum number % of filenames in the cache will be the product of the number of % extensions and the value of this variable. %\notes % This variable is defined in \file{recentx.sl}. %\seealso{Recentx_Cache_Exclude_Patterns, Recentx_Cache_Filename, Recentx_Use_Cache} %!%- custom_variable ("Recentx_Cache_Exclude_Patterns", {}); %!%+ %\variable{Recentx_Cache_Exclude_Patterns} %\synopsis{List of patterns used to exclude filenames from the recent-files-cache} %\usage{Recentx_Cache_Exclude_Patterns = \{...\};} %\description % The value of this variable is a list of regular expressions such that % if a pathname matches any of the patterns, the file will be % excluded from the recent-files-cache. %\example %#v+ % variable Recentx_Cache_Exclude_Patterns = {"^/tmp/", "\\.tmp$"}; %#v- % This example excludes any file in the /tmp directory, or any file % name with the extension ".tmp". %\notes % This variable is defined in \file{recentx.sl}. %\seealso{Recentx_Cache_Ext_Exclude_Patterns, Recentx_Max_Files, Recentx_Cache_Filename, Recentx_Use_Cache} %!%- custom_variable ("Recentx_Cache_Ext_Exclude_Patterns", {}); %!%+ %\variable{Recentx_Cache_Ext_Exclude_Patterns} %\synopsis{List of patterns used to exclude filename extensions from the recent-files-cache} %\usage{Recentx_Cache_Ext_Exclude_Patterns = \{...\};} %\description % The value of this variable is a list of regular expressions such that % if a filename extension matches any of the patterns, the file will be % excluded from the recent-files-cache. %\example %#v+ % variable Recentx_Cache_Ext_Exclude_Patterns = {"~$", "^tmp$", "^[0-9]+"}; %#v- % This example excludes any file whose extension ends in \exmp{~}, or % is \exmp{"tmp"}, or consists entirely of digits. %\notes % This variable is defined in \file{recentx.sl}. %\seealso{Recentx_Cache_Exclude_Patterns, Recentx_Cache_Filename, Recentx_Use_Cache} %!%- private variable Last_Sync_Time = 0; private define new_recent_files_database () { return Assoc_Type[Assoc_Type]; } private variable Recentx_Cache = new_recent_files_database (); private define get_recent_file_list_name () { variable file = Recentx_Cache_Filename; if (path_is_absolute (file)) return file; variable dir = Jed_Home_Directory; #ifdef IBMPC_SYSTEM if (dir == "") { dir = getenv ("TEMP"); if (dir == NULL) dir = ""; } #endif return dircat (dir, file); } private define add_file_to_database (name, time) { variable ext = path_extname (name), pat; ext = strtrim_beg (ext, "."); if (strlen (ext)) foreach pat (Recentx_Cache_Ext_Exclude_Patterns) { try { if (string_match (ext, pat, 1)) return; } catch AnyError: vmessage ("Exclude pattern may be bad: %S", pat); } foreach pat (Recentx_Cache_Exclude_Patterns) { try { if (string_match (name, pat, 1)) return; } catch AnyError: vmessage ("Exclude pattern may be bad: %S", pat); } if (ext == "") ext = "(none)"; ifnot (assoc_key_exists (Recentx_Cache, ext)) Recentx_Cache[ext] = Assoc_Type[Long_Type]; variable s = Recentx_Cache[ext]; s[name] = time; } private define update_last_sync_time (file) { variable st = stat_file (file); if (st != NULL) Last_Sync_Time = st.st_mtime; else Last_Sync_Time = _time (); } private define read_recent_file_list (file) { Recentx_Cache = new_recent_files_database (); variable fp = fopen (file, "r"); if (fp == NULL) return; variable line; variable i = 0; foreach line (fp) { line = strtrim_end (line, "\n"); ifnot (strlen(line)) continue; variable fields = strchop (line, '|', 0); if (length (fields) == 1) { % old format --- filename only add_file_to_database (fields[0], i); i++; } else { add_file_to_database (fields[1], atol(fields[0])); } } () = fclose (fp); update_last_sync_time (file); } private define sort_files_by_time (files, times) { variable i = array_sort (times); array_reverse (i); if (length(i) > Recentx_Max_Files) i = i[[0:Recentx_Max_Files-1]]; return (files[i], times[i]); } private define save_recent_file_list () { variable file = get_recent_file_list_name (); variable fp = fopen (file, "wb"); if (fp == NULL) return; foreach (assoc_get_values (Recentx_Cache)) { variable item = (); variable files, times; (files, times) = sort_files_by_time (assoc_get_keys(item), assoc_get_values(item)); () = array_map (Int_Type, &fprintf, fp, "%ld|%s\n", times, files); } () = fclose (fp); () = chmod (file, 0600); update_last_sync_time (file); } private define load_recent_file_list () { variable file = get_recent_file_list_name (); variable st = stat_file (file); if ((st != NULL) && (st.st_mtime > Last_Sync_Time)) Recentx_Cache = NULL; if (Recentx_Cache == NULL) read_recent_file_list (file); } private define get_most_recent_files () { variable times, files, num = 0, item; foreach item (assoc_get_values (Recentx_Cache)) num += length(item); times = Long_Type[num]; files = String_Type[num]; variable i = 0, ii; foreach item (assoc_get_values (Recentx_Cache)) { num = length(item); ii = i + [0:num-1]; times[ii] = assoc_get_values (item); files[ii] = assoc_get_keys (item); i += num; } (files, ) = sort_files_by_time (files, times); return files; } private define get_most_recent_files_by_ext (ext) { variable item = Recentx_Cache[ext]; variable files; (files, ) = sort_files_by_time (assoc_get_keys(item), assoc_get_values(item)); return files; } private define menu_select_file_callback (file) { () = find_file (file); } % Build the menu of recent files. private define display_recent_files_menu (popup, files) { variable i = '1'; % use 1-9 first, then a-z, then A-Z, then give up and restart foreach (files) { variable file = (); menu_append_item (popup, sprintf ("&%c %s", i, file), &menu_select_file_callback, file); % check - what should we use? switch (i) { case '9': i = 'a' - 1; } { case 'z': i = 'A' - 1; } { case 'Z': i = '1' - 1; } i++; } } private variable Recent_Files_Menu_Name = "&Recent Files"; private variable Recent_Files_Ext_Menu_Name = "Recent Files by Ex&t"; private define recent_files_menu_callback (popup) { load_recent_file_list (); variable files = get_most_recent_files (); display_recent_files_menu (popup, files); } private define recent_files_specific_ext_menu_callback (popup) { variable ext = strchop (popup, '.', 0)[-1]; variable files = get_most_recent_files_by_ext (ext); display_recent_files_menu (popup, files); } private define recent_files_ext_menu_callback (popup) { load_recent_file_list (); variable exts = assoc_get_keys (Recentx_Cache); exts = exts [array_sort (exts)]; variable menu = "Global.&File." + Recent_Files_Ext_Menu_Name; foreach (exts) { variable ext = (); menu_append_popup (menu, ext); menu_set_select_popup_callback (strcat (menu, ".", ext), &recent_files_specific_ext_menu_callback); } } % This function is called by _jed_switch_active_buffer_hooks private define switch_active_buffer_hook (buf) { ifnot (Recentx_Use_Cache) return; variable file, dir, n; variable blist; % find out the file name with full path (file,dir,buf,) = getbuf_info (); ifnot (strlen (file)) return; file = dircat (dir, file); load_recent_file_list (); add_file_to_database (file, _time ()); save_recent_file_list (); } append_to_hook ("_jed_switch_active_buffer_hooks", &switch_active_buffer_hook); private define add_recent_files_popup_hooks (menubar) { ifnot (Recentx_Use_Cache) return; variable menu = "Global.&File"; menu_append_separator (menu); variable dmenu = Recent_Files_Menu_Name; menu_append_popup (menu, dmenu); menu_set_select_popup_callback (strcat (menu, ".", dmenu), &recent_files_menu_callback); dmenu = Recent_Files_Ext_Menu_Name; menu_append_popup (menu, dmenu); menu_set_select_popup_callback (strcat (menu, ".", dmenu), &recent_files_ext_menu_callback); } append_to_hook ("load_popup_hooks", &add_recent_files_popup_hooks); % End of file recent.sl
Close