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

Contents of /climacs/packages.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.55 - (show annotations)
Thu Mar 10 06:37:40 2005 UTC (9 years, 1 month ago) by rstrandh
Branch: MAIN
Changes since 1.54: +1 -1 lines
More progress on html-syntax, which may eventually become a model
for many different language syntax modules.

The display function now traverses the parse tree up as long as a
valid parse tree exists.  The rest of the display is done from the
token sequence.  It is likely that all of this can be abstracted out
and put into syntax.lisp so that html-syntax would just become a
client among others for this traversal.

Not only is the cursor still not displayed, whitespace is not handled
during the traversal of the parse tree.  This will likely be fixed in
the next few day.
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 #:parse-state-empty-p
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