Commit Graph

248 Commits

Author SHA1 Message Date
eknauel 6035214d0e Fix two small completion bugs 2005-08-19 14:13:19 +00:00
eknauel eefce5d839 - make the completion mechanism use the new unparser
- fix a crash: Check if a plugin actually offers a completion function
2005-08-19 12:30:37 +00:00
eknauel 2476b86e0b - make the lexer work if called without CURSOR-INDEX
- revamp the unparser to track the cursor-position after a TO-COMPLETE
  tokens was replaced by some completion or so.
2005-08-19 12:28:53 +00:00
eknauel ca2baa2c56 Bring back the programmable completion 2005-08-18 09:23:59 +00:00
eknauel dcfe19b989 If there are whitespaces before EOF and the command-line is
incomplete, make a TO-COMPLETE record
2005-08-18 09:23:19 +00:00
eknauel 10821ee8dd Some fixes to improve the debugging of modules that employ tty-debug 2005-08-18 09:19:48 +00:00
eknauel 8c5de5ee27 Make Commander S use the new completion code and move this cruft to a
separate module.
2005-08-17 13:32:40 +00:00
eknauel 41b8e1dde9 Store the cursor position in TO-COMPLETE tokens in order to restore
the cursor position after completion.
2005-08-17 13:29:55 +00:00
eknauel f71f975e6d Support for parsing partial command lines (needed for tab completion) 2005-08-15 12:41:24 +00:00
eknauel c9f986f8cc ensure that we don't call JOB-STATUS und running jobs 2005-08-12 13:28:54 +00:00
eknauel 172d0e543a used EXEC-EPF instead of RUN in the RUN/* forms. 2005-08-12 13:27:27 +00:00
eknauel 8eedb14ef3 Care about closing copied file-descriptor/ports in parent and child of
RUN/FG*.
2005-08-11 15:18:25 +00:00
eknauel 843ed0493b Fix the process status bug. Well, sort of. It's an evil hack, I think. 2005-08-11 15:03:15 +00:00
eknauel f26e89b895 Print the exit status of jobs correctly 2005-08-11 14:50:36 +00:00
eknauel e83f3e7d81 Display the status of foreground jobs in the result buffer (instead of
#{Unspecific})
2005-08-11 09:36:10 +00:00
eknauel ffff7d3a60 Added a silly fatal-error-handler for EVAL-COMMAND-IN-SCHEME-MODE. 2005-08-10 19:46:13 +00:00
eknauel b46ff51a1c Fix the cursor position after pasting the selection. Yeah, and make
Commander S slower, once more...
2005-08-10 18:47:26 +00:00
eknauel 7ff7ef196b make sure to call CONTAINS-GLOB-EXPRESSION? only for strings 2005-08-10 18:33:33 +00:00
eknauel 3b6c77f553 Don't try to expand/glob parts of the command line that are
s-expressions
2005-08-10 18:29:04 +00:00
eknauel 1c20604f4f Make the spectacular new command language work. At least for values of
"work" that don't call for intensive testing.
2005-08-10 18:03:59 +00:00
eknauel 634cde85bf Add abstract syntax, lexer, parser, and unparser for the command language 2005-08-07 14:46:57 +00:00
eknauel 8376b8b9f7 Added a README, an installation script, and various small fixes. 2005-07-06 08:57:44 +00:00
eknauel 154db1fb92 clean up GO and GO/BG 2005-06-15 11:42:29 +00:00
eknauel fe9bfbf1a0 Make job control work 2005-06-14 13:44:09 +00:00
eknauel 34761f66d2 Support POSIX job control, sort of. 2005-06-14 11:20:30 +00:00
eknauel 96e9c07f0e add implementation for call-completer 2005-06-13 11:04:49 +00:00
mainzelm 98c77ced7d Tiny plugin for the "fs la" command from AFS 2005-06-10 08:13:04 +00:00
eknauel 9e3d00028c Fix an application of COMMAND-BUFFER 2005-06-07 20:54:22 +00:00
eknauel 4c903444f2 performace improvements for the terminal emulator. Now feels like a
4800 bps modem connection (before: 1200-2400 bps).
2005-06-07 20:52:49 +00:00
eknauel 60ad7d02c4 fix painting a single line 2005-06-07 20:03:38 +00:00
eknauel 88c6250483 refresh window more often (i.e. too often) 2005-06-07 20:03:04 +00:00
eknauel f5c808e10a Fix the "terminal emulation" for ascii codes cr and nl. Don't pass
strings containing cr or nl to ncurses (leads to garbled output).
2005-06-07 19:50:43 +00:00
eknauel 7d0c566c0b A first (buggy) version with a virtual console 2005-06-07 18:24:05 +00:00
eknauel 8ae60787a7 Add a joblist-viewer, add a get-focus-object-method generator to
select-list and make some plugins use it, added argument
focus-object-table to get-selection message (thus a get-selection
method can call a get-focus-object method).
2005-06-04 11:22:44 +00:00
eknauel 143d6bbccb Fix asynchronous job status updates 2005-06-04 09:43:22 +00:00
eknauel b9d54a24ae fix constructor 2005-06-04 09:42:45 +00:00
eknauel 2f7595603b First version of the job control 2005-06-03 11:44:53 +00:00
mainzelm dc699ce88f fix stack and header, display source info 2005-06-02 19:02:04 +00:00
mainzelm 70fefe9a95 Check for unknwon messages in std-viewer 2005-06-02 07:23:11 +00:00
mainzelm bfd61dfe44 Fixed various bugs in the inspector
Make focus/selection messages work
2005-06-01 12:55:29 +00:00
eknauel d34769b0e1 Make the process-viewer react on get-focus-object and get-selection messages 2005-06-01 11:49:56 +00:00
eknauel 7a87280516 Move `make-focus-object-reference' to focus.scm 2005-06-01 11:49:07 +00:00
eknauel 53ed9fc721 The focus-object-table now lives in nuit-eval. 2005-06-01 11:26:56 +00:00
eknauel 30b59e1e72 Fix add-focus-value 2005-06-01 11:26:22 +00:00
eknauel 4b7bbddc2a Add feature get-focus-object (C-x P) 2005-06-01 10:04:21 +00:00
eknauel 5bd69b564b Make paste (C-x p) work again (at least for the fsobjects-viewer) 2005-06-01 09:15:43 +00:00
eknauel af61cbb3ae Move HANDLE-RETURN-KEY and HANDLE-KEY-PRESS into MAKE-FSOBJECTS-VIEWER 2005-06-01 08:48:37 +00:00
eknauel 2e5b16437b Use files in (cwd) for completion if the partial-name is empty and the
cursor is not on the command token
2005-06-01 08:07:48 +00:00
eknauel 145f79b654 move FILL-UP-STRING and CUT-TO-SIZE to layout 2005-05-31 19:32:09 +00:00
eknauel 49054b8d88 Fix process format 2005-05-31 19:31:38 +00:00
eknauel df065fe14d also list size, owner & group, and permissions 2005-05-31 17:28:06 +00:00
mainzelm 7a9bde00e7 Browser for group-info
Make entries browsable
2005-05-31 16:02:53 +00:00
mainzelm da28396e3c Delete superfluous parentheses 2005-05-31 16:02:01 +00:00
mainzelm 7230bd9a2f Adapt to new interface of paint-selection-list-at 2005-05-31 15:14:45 +00:00
mainzelm ddf1ca752b Fix a few bugs in fsobjects-viewer 2005-05-31 14:54:48 +00:00
mainzelm 0cb71508ef Browser for user-info 2005-05-31 14:54:04 +00:00
eknauel 243e746136 Fix cursor position after eval in Scheme mode. 2005-05-31 14:33:43 +00:00
eknauel 05c6656774 Fix cursor position after eval in command-mode 2005-05-31 14:32:16 +00:00
eknauel c83c1ff05b Repaint the result buffer after command evaluation. 2005-05-31 13:55:54 +00:00
eknauel 9f9ef3f7a1 Added `rdebug' a script that starts the remote debugger 2005-05-31 13:45:47 +00:00
eknauel 7da239cf4f added `gogo', a script for loading and running nuit 2005-05-31 13:45:11 +00:00
mainzelm 43088dafd7 Constructor arguments instead of init message 2005-05-31 13:40:39 +00:00
mainzelm 8c9d2b7142 Select one but last element of history to evaluate
Fix call to make-standard-viewer
2005-05-31 13:39:40 +00:00
mainzelm 246660a299 Fixes for the changes in nuit-engine 2005-05-31 13:15:31 +00:00
mainzelm c405bc02c5 Call constructor with arguments 2005-05-31 13:14:55 +00:00
eknauel 0adfc18986 Call the INPUT-BUFFER on return, thus, bring back the command history 2005-05-31 12:41:42 +00:00
eknauel 7b9b6c3e66 move the standard viewer to a seperate module 2005-05-31 11:20:20 +00:00
eknauel 6e72d5abd4 Use object-oriented approach 2005-05-31 08:01:06 +00:00
eknauel 8c9496a1e0 fix indention 2005-05-31 07:59:31 +00:00
eknauel f964abb252 Fix broken message name 2005-05-31 07:58:28 +00:00
eknauel c889c878ef Assume that files in PATH are always executable, don't check. 2005-05-31 07:57:54 +00:00
eknauel 46cdd67321 cd.scm? Har har 2005-05-30 19:22:33 +00:00
eknauel 74d61ec7eb What's directory-files.scm good for? Bah, looks crufty, don't care, throw away. 2005-05-30 19:21:20 +00:00
eknauel 345712d2da use an object-oriented approach for the plugins. deleted a lot of
cruft.  broke some plugins (such as browse-directory-list.scm)
2005-05-30 19:19:36 +00:00
eknauel 54230412f8 make it easier to abort the process of choosing a completion via the select-list 2005-05-30 15:38:13 +00:00
eknauel eeaaa729ac run init-executables-completion-set! in a seperate thread 2005-05-30 15:21:40 +00:00
eknauel 2723409aed open threads and locks for nuit 2005-05-30 15:20:39 +00:00
eknauel 1e356587a4 Make completion work on (almost) all positions of the cursor in the
command line.
2005-05-30 14:08:41 +00:00
eknauel 09446473c8 Make completions for commands work. Infrastructure for completions of
arbitrary args.
2005-05-30 09:33:07 +00:00
eknauel 75ca225dc5 hide FILTER from ncurses in nuit 2005-05-30 09:31:47 +00:00
eknauel 9998997a11 Turn on cache? 2005-05-30 09:31:12 +00:00
eknauel b93e71736c A first step towards completion: Add completion for command plugins 2005-05-28 12:08:23 +00:00
eknauel 9b72181b54 fix `select-list-get-selection' and avoid copying the list in `elements' 2005-05-28 12:07:21 +00:00
eknauel 4e5a41db3d Maintain a completion-set for registered command-plugins 2005-05-28 12:06:13 +00:00
eknauel 59a7a3c9ae Add a package `completion-sets' and use it `nuit' and `plugin-host' 2005-05-28 12:05:33 +00:00
eknauel c2be90dba7 make the completion code work for arbitrary set of strings (called `completion-set') 2005-05-28 12:04:26 +00:00
eknauel 7337f9b451 Import orion's `file-name-completion.scm' as `complete.scm' 2005-05-28 12:03:11 +00:00
eknauel 8bf4363a26 fix type in regexp 2005-05-28 09:43:10 +00:00
mainzelm 73e5192db0 Rework display of list-of-fs-objects?
Try to figure out common parent of objects and display files relative
to this parent.
Assume path in fs-object is always absolute.
2005-05-27 21:32:21 +00:00
mainzelm 03f482a04a errno-handler for evaluation of commands 2005-05-27 21:14:42 +00:00
eknauel 407de494d4 Implement globbing (the beginnings) 2005-05-27 17:01:14 +00:00
eknauel 4a85644f58 Add a "result screen" for showing the output of external programs. 2005-05-27 16:02:39 +00:00
mainzelm 84b5fec438 + Compute file-info of fs-object lazily
+ Capture exceptions during file-info and put #f into fs-object-info
  in this case
+ Handle fs-object-info = #f in browse-directory-list
2005-05-27 09:53:06 +00:00
mainzelm d592b417e9 Make handle-fatal-error a separate structure 2005-05-27 09:47:37 +00:00
mainzelm cb5de42a9b Use home key to toggle mode
Adapt to interaction-0.3
2005-05-27 08:11:41 +00:00
eknauel db732404dd signature of MAKE-SELECT-LIST changed, adapt. 2005-05-27 08:01:24 +00:00
mainzelm f681d13f49 Add exit, make cd smarter 2005-05-26 17:39:20 +00:00
eknauel 93c6d96922 make the browse-directory-list plugin work again, i.e. rewrite it
using select-list
2005-05-26 11:35:17 +00:00
eknauel eb5fff8905 propagate key-messages to plugin if result-buffer has focus? (didn't
work for the enter key...)
2005-05-26 11:34:35 +00:00
eknauel e549cc27ff use the new MAKE-SELECT-LIST api 2005-05-26 11:33:38 +00:00
eknauel 5e8bdf3229 change api to MAKE-SELECT-LIST 2005-05-26 11:32:51 +00:00
mainzelm 026c86a317 Use select-list in the inspector 2005-05-25 15:18:26 +00:00
eknauel 6ef959883f add functions for accessing the current selection 2005-05-25 13:48:17 +00:00
eknauel cbf39ba61e make selection-list distinguish markable and unmarkable items 2005-05-25 11:43:46 +00:00
eknauel 83909af4ac new features for selection-lists: list length is now adjustable, may
be placed at arbitrary position in the result buffer
2005-05-25 11:36:12 +00:00
eknauel 0447ccfa3e Kill `browse-list' plugin. Introduce module `select-list', a library
for programming multi-page menus in the result-buffer. Remove the
print-object and make plugins return a function to paint the
result-buffer instead.
2005-05-25 09:44:27 +00:00
mainzelm 4e7e1301cb Initial version of a view plugin for exception-continuations
up and down work but you cannot select other objects yet
2005-05-24 13:57:56 +00:00
mainzelm c5447bc2cd Capture the raw continuation of the exception if evaluation fails 2005-05-24 13:56:41 +00:00
eknauel f8a30e3523 add some common commands (in terms of command-plugins) 2005-05-23 16:03:26 +00:00
eknauel bbb6ad7a0e If the user enters a command in command mode, search for command
plugins and execute it. Added a standard command plugin (which always
evaluates (directory-files) at the moment).
2005-05-23 14:52:03 +00:00
eknauel 9a038dc356 make eval look whether the command is evaluated in command oder scheme
mode
2005-05-23 13:22:16 +00:00
eknauel 75500100b3 add a command buffer mode indicator 2005-05-23 13:03:45 +00:00
eknauel 73e44b5fbd divide plugins into `view-plugins' and `command-plugins' 2005-05-23 12:47:41 +00:00
eknauel 428c9587cc A hacked beyond recognition patch: Move plugins to seperate modules,
put plugin api and registration into a module, add a new message-type,
make directory-files plugin work again, delete some hundred lines of
extremly silly code,
2005-05-22 15:05:25 +00:00
eknauel 87f701f59d select the plug-in for viewing a result by it's type. Currently only
works with processes.
2005-05-22 09:20:44 +00:00
eknauel 783bad745a code for keeping command/result histories 2005-05-22 09:19:25 +00:00
eknauel 725e58f2a1 Clean up code releated for handling messages. Add a new plugin for
pps (portable ps)
2005-05-20 15:20:34 +00:00
eknauel 1e8cb9369c split result window into result-window and result-frame-window 2005-05-19 13:59:52 +00:00
eknauel 214a66021f close the INPUT-PORT 2005-05-18 18:56:30 +00:00
eknauel ee148a86ab More fixes for the redrawing code 2005-05-18 18:55:51 +00:00
eknauel 59b2d3006f more debug output. Call INIT-WINDOWS! only once. 2005-05-18 15:47:28 +00:00
eknauel f1880f7a1c a start script 2005-05-18 15:25:47 +00:00
eknauel 75930fb753 use the tty-debug package 2005-05-18 15:25:16 +00:00
eknauel 867852bf16 Code for printing debug messages on a pty 2005-05-18 15:24:49 +00:00
eknauel 63ed7f8aa9 code cleanup 2005-05-17 20:19:53 +00:00
mainzelm cb680b277c Remove set! on local variables. They are just ugly. 2005-05-17 20:08:39 +00:00
eknauel 03f535f0f2 Now that we have two windows for the command buffer clearing the
window is easier
2005-05-17 15:20:41 +00:00
eknauel 3669859bb9 add window `command-frame-window' which surrounds `command-window' and
holds the border.
2005-05-17 15:02:01 +00:00
eknauel b161acf8cf small fixes for redrawing 2005-05-17 13:17:51 +00:00
eknauel f649bb93cc use `m' and `u' for selecting/unselecting items 2005-05-17 09:56:11 +00:00
eknauel 0a2c373bc0 Use sunterlib's INSPECT-EXCEPTION package for debugging. Fix a crash
when switching from result buffer to command buffer.
2005-05-17 09:22:07 +00:00
eknauel 03ffcf8280 Minor code clean-up, fix more redrawing stuff 2005-05-17 09:00:33 +00:00
eknauel 88e805e52a Fix cursor position after switching buffers 2005-05-17 08:07:23 +00:00
eknauel 31e0415c39 Keep the state of the command-buffer in a BUFFER record. (before: a
bunch of variables)
2005-05-11 13:30:51 +00:00
eknauel 1f50c28485 Fix more repainting bugs 2005-05-11 08:40:46 +00:00
eknauel ddaf279938 Fix update of cursor position in an extremly ugly faishon. 2005-05-11 08:21:02 +00:00
eknauel 7dd48a3e47 Fix repainting if buffer focus switches 2005-05-11 06:59:13 +00:00
eknauel c4ef6ed09d Change representation of ACTIVE-BUFFER 2005-05-11 06:54:03 +00:00
eknauel 2353335d5e First try to split up PAINT into multiple functions, thus, allowing to
repaint only parts of the screen. However, this commit introduces some
funny display bugs. ;-)
2005-05-10 19:37:54 +00:00
eknauel 599021b937 split PAINT into PAINT and WAIT-FOR-INPUT. Call PRINT-RESULT-BUFFER
to redraw only the result-buffer.
2005-05-10 16:06:06 +00:00
eknauel c9f6b17692 Use PageUp/PageDown for navigating the result history 2005-05-10 15:37:39 +00:00
demattia 33558ab23d added redo to shortcuts 2004-10-17 10:08:58 +00:00
demattia 06ef0c8a1f more modularityand modified shortcuts 2004-10-14 11:58:20 +00:00
demattia c41e53c747 new commands added 2004-10-10 13:22:25 +00:00
demattia b046dc8592 now using input-buffer.scm from scsh-ncurses 2004-10-06 13:00:59 +00:00
demattia 1e10cf6b1e Some architecural changes (message-communication). 2004-10-03 09:13:30 +00:00
demattia 9e9653e404 temporary version 2004-09-20 08:09:54 +00:00
demattia a361435f30 *** empty log message *** 2004-09-14 11:54:00 +00:00