Commit | Line | Data |
---|---|---|
78ed81a3 | 1 | .Go 14 "QUESTIONS & ANSWERS" |
2 | .nr qN 0 1 | |
3 | .de Q | |
15637ed4 | 4 | .sp |
78ed81a3 | 5 | .IP \fB\\n+(qN) 0.4i |
15637ed4 | 6 | .. |
78ed81a3 | 7 | .de A |
15637ed4 RG |
8 | .IP \fR 0.75i |
9 | .. | |
78ed81a3 | 10 | .Q |
11 | How can I make \*E run faster under DOS? | |
12 | .A | |
15637ed4 RG |
13 | There are several things you can do. |
14 | The first thing to do is get a good screen driver such as NANSI.SYS. | |
15 | This can speed up screen redrawing by as much as a factor of eight! | |
16 | The DOS-specific part of section 12 tells you how to do this. | |
78ed81a3 | 17 | .A |
18 | You might also consider reducing the size of the blocks that \*E uses. | |
15637ed4 RG |
19 | You'll need to recompile \*E to do this. |
20 | The default BLKSIZE is 1024 byte for the DOS version of \*E, which means | |
78ed81a3 | 21 | that for each keystroke that you insert, \*E must shift an average of |
15637ed4 RG |
22 | about 500 bytes. |
23 | That's a lot to ask from a little old 5MHz 8088. | |
24 | A BLKSIZE of 512 bytes might be more appropriate. | |
78ed81a3 | 25 | .A |
15637ed4 RG |
26 | If you're \fIreally\fR desperate for more speed, you might want to make |
27 | \*E store its temporary files on a RAM disk. | |
28 | However, this limits the size of the file you can edit, and it eliminates any | |
29 | chance you may have had to recover your work after a power failure | |
30 | or system crash, but it might be worth it; you decide. | |
31 | To do this, add ":set dir=R:\\" (or whatever your RAM disk's name is) | |
32 | to the \fIelvis.rc\fP file. | |
78ed81a3 | 33 | .A |
15637ed4 RG |
34 | Next, consider turning off the "sync" option. |
35 | When the sync option is turned on, \*E will close the temporary file | |
36 | and reopen it after every change, in order to force DOS to update | |
37 | the file's directory entry. | |
78ed81a3 | 38 | If you put ":set nosync" into the \fIelvis.rc\fP file, then \*E will |
15637ed4 RG |
39 | only close the file when you start editing a different text file, or |
40 | when you're exiting \*E. | |
41 | Consequently, there is no chance that you'll be able to recover your | |
42 | changes after a power failure... so if you're going to this, then you | |
43 | might as well store the temp files on the RAM disk, too. | |
78ed81a3 | 44 | .Q |
15637ed4 | 45 | Where's the <Esc> key on a DEC keyboard? |
78ed81a3 | 46 | .A |
15637ed4 RG |
47 | I don't know. Maybe the <F11> key? |
48 | You could always use ":map!" to make some other key act like the <Esc> key. | |
49 | If all else fails, use <Control><[>. | |
78ed81a3 | 50 | .Q |
15637ed4 | 51 | Is there a way to show which keys do what? |
78ed81a3 | 52 | .A |
15637ed4 RG |
53 | Yes. The command ":map" will show what each key does in command mode, |
54 | and ":map!" (with an exclamation mark) shows what each key does in | |
55 | input mode. | |
78ed81a3 | 56 | .A |
15637ed4 RG |
57 | The table is divided into three columns: the key's label, the characters |
58 | that it sends, and the characters that \*E pretends you typed. | |
78ed81a3 | 59 | .Q |
15637ed4 | 60 | How can I make \*E display long lines like the real vi? |
78ed81a3 | 61 | .A |
15637ed4 | 62 | You can't yet. |
78ed81a3 | 63 | The next version of \*E should support this, though. |
64 | .Q | |
15637ed4 RG |
65 | I can't recover my text [under MS-DOS or Atari TOS]. |
66 | According to the directory listing, the temporary file is 0 bytes long. | |
67 | What went wrong? | |
78ed81a3 | 68 | .A |
15637ed4 RG |
69 | MS-DOS and TOS only update a file's directory entry when the file is closed. |
70 | If the system crashes while the file is still open, then the file's length | |
71 | is stored as 0 bytes. | |
72 | The ":set sync" option is supposed to prevent this; | |
73 | you probably turned it off in the interest of speed, right? | |
78ed81a3 | 74 | .A |
15637ed4 RG |
75 | Under MS-DOS [I don't know about TOS], you should delete the empty |
76 | temporary file, and then run CHKDSK/F. | |
77 | This \fImight\fP find the data that belonged in the empty file, | |
78 | and place it in a new file with a name like "000001.CHK" -- something like that. | |
79 | You can then try to extract the text from that temporary file by giving the | |
78ed81a3 | 80 | command "elvprsv -R 000001.chk". |
81 | If you're lucky, then this might recover your text. | |
82 | .Q | |
15637ed4 | 83 | What is the most current version of \*E? |
78ed81a3 | 84 | .A |
15637ed4 RG |
85 | Each version of \*E that is released to the public has a version number |
86 | of the form "number point number". | |
78ed81a3 | 87 | As I write this, the most current version of \*E is \*V. |
88 | .A | |
15637ed4 RG |
89 | The intermediate steps between one release and the next are labeled with |
90 | the \fInext\fP version number, with a letter appended. | |
91 | For example, after 1.4 was released, I started working on 1.5a. | |
92 | I am currently working on 2.0a. | |
93 | When \*E reaches a stable state, I'll call it 2.0 and release it. | |
78ed81a3 | 94 | .A |
95 | Sometimes a beta-test version of \*E will be available via anonymous FTP | |
15637ed4 | 96 | from m2xenix.psg.com, in the directory "pub/elvis/beta". |
78ed81a3 | 97 | .Q |
15637ed4 RG |
98 | I only got executables, but now I want the source code. |
99 | Where can I get it? | |
78ed81a3 | 100 | .A |
15637ed4 RG |
101 | If you have access to the Internet, then you should be able to fetch it |
102 | from one of the public archives such as \fBplains.nodak.edu\fP. | |
103 | It is accessible via anonymous FTP, or via an email server named | |
104 | "archive-server@plains.nodak.edu". | |
105 | Elvis is located in the directory "/pub/Minix/all.contrib". | |
78ed81a3 | 106 | .A |
107 | It is also available from the C Users' Group, in volume #365. | |
108 | As I write this, they are asking $4 per disk plus $3.50 per order in the US, | |
109 | and elvis requires three disks; this is subject to change. | |
110 | Their phone number is (913) 841-1631, and their address is: | |
111 | .LD | |
112 | .ta 2.5i | |
113 | .sp | |
114 | The C Users' Group | |
115 | 1601 W. 23rd Street, #200 | |
116 | Lawrence KS 66046-2743 | |
15637ed4 | 117 | .DE |
78ed81a3 | 118 | .Q |
15637ed4 | 119 | Is this shareware, or public domain, or what? |
78ed81a3 | 120 | .A |
15637ed4 RG |
121 | It is not public domain; it is copyrighted by me, Steve Kirkendall. |
122 | However, this particular version is freely redistributable, in either | |
123 | source form or executable form. | |
124 | (I would prefer that you give copies away for free, complete with the | |
125 | full source code... but I'm not going to force you.) | |
78ed81a3 | 126 | .A |
15637ed4 RG |
127 | It is not shareware; you aren't expected to send me anything. |
128 | You can use it without guilt. | |
78ed81a3 | 129 | .A |
15637ed4 RG |
130 | It is not "copylefted." |
131 | I hold a copyright, but currently I have not added any of the usual restrictions | |
132 | that you would find on copylefted software. | |
133 | If people start doing really obnoxious things to \*E, then I will start | |
134 | adding restrictions to subsequent versions, but earlier versions won't | |
135 | be affected. | |
136 | (So far, everybody has been pretty good about this so no restrictions | |
137 | have been necessary.) | |
78ed81a3 | 138 | .Q |
15637ed4 | 139 | Can I reuse parts of your source code? |
78ed81a3 | 140 | .A |
15637ed4 RG |
141 | Yes. Please be careful, though, to make sure that the code really is mine. |
142 | Some of the code was contributed by other people, and I don't have the | |
143 | authority to give you permission to use it. | |
144 | The author's name can be found near the top of each source file. | |
145 | If it says "Steve Kirkendall" then you may use it; | |
146 | otherwise, you'd better contact the author first. | |
78ed81a3 | 147 | .A |
15637ed4 RG |
148 | Please don't remove my name from the source code. |
149 | If you modify the source, please make a note of that fact in a comment | |
150 | near the top of the source code. | |
151 | And, finally, please mention my name in your documentation. | |
78ed81a3 | 152 | .Q |
15637ed4 | 153 | Can \*E work with non-ASCII files? |
78ed81a3 | 154 | .A |
155 | \*E is 8-bit clean. | |
156 | This means that \*E will allow you to edit files that use a European | |
157 | extended ASCII character set. | |
158 | However, some terminals are not 8-bit clean; | |
159 | they treat characters in the range 0x80-0x9f as control characters. | |
160 | \*E expects all characters above 0x7f to be treated as normal displayable | |
161 | characters, so on these terminals \*E may produce a scrambled display. | |
162 | .A | |
15637ed4 RG |
163 | \*E can't edit binary files because it can't handle the NUL character, |
164 | and because of line-length limitations. | |
78ed81a3 | 165 | .A |
166 | \*E has also modified to work with 16-bit character sets, but that modification | |
167 | is not part of the standard \*E distribution. | |
15637ed4 RG |
168 | Yongguang Zhang (ygz@cs.purdue.edu) has created a Chinese version of \*E |
169 | that uses 16-bit characters and runs under cxterm (Chinese X-term) | |
170 | on X-windows systems. | |
171 | Junichiro Itoh (itojun@foretune.co.jp) has modified \*E to edit Japanese | |
172 | text under MS-DOS. |