Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

vi

Name: Anonymous 2009-03-15 18:54

It's shit.

I mean, ZZ for save?  Come on.

Name: Anonymous 2009-03-16 4:29

Here he comes, here comes speedracer,
HE'S A DEMON ON WHEELS

Name: Anonymous 2009-03-16 4:30

Here he comes, here comes speedracer,
HE'S A DEMON ON WHEELS

Name: Anonymous 2009-03-16 4:31

Here he comes, here comes speedracer,
HE'S A DEMON ON WHEELS

Name: Anonymous 2009-03-16 4:32

Here he comes, here comes speedracer,
HE'S A DEMON ON WHEELS

Name: Anonymous 2009-03-16 4:43

>>41-44
gb2/pr/

Name: Anonymous 2009-03-16 5:32

>>33
80x40?

Name: Anonymous 2009-03-16 6:03

>>46
Only PHP ``programmers'' write code wider than eighty characters.

Name: Anonymous 2009-03-16 6:27

>>47
Of course. Everyone else but you and them realizes how useful it is to be able to fit two or three columns of code on the screen.

Name: Anonymous 2009-03-16 6:31

>>47
IsLanguageWithReallyLongVariableNamesThatJustGoOnAndOnWithNoGoodReasonOtherThanToBeOverlyDescriptivep

Name: Anonymous 2009-03-16 6:32

>>48
I think you misunderstood my post. There was no sarcasm there.

Name: Anonymous 2009-03-16 8:32

>>35
I hope you use a real VT100, sonny!

Name: Anonymous 2009-03-16 9:34

>>51
Meh, Digi terminal servers are so much more convenient.

Name: Anonymous 2009-03-16 9:41

I use vim because I like to play DDR on the keyboard while I edit my code. It's fun and adds to the experience of programming.

Name: Anonymous 2009-03-16 9:50

I use emacs because I like to look like a pianist while I edit my code. It's fun and adds to the experience of programming.

Name: Anonymous 2009-03-16 9:54

I use textmate because I like to masturbate furiously while I edit my code. It's fun and adds to the experience of programming.

Name: Anonymous 2009-03-16 9:56

I use notepad.exe because I like to be fisted while I edit my code. It's fun and adds to the experience of programming.

Name: Anonymous 2009-03-16 9:59

I like to map the navigation keys to macros that make it look like I'm playing nethack.

Name: Anonymous 2009-03-16 10:27

>>54
I'm sure you don't really need to use emacs to look like a dick while you edit your code.

Name: Anonymous 2009-03-16 10:59

I use ed because I like to play DDR after I finish editing my code in 10% of the time it takes to start up Vim or EMACS. It's fun and doesn't add to the experience of programming.

Name: Anonymous 2009-03-16 12:18

>>59
If you were as an achieving programmer as you are trying to pretend then you would have earned enough money and/or reputation to buy or beg a modern computer (like, second-hand, not older than 5 years) and forget that Vim or YOMUM HAVE a startup time. Therefore, you are not and should read SICP.

Name: Anonymous 2009-03-16 13:20

>>60
L-LOL!  Dude, you must never have used ed in your life, clearly you have gotten used to the several-milli-second startup time of Vim and EMACS and thus can't even realize that I can write an ANSI haxer compiler in ed in the time it takes to start your shitty editors.

Enjoy your loss of time.

Name: Anonymous 2009-03-16 13:37

>>61
To be honest, I find the start-up time of ANY program to be hindering.  That's why I just type my code without opening a program.

Name: Anonymous 2009-03-16 13:39

>>62
Why type code?  I visualize the output of the program instead, so I don't have to code or run the program.

Name: Anonymous 2009-03-16 13:55

>>63 is the sussman

Name: Anonymous 2009-03-16 14:35

>>50
I think you misunderstood my post. There was no implication that sarcasm was detected in your post.

Name: Anonymous 2009-03-16 14:46

Vi? Or Vibe?
%cat vibe-2.1ans.fs
\
\ VIBE Release 2.1
\ Copyright (c) 2001-2003 Samuel A. Falvo II
\ All Rights Reserved.
\
\ Highly portable block editor -- works under nearly every ANS Forth
\ I can think of, and with only a single screenful of words, will
\ work under Pygmy and FS/Forth too.
\
\ USAGE: vibe ( n -- ) Edits block 'n'.  Sets SCR variable to 'n'.
\        ed ( -- ) From Pygmy.  Re-edits last edited block.
\
\ I use CREATE instead of VARIABLE because I can statically initialize
\ the variables at load-time with no overhead.  Stole this idea from a7r
\ in the #Forth IRC channel.
\
\ 2.1 -- Fixed stack overflow bugs; forgot to DROP in the non-default
\        key handlers.
\

