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

Contents of /climacs/packages.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.73 - (show annotations)
Thu Aug 4 22:07:45 2005 UTC (8 years, 8 months ago) by abakic
Branch: MAIN
Changes since 1.72: +3 -1 lines
Added cl-automaton module and support for regexp searches. Below are
some notes. Also modified one constituentp-related test.

Instead of having module "cl-automaton" within the :climacs defsystem,
the module could be turned into a dependence on :automaton, defined in
cl-automaton/automaton.asd. Similarly for cl-automaton/automaton-test.asd.

For slower buffer implementations, a buffer iterator is needed for
higher performance of regexp searches. Greedy matching should be
improved (see automaton::run-to-first-unmatch).

Perhaps, fast (tabular) automaton representation should be implemented,
unless it would be taking way too much space.

Incremental regexp search needs to be done.
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 #:binseq2-buffer
51 #:persistent-left-sticky-mark #:persistent-right-sticky-mark
52 #:persistent-left-sticky-line-mark #:persistent-right-sticky-line-mark
53 #:p-line-mark-mixin #:buffer-line-offset
54
55 #:delegating-buffer #:implementation))
56
57 (defpackage :climacs-base
58 (:use :clim-lisp :climacs-buffer)
59 (:export #:do-buffer-region
60 #:previous-line #:next-line
61 #:open-line #:kill-line
62 #:empty-line-p
63 #:line-indentation
64 #:buffer-display-column
65 #:number-of-lines-in-region
66 #:constituentp #:whitespacep
67 #:forward-word #:backward-word
68 #:delete-word #:backward-delete-word
69 #:buffer-region-case
70 #:upcase-buffer-region #:upcase-region
71 #:downcase-buffer-region #:downcase-region
72 #:capitalize-buffer-region #:capitalize-region
73 #:upcase-word #:downcase-word #:capitalize-word
74 #:tabify-region #:untabify-region
75 #:indent-line
76 #:delete-indentation
77 #:fill-line
78 #:input-from-stream #:output-to-stream
79 #:name-mixin #:name
80 #:buffer-looking-at #:looking-at
81 #:buffer-search-forward #:buffer-search-backward
82 #:buffer-re-search-forward #:buffer-re-search-backward
83 #:search-forward #:search-backward
84 #:re-search-forward #:re-search-backward))
85
86 (defpackage :climacs-abbrev
87 (:use :clim-lisp :clim :climacs-buffer :climacs-base)
88 (:export #:abbrev-expander #:dictionary-abbrev-expander #:dictionary
89 #:expand-abbrev #:abbrev-mixin #:possibly-expand-abbrev
90 #:add-abbrev))
91
92 (defpackage :climacs-syntax
93 (:use :clim-lisp :clim :climacs-buffer :climacs-base :flexichain)
94 (:export #:syntax #:define-syntax
95 #:basic-syntax
96 #:update-syntax #:update-syntax-for-display
97 #:grammar #:grammar-rule #:add-rule
98 #:parser #:initial-state
99 #:advance-parse
100 #:parse-tree #:start-offset #:end-offset
101 #:lexer #:nb-lexemes #:lexeme #:insert-lexeme
102 #:incremental-lexer #:next-lexeme
103 #:delete-invalid-lexemes #:inter-lexeme-object-p
104 #:skip-inter-lexeme-objects #:update-lex
105 #:parse-stack-top #:target-parse-tree #:parse-state-empty-p
106 #:parse-stack-next #:parse-stack-symbol
107 #:parse-stack-parse-trees #:map-over-parse-trees
108 #:no-such-operation #:no-expression
109 #:syntax-line-indentation
110 #:forward-expression #:backward-expression
111 #:eval-defun
112 #:redisplay-pane-with-syntax
113 #:beginning-of-paragraph #:end-of-paragraph
114 #:syntax-line-comment-string
115 #:line-comment-region #:comment-region
116 #:line-uncomment-region #:uncomment-region))
117
118 (defpackage :climacs-kill-ring
119 (:use :clim-lisp :flexichain)
120 (:export #:kill-ring #:kill-ring-length #:kill-ring-max-size
121 #:reset-yank-position #:rotate-yank-position #:kill-ring-yank
122 #:kill-ring-standard-push #:kill-ring-concatenating-push))
123
124 (defpackage :undo
125 (:use :common-lisp)
126 (:export #:no-more-undo
127 #:undo-tree #:standard-undo-tree
128 #:undo-record #:standard-undo-record
129 #:add-undo #:flip-undo-record #:undo #:redo))
130
131 (defpackage :climacs-pane
132 (:use :clim-lisp :clim :climacs-buffer :climacs-base :climacs-abbrev
133 :climacs-syntax :flexichain :undo)
134 (:export #:climacs-buffer #:needs-saving #:filepath
135 #:climacs-pane #:point #:mark
136 #:redisplay-pane #:full-redisplay
137 #:page-down #:page-up
138 #:top #:bot
139 #:tab-space-count #:space-width #:tab-width
140 #:indent-tabs-mode
141 #:auto-fill-mode #:auto-fill-column
142 #:isearch-state #:search-string #:search-mark
143 #:search-forward-p #:search-success-p
144 #:isearch-mode #:isearch-states #:isearch-previous-string
145 #:query-replace-state #:string1 #:string2
146 #:query-replace-mode
147 #:with-undo
148 #:url))
149
150 (defpackage :climacs-fundamental-syntax
151 (:use :clim-lisp :clim :climacs-buffer :climacs-base
152 :climacs-syntax :flexichain :climacs-pane)
153 (:export))
154
155 (defpackage :climacs-html-syntax
156 (:use :clim-lisp :clim :climacs-buffer :climacs-base
157 :climacs-syntax :flexichain :climacs-pane))
158
159 (defpackage :climacs-prolog-syntax
160 (:use :clim-lisp :clim :climacs-buffer :climacs-base
161 :climacs-syntax :flexichain :climacs-pane)
162 (:shadow "ATOM" "CLOSE" "EXP" "INTEGER" "OPEN" "VARIABLE"))
163
164 (defpackage :climacs-cl-syntax
165 (:use :clim-lisp :clim :climacs-buffer :climacs-base
166 :climacs-syntax :flexichain :climacs-pane)
167 (:export))
168
169 (defpackage :climacs-lisp-syntax
170 (:use :clim-lisp :clim :climacs-buffer :climacs-base
171 :climacs-syntax :flexichain :climacs-pane)
172 (:export :lisp-string))
173
174 (defpackage :esa
175 (:use :clim-lisp :clim)
176 (:export #:minibuffer-pane #:display-message
177 #:esa-pane-mixin #:previous-command
178 #:info-pane #:master-pane
179 #:esa-frame-mixin #:windows #:recordingp #:executingp
180 #:*numeric-argument-p* #:*current-gesture*
181 #:esa-top-level #:simple-command-loop
182 #:global-esa-table #:keyboard-macro-table
183 #:set-key))
184
185 (defpackage :climacs-gui
186 (:use :clim-lisp :clim :climacs-buffer :climacs-base :climacs-abbrev :climacs-syntax
187 :climacs-kill-ring :climacs-pane :clim-extensions :undo :esa)
188 (:import-from :climacs-lisp-syntax :lisp-string))
189

  ViewVC Help
Powered by ViewVC 1.1.5