#N canvas 127 -1 1027 898 10; #X msg 463 10 rewind; #X obj 392 853 print done; #X text 575 665 read a file; #X text 609 686 write one; #X text 23 356 see also:; #X text 512 9 go to beginning; #X msg 466 223 bang; #X text 474 724 write a file \, terminating lines only with carriage return (omitting semicolons.) You can read files this way too \, in which case carriage returns are mapped to semicolons.; #X obj 355 871 print list; #X msg 466 281 clear; #X text 123 872 this outlet gets the lines in sequence.; #X msg 470 571 set 2 4 6 8; #X text 576 570 clear and then add one message; #X msg 466 388 add cis boom bah; #X msg 465 407 add2 bang; #X msg 465 782 print; #X text 507 784 debugging printout; #X obj 73 9 msgfile; #X text 127 9 read and write messages into text files; #X obj 355 815 msgfile; #X obj 84 357 textfile; #X text 18 57 The msgfile object is derived from the textfile object and expands its features.; #X text 15 97 new features are :; #X text 127 110 insert \, append \, delete \, replace; #X msg 464 33 end; #X text 511 33 go the the end; #X msg 462 84 skip -1; #X msg 463 181 next; #X msg 462 139 prev; #X msg 462 108 where; #X text 515 107 where are we now ?; #X msg 463 160 this; #X text 516 84 go to the th line from here; #X text 512 58 go to line number ; #X text 515 220 output one line as a list and move to the next; #X text 520 282 empty the object; #X msg 467 321 delete 2; #X text 9 183 changed behaviour :; #X text 130 183 add2 : read "add too" \; append to an existing line; #X text 602 433 insert a message before the current line; #X text 605 455 add to the previous line (CHANGED BEHAVIOUR !!!); #X text 567 405 add to the last line (CHANGED BEHAVIOUR !!!); #X text 568 385 add a message at the end of the object; #X msg 467 489 append after the break of dawn; #X text 661 486 add a message at the current position; #X text 660 506 add to the current line (CHANGED BEHAVIOUR !!!); #X msg 468 537 replace the new day; #X text 660 537 replace the current line; #X msg 466 437 insert before sunrise; #X msg 466 455 insert2 inserted; #X msg 467 508 append2 appendix; #X msg 467 250 flush; #X text 516 249 output all lines; #X text 457 836 This outlet gets a bang when you hit the end of the sequence \; it will also get the current position when using "when"; #X msg 467 666 read msgfile.txt; #X msg 467 708 write /tmp/msgfile2.txt cr; #X msg 466 761 read msgfile2.txt cr; #X text 511 139 output the previous line; #X text 513 179 output the next line; #X text 511 159 output the current line; #X msg 462 59 goto 8; #X msg 467 301 delete; #X text 521 302 delete the current line; #X text 524 321 delete the specified line; #X msg 467 340 delete 4 7; #X text 535 341 delete the specified region; #X msg 467 360 delete 7 4; #X msg 467 687 write /tmp/msgfile.txt; #X text 538 360 delete all but the specified region; #X msg 472 600 find test 6; #X msg 472 619 find test * 7 *; #X text 576 606 find a matching list ("*" is the only wildcard supported); #X text 127 97 end \, goto \, skip; #X text 131 127 flush \, where \, this \, prev \, next; #X text 128 145 find; #X text 73 163 read/write can handle csv files too; #X connect 0 0 19 0; #X connect 6 0 19 0; #X connect 9 0 19 0; #X connect 11 0 19 0; #X connect 13 0 19 0; #X connect 14 0 19 0; #X connect 15 0 19 0; #X connect 19 0 8 0; #X connect 19 1 1 0; #X connect 24 0 19 0; #X connect 26 0 19 0; #X connect 27 0 19 0; #X connect 28 0 19 0; #X connect 29 0 19 0; #X connect 31 0 19 0; #X connect 36 0 19 0; #X connect 43 0 19 0; #X connect 46 0 19 0; #X connect 48 0 19 0; #X connect 49 0 19 0; #X connect 50 0 19 0; #X connect 51 0 19 0; #X connect 54 0 19 0; #X connect 55 0 19 0; #X connect 56 0 19 0; #X connect 60 0 19 0; #X connect 61 0 19 0; #X connect 64 0 19 0; #X connect 66 0 19 0; #X connect 67 0 19 0; #X connect 69 0 19 0; #X connect 70 0 19 0;