s" gforth" ENVIRONMENT? [IF]
    2DROP
    WARNINGS OFF
[THEN]
   
( Editor Constants )

\ I don't like this technique; should have used a bitmap.  Will fix later.
CHAR i CONSTANT 'i   \ Insert mode
CHAR r CONSTANT 'r   \ Replace mode
CHAR c CONSTANT 'c   \ Command mode

CHAR y CONSTANT 'y
CHAR n CONSTANT 'n

CHAR A CONSTANT 'A
CHAR Z CONSTANT 'Z
CHAR $ CONSTANT '$

( Editor State )

 1 CREATE scr ,   \ Current block
 0 CREATE x ,     \ Cursor X position 0..63
 0 CREATE y ,     \ Cursor Y position 0..15
'c CREATE mode ,  \ Change to bitmap later.

\ GForth-specific
CREATE wordname 5 C, '$ C, '$ C, 0 C, 0 C, 0 C,

( Editor Display )

: mode. 63 0 AT-XY mode @ EMIT ;
: scr. 0 0 AT-XY ." Block: " scr @ . ."      " ;
: header scr. mode. ;
: 8-s ." --------" ;
: 64-s 8-s 8-s 8-s 8-s 8-s 8-s 8-s 8-s ;
: border SPACE 64-s CR ;
: row DUP 64 TYPE 64 + ;
: line ." |" row ." |" CR ;
: 4lines line line line line ;
: 16lines scr @ BLOCK 4lines 4lines 4lines 4lines DROP ;
: card 0 1 AT-XY border 16lines border ;
: cursor x @ 1+ y @ 2 + AT-XY ;
: screen header card cursor ;

( Editor State Control )

: insert 'i mode ! ;
: replace 'r mode ! ;
: cmd 'c mode ! ;

: bounds scr @ 0 MAX 65535 MIN scr ! ;
: prevblock -2 scr +! bounds ;
: nextblock  2 scr +! bounds ;
: toggleshadow 1 scr @ XOR scr ! ;

( Editor Cursor Control )

: flushLeft 0 x ! ;
: boundX x @ 0 MAX 63 MIN x ! ;
: boundY y @ 0 MAX 15 MIN y ! ;
: bounds boundX boundY ;
: left -1 x +! bounds ;
: right 1 x +! bounds ;
: up -1 y +! bounds ;
: down 1 y +! bounds ;
: beep 7 EMIT ;
: nextline y @ 15 < IF flushLeft down THEN ;
: next x @ 63 = IF nextline EXIT THEN right ;

( Editor Insert/Replace Text )

: 64* 2* 2* 2* 2* 2* 2* ;
: where scr @ BLOCK SWAP 64* + SWAP + ;
: wh x @ y @ where ;
: eol 63 y @ where ;
: place wh C! UPDATE next ;
: -eol? x @ 63 < ;
: openr wh DUP 1+ 63 x @ - MOVE ;
: openRight -eol? IF openr THEN ;
: inserting? mode @ 'i = ;
: chr inserting? IF openRight THEN place ;

( Editor Commands: Quit, cursor, block, et. al. )

: $$c51 DROP 0 20 AT-XY R> R> DROP >R ; \ Q -- quits main loop
: $$c30 DROP flushLeft ;             \ 0
: $$c69 DROP insert ;                \ i
: $$c49 DROP flushLeft insert ;      \ I
: $$c52 DROP replace ;               \ R
: $$i1B DROP cmd ;                   \ (escape)
: $$c68 DROP left ;                  \ h
: $$c6A DROP down ;                  \ j
: $$c6B DROP up ;                    \ k
: $$c6C DROP right ;                 \ l
: $$c5B DROP prevblock ;             \ [
: $$c5C DROP toggleshadow ;          \ \
: $$c5D DROP nextblock ;             \ ]

( Editor Backspace/Delete )

