[Top] | [Contents] | [Index] | [ ? ] |
This file documents the Freehoo! version 3.4.1. Freehoo is a console based GNU messenger for Yahoo! services powered by Guile and Readline.
1. Overview | These are features of Freehoo | |
2. Invoking | Command line arguments | |
3. Freehoo commands | List of Freehoo commands | |
4. Customizing freehoo | Customizing Freehoo | |
5. Tips and Tricks | Cool tips and tricks | |
Extension Developer Guide (Advanced) | ||
---|---|---|
6. Extension language | About an extension language | |
7. hello.scm extension | Writing a simple `hello gnu' extension | |
8. Variables | Freehoo exported Scheme variables | |
9. Procedures | Freehoo exported Scheme primitives | |
10. Hooks | Freehoo exported Scheme hooks | |
11. Learning further | Guile and Scheme URLs | |
Miscellaneous | ||
12. Authors | Freehoo contributors | |
13. URLs | Mailing list, Downloads, CVS | |
14. Guidelines for submitting a patch | ||
15. Portability | Porting Freehoo | |
16. License | You may give out copies of Freehoo | |
Indices | ||
Concept Index | ||
Command Index | ||
Procedure Index |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
history
feature records all your conversions in
`~/.freehoo/history/login-id/buddy-name'.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
0: I'm Available 1: Be Right Back 2: Busy 3: Not at Home 4: Not at my Desk 5: Not in the Office 6: On the Phone 7: On Vacation 8: Out to Lunch 9: Stepped Out 12: Invisible 999: Idle |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
*
is a
virtual buddy in your buddy list which means everybody in the list.
~qp~> * Hello, World! ~qp~> * |
Hello, World!
will be sent to all the buddies in
your buddy list.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example: A sample Freehoo session.
~qp~> /who [Friends] * markus [Busy Hacking] rms * thomas [Idle] [Team] balugi * kvisu2000 ~qp~> kvisu2000 Hi, How are you kvisu2000 -> I'm fine ~qp~> balugi Hi, Are you there Offline message sent to [balugi] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Friends
.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
/alias
accepts name and at least one buddy as
arguments. Aliases can be recursive.
Using Guile interface, you can add permanent aliases to startup file (see section 4.1 freehoo.scm) like,
(define alias '((helpdesk . (abindian balugi kvisu2000)) (mridul . (gnuindian)) (bala . (balugi)) (nags . (nagappanal)) (visu . (kvisu2000)))) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
/toggle
(see /toggle bell)
Using Guile interface, you can disable bell during startup (see section 4.1 freehoo.scm) like,
(fh-bell!) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
*
(see section 3.1 Freehoo command - *).
~qp~> /broadcast Hello, World! ~qp~> |
Hello, World!
will be sent to all the buddies in
your buddy list.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
~qp~> /buzz marcus ~qp~> |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
/forward
accepts
name and at least one to-buddy as arguments.
Using Guile interface, you can add permanent forwards to startup file (see section 4.1 freehoo.scm) like,
(define forward '((gnubot . (ramyog_2000 nagappanal balugi)) (gopal_narayanan . (parag_mehta)))) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
/cc
accepts buddy and at least one
cc-buddy as arguments.
Using Guile interface, you can add permanent CCs to startup file (see section 4.1 freehoo.scm) like,
(define cc '((rms . (markus roland thomas)) (gopal_narayanan . (parag_mehta)))) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Using Guile interface, you can permanently enable color themes in startup file (see section 4.1 freehoo.scm) like, (1)
(fh-enable-colors) |
Using Guile interface, you can permanently disable color themes in startup file (see section 4.1 freehoo.scm) like,
(fh-disable-colors) |
Using Guile interface, you can permanently set color for a buddy message in startup file (see section 4.1 freehoo.scm) like,
(fh-set-buddy-color! "nirranjan" "green") (fh-set-buddy-color! "rms" "red") (fh-set-buddy-color! "marcus" "magenta") |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example: To send message to yourself
~qp~> /eval (fh-send-message (fh-get-default-login-id) "Hello GNU") abindian -> Hello GNU ~qp~> |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
shell
.
Example:
See /shell example |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example: To check if `kvisu2000' is using FreeHoo,
~qp~> /freehoo kvisu2000 Yes [kvisu2000] is using FreeHoo ~qp~> |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
You can always ask FreeHoo itself for information on its commands,
using the command /help
. If command is ignored then help
on all the commands will be listed.
@footnote {If you want talk to the author of freehoo, message
gnubot buddy}
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Display history page by page for BUDDY. With no arguments mentioned, this command displays all messages that belongs to current history session. This session is flushed upon every successful login.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
/load
command loads and evaluates Scheme extensions.
scheme-file argument is a must.
Using Guile interface, you can load other Scheme files from startup file (see section 4.1 freehoo.scm) like,
(load "/home/gnu/hello.scm") |
(see fh-load)
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
~qp~> /remove balugi Poda Kuppa! |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
~qp~> /send balugi Hi, how are you/ balugi -> Fine and you/ |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
~qp~> /send-file balugi /etc/passwd my passwd file |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
/shell
command executes the specified command with its
args. With no arguments, /shell
escapes to shell. You can
also chat with shell as if shell is your buddy. Just type shell
without /
prefix.
Example:
~qp~> /shell ls -lh /tmp total 12k drwxr-xr-x 3 root root 4.0k Jan 1 00:53 emacs-terminfo -rw-r--r-- 1 root root 1 Jan 1 05:04 emacsOdVut8 drwx------ 2 root root 4.0k Jan 1 00:13 xdvi7GIKqr ~qp~> /sh press C-d to return to freehoo $ rm -f /tmp/xdvi7GIKqr C-d RET ~qp~> |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
/status
command, you can view or set your buddy-status.
0: I'm Available 1: Be Right Back 2: Busy 3: Not at Home 4: Not at my Desk 5: Not in the Office 6: On the Phone 7: On Vacation 8: Out to Lunch 9: Stepped Out 12: Invisible 99: [Custom message] 999: Idle |
/status
command displays your
current status.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
bell
Example:
~qp~> /toggle bell Bell sound - [OFF] ~qp~> /toggle bell Bell sound - [ON] ~qp~> |
session
VANILLA mode lets the user to type the buddy name manually. How ever user can use TAB interface to auto-fill. (see section 5. Tips and Tricks)
AUTO-INSERT mode intelligently selects the buddy name during chat session. (see section 3.33.0.1 AUTO-INSERT mode HOW-TO).
status
who
3.33.0.1 AUTO-INSERT mode HOW-TO |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
AUTO-INSERT mode guesses the buddy name from the previously sent/received message.
Just move the cursor back and edit the buddy name to your choice.
Pressing RET without typing any message switches to last received buddy.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
cc
and forward
extensions. All
the messages you send to a virtual buddy named cf
are
despatched to the conference members. Similarly the messages received
from any of the conference members are forwarded back to other
conference members.
/vconf-start
disappears
and /vconf-who
, /vconf-end
appears. /vconf-start
accepts at least one buddy as its argument.
/vconf-who
, /vconf-end
disappears and /vconf-start
appears.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
~qp~> /version freehoo (Freehoo) 3.1.0 Copyright (C) 2003, 2004 Freehoo Core Team. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ~qp~> |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
~qp~> /who [Friends] * markus [Busy Hacking] rms * thomas [Idle] [Team] balugi * kvisu2000 ~qp~> |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
~qp~> /xmessage bala Hi Bala, are you there |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
4.1 freehoo.scm | startup configuration file | |
4.2 init.scm | system wide initialization | |
4.3 Default Scheme extensions | default Scheme extensions |
If you want to extend freehoo yourself, you can further explore Hoo Extension Developer Guide. (see section 6. Extension language)
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
; this is comment ;;; sample freehoo.scm ;;; login-id is equal to my gnu/linux account ;; (fh-set-default-login-id! (getlogin)) ;;; default login-id for yahoo service (fh-set-default-login-id! "gnu_india") ;; (fh-set-default-login-id! "abindian") ;; (fh-set-default-login-id! "gnubot") ;;; default global password (fh-set-default-password! "nopassword") ;; (fh-set-default-password! "pressenter") ;;; by default session mode is AUTO-INSERT. switch it to VANILLA mode ;; (fh-toggle! "session") ;;; by default display of status message is SHOW. switch it HIDE ;; (fh-toggle! "status") ;;; if login-id is "abindian" (and (string=? (fh-get-default-login-id) "abindian") ;;; default password (fh-set-default-password! "pressenter") ;;; switch OFF bell (fh-toggle! "bell") ;;; show ALL buddies (fh-toggle! "who") ;;; login in invisible mode (fh-set-default-status! 12)) ;;; if login-id is "gnubot" (and (string=? (fh-get-default-login-id) "gnubot") ;;; default password (fh-set-default-password! "pressescape") ;;; switch OFF bell (fh-toggle! "bell")) ;;; create aliases (define alias '((helpdesk . (abindian balugi kvisu2000)) (mridul . (gnuindian)) (bala . (balugi)) (nags . (nagappanal)) (visu . (kvisu2000)))) ;;; create CC lists (define cc '((rms . (markus roland thomas)) (gopal_narayanan . (parag_mehta)))) ;;; create forward lists (define forward '((gnubot . (ramyog_2000 nagappanal balugi)) (gopal_narayanan . (parag_mehta)))) ;;; my own dict words (fh-dict-add-word! "acomplexneword") (fh-dict-add-word! "myfriendsnick") |
All entries in this `freehoo.scm' file are optional. How ever there is no limit in customizing or extending freehoo through Guile interface. Explaining all the possibilities are beyond the scope of this document.
(see section 6. Extension language)
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
(see section 6. Extension language)
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
(see section 6. Extension language)
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
@subsection Cursor motion | ||
character | C-b | C-f |
word | M-b | M-f |
line up/down | C-p | C-n |
line start/end | C-a | C-e |
@subsection Editing | ||
delete char | C-d | |
delete char backwards | C-h | |
delete word | M-d | |
delete word backwards | C-w | |
kill line | C-k | |
kill line backwards | C-u | |
character swap | C-t | |
word swap | M-w | |
paste | C-y | |
undo | C-_ | |
repeat prefix | M-number | |
@subsection Case change | ||
uppercase word | M-u | |
lowercase word | M-l | |
capitalize word | M-c |
If you want to do further stunts, jump to Readline manual, See section `Readline' in Readline.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Hoo uses GNU extension language - Guile (which can stand for _GNU Ubiquitous Intelligent Language Extension_). Guile started out as an embeddable Scheme interpreter, and has rapidly evolved into a kitchen-sink package including a standalone Scheme interpreter, an embeddable Scheme interpreter, several graphics options, other languages that can be used along with Scheme (for now just _ctax_ and _Tcl_), and hooks for much more.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
/hello
, which
on invocation sends a message Hello GNU to yourself.
;; hello.scm (fh-register-command! "/hello" "/hello\n\t- Hello to myself.\n") (define (/hello args) "send me hello message" (fh-send-message (fh-get-default-login-id) "Hello GNU")) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
(fh-load "hello.scm")
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
9.1 General procedures | General Scheme primitives | |
9.2 Configuration procedures | Configuration Scheme primitives | |
9.3 Hook related procedures | Hook related Scheme primitives | |
9.4 Utility procedures | Utility Scheme primitives |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
(fh-load "aliases.scm") |
Example:
(fh-add-buddy "rms" "GNU") |
Example:
(fh-send-message "rms" "hello GNU") |
fh-message-send-hook
otherwise it will lead to an
endless recursion.
Example:
(fh-send-message-no-hook "rms" "hello GNU") |
Example:
(fh-set-current-target-buddy! "richard") |
Example:
(fh-register-command! "/date" "/date\n\t- display current date") |
Example:
(fh-unregister-command! "/date") |
Example:
(display (fh-version)) |
display
primitive, this procedure takes care of printing messages
asynchronously.
Example:
(fh-display ("I am proud of freehoo")) |
Example:
(fh-dict-add-word! "acomplexneword") (fh-dict-add-word! "myfriendsnick") |
Example:
(fh-dict-add-word-sorted! "aaa") (fh-dict-add-word-sorted! "aab") (fh-dict-add-word-sorted! "abc") |
Example:
(fh-dict-del-word "acomplexneword") (fh-dict-del-word "myfriendsnick") |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
(fh-bell) |
The value of state can be,
Example:
(fh-toggle! bell) |
Example:
(fh-toggle! session) |
Example:
(fh-toggle! status) |
Example:
(fh-toggle! who) |
Example:
(chdir (fh-get-home-dir)) |
Example:
(display (fh-get-config-dir)) |
Example:
(display (fh-get-config-filename)) |
Example:
(display (fh-get-download-filename)) |
Example:
(chdir (fh-get-global-extensions-directory)) |
Example:
(chdir (fh-get-local-extensions-directory)) |
Example:
(display (fh-get-default-login-id)) |
Example:
(fh-set-default-login-id! "kvisu2000") |
Example:
(fh-set-default-password! "pressenter") |
Example:
;;; go invisible (fh-set-default-status! 12) |
Example:
;;; set freehoo prompt (fh-set-prompt! "~qp~> ") |
Example:
;;; logoff connection (fh-logoff) |
Example:
;;; logoff and quit freehoo (fh-quit) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
(define (alias to message) "alias nags to nagappanal" (and (string=? to "nags") ;; send message to actual name (fh-send-message-no-hook "nagappanal" message) ;; "nags" does'nt exist. so let send return immediately (fh-hook-return))) (add-hook! fh-message-send-hook alias) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Example:
(symbolrnumber->symbol 5) |
Example:
(any->symbol 5) |
list to any seperated vector
.
Example:
(list->asv ("gnuindian" "nagappanal" "abindian" "balugi") ", ") |
Example:
(list->csv ("gnuindian" "nagappanal" "abindian" "balugi")) |
Example:
(sentence->words "Free as in Freedom") => (Free as in Freedom) |
Example:
(list->symlist (5 a gnu 100 10.5)) |
Example:
(list->strlist (5 a gnu 100 10.5)) |
Example:
(send-message-to-group '(gnuindian nagappanal abindian balugi) "Hello GNU") |
Example:
(display (local-date-time)) |
Example:
(ignore-message! "^PING$") |
Example:
(ignored-message? "PING") |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Supporting primitives:
see fh-hook-return |
Example:
(define (cc-proc to message) "hook procedure for CCing messages" (and (string=? to "rms") (fh-send-message-no-hook "thomas" message) (fh-send-message-no-hook "roland" message) (fh-send-message-no-hook "gord" message))) (add-hook! fh-message-send-hook cc-proc) |
Supporting primitives:
see fh-hook-return |
Example:
(define (forward-proc from message) "hook procedure for bouncing messages" (and (string=? from "rms") (fh-send-message-no-hook "thomas" message) (fh-send-message-no-hook "roland" message) (fh-send-message-no-hook "gord" message))) (add-hook! fh-message-receive-hook forward-proc) |
Supporting primitives:
see fh-hook-return |
Example:
(define (ack-proc from message timestamp) "hook procedure for acknowledging offline messages" (fh-send-message-no-hook from "Received ur offline message")) (add-hook! fh-message-receive-offline-hook ack-proc) |
Example:
(define (mail-notify-proc from subject) "hook procedure for mail notification" (system "ogg123 ~/themes/mail-notify.ogg&")) (add-hook! fh-mail-notify-hook mail-notify-proc) |
Supporting primitives:
see fh-hook-return |
Example:
(define (history-rotate-proc) "hook procedure for flushing the old history messages" (history-rotate)) (add-hook! fh-login-post-hook history-rotate-proc) |
Supporting primitives:
see fh-hook-return |
Example:
(define (auto-add-buddy from message) "hook procedure for automatically adding buddy to your contact list" (fh-add-buddy from "GNU")) ;; GNU - group name (add-hook! fh-contact-added-hook auto-add-buddy) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
http://www.gnu.org/software/guile/
http://www.schemers.org/
ftp://ftp.cs.utexas.edu/pub/garbage/cs345/schintro-v14/schintro_toc.html
http://www.informatik.uni-kiel.de/~scheme/
http://freespace.virgin.net/david.drysdale/guile/tutorial.html
http://nis-www.lanl.gov/~rosalia/gnudl-doc/learn_libguile_toc.html
http://theoryx5.uwinnipeg.ca/gnu/guile/guile-user.html#SEC_Top
http://www.nada.kth.se/~mdj/guile-ref/guile-ref_toc.html
http://www.red-bean.com/guile/guile/old/3540.html
http://nis-www.lanl.gov/~rosalia/mydocs/guile-user.html
http://www.cs.utexas.edu/users/lavender/courses/scheme/
http://www.cstr.ed.ac.uk/projects/festival/manual/festival_8.html#SEC24
http://www.cs.ccu.edu.tw/~dan/tutorials.html
http://www.wcug.wwu.edu/~randyman/COMPUTERS/SCHEME/start.htm
http://www.dmoz.org/Computers/Programming/Languages/Lisp/Scheme/Teaching/
http://www.cs.caltech.edu/~cs181/doc/
http://cis.csuohio.edu/~hysockel/Links/Documents.html
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
1. | A. Balamurugan | Developer | balamurugana@yahoo.com |
2. | A. Nagappan | Developer | nagappanal@yahoo.com |
3. | Anand Babu | Project Manager | ab@gnu.org.in |
4. | Gopal Narayanan | Developer | gopal@debian.org |
5. | H.E. Ramesh | Developer | ramyog_2000@yahoo.com |
6. | K. Nirranjan | Developer | nirranjan@yahoo.com |
7. | K. Viswanathan | Developer | gnuvisu@yahoo.com |
8. | Mridul Jain | Developer | gnuindian@yahoo.com |
9. | Parag Mehta | Developer | pm@gnuos.org |
Texi documentation written by K. Viswanathan gnuvisu@yahoo.com and revised by Anand Babu ab@gnu.org.in
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
To Subscribe/Unsubscribe visit, https://savannah.nongnu.org/mail/?group=freehoo.
Before actually submitting a bug report, please try to follow a few simple guidelines.
where
to get the backtrace.
Send your specific queries to M.P. Anand Babu ab@gnu.org.in
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
freehoo
directory as
freehoo-hack
.
freehoo-hack
directory.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Various freehoo versions have been compiled and tested under GNU/Hurd and GNU/Linux. However freehoo can be easily ported to any POSIX complaint platform with Guile and Readline ports. If you compile it on an architecture not listed here, please let us know so that we can update it. (see section 13. URLs)
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this software; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA As a special exception, the Free Software Foundation gives permission for additional uses of the text contained in its release of freehoo. The exception is that, if you link the Freehoo with other files to produce an executable, this does not by itself cause the resulting executable to be covered by the GNU General Public License. Your use of that executable is in no way restricted on account of linking the Freehoo code into it. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU General Public License. This exception applies only to the code released by the Free Software Foundation under the name freehoo. If you copy code from other Free Software Foundation releases into a copy of freehoo, as the General Public License permits, the exception does not apply to the code that you add in this way. To avoid misleading anyone as to the status of such modified files, you must delete this exception notice from them. If you write modifications of your own for freehoo, it is your choice whether to permit this exception to apply to your modifications. If you do not wish that, delete this exception notice. |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Jump to: | A C E F G I O P R S V |
---|
Jump to: | A C E F G I O P R S V |
---|
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Jump to: | *
<
A B C D E F H I L P Q R S T U V W X |
---|
Jump to: | *
<
A B C D E F H I L P Q R S T U V W X |
---|
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Jump to: | A F I L S |
---|
Jump to: | A F I L S |
---|
[Top] | [Contents] | [Index] | [ ? ] |
by default color themes is enabled
Currently typing notifications will be sent remote buddy only in AUTO-INSERT mode. VANNILA mode has no concept of current target buddy.
When you press TAB twice at freehoo prompt you can see all the possible commands and buddy names.
The following primitives can be called from procedures that are hooked to freehoo exported hooks. Also check the list of supported primitives for each hook.
utility procedures are loaded through /DATADIR/freehoo/extensions/util.scm and you are free to hack for cool undocumented procedures
[Top] | [Contents] | [Index] | [ ? ] |
1. Overview
2. Invoking
3. Freehoo commands
3.1 Freehoo command - *4. Customizing freehoo
3.2 Freehoo command - <buddy>
3.3 Freehoo command - add
3.4 Freehoo command - alias
3.5 Freehoo command - bell
3.6 Freehoo command - broadcast
3.7 Freehoo command - buzz
3.8 Freehoo command - forward
3.9 Freehoo command - cc
3.10 Freehoo command - color-*
3.11 FreeHoo virtual conference commands
3.12 FreeHoo command - date
3.13 FreeHoo command - dbg-backtrace
3.14 FreeHoo command - dict
3.15 FreeHoo command - eval
3.16 freehoo command - exec
3.17 FreeHoo command - freehoo
3.18 freehoo command - help
3.19 freehoo command - history
3.20 freehoo command - ignore*
3.21 freehoo command - load
3.22 freehoo command - ping
3.23 freehoo command - pipe
3.24 freehoo command - quit
3.25 freehoo command - refresh
3.26 freehoo command - reject
3.27 freehoo command - remove
3.28 freehoo command - restart
3.29 freehoo command - send
3.30 freehoo command - send-file
3.31 freehoo command - shell
3.32 freehoo command - status
3.33 freehoo command - toggle
3.34 freehoo virtual conference commands3.33.0.1 AUTO-INSERT mode HOW-TO
3.35 freehoo command - version
3.36 freehoo command - who
3.37 freehoo command - xmessage
4.1 freehoo.scm5. Tips and Tricks
4.2 init.scm
4.3 Default Scheme extensions
6. Extension language
7. hello.scm extension
7.1 Writing hello.scm8. Variables
7.2 Loading hello.scm
9. Procedures
9.1 General procedures10. Hooks
9.2 Configuration procedures
9.3 Hook related procedures
9.4 Utility procedures
11. Learning further
12. Authors
13. URLs
14. Guidelines for submitting a patch
15. Portability
16. License
Concept Index
Command Index
Procedure Index
[Top] | [Contents] | [Index] | [ ? ] |
1. Overview
2. Invoking
3. Freehoo commands
4. Customizing freehoo
5. Tips and Tricks
6. Extension language
7. hello.scm extension
8. Variables
9. Procedures
10. Hooks
11. Learning further
12. Authors
13. URLs
14. Guidelines for submitting a patch
15. Portability
16. License
Concept Index
Command Index
Procedure Index
[Top] | [Contents] | [Index] | [ ? ] |
Button | Name | Go to | From 1.2.3 go to |
---|---|---|---|
[ < ] | Back | previous section in reading order | 1.2.2 |
[ > ] | Forward | next section in reading order | 1.2.4 |
[ << ] | FastBack | beginning of this chapter or previous chapter | 1 |
[ Up ] | Up | up section | 1.2 |
[ >> ] | FastForward | next chapter | 2 |
[Top] | Top | cover (top) of document | |
[Contents] | Contents | table of contents | |
[Index] | Index | concept index | |
[ ? ] | About | this page |
where the Example assumes that the current position is at Subsubsection One-Two-Three of a document of the following structure: