Added upstream from http://ftp.icm.edu.pl/pub/loglan/
[loglan.git] / bin / atari / emacs.rc
1 ;       EMACS.RC:       Startup file for MicroEMACS 3.9cs\r
2 ;\r
3 ;                       This file is executed every time the\r
4 ;                       editor is entered, but only if it can\r
5 ;                       be found on '.' or '$(PATH)'.\r
6 ;\r
7 \r
8 ; if you want the 40 lines mode, then uncomment this line:\r
9 ;       set $sres DENSE\r
10 \r
11 set $discmd FALSE\r
12 write-message "[Setting up....]"\r
13 \r
14 ; Micro emacs now simulates tabs with blanks in some files (.c, .asm etc.)\r
15 ; If you don't like this, then press "M-0 TAB" when inside the desired buffer.\r
16 \r
17 ; have fun with the Help and Keypad keys. They are all harmless functions.\r
18 \r
19 ;       ***** Rebind the Function keys\r
20 ;\r
21 ;       Since this are the standard settings on Atari, they need not be set !\r
22 ;       They just give an impression on the syntax needed.\r
23 ;\r
24 ;       The bind-fn-key command is new by CS.\r
25 ;       Non-cs versions must use bind-to-key.\r
26 ;\r
27 ;bind-fn-key kill-to-end-of-line        f1              ; non-shift f1\r
28 ;bind-fn-key yank                       f2\r
29 ;bind-fn-key search-forward             f3\r
30 ;bind-fn-key query-replace-string       f4\r
31 ;bind-fn-key search-reverse             f5\r
32 ;bind-fn-key execute-file               f6\r
33 ;bind-fn-key next-buffer                f7\r
34 ;bind-fn-key find-file                  f8\r
35 ;bind-fn-key save-file                  f9\r
36 ;bind-fn-key quick-exit                 f10\r
37 ;bind-fn-key help                       S-F1            ; Shift-F1\r
38 \r
39 ; Cursor-Block:\r
40 ;bind-fn-key help                       help\r
41 ;bind-fn-key exit-emacs                 undo            ; undo\r
42 ;bind-fn-key previous-page              pgup            ; insert key on Atari\r
43 ;bind-fn-key next-page                  pgdown          ; clr/home key on Atari\r
44 \r
45 ; Mouse\r
46 ;bind-fn-key set-mark                   leftmouse\r
47 ;bind-fn-key copy-region                rightmouse\r
48 \r
49 ; Keypad\r
50 ;bind-fn-key move-window-up             K(\r
51 ;bind-fn-key move-window-down           K)\r
52 ;bind-fn-key split-current-window       K/\r
53 ;bind-fn-key delete-other-windows       K*\r
54 ;bind-fn-key previous-window            K-\r
55 ;bind-fn-key next-window                K+\r
56 ;bind-fn-key beginning-of-file          K7\r
57 ;bind-fn-key end-of-file                K9\r
58 ;bind-fn-key previous-word              K4\r
59 ;bind-fn-key redraw-display             K5\r
60 ;bind-fn-key next-word                  K6\r
61 ;bind-fn-key beginning-of-line          K1\r
62 ;bind-fn-key end-of-line                K3\r
63 ;bind-fn-key execute-macro              K0\r
64 ;bind-fn-key goto-line                  K.\r
65 \r
66 ;; >>>> note: you get the name of a key by pressing   help c <key>\r
67 \r
68 ;       These are not standard:\r
69 \r
70 bind-to-key apropos                     FNV             ; S-F3\r
71 bind-to-key help                        FNW             ; S-F4\r
72 bind-to-key fill-paragraph              FNX             ; S-F5\r
73 \r
74 ;       set screen colors\r
75 add-global-mode "White"         ; foreground\r
76 add-global-mode "blue"          ; background\r
77 add-mode "White"                ; foreground\r
78 add-mode "blue"                 ; background\r
79 \r
80 ;       toggle function key window off\r
81 1 store-macro\r
82         save-window\r
83         1 next-window\r
84         !if &sequal "Function Keys" $cbufname\r
85                 delete-window\r
86         !endif\r
87         bind-to-key execute-macro-14 FNT        ; S-F1\r
88 !force  restore-window\r
89         write-message "[Function key window OFF]"\r
90 !endm\r
91 \r
92 ;       toggle function key window back on\r
93 14 store-macro\r
94         1 next-window\r
95         !if &sequal $cbufname "emacs.hlp"\r
96                 execute-macro-11\r
97         !endif\r
98         !if &not &sequal $cbufname "Function Keys"\r
99                 1 split-current-window\r
100                 select-buffer "Function Keys"\r
101                 add-mode "red"\r
102 !force          6 resize-window\r
103                 beginning-of-file\r
104         !endif\r
105         bind-to-key execute-macro-1 FNT\r
106         2 next-window\r
107         write-message "[Function key window ON]"\r
108 !endm\r
109 \r
110 ;       Enter Help\r
111 2 store-macro\r
112         1 next-window           ;Make sure the function key window isn't up!\r
113         !if &sequal $cbufname "Function Keys"\r
114                 delete-window\r
115                 bind-to-key execute-macro-14 FNT\r
116         !endif\r
117         help\r
118         8 resize-window\r
119         bind-to-key execute-macro-12 FNh\r
120         bind-to-key execute-macro-13 FNn\r
121         bind-to-key execute-macro-11 FNU\r
122         bind-to-key execute-macro-15 ^XO\r
123         bind-to-key execute-macro-15 ^XP\r
124         bind-to-key execute-macro-15 FNu\r
125         add-mode "red"\r
126         beginning-of-file\r
127         2 forward-character\r
128         clear-message-line\r
129 !endm\r
130 \r
131 ;       Exit Help\r
132 11 store-macro\r
133         bind-to-key previous-page FNh\r
134         bind-to-key next-page FNn\r
135         bind-to-key execute-macro-2 FNU\r
136         bind-to-key next-window ^XO\r
137         bind-to-key previous-window ^XP\r
138         bind-to-key next-window FNu\r
139         delete-window\r
140         clear-message-line\r
141 !endm\r
142 \r
143 ;       don't allow these commands from within the HELP screen\r
144 15      store-macro\r
145         write-message "[Use S-F2 to exit HELP (with SHIFT)]!!"\r
146 !endm\r
147 \r
148 ;       last help page\r
149 12 store-macro\r
150         beginning-of-line\r
151         search-reverse "=>"\r
152         1 redraw-display\r
153 !endm\r
154 \r
155 ;       next help page\r
156 13 store-macro\r
157         beginning-of-line\r
158         2 forward-character\r
159         search-forward "=>"\r
160         1 redraw-display\r
161 !endm\r
162 \r
163 ;       reformat indented paragraph\r
164 \r
165 6 store-macro\r
166         write-message "                    [Fixing paragraph]"\r
167         kill-region\r
168         2 split-current-window\r
169         select-buffer "[temp]"\r
170         yank\r
171         beginning-of-file\r
172         replace-string "~n      " "~n"\r
173         write-message "                    [Fixing paragraph]"\r
174         66 set-fill-column\r
175         write-message "                    [Fixing paragraph]"\r
176         fill-paragraph\r
177         77 set-fill-column\r
178         beginning-of-file\r
179         handle-tab\r
180         replace-string ~n "~n   "\r
181         write-message "                    [Fixing paragraph]"\r
182         end-of-file\r
183         2 delete-previous-character\r
184         beginning-of-file\r
185         set-mark\r
186         write-message "                    [Fixing paragraph]"\r
187         end-of-file\r
188         kill-region\r
189         unmark-buffer\r
190         delete-window\r
191         yank\r
192         delete-buffer "[temp]"\r
193         write-message "                    [Fixed paragraph]"\r
194 !endm\r
195 \r
196 ;       indent region\r
197 \r
198 7 store-macro\r
199         write-message "                    [Indenting region]"\r
200         kill-region\r
201         2 split-current-window\r
202         select-buffer "[temp]"\r
203         yank\r
204         beginning-of-file\r
205         handle-tab\r
206         replace-string "~n" "~n "\r
207         end-of-file\r
208         4 delete-previous-character\r
209         beginning-of-file\r
210         set-mark\r
211         write-message "                    [Indenting region]"\r
212         end-of-file\r
213         kill-region\r
214         unmark-buffer\r
215         delete-window\r
216         yank\r
217         delete-buffer "[temp]"\r
218         write-message "                    [Region Indented]"\r
219 !endm\r
220 \r
221 ;       undent region\r
222 \r
223 8 store-macro\r
224         write-message "                    [Undenting region]"\r
225         kill-region\r
226         2 split-current-window\r
227         select-buffer "[temp]"\r
228         yank\r
229         beginning-of-file\r
230         delete-next-character\r
231         replace-string "~n      " "~n"\r
232         end-of-file\r
233         2 delete-previous-character\r
234         beginning-of-file\r
235         set-mark\r
236         write-message "                    [Undenting region]"\r
237         end-of-file\r
238         kill-region\r
239         unmark-buffer\r
240         delete-window\r
241         yank\r
242         delete-buffer "[temp]"\r
243         write-message "                    [Region undented]"\r
244 !endm\r
245 \r
246 ;\r
247 ;       bring up the function key window\r
248 \r
249         1 split-current-window\r
250         select-buffer "Function Keys"\r
251         add-mode "red"\r
252         6 resize-window\r
253         insert-string "f1 kill line    f6 exec file  | F1 toggle function list F7 indent region~n"\r
254         insert-string "f2 yank         f7 select buf | F2 toggle help file     F8 undent region~n"\r
255         insert-string "f3 search       f8 find file  | F3 find command/apropos ^X= where am I~n"\r
256         insert-string "f4 replace      f9 save file  | F4 general HELP !       M-G goto line (ESC-G)~n"\r
257         insert-string "f5 search back f10 exit emacs | F5 reformat paragraph   M-< start of file~n"\r
258         insert-string "^G cancel command (Control+G) | F6 ref undented region  M-O toggle OVER mode~n"\r
259         beginning-of-file\r
260         unmark-buffer\r
261         add-mode "view"\r
262         next-window\r
263 \r
264 set $discmd TRUE\r
265 \r
266 ; -eof-\r