: padding 32 eol C! UPDATE ;
: del wh DUP 1+ SWAP 63 x @ - MOVE ;
: delete -eol? IF del THEN padding ;
: bs left delete ;
: backspace x @ 0 > IF bs THEN ;

( Editor Carriage Return )

: nextln eol 1+ ;
: #chrs scr @ BLOCK 1024 + nextln - 64 - ;
: copydown y @ 14 < IF nextln DUP 64 + #chrs MOVE THEN ;
: blankdown nextln 64 32 FILL UPDATE ;
: splitdown wh nextln 2DUP SWAP - MOVE ;
: blankrest wh nextln OVER - 32 FILL ;
: opendown copydown blankdown ;
: splitline opendown splitdown blankrest ;
: retrn inserting? IF splitline THEN flushleft nextline ;
: return y @ 15 < IF retrn THEN ;

( Editor Wipe Block )

: msg 0 20 AT-XY ." Are you sure? (Y/N) " ;
: valid? DUP 'n = OVER 'y = OR ;
: uppercase? DUP 'A 'Z 1+ WITHIN ;
: lowercase DUP uppercase? IF $20 XOR THEN ;
: validkey BEGIN KEY lowercase valid? UNTIL ;
: clrmsg 0 20 AT-XY 64 SPACES ;
: no? msg validkey clrmsg 'n = ;
: ?confirm no? IF R> DROP THEN ;
: wipe ?confirm scr @ BLOCK 1024 32 FILL UPDATE 0 x ! 0 y ! ;

( Editor Commands: backspace, delete, et. al. )

: $$i04 DROP delete ;                    \ CTRL-D
: $$i08 DROP backspace ;                 \ (bs)
: $$i7F DROP backspace ;                 \ DEL -- for Unix
: $$i0D DROP return ;                    \ (cr)
: $$c5A DROP wipe ;                      \ Z
: $$c6F DROP opendown down $$c49 ;       \ o
: $$c4F DROP opendown ;                  \ O

( Editor Keyboard Handler )

\ Word name key: $ $ _ _ _
\                    | | |
\ c = command mode --+ | |
\ i = ins/repl mode    | |
\                      | |
\ Key code (hex#) -----+-+
\
\ Called with ( k -- ) where k is the ASCII key code.

: keyboard KEY ;
: cmd? mode @ 'c = ;
: ins? mode @ 'i = mode @ 'r = OR ;
: mode! ins? 'i AND cmd? 'c AND OR wordname 3 + C! ;
: >hex DUP 9 > IF 7 + THEN '0 + ;
: h! DUP $F0 AND 2/ 2/ 2/ 2/ >hex wordname 4 + C! ;
: l! $0F AND >hex wordname 5 + C! ;
: name! mode! h! l! ;
: nomapping DROP ['] beep cmd? AND ['] chr ins? AND OR ;
: handlerword name! wordname FIND IF ELSE nomapping THEN ;
: handler DUP handlerword EXECUTE ;
: editor BEGIN keyboard handler screen AGAIN ;
: ed page screen editor ;
: vibe scr ! ed ;

Name: Anonymous 2009-03-16 14:55

>>66
I think you misunderstood my post. My hair is a bird.

Name: Anonymous 2009-03-16 14:56

>>67
I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post. I think you misunderstood my post.

Name: Anonymous 2009-03-16 14:58

>>66
Valid... wait

Name: Anonymous 2009-03-16 15:19

>>69
I think you mean
code Forth valid

Name: Anonymous 2009-03-16 15:30

I don't know about you guys but I like TextEdit.app.

Name: Anonymous 2009-03-16 15:34

>>71
1/10

Name: Anonymous 2009-03-16 18:25

nano>*

Name: Anonymous 2009-03-16 18:33

>>66
I wish I had a job coding Forth :(

Name: Anonymous 2009-03-16 18:36

>>74
*in Forth

Name: Anonymous 2009-04-16 19:48

When I use an editor, I don't want eighty extra MEGABYTES of worthless help screens and cursor positioning code! I just want an EDitor!!
Not a "netbeanstor". Not a "eclipsesitor". Those aren't even WORDS!!!!
ED! ED! ED IS THE STANDARD!!!

Name: Anonymous 2011-01-31 21:14

<-- check em dubz

Name: tray 2012-03-14 17:15

you better be

Name: Anonymous 2014-01-21 21:15

>>76
>le pedophile sage

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List