001 /**
002 * jline - Java console input library
003 * Copyright (c) 2002, 2003, 2004, 2005, Marc Prud'hommeaux <mwp1@cornell.edu>
004 * All rights reserved.
005 *
006 * Redistribution and use in source and binary forms, with or
007 * without modification, are permitted provided that the following
008 * conditions are met:
009 *
010 * Redistributions of source code must retain the above copyright
011 * notice, this list of conditions and the following disclaimer.
012 *
013 * Redistributions in binary form must reproduce the above copyright
014 * notice, this list of conditions and the following disclaimer
015 * in the documentation and/or other materials provided with
016 * the distribution.
017 *
018 * Neither the name of JLine nor the names of its contributors
019 * may be used to endorse or promote products derived from this
020 * software without specific prior written permission.
021 *
022 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
023 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
024 * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
025 * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
026 * EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
027 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
028 * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
029 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
030 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
031 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
032 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
033 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
034 * OF THE POSSIBILITY OF SUCH DAMAGE.
035 */
036 package jline;
037
038
039 import java.awt.event.KeyEvent;
040
041
042 /**
043 * Synbolic constants for Console operations and virtual key bindings.
044 *
045 * @see KeyEvent
046 * @author <a href="mailto:mwp1@cornell.edu">Marc Prud'hommeaux</a>
047 */
048 public interface ConsoleOperations
049 {
050 String CR = System.getProperty ("line.separator");
051
052 char BACKSPACE = '\b';
053 char RESET_LINE = '\r';
054 char KEYBOARD_BELL = '\07';
055
056 char CTRL_P = 16;
057 char CTRL_N = 14;
058 char CTRL_B = 2;
059 char CTRL_F = 6;
060
061
062 /**
063 * Logical constants for key operations.
064 */
065
066 /**
067 * Unknown operation.
068 */
069 short UNKNOWN = -99;
070
071 /**
072 * Operation that moves to the beginning of the buffer.
073 */
074 short MOVE_TO_BEG = -1;
075
076 /**
077 * Operation that moves to the end of the buffer.
078 */
079 short MOVE_TO_END = -3;
080
081 /**
082 * Operation that moved to the previous character in the buffer.
083 */
084 short PREV_CHAR = -4;
085
086 /**
087 * Operation that issues a newline.
088 */
089 short NEWLINE = -6;
090
091 /**
092 * Operation that deletes the buffer from the current character to the end.
093 */
094 short KILL_LINE = -7;
095
096 /**
097 * Operation that clears the screen.
098 */
099 short CLEAR_SCREEN = -8;
100
101 /**
102 * Operation that sets the buffer to the next history item.
103 */
104 short NEXT_HISTORY = -9;
105
106 /**
107 * Operation that sets the buffer to the previous history item.
108 */
109 short PREV_HISTORY = -11;
110
111 /**
112 * Operation that redisplays the current buffer.
113 */
114 short REDISPLAY = -13;
115
116 /**
117 * Operation that deletes the buffer from the cursor to the beginning.
118 */
119 short KILL_LINE_PREV = -15;
120
121 /**
122 * Operation that deletes the previous word in the buffer.
123 */
124 short DELETE_PREV_WORD = -16;
125
126 /**
127 * Operation that moves to the next character in the buffer.
128 */
129 short NEXT_CHAR = -19;
130
131 /**
132 * Operation that moves to the previous character in the buffer.
133 */
134 short REPEAT_PREV_CHAR = -20;
135
136 /**
137 * Operation that searches backwards in the command history.
138 */
139 short SEARCH_PREV = -21;
140
141 /**
142 * Operation that repeats the character.
143 */
144 short REPEAT_NEXT_CHAR = -24;
145
146 /**
147 * Operation that searches forward in the command history.
148 */
149 short SEARCH_NEXT = -25;
150
151 /**
152 * Operation that moved to the previous whitespace.
153 */
154 short PREV_SPACE_WORD = -27;
155
156 /**
157 * Operation that moved to the end of the current word.
158 */
159 short TO_END_WORD = -29;
160
161 /**
162 * Operation that
163 */
164 short REPEAT_SEARCH_PREV = -34;
165
166 /**
167 * Operation that
168 */
169 short PASTE_PREV = -36;
170
171 /**
172 * Operation that
173 */
174 short REPLACE_MODE = -37;
175
176 /**
177 * Operation that
178 */
179 short SUBSTITUTE_LINE = -38;
180
181 /**
182 * Operation that
183 */
184 short TO_PREV_CHAR = -39;
185
186 /**
187 * Operation that
188 */
189 short NEXT_SPACE_WORD = -40;
190
191 /**
192 * Operation that
193 */
194 short DELETE_PREV_CHAR = -41;
195
196 /**
197 * Operation that
198 */
199 short ADD = -42;
200
201 /**
202 * Operation that
203 */
204 short PREV_WORD = -43;
205
206 /**
207 * Operation that
208 */
209 short CHANGE_META = -44;
210
211 /**
212 * Operation that
213 */
214 short DELETE_META = -45;
215
216 /**
217 * Operation that
218 */
219 short END_WORD = -46;
220
221 /**
222 * Operation that
223 */
224 short INSERT = -48;
225
226 /**
227 * Operation that
228 */
229 short REPEAT_SEARCH_NEXT = -49;
230
231 /**
232 * Operation that
233 */
234 short PASTE_NEXT = -50;
235
236 /**
237 * Operation that
238 */
239 short REPLACE_CHAR = -51;
240
241 /**
242 * Operation that
243 */
244 short SUBSTITUTE_CHAR = -52;
245
246 /**
247 * Operation that
248 */
249 short TO_NEXT_CHAR = -53;
250
251 /**
252 * Operation that undoes the previous operation.
253 */
254 short UNDO = -54;
255
256 /**
257 * Operation that moved to the next word.
258 */
259 short NEXT_WORD = -55;
260
261 /**
262 * Operation that deletes the previous character.
263 */
264 short DELETE_NEXT_CHAR = -56;
265
266 /**
267 * Operation that toggles between uppercase and lowercase.
268 */
269 short CHANGE_CASE = -57;
270
271 /**
272 * Operation that performs completion operation on the current word.
273 */
274 short COMPLETE = -58;
275
276 /**
277 * Operation that exits the command prompt.
278 */
279 short EXIT = -59;
280
281 /**
282 * Operation that pastes the contents of the cliboard into the line
283 */
284 short PASTE = -60;
285 }
286