[REBOL] Re: (x)emacs inferior mode
From: nitsch-lists:netcologne at: 10-Mar-2004 21:44
Hi Tim,
Am Montag, 8. M=E4rz 2004 00:01 schrieben Sie:
> Hiya Rebollers:
>
> I want to take a whack at putting together an
> inferior mode for rebol on x/emacs. I'll have some
> help from a fellow who is an old hand at emacs.
>
> If you are interested, drop me a line OTL.
>
> I have rebol.el, but it has no such feature as
> far as I can tell.
>
I am interested in your inferior mode. That is executing a rebol-block in the
interpreter? (what means OTL? "on" or"off list"?)
Maybe you are interested in some of my emacs-stuff too. i don't have real
inferior, but can call rebol with the current script. and have more or less
comfortable tagging.
here are two rebol-helpers and a bit .emacs .
--- %etags.r ---
rebol[Purpose: {tag the buffers dir for *.el, *.cgi and *.r.
last two for rebol}
]
;tags-file is ~/TAGS
dir: first split-path to-file system/script/args
..r: rejoin [
{ --regex="/.*\(\w\|-\)+:/" --regex="/.*set\ '\(\w\|-\)+/" } dir {*.r}
]
..cgi: rejoin [
{ --regex="/.*\(\w\|-\)+:/" --regex="/.*set\ '\(\w\|-\)+/" } dir {*.cgi}
]
call probe rejoin["etags " dir "*.el " .r .cgi]
--- %emacs.r ---
REBOL [Purpose: "call a script"
Usage: {gets an filename. when a %emacs.r is in its dir, it is called.
Otherwise the script itself}
]
use[args dir file][
if probe args: system/script/args[
set[dir file] split-path args: to-file args
either all[exists? dir/emacs.r dir <> what-dir][ =09
do probe dir/emacs.r
][
do probe args
]
]
]
--- %.emacs ---
;i like this config:
(server-start)
(ffap-bindings)
(iswitchb-mode t)
(show-paren-mode 1)
;;; you need %etags.r
; rebview.sh is simply a wrapper to call rebol.
(setq tags-file-name "~/TAGS")
(defun etags () (interactive)
(shell-command (concat "~/rebview.sh ~/etags.r "
(buffer-file-name (current-buffer))))
(visit-tags-table tags-file-name)
)
;;; run script with "c-x w" you need %emacs.r
; rebview.sh is simply a wrapper to call rebol.
(defun rebol () "" (interactive)
(save-buffer) =09
(shell-command
(concat "~/rebview.sh ~/emacs.r "
(buffer-file-name (current-buffer))"&"))
(other-window 1))
(global-set-key "\C-xw" 'rebol) ; the hotkey.
;;; and load rebol-formatting/colorizing
(add-to-list 'auto-mode-alist '("\\.\\(r\\|pr\\|cgi\\)\\'" . rebol-mode))
(autoload 'rebol-mode "~/emacs/rebol" "Turn on REBOL mode" t)
(add-hook 'rebol-mode-hook 'turn-on-font-lock)
> tim
> (old vimmer, emacs newbie,
> no editor wars please!)
> --
> Tim Johnson <[tim--johnsons-web--com]>
> http://www.alaska-internet-solutions.com
-Volker