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 : wordstar.sl
% % Wordstar Mode for JED % % Put the line: () = evalfile ("wordstar.sl"); % in your jed.rc startup file. % % Additions and changes by Guido Gonzato, guido@ibogfs.df.unibo.it % Now the wordstar mode is more compatible with the true-blue WordStar, % the Turbo IDE editor, and jstar. % Some features still missing: % % o hilighted blocks a la WordStar % o move block across buffers not implemented yet (tip: setbuf()) % % Please send me requests and bug reports, should you find any. % % Last modified: 5 June 1997 Help_File = "wordstar.hlp"; _Reserved_Key_Prefix = NULL; _Jed_Emulation = "wordstar"; CASE_SEARCH = 1; % I prefer this way variable Ws_Bookmark_Exist = 1; % internal use set_status_line (" Jed %v : %b (%m%n) (%p) %t", 1); set_abort_char (30); % ^^ (Control 6 on most keyboards) % Note, the above command BREAKS ^G emacs abort. unsetkey("^B"); unsetkey("^F"); unsetkey("^K"); unsetkey("^U"); unsetkey("^W"); unsetkey("^X"); % % Basic commands: cursor movement, delete, search & replace, etc. % setkey ("begin_macro","\e("); setkey ("delete_char_cmd","^G"); setkey ("delete_line","^Y"); setkey ("end_macro","\e)"); setkey ("execute_macro","\eE"); setkey ("execute_macro","\ee"); setkey ("format_paragraph", "^B"); setkey ("next_char_cmd","^D"); setkey ("previous_char_cmd","^S"); setkey ("ws_previous_line_cmd","^E"); setkey ("undo", "^U"); setkey ("ws_bdelete_word","\eo"); setkey ("ws_bskip_word","^A"); setkey ("ws_delete_word","^T"); setkey ("ws_insert_last_block", "^P"); setkey ("ws_next_line_cmd","^X"); setkey ("ws_page_down","^C"); setkey ("ws_page_up","^R"); setkey ("ws_repeat_search","^L"); setkey ("ws_skip_word","^F"); setkey ("ws_window_down","^Z"); setkey ("ws_window_up","^W"); % % Control-Q keys --- hope you figure out how to pass ^Q/^S through system % % In case you _cannot_ figure that out, you can use ESC instead of ^Q; % for instance, ESC-A instead of ^Q-A. For wordstar bookmarks, use % ESC-ESC-digit. % ESC-X is not bound, for it's already pretty useful... use ESC-^X instead. % setkey (". 0 ws_goto_mark_n","\e\e0"); setkey (". 0 ws_goto_mark_n","^Q0"); setkey (". 1 ws_goto_mark_n","\e\e1"); setkey (". 1 ws_goto_mark_n","^Q1"); setkey (". 2 ws_goto_mark_n","\e\e2"); setkey (". 2 ws_goto_mark_n","^Q2"); setkey (". 3 ws_goto_mark_n","\e\e3"); setkey (". 3 ws_goto_mark_n","^Q3"); setkey (". 4 ws_goto_mark_n","\e\e4"); setkey (". 4 ws_goto_mark_n","^Q4"); setkey (". 5 ws_goto_mark_n","\e\e5"); setkey (". 5 ws_goto_mark_n","^Q5"); setkey (". 6 ws_goto_mark_n","\e\e6"); setkey (". 6 ws_goto_mark_n","^Q6"); setkey (". 7 ws_goto_mark_n","\e\e7"); setkey (". 7 ws_goto_mark_n","^Q7"); setkey (". 8 ws_goto_mark_n","\e\e8"); setkey (". 8 ws_goto_mark_n","^Q8"); setkey (". 9 ws_goto_mark_n","\e\e9"); setkey (". 9 ws_goto_mark_n","^Q9"); setkey ("ws_goto_begin_block", "\eB"); setkey ("ws_goto_begin_block", "^QB"); setkey ("ws_goto_begin_block", "^Q^B"); setkey ("ws_goto_end_block", "\eK"); setkey ("ws_goto_end_block", "^QK"); setkey ("ws_goto_end_block", "^Q^K"); setkey ("kill_line","\eY"); setkey ("kill_line","^QY"); setkey ("kill_line","^Q^Y"); setkey ("ws_bob","\eR"); setkey ("ws_bob","^QR"); setkey ("ws_bob","^Q^R"); setkey ("ws_bol","\eS"); setkey ("ws_bol","^QS"); setkey ("ws_bol","^Q^S"); setkey ("ws_eob","\eC"); setkey ("ws_eob","^QC"); setkey ("ws_eob","^Q^C"); setkey ("ws_eol","\eD"); setkey ("ws_eol","^QD"); setkey ("ws_eol","^Q^D"); setkey ("ws_goto_bottom_of_window","\e^X"); % M-X is already reserved! setkey ("ws_goto_bottom_of_window","^QX"); setkey ("ws_goto_bottom_of_window","^Q^X"); setkey ("ws_goto_line_cmd","\eI"); setkey ("ws_goto_line_cmd","^QI"); setkey ("ws_goto_line_cmd","^Q^I"); setkey ("ws_goto_prev","^QP"); setkey ("ws_goto_top_of_window","^QE"); setkey ("ws_goto_top_of_window","^Q^E"); setkey ("ws_goto_top_of_window","^\eE"); setkey ("ws_replace_cmd","\eA"); setkey ("ws_replace_cmd","^QA"); setkey ("ws_replace_cmd","^Q^A"); setkey ("ws_search_forward","\eF"); setkey ("ws_search_forward","^QF"); setkey ("ws_search_forward","^Q^F"); setkey ("ws_toggle_case","^QT"); setkey ("ws_toggle_case","^Q^T"); % % Control-K map % setkey (". 0 ws_set_mark_n","^K0"); setkey (". 1 ws_set_mark_n","^K1"); setkey (". 2 ws_set_mark_n","^K2"); setkey (". 3 ws_set_mark_n","^K3"); setkey (". 4 ws_set_mark_n","^K4"); setkey (". 5 ws_set_mark_n","^K5"); setkey (". 6 ws_set_mark_n","^K6"); setkey (". 7 ws_set_mark_n","^K7"); setkey (". 8 ws_set_mark_n","^K8"); setkey (". 9 ws_set_mark_n","^K9"); setkey ("exit_jed","^KX"); setkey ("exit_jed","^K^X"); setkey ("find_file", "^KE"); setkey ("find_file", "^K^E"); setkey ("kill_buffer","^KQ"); setkey ("kill_buffer","^K^Q"); setkey ("one_window", "^KI"); setkey ("one_window", "^K^I"); setkey ("save_buffer","^KD"); setkey ("save_buffer","^K^D"); setkey ("suspend", "^KZ"); setkey ("suspend", "^K^Z"); setkey ("switch_to_buffer","^KP"); setkey ("switch_to_buffer","^K^P"); setkey ("ws_begin_block","^KB"); setkey ("ws_begin_block","^K^B"); setkey ("ws_comment_block", "^K;"); setkey ("ws_copy_block","^KC"); setkey ("ws_copy_block","^K^C"); setkey ("ws_delete_block","^KY"); setkey ("ws_delete_block","^K^Y"); setkey ("ws_end_block","^KK"); setkey ("ws_end_block","^K^K"); setkey ("ws_filter_region","^K/"); setkey ("ws_insert_file","^KR"); setkey ("ws_insert_file","^K^R"); setkey ("ws_lowercase_region","^KL"); setkey ("ws_lowercase_region","^K^L"); setkey ("ws_move_block", "^KV"); setkey ("ws_move_block", "^K^V"); setkey ("ws_save_buffer","^KS"); setkey ("ws_save_buffer","^K^S"); setkey ("ws_select_word","^KT"); setkey ("ws_select_word","^K^T"); setkey ("ws_uppercase_region","^KU"); setkey ("ws_uppercase_region","^K^U"); setkey ("ws_write_region","^KW"); setkey ("ws_write_region","^K^W"); % % Implementation % ifnot (is_defined("_Ws_Bookmarks")) { % user marks are of type 128 $1 = 13; % bookmarks 0..9 are for the user; bookmark 10 is used by some of the % following functions; bookmark 11 and 12 mark the beginning and end of % the block (used by ^QB and ^QK) variable _Ws_Bookmarks = Mark_Type [$1]; variable _Ws_Bookmarks_Exist = Integer_Type [$1]; variable i; for (i = 0; i < $1; i++) _Ws_Bookmarks_Exist [i] = -1; % not initialized } % ws_set_bookmark () and ws_goto_bookmark () are implemented to provide % a more Wordstar-ish way of copying and moving blocks, and of moving % around generally. define ws_set_bookmark () { _Ws_Bookmarks[10] = create_user_mark (); Ws_Bookmark_Exist = 1; } define ws_goto_bookmark () { variable mrk = _Ws_Bookmarks[10]; sw2buf (user_mark_buffer (mrk)); goto_user_mark (mrk); } % % Basic commands: cursor movement, delete, f&r, etc. % define ws_execute_macro () { ws_set_bookmark (); call ("execute_macro"); } define ws_next_line_cmd () { ws_set_bookmark (); call ("next_line_cmd"); } define ws_previous_line_cmd () { ws_set_bookmark (); call ("previous_line_cmd"); } define ws_page_down () { ws_set_bookmark (); call ("page_down"); } define ws_page_up () { ws_set_bookmark (); call ("page_up"); } define ws_bob () { ws_set_bookmark (); bob (); } define ws_eob () { ws_set_bookmark (); eob (); } define ws_bol () { ws_set_bookmark (); bol (); } define ws_eol () { ws_set_bookmark (); eol (); } define ws_goto_bottom_of_window () { ws_set_bookmark (); goto_bottom_of_window (); } define ws_goto_top_of_window () { ws_set_bookmark (); goto_top_of_window (); } define ws_window_up () % ^W { recenter (window_line() + 1); } define ws_window_down () % ^Z { recenter (window_line() + 1); } define ws_goto_line_cmd () % ^QI { ws_set_bookmark (); goto_line_cmd (); } define ws_replace_cmd () { ws_set_bookmark (); replace_cmd (); } define ws_search_forward () { ws_set_bookmark (); search_forward (); } define ws_toggle_case () { CASE_SEARCH = not(CASE_SEARCH); vmessage ("Case search is %d ", CASE_SEARCH); } define ws_repeat_search () % ^L { ws_set_bookmark (); go_right_1 (); ifnot (fsearch(LAST_SEARCH)) error ("Not found."); } % !"#$%&'()*+,-./:;<=>?@[\]^`{|}~ , but not _ % define ws_delete_word () % ^T % { % variable p = _get_point (); % push_mark (); % skip_chars ("\n\t !\"#$%&'()*+,-./:;<=>?@[\]^`{|}~"); % if (_get_point () == p) { % skip_chars ("^\n\t !\"#$%&'()*+,-./:;<=>?@[\]^`{|}~"); % } % del_region (); % } define ws_delete_word () % ^T { variable p = _get_point (); push_mark (); skip_chars ("a-zA-Z0-9"); if (_get_point() == p) skip_chars (" \n\t"); if (_get_point() == p) go_right_1 (); del_region (); } define ws_bdelete_word () % ESC-O { variable p = _get_point (); push_mark (); bskip_chars ("a-zA-Z0-9"); if (_get_point () == p) bskip_chars (" \n\t"); if (_get_point () == p) go_left_1 (); del_region (); } define ws_skip_word () % ^F { variable p = _get_point (); push_mark (); skip_chars ("^\n\t !\"#$%&'()*+,-./:;<=>?@[\]^`{|}~"); if (_get_point () == p) { skip_chars ("\n\t !\"#$%&'()*+,-./:;<=>?@[\]^`{|}~"); skip_chars ("^\n\t !\"#$%&'()*+,-./:;<=>?@[\]^`{|}~"); } pop_mark_0 (); } define ws_bskip_word () % ^A { variable p = _get_point (); push_mark (); bskip_chars ("\n\t !\"#$%&'()*+,-./:;<=>?@[\]^`{|}~"); bskip_chars ("^\n\t !\"#$%&'()*+,-./:;<=>?@[\]^`{|}~"); pop_mark_0 (); } % Blocks: ^K-something % % Not implemented: % ^K^H - Hide or unhide the currently selected block % % the blocks are very different. Here we cheat. Two marks are pushed-- % One at beginning of block and one at end. Assumption is that the spots % we see are the ones we put. variable WS_Mark_Pushed = 0; define ws_begin_block () { loop (WS_Mark_Pushed) pop_mark_0 (); WS_Mark_Pushed = 1; push_mark(); push_mark (); call ("set_mark_cmd"); _Ws_Bookmarks[11] = create_user_mark (); message ("Begin Block."); } % copies block to internal buffer-- preserves block variable WS_Block_Buffer = " *ws-internal*"; define ws_copy_block_to_buffer () { if (WS_Mark_Pushed < 2) error ("Block Not defined."); push_spot (); pop_mark_1 (); % end of block dupmark(); pop(); % dup beginning because we want to keep it whatbuf (); setbuf (WS_Block_Buffer); erase_buffer (); setbuf(()); copy_region (WS_Block_Buffer); push_mark (); pop_spot (); } define ws_end_block () { if (WS_Mark_Pushed != 1) { loop (WS_Mark_Pushed) pop_mark_0 (); WS_Mark_Pushed = 0; error ("Begin Block First!"); } ifnot (markp()) { WS_Mark_Pushed = 0; error ("Wordstar Error."); } WS_Mark_Pushed = 2; pop_mark_0 (); % pops visible mark from begin block push_mark (); ws_copy_block_to_buffer (); _Ws_Bookmarks[12] = create_user_mark (); message ("Block Defined."); } define ws_delete_block () { ws_copy_block_to_buffer (); pop_mark_1 (); del_region (); } define ws_write_region () { ws_copy_block_to_buffer (); pop_mark_1 (); write_region (); } define ws_copy_block () { ws_set_bookmark (); % we will return to this location afterwards insbuf (WS_Block_Buffer); ws_goto_bookmark (); message ("Block Copied."); } define ws_comment_region () { variable cbeg, cmid, cend; variable c, c1, celm, extra, smode, mode; if (WS_Mark_Pushed != 2) { error ("Block Undefined!"); } (smode, mode) = what_mode (); ifnot (strcmp(smode,"Text")) { % Text mode return; } ifnot (strcmp(smode,"TeX")) { % TeX mode cbeg = "% "; cmid = "% "; cend = Null_String; } ifnot (strcmp(smode,"html")) { % html mode cbeg = "<!--"; cmid = " -*-"; % Null_String; cend = " -->"; } ifnot (strcmp(smode,"C")) { % C mode cbeg = "/* "; cmid = " * "; cend = " */"; } ifnot (strcmp(smode,"SL")) { % Slang mode cbeg = "% "; cmid = "% "; cend = Null_String; } ifnot (strcmp(smode,"Fortran")) { % Fortran mode cbeg = "C "; cmid = "C "; cend = Null_String; } % the remaining is almost the same as c_comment_region () check_region (1); exchange_point_and_mark (); c = what_column (); narrow (); bob (); USER_BLOCK0 { extra = (); celm = (); bol_skip_white (); c1 = what_column (); if (c1 > c) { goto_column (c); insert (celm); trim (); whitespace (c1 - what_column () + extra); } else { if (eolp ()) goto_column (c); insert (celm); } } X_USER_BLOCK0 (cbeg, 0); while (down_1 ()) { if (down_1 ()) { % check for last but one up_1 (); X_USER_BLOCK0 (cmid, 0); % 1 } } widen (); if (looking_at(cmid)) { deln (3); } X_USER_BLOCK0 (cend, 0); pop_spot (); } define ws_comment_block () % ^K; { ws_set_bookmark (); pop_mark_1 (); ws_comment_region (); ws_goto_bookmark (); message ("Block Commented."); } define ws_move_block () % ^KV % Warning - doesn't work across buffers { ws_copy_block_to_buffer (); ws_set_bookmark (); insbuf (WS_Block_Buffer); ws_delete_block (); ws_goto_bookmark (); message ("Block Moved."); } define ws_insert_file () % ^KR { variable file = read_with_completion ("File:", Null_String, Null_String, 'f'); ws_set_bookmark (); insert_file (file); ws_goto_bookmark (); message ("File inserted."); } define ws_select_word () % ^KT, Borland IDE facility { ws_set_bookmark (); % afterwards, we return to this location loop (WS_Mark_Pushed) pop_mark_0 (); WS_Mark_Pushed = 1; ws_skip_word (); ws_bskip_word (); push_mark(); push_mark (); call ("set_mark_cmd"); ws_skip_word (); WS_Mark_Pushed = 2; pop_mark_0 (); % pops visible mark from begin block push_mark (); ws_copy_block_to_buffer (); ws_goto_bookmark (); message ("Word Selected."); } define ws_insert_last_block () { if (bufferp(WS_Block_Buffer)) insbuf (WS_Block_Buffer); } variable Last_Process_Command = Null_String; define ws_filter_region () % ^K/, Joe extension { variable cmd, tmp_file; cmd = read_mini ("Pipe to command:", Last_Process_Command, Null_String); ifnot (strlen (cmd)) return; Last_Process_Command = cmd; ws_copy_block_to_buffer (); pop_mark_1 (); tmp_file = make_tmp_file ("/tmp/jedpipe"); cmd = strcat (cmd, " > ", tmp_file, " 2>&1"); ifnot (dupmark ()) error ("Mark not set."); if (pipe_region (cmd)) { error ("Process returned a non-zero exit status."); } del_region (); () = insert_file (tmp_file); () = delete_file (tmp_file); } define ws_uppercase_region() % ^KU { ws_copy_block_to_buffer (); pop_mark_1 (); xform_region('u'); } define ws_lowercase_region() % ^KL { ws_copy_block_to_buffer (); pop_mark_1 (); xform_region('d'); } % % These are predefined bookmarks 0..9, a la Wordstar. % define ws_goto_mark_n (n) { variable mrk; if (_Ws_Bookmarks_Exist[n] != 1) error ("Bookmark not set!"); ws_set_bookmark (); mrk = _Ws_Bookmarks[n]; sw2buf (user_mark_buffer (mrk)); goto_user_mark (mrk); message ("done."); } define ws_set_mark_n (n) % ^K0 { _Ws_Bookmarks[n] = create_user_mark (); _Ws_Bookmarks_Exist[n] = 1; vmessage ("Bookmark %d set.", n); } define ws_save_buffer () % !!! buggy !!! { variable file, dir, flags; (file, dir, , flags) = getbuf_info (); file = read_file_from_mini ("Save to file:"); () = write_buffer (file); } % % These are ^QB and ^QK % define ws_goto_begin_block () % ^QB { variable mrk = _Ws_Bookmarks[11]; sw2buf (user_mark_buffer (mrk)); ws_set_bookmark (); goto_user_mark (mrk); } define ws_goto_end_block () % ^QK { variable mrk = _Ws_Bookmarks[12]; sw2buf (user_mark_buffer (mrk)); ws_set_bookmark (); goto_user_mark (mrk); } define ws_goto_prev () % ^QP { if (Ws_Bookmark_Exist != 1) error ("No previous location!"); ws_goto_bookmark (); } runhooks ("keybindings_hook", _Jed_Emulation); % --- End of file wordstar.sl ---
Close