/[climacs]/climacs/packages.lisp
ViewVC logotype

Contents of /climacs/packages.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.54 - (show annotations)
Mon Mar 7 06:51:03 2005 UTC (9 years, 1 month ago) by rstrandh
Branch: MAIN
Changes since 1.53: +2 -1 lines
First attempt at a display function (for html syntax) that uses the
output of an incremental lexer and parser.  This code is not complete
yet:

  * right now, it uses only the lexer output, and not the parser

  * the cursor is not displayed yet

  * it is too slow, most likely because the output records are all in
    one big bag, as opposed to being tree structured, such as the
    lines of basic syntax.

The slowness is not a serious problem, because one day, McCLIM will
have tree-structured output records itself, and because most syntax
modules (including this one, very soon) will have some tree structure
itself.  It might be worthwhile to display the part of the buffer
beyond a parse error in some artificially structured way, such as by
lines as in the current basic syntax.
1 ;;; -*- Mode: Lisp; Package: COMMON-LISP-USER -*-
2
3 ;;; (c) copyright 2004-2005 by
4 ;;; Robert Strandh (strandh@labri.fr)
5 ;;; (c) copyright 2005 by
6 ;;; Matthieu Villeneuve (matthieu.villeneuve@free.fr)
7
8 ;;; This library is free software; you can redistribute it and/or
9 ;;; modify it under the terms of the GNU Library General Public
10 ;;; License as published by the Free Software Foundation; either
11 ;;; version 2 of the License, or (at your option) any later version.
12 ;;;
13 ;;; This library is distributed in the hope that it will be useful,
14 ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
15 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 ;;; Library General Public License for more details.
17 ;;;
18 ;;; You should have received a copy of the GNU Library General Public
19 ;;; License along with this library; if not, write to the
20 ;;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21 ;;; Boston, MA 02111-1307 USA.
22
23 ;;; Package definitions for the Climacs editor.
24
25 (defpackage :climacs-buffer
26 (:use :clim-lisp :flexichain :binseq)
27 (:export #:buffer #:standard-buffer
28 #:mark #:left-sticky-mark #:right-sticky-mark
29 #:standard-left-sticky-mark #:standard-right-sticky-mark
30 #:clone-mark
31 #:no-such-offset #:offset-before-beginning #:offset-after-end
32 #:invalid-motion #:motion-before-beginning #:motion-after-end
33 #:size #:number-of-lines
34 #:offset #:mark< #:mark<= #:mark= #:mark> #:mark>=
35 #:forward-object #:backward-object
36 #:beginning-of-buffer #:end-of-buffer
37 #:beginning-of-buffer-p #:end-of-buffer-p
38 #:beginning-of-line #:end-of-line
39 #:beginning-of-line-p #:end-of-line-p
40 #:buffer-line-number #:buffer-column-number
41 #:line-number #:column-number
42 #:insert-buffer-object #:insert-buffer-sequence
43 #:insert-object #:insert-sequence
44 #:delete-buffer-range #:delete-range
45 #:delete-region
46 #:buffer-object #:buffer-sequence
47 #:object-before #:object-after #:region-to-sequence
48 #:low-mark #:high-mark #:modified-p #:clear-modify
49
50 #:binseq-buffer #:obinseq-buffer
51 #:persistent-left-sticky-mark #:persistent-right-sticky-mark
52
53 #:delegating-buffer #:implementation))
54
55 (defpackage :climacs-base
56 (:use :clim-lisp :climacs-buffer)
57 (:export #:do-buffer-region
58 #:previous-line #:next-line
59 #:open-line #:kill-line
60 #:empty-line-p
61 #:line-indentation
62 #:buffer-display-column
63 #:number-of-lines-in-region
64 #:constituentp #:whitespacep
65 #:forward-word #:backward-word
66 #:delete-word #:backward-delete-word
67 #:buffer-region-case
68 #:upcase-buffer-region #:upcase-region
69 #:downcase-buffer-region #:downcase-region
70 #:capitalize-buffer-region #:capitalize-region
71 #:upcase-word #:downcase-word #:capitalize-word
72 #:tabify-region #:untabify-region
73 #:indent-line
74 #:delete-indentation
75 #:fill-line
76 #:input-from-stream #:output-to-stream
77 #:name-mixin #:name
78 #:buffer-looking-at #:looking-at
79 #:buffer-search-forward #:buffer-search-backward
80 #:search-forward #:search-backward))
81
82 (defpackage :climacs-abbrev
83 (:use :clim-lisp :clim :climacs-buffer :climacs-base)
84 (:export #:abbrev-expander #:dictionary-abbrev-expander #:dictionary
85 #:expand-abbrev #:abbrev-mixin #:possibly-expand-abbrev
86 #:add-abbrev))
87
88 (defpackage :climacs-syntax
89 (:use :clim-lisp :clim :climacs-buffer :climacs-base :flexichain)
90 (:export #:syntax #:define-syntax
91 #:basic-syntax
92 #:update-syntax #:update-syntax-for-display
93 #:grammar #:parser #:initial-state
94 #:advance-parse
95 #:parse-stack-top #:target-parse-tree
96 #:parse-stack-next #:parse-stack-symbol
97 #:parse-stack-parse-trees #:map-over-parse-trees
98 #:syntax-line-indentation
99 #:beginning-of-paragraph #:end-of-paragraph))
100
101 (defpackage :climacs-cl-syntax
102 (:use :clim-lisp :clim :climacs-buffer :climacs-base :flexichain :climacs-syntax)
103 (:export))
104
105 (defpackage :climacs-kill-ring
106 (:use :clim-lisp :flexichain)
107 (:export #:kill-ring #:kill-ring-length #:kill-ring-max-size
108 #:reset-yank-position #:rotate-yank-position #:kill-ring-yank
109 #:kill-ring-standard-push #:kill-ring-concatenating-push))
110
111 (defpackage :undo
112 (:use :common-lisp)
113 (:export #:no-more-undo
114 #:undo-tree #:standard-undo-tree
115 #:undo-record #:standard-undo-record
116 #:add-undo #:flip-undo-record #:undo #:redo))
117
118 (defpackage :climacs-pane
119 (:use :clim-lisp :clim :climacs-buffer :climacs-base :climacs-abbrev
120 :climacs-syntax :flexichain :undo)
121 (:export #:climacs-buffer #:needs-saving #:filename
122 #:climacs-pane #:point #:mark
123 #:redisplay-pane #:full-redisplay
124 #:page-down #:page-up
125 #:top #:bot
126 #:tab-space-count #:space-width #:tab-width
127 #:indent-tabs-mode
128 #:auto-fill-mode #:auto-fill-column
129 #:isearch-state #:search-string #:search-mark
130 #:search-forward-p #:search-success-p
131 #:isearch-mode #:isearch-states #:isearch-previous-string
132 #:query-replace-state #:string1 #:string2
133 #:query-replace-mode
134 #:with-undo
135 #:redisplay-pane-with-syntax
136 #:url))
137
138 (defpackage :climacs-html-syntax
139 (:use :clim-lisp :clim :climacs-buffer :climacs-base
140 :climacs-syntax :flexichain :climacs-pane))
141
142 (defpackage :climacs-gui
143 (:use :clim-lisp :clim :climacs-buffer :climacs-base :climacs-abbrev :climacs-syntax
144 :climacs-kill-ring :climacs-pane :clim-extensions :undo))
145

  ViewVC Help
Powered by ViewVC 1.1.5