factor/libs/jedit/jedit.factor

39 lines
1.1 KiB
Factor
Raw Permalink Normal View History

2006-08-02 03:49:13 -04:00
! Copyright (C) 2004, 2006 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
2004-08-18 01:13:56 -04:00
IN: jedit
2006-08-02 15:17:13 -04:00
USING: arrays definitions errors io kernel listener math
namespaces parser prettyprint sequences strings words shells ;
2004-08-18 01:13:56 -04:00
: jedit-server-info ( -- port auth )
2006-09-29 20:45:24 -04:00
home "/.jedit/server" path+ <file-reader> [
readln drop
readln string>number
readln string>number
2004-08-18 01:13:56 -04:00
] with-stream ;
2006-11-14 16:59:20 -05:00
: make-jedit-request ( files -- code )
2004-08-18 01:13:56 -04:00
[
2006-08-25 21:29:09 -04:00
"EditServer.handleClient(false,false,false," write
cwd pprint
"," write
"new String[] {" write
[ pprint "," write ] each
"null});\n" write
] string-out ;
2004-08-18 01:13:56 -04:00
: send-jedit-request ( request -- )
jedit-server-info swap "localhost" swap <client> [
4 >be write
dup length 2 >be write
2005-09-14 00:37:50 -04:00
write
2004-08-18 01:13:56 -04:00
] with-stream ;
2006-08-25 00:02:30 -04:00
: jedit-location ( file line -- )
number>string "+line:" swap append 2array
make-jedit-request send-jedit-request ;
2004-11-16 23:14:01 -05:00
: jedit-file ( file -- )
1array make-jedit-request send-jedit-request ;
2004-11-16 23:14:01 -05:00
2006-08-25 00:02:30 -04:00
[ jedit-location ] edit-hook set-global