source: trunk/ccl/hemlock/src/package.lisp @ 2099

Last change on this file since 2099 was 2099, checked in by gb, 14 years ago

Don't export CHECK-REGION-QUERY-SIZE.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 18.1 KB
Line 
1(in-package :cl-user)
2
3;; Note: I want real relative package names like the Symbolics has
4;; them. In the mean time:
5
6#+CMU
7(eval-when (:compile-toplevel :load-toplevel :execute)
8  (progn
9    ;; Just in case the original Hemlock is loaded.
10    (dolist (p '("HEMLOCK" "HEMLOCK-INTERNALS"))
11      (when (find-package p)
12        (delete-package p)))))
13   
14
15(defpackage :hemlock-interface
16  (:use)
17  (:export
18   ;; Functions from the CIM:
19   #:linep
20   #:line-string
21   #:line-previous
22   #:line-next
23   #:line-buffer
24   #:line-length
25   #:line-character
26   #:line-plist
27   #:line-signature
28   #:markp
29   #:mark-line
30   #:mark-charpos
31   #:mark-kind
32   #:previous-character
33   #:next-character
34   #:mark
35   #:copy-mark
36   #:delete-mark
37   #:move-to-position
38   #:move-mark
39   #:line-start
40   #:line-end
41   #:buffer-start
42   #:buffer-end
43   #:mark-before
44   #:mark-after
45   #:character-offset
46   #:line-offset
47   #:region
48   #:regionp
49   #:make-empty-region
50   #:copy-region
51   #:region-to-string
52   #:string-to-region
53   #:line-to-region
54   #:region-start
55   #:region-end
56   #:region-bounds
57   #:set-region-bounds
58   #:count-lines
59   #:count-characters
60   #:current-buffer
61   #:current-point
62   #:current-mark
63   #:pop-buffer-mark
64   #:push-buffer-mark
65   #:change-to-buffer
66   #:previous-buffer
67   #:make-buffer
68   #:bufferp
69   #:buffer-name
70   #:buffer-region
71   #:buffer-pathname
72   #:buffer-write-date
73   #:buffer-point
74   #:buffer-mark
75   #:buffer-start-mark
76   #:buffer-end-mark
77   #:buffer-writable
78   #:buffer-modified
79   #:buffer-signature
80   #:buffer-variables
81   #:buffer-modes
82   #:buffer-windows
83   #:buffer-delete-hook
84   #:delete-buffer
85   #:delete-buffer-if-possible
86   #:make-modeline-field
87   #:modeline-field-p
88   #:modeline-field-name
89   #:modeline-field
90   #:modeline-field-function
91   #:modeline-field-width
92   #:buffer-modeline-fields
93   #:buffer-modeline-field-p
94   #:update-modeline-fields
95   #:update-modeline-field
96   #:insert-character
97   #:insert-string
98   #:insert-region
99   #:ninsert-region
100   #:delete-characters
101   #:delete-region
102   #:delete-and-save-region
103   #:filter-region
104   #:start-line-p
105   #:end-line-p
106   #:empty-line-p
107   #:blank-line-p
108   #:blank-before-p
109   #:blank-after-p
110   #:same-line-p
111   #:mark<
112   #:mark<=
113   #:mark=
114   #:mark/=
115   #:mark>=
116   #:mark>
117   #:line<
118   #:line<=
119   #:line>=
120   #:line>
121   #:lines-related
122   #:first-line-p
123   #:last-line-p
124   #:kill-region
125   #:kill-characters
126   #:activate-region
127   #:deactivate-region
128   #:region-active-p
129   #:check-region-active
130   #:current-region
131   #:new-search-pattern
132   #:search-pattern-p
133   #:get-search-pattern
134   #:find-pattern
135   #:replace-pattern
136   #:current-variable-tables
137   #:defhvar
138   #:variable-value
139   #:variable-documentation
140   #:variable-hooks
141   #:variable-name
142   #:string-to-variable
143   #:hemlock-bound-p
144   #:delete-variable
145   #:make-command
146   #:commandp
147   #:command-documentation
148   #:command-function
149   #:command-name
150   #:bind-key
151   #:command-bindings
152   #:delete-key-binding
153   #:get-command
154   #:map-bindings
155   #:key-translation
156   #:interactive
157   #:last-command-type
158   #:prefix-argument
159   #:recursive-edit
160   #:in-recursive-edit
161   #:exit-recursive-edit
162   #:abort-recursive-edit
163   #:defmode
164   #:mode-documentation
165   #:buffer-major-mode
166   #:buffer-minor-mode
167   #:mode-variables
168   #:mode-major-p
169   #:defattribute
170   #:character-attribute-name
171   #:character-attribute-documentation
172   #:character-attribute
173   #:character-attribute-p
174   #:shadow-attribute
175   #:unshadow-attribute
176   #:find-attribute
177   #:reverse-find-attribute
178   #:character-attribute-hooks
179   #:current-window
180   #:make-window
181   #:windowp
182   #:delete-window
183   #:window-buffer
184   #:window-display-start
185   #:window-display-end
186   #:window-display-recentering
187   #:window-point
188   #:center-window
189   #:scroll-window
190   #:displayed-p
191   #:window-height
192   #:window-width
193   #:next-window
194   #:previous-window
195   #:mark-to-cursorpos
196   #:cursorpos-to-mark
197   #:last-key-event-cursorpos
198   #:mark-column
199   #:move-to-column
200   #:show-mark
201   #:redisplay
202   #:redisplay-all
203   #:editor-finish-output
204   #:define-logical-key-event
205   #:logical-key-event-key-events
206   #:logical-key-event-name
207   #:logical-key-event-documentation
208   #:logical-key-event-p
209   #:clear-echo-area
210   #:message
211   #:loud-message
212   #:prompt-for-buffer
213   #:prompt-for-key-event
214   #:prompt-for-key
215   #:prompt-for-file
216   #:prompt-for-integer
217   #:prompt-for-keyword
218   #:prompt-for-expression
219   #:prompt-for-string
220   #:prompt-for-variable
221   #:prompt-for-y-or-n
222   #:prompt-for-yes-or-no
223   #:process-file-options
224   #:pathname-to-buffer-name
225   #:buffer-default-pathname
226   #:read-file
227   #:write-file
228   #:write-buffer-file
229   #:read-buffer-file
230   #:find-file-buffer
231   ;;   #:ed
232   #:exit-hemlock
233   #:pause-hemlock
234   #:get-key-event
235   #:unget-key-event
236   #:clear-editor-input
237   #:listen-editor-input
238   #:editor-sleep
239   #:make-hemlock-output-stream
240   #:hemlock-output-stream-p
241   #:make-hemlock-region-stream
242   #:hemlock-region-stream-p
243   #:editor-error-format-string
244   #:editor-error-format-arguments
245   #:editor-error
246   #:add-definition-dir-translation
247   #:delete-definition-dir-translation
248   #:schedule-event
249   #:remove-scheduled-event
250   #:in-lisp
251   #:indent-region
252   #:indent-region-for-commands
253   #:delete-horizontal-space
254   #:pre-command-parse-check
255   #:form-offset
256   #:top-level-offset
257   #:mark-top-level-form
258   #:defun-region
259   #:inside-defun-p
260   #:start-defun-p
261   #:forward-up-list
262   #:backward-up-list
263   #:valid-spot
264   #:defindent
265   #:word-offset
266   #:sentence-offset
267   #:paragraph-offset
268   #:mark-paragraph
269   #:goto-page
270   #:page-offset
271   #:page-directory
272   #:display-page-directory
273   #:fill-region
274   #:fill-region-by-paragraphs
275   #:make-string-table
276   #:string-table-p
277   #:string-table-separator
278   #:delete-string
279   #:clrstring
280   #:getstring
281   #:complete-string
282   #:find-ambiguous
283   #:find-containing
284   #:make-ring
285   #:ringp
286   #:ring-length
287   #:ring-ref
288   #:ring-push
289   #:ring-pop
290   #:rotate-ring
291   #:save-for-undo
292   #:make-region-undo
293   #:supply-generic-pointer-up-function
294
295   ;; Macros from the CIM:
296   #:with-writable-buffer
297   #:value
298   #:setv
299   #:add-hook
300   #:remove-hook
301   #:invoke-hook
302   #:defcommand
303   #:use-buffer
304   #:command-case
305   #:define-file-option
306   #:define-file-type-hook
307   #:do-active-group
308   #:with-input-from-region
309   #:with-output-to-mark
310   #:with-pop-up-display
311   #:handle-lisp-errors
312   #:do-alpha-chars
313   #:do-strings
314   
315   ))
316
317(defpackage :hemlock-ext
318  (:use :common-lisp
319        :hemlock-interface)
320  #+cmu
321  (:import-from :ext #:complete-file)
322  (:shadow #:char-code-limit)
323  ;;
324  (:export
325   #:file-comment
326   #:without-interrupts
327   #:without-gcing
328   #:define-setf-method
329   #:getenv
330
331   #:delq #:memq #:assq
332   #:fixnump
333   #:file-writable
334     
335   #:define-keysym #:define-mouse-keysym #:name-keysym #:keysym-names
336   #:keysym-preferred-name #:define-key-event-modifier #:define-clx-modifier
337   #:make-key-event-bits #:key-event-modifier-mask #:key-event-bits-modifiers
338   #:*all-modifier-names* #:translate-key-event #:translate-mouse-key-event
339   #:make-key-event #:key-event #:key-event-p #:key-event-bits #:key-event-keysym
340   #:char-key-event #:key-event-char #:key-event-bit-p #:do-alpha-key-events
341   #:print-pretty-key #:print-pretty-key-event
342
343   ;; hemlock-ext.lisp
344   #:disable-clx-event-handling
345   #:quit
346   #:serve-event
347   #:sap-ref-8
348   #:make-object-set
349   #:default-clx-event-handler
350   #:serve-exposure
351   #:serve-graphics-exposure
352   #:serve-no-exposure
353   #:serve-configure-notify
354   #:serve-destroy-notify
355   #:serve-unmap-notify
356   #:serve-map-notify
357   #:serve-reparent-notify
358   #:serve-gravity-notify
359   #:serve-circulate-notify
360   #:serve-client-message
361   #:serve-key-press
362   #:serve-button-press
363   #:serve-button-release
364   #:serve-enter-notify
365   #:serve-leave-notify
366   #:flush-display-events
367   #:object-set-event-handler
368   #:with-clx-event-handling
369   #:complete-file
370   #:default-directory))
371
372(defpackage :hemlock-internals
373  (:use :common-lisp :hemlock-interface)
374  (:nicknames :hi)
375  (:shadow #:char-code-limit)
376  (:import-from
377   ;; gray streams
378   #+EXCL  :excl
379   #+CLISP :gray
380   #+CMU   :ext
381   #+sbcl  :sb-gray
382   #+scl   :ext
383   #+openmcl :gray
384   ;;
385   ;; Note the pacth i received from DTC mentions character-output and
386   ;; character-input-stream here, so we actually see us faced to
387   ;; provide for compatibility classes. --GB
388   #-scl   #:fundamental-character-output-stream
389   #-scl   #:fundamental-character-input-stream
390   ;; There is conditionalization in streams.lisp, see above --GB
391   #+scl   #:character-output-stream
392   #+scl   #:character-input-stream
393   
394   #:stream-write-char
395   #-scl   #:stream-write-string     ; wonder what that is called --GB
396   #:stream-read-char
397   #:stream-listen
398   #:stream-unread-char
399   #:stream-clear-input
400   #:stream-finish-output
401   #:stream-force-output
402   #:stream-line-column)
403  (:import-from :hemlock-ext
404                #:delq #:memq #:assq)
405  ;;
406  (:export
407   #:*FAST*                             ;hmm not sure about this one
408   
409   ;; rompsite.lisp
410   #:show-mark #:editor-sleep #:*input-transcript* #:fun-defined-from-pathname
411   #:editor-describe-function #:pause-hemlock #:store-cut-string
412   #:fetch-cut-string #:schedule-event #:remove-scheduled-event
413   #:enter-window-autoraise #:directoryp #:merge-relative-pathnames
414   ;;
415   ;; Export default-font to prevent a name conflict that occurs due to
416   ;; the Hemlock variable "Default Font" defined in SITE-INIT below.
417   ;;
418   #:default-font
419   #:*beep-function* #:beep
420
421   ;;
422   #:mark #:mark-line #:mark-charpos #:markp #:region #:region-start #:region-end
423   #:regionp #:buffer #:bufferp #:buffer-modes #:buffer-point #:buffer-writable
424   #:buffer-delete-hook #:buffer-windows #:buffer-variables #:buffer-write-date
425   #:region #:regionp #:region-start #:region-end #:window #:windowp #:window-height
426   #:window-width #:window-display-start #:window-display-end #:window-point
427   #:window-display-recentering #:commandp #:command #:command-function
428   #:command-documentation #:modeline-field #:modeline-field-p
429
430   ;; from input.lisp
431   #:get-key-event #:unget-key-event #:clear-editor-input #:listen-editor-input
432   #:*last-key-event-typed* #:*key-event-history* #:*editor-input*
433   #:*real-editor-input* #:input-waiting #:last-key-event-cursorpos
434
435   ;; from macros.lisp
436   #:invoke-hook #:value #:setv #:hlet #:string-to-variable #:add-hook #:remove-hook
437   #:defcommand #:with-mark #:use-buffer #:editor-error
438   #:editor-error-format-string #:editor-error-format-arguments #:do-strings
439   #:command-case #:reprompt #:with-output-to-mark #:with-input-from-region
440   #:handle-lisp-errors #:with-pop-up-display #:*random-typeout-buffers*
441
442   ;; from line.lisp
443   #:line #:linep #:line-previous #:line-next #:line-plist #:line-signature
444
445   ;; from ring.lisp
446   #:ring #:ringp #:make-ring #:ring-push #:ring-pop #:ring-length #:ring-ref
447   #:rotate-ring
448
449   ;; from table.lisp
450   #:string-table #:string-table-p #:make-string-table
451   #:string-table-separator #:getstring
452   #:find-ambiguous #:complete-string #:find-containing
453   #:delete-string #:clrstring #:do-strings
454
455   ;; bit-display.lisp
456   #:redisplay #:redisplay-all
457
458   ;; bit-screen.lisp
459   #:make-xwindow-like-hwindow #:*create-window-hook* #:*delete-window-hook*
460   #:*random-typeout-hook* #:*create-initial-windows-hook*
461
462   ;; buffer.lisp
463   #:buffer-modified #:buffer-region #:buffer-name #:buffer-pathname
464   #:buffer-major-mode #:buffer-minor-mode #:buffer-modeline-fields
465   #:buffer-modeline-field-p #:current-buffer #:current-point
466   #:in-recursive-edit #:exit-recursive-edit #:abort-recursive-edit
467   #:recursive-edit #:defmode #:mode-major-p #:mode-variables #:mode-documentation
468   #:make-buffer #:delete-buffer #:with-writable-buffer #:buffer-start-mark
469   #:buffer-end-mark #:*buffer-list*
470
471   ;; charmacs.lisp
472   #:syntax-char-code-limit #:search-char-code-limit #:do-alpha-chars
473
474   ;; cursor.lisp
475   #:mark-to-cursorpos #:center-window #:displayed-p #:scroll-window
476   #:mark-column #:cursorpos-to-mark #:move-to-column
477
478   ;; display.lisp
479   #:redisplay #:redisplay-all
480
481   ;; echo.lisp
482   #:*echo-area-buffer* #:*echo-area-stream* #:*echo-area-window*
483   #:*parse-starting-mark* #:*parse-input-region*
484   #:*parse-verification-function* #:*parse-string-tables*
485   #:*parse-value-must-exist* #:*parse-default* #:*parse-default-string*
486   #:*parse-prompt* #:*parse-help* #:clear-echo-area #:message #:loud-message
487   #:prompt-for-buffer #:prompt-for-file #:prompt-for-integer
488   #:prompt-for-keyword #:prompt-for-expression #:prompt-for-string
489   #:prompt-for-variable #:prompt-for-yes-or-no #:prompt-for-y-or-n
490   #:prompt-for-key-event #:prompt-for-key #:*logical-key-event-names*
491   #:logical-key-event-p #:logical-key-event-documentation
492   #:logical-key-event-name #:logical-key-event-key-events
493   #:define-logical-key-event #:*parse-type* #:current-variable-tables
494
495   ;; files.lisp
496   #:read-file #:write-file
497
498
499   ;; font.lisp
500   #:font-mark #:delete-font-mark #:delete-line-font-marks #:move-font-mark
501   #:window-font
502
503   ;; htext1.lisp
504   #:line-length #:line-buffer #:line-string #:line-character #:mark #:mark-kind
505   #:copy-mark #:delete-mark #:move-to-position #:region #:make-empty-region
506   #:start-line-p #:end-line-p #:empty-line-p #:blank-line-p #:blank-before-p
507   #:blank-after-p #:same-line-p #:mark< #:mark<= #:mark> #:mark>= #:mark= #:mark/=
508   #:line< #:line<= #:line> #:line>= #:first-line-p #:last-line-p #:buffer-signature
509   #:lines-related
510
511
512   ;; htext2.lisp
513   #:region-to-string #:string-to-region #:line-to-region
514   #:previous-character #:next-character #:count-lines
515   #:count-characters #:line-start #:line-end #:buffer-start
516   #:buffer-end #:move-mark #:mark-before #:mark-after
517   #:character-offset #:line-offset #:region-bounds
518   #:set-region-bounds #:*print-region*
519
520
521   ;; htext3.lisp
522   #:insert-character #:insert-string #:insert-region #:ninsert-region
523
524
525   ;; htext4.lisp
526   #:delete-characters #:delete-region #:delete-and-save-region #:copy-region
527   #:filter-region
528
529
530   ;; interp.lisp
531   #:bind-key #:delete-key-binding #:get-command #:map-bindings
532   #:make-command #:command-name #:command-bindings #:last-command-type
533   #:prefix-argument #:exit-hemlock #:*invoke-hook* #:key-translation
534
535
536   ;; main.lisp
537   #:*global-variable-names* #:*mode-names* #:*buffer-names*
538   #:*character-attribute-names* #:*command-names* #:*buffer-list*
539   #:*window-list* #:*last-key-event-typed* #:after-editor-initializations
540
541   ;; screen.lisp
542   #:make-window #:delete-window #:next-window #:previous-window
543
544
545   ;; search1.lisp
546   #:search-pattern #:search-pattern-p #:find-pattern #:replace-pattern
547   #:new-search-pattern
548
549
550   ;; streams.lisp
551   #:make-hemlock-output-stream
552   #:hemlock-region-stream #:hemlock-region-stream-p
553   #:hemlock-output-stream #:make-hemlock-region-stream
554   #:hemlock-output-stream-p #:make-kbdmac-stream
555   #:modify-kbdmac-stream
556
557   ;; syntax.lisp
558   #:character-attribute-name
559   #:defattribute #:character-attribute-documentation #:character-attribute
560   #:character-attribute-hooks #:character-attribute-p #:shadow-attribute
561   #:unshadow-attribute #:find-attribute #:reverse-find-attribute
562
563   ;; vars.lisp
564   #:variable-value #:variable-hooks #:variable-documentation #:variable-name
565   #:hemlock-bound-p #:defhvar #:delete-variable
566
567   ;; window.lisp
568   #:current-window #:window-buffer #:modeline-field-width
569   #:modeline-field-function #:make-modeline-field #:update-modeline-fields
570   #:update-modeline-field #:modeline-field-name #:modeline-field
571   #:editor-finish-output #:*window-list*
572
573   ))
574
575
576(defpackage :hemlock
577  (:use :common-lisp :hemlock-interface :hi :hemlock-ext)
578;;;  (:import-from :hemlock-ext #:delq #:memq #:assq)
579;;;  (:import-from :hemlock-internals #:*fast*)
580  (:shadowing-import-from #:hemlock-ext
581                          #:char-code-limit)
582  ;;  #+cmu
583  ;; These are defined in EXTENSONS package in CMUCL
584  (:shadowing-import-from :hemlock-ext
585   #:*ALL-MODIFIER-NAMES*
586   #:ASSQ
587   #:CHAR-KEY-EVENT
588   #:DEFAULT-CLX-EVENT-HANDLER
589   #:DEFAULT-DIRECTORY
590   #:DEFINE-CLX-MODIFIER
591   #:DEFINE-KEY-EVENT-MODIFIER
592   #:DEFINE-KEYSYM
593   #:DEFINE-MOUSE-KEYSYM
594   #:DELQ
595   #:DISABLE-CLX-EVENT-HANDLING
596   #:DO-ALPHA-KEY-EVENTS
597   #:FILE-WRITABLE
598   #:FIXNUMP
599   #:FLUSH-DISPLAY-EVENTS
600   #:KEY-EVENT
601   #:KEY-EVENT-BIT-P
602   #:KEY-EVENT-BITS
603   #:KEY-EVENT-BITS-MODIFIERS
604   #:KEY-EVENT-CHAR
605   #:KEY-EVENT-KEYSYM
606   #:KEY-EVENT-MODIFIER-MASK
607   #:KEY-EVENT-P
608   #:KEYSYM-NAMES
609   #:KEYSYM-PREFERRED-NAME
610   #:MAKE-KEY-EVENT
611   #:MAKE-KEY-EVENT-BITS
612   #:MEMQ
613   #:NAME-KEYSYM
614   #:OBJECT-SET-EVENT-HANDLER
615   #:PRINT-PRETTY-KEY
616   #:PRINT-PRETTY-KEY-EVENT
617   #:QUIT
618   #:SERVE-BUTTON-PRESS
619   #:SERVE-BUTTON-RELEASE
620   #:SERVE-CIRCULATE-NOTIFY
621   #:SERVE-CLIENT-MESSAGE
622   #:SERVE-CONFIGURE-NOTIFY
623   #:SERVE-DESTROY-NOTIFY
624   #:SERVE-ENTER-NOTIFY
625   #:SERVE-EXPOSURE
626   #:SERVE-GRAPHICS-EXPOSURE
627   #:SERVE-GRAVITY-NOTIFY
628   #:SERVE-KEY-PRESS
629   #:SERVE-LEAVE-NOTIFY
630   #:SERVE-MAP-NOTIFY
631   #:SERVE-NO-EXPOSURE
632   #:SERVE-REPARENT-NOTIFY
633   #:SERVE-UNMAP-NOTIFY
634
635   ;; These four are from SYSTEM package
636   #:MAKE-OBJECT-SET
637   #:SAP-REF-8
638   #:SERVE-EVENT
639   #:WITHOUT-INTERRUPTS
640
641   #:TRANSLATE-KEY-EVENT
642   #:TRANSLATE-MOUSE-KEY-EVENT
643   #:WITH-CLX-EVENT-HANDLING)
644  )
645
646
647;; $Log$
648;; Revision 1.2  2005/08/01 10:54:17  gb
649;; Don't export CHECK-REGION-QUERY-SIZE.
650;;
651;; Revision 1.1.1.1  2003/10/19 08:57:16  gb
652;; recovered 0.14 sources
653;;
654;; Revision 1.1.2.1  2003/08/10 19:11:33  gb
655;; New files, imported from upstream CVS as of 03/08/09.
656;;
657;; Revision 1.9  2003/08/05 19:58:21  gilbert
658;; - we now have a HEMLOCK-INTERFACE package which exports symbols mentioned
659;;   in the Command Implementors Manual.
660;;
661;; Revision 1.8  2003/07/28 20:35:32  jdz
662;; BEEP function now works.
663;;
664;; Revision 1.7  2003/07/27 10:11:06  jdz
665;; HEMLOCK-EXT package is now used by HEMLOCK.  Conflicting symbols from
666;; EXTENSIONS package in CMUCL are shadowed.
667;;
668;; Revision 1.6  2003/05/12 11:01:48  gbyers
669;; Conditionalize (Gray streams package) for OpenMCL.
670;;
671;; Revision 1.5  2003/03/26 07:50:10  gilbert
672;; Port to SCL by Douglas Crosher
673;;
674;; Revision 1.4  2003/03/06 21:38:58  gilbert
675;; The symbol *FAST* is now exported from HI (no idea if that is the
676;; right thing to do) and imported into HEMLOCK. Fixes bug:
677;; auto-save.lisp was not compiling.
678;;
Note: See TracBrowser for help on using the repository browser.