/************************************************************************ * last updated: 10-Sep-1989 03:18:00 * * * * Better Buffer Commands -skd * * * ************************************************************************/ #include command copy_to_buffer() on reg_tab[FALT(1)] { char to_buf[FNAMELEN]; get_buf(to_buf,"buffer name: ", "textbuf"); if ( !strcmp(to_buf,bufname) ) { say("copy-to-buffer - cannot copy to self"); return; } if (!exist(to_buf)) create(to_buf); xfer(to_buf,mark,point); } command move_to_buffer() on reg_tab[FALT(2)] { char to_buf[FNAMELEN]; get_buf(to_buf,"buffer name: ", "textbuf"); if ( !strcmp(to_buf,bufname) ) { say("move-to-buffer - cannot move to self"); return; } if (!exist(to_buf)) create(to_buf); xfer(to_buf,mark,point); delete(mark,point); } command copy_from_buffer() on reg_tab[FALT(3)] { char from_buf[FNAMELEN]; char *cur_buf = bufname; get_buf(from_buf,"buffer name: ", "textbuf"); if ( !strcmp(from_buf,bufname) ) { say("copy-from-buffer - cannot copy from self"); return; } if (exist(from_buf)) { bufname = from_buf; xfer(cur_buf,mark,point); bufname = cur_buf; } else say("buffer %s does not exist",from_buf); } command move_from_buffer() on reg_tab[FALT(4)] { int bufsize; char from_buf[FNAMELEN]; char *cur_buf = bufname; get_buf(from_buf,"buffer name: ", "textbuf"); if ( !strcmp(from_buf,bufname) ) { say("move-from-buffer - cannot move from self"); return; } if ( exist(from_buf)) { bufname = from_buf; xfer(cur_buf,mark,point); delete(mark,point); bufsize = size(); bufname = cur_buf; if ( ! bufsize ) delete_buffer(from_buf); } else say("buffer %s does not exist",from_buf); }