You can use these functions to save and load your position in files. This can make it easier to return to where you were in a file after taking a break. Before quitting, the `sfp` function saves commands to a file to open the current files, return to the current line numbers, and set the current labels. The `lfp` function runs the commands that you saved with the `sfp` function. The `rf` function refreshes the buffer, restores the labels, and returns to the line number that you were on. # Write the line number of a label of the previous buffer on the stack. # usage: # Functions rf and sfp use this function. function+getlabel { up '~0X if(*) { ebvar+ !true ebvar- down r !if [ -n '_ ]; then echo ${EB_LN}k~0; fi } else { down } } # Write the line number of a label of the next session. # usage: # Function sfp uses this function. function+getlabeln { e+ '~0X if(*) { ebvar+ !true ebvar- eret r !if [ -n '_ ]; then echo ${EB_LN}k~0; fi } else { eret } } # Save commands to restore the file positions. # usage: ] function+sfp { db0 while(*) { e- } while(*) { enew ^ e+ } while(*) { e- } H- ebvar+ !true ebvar- etmp ![ -n '_ ] if(*) { r !if [ '_ = "$EB_BASE" ]; then echo e '_; else echo b "$EB_BASE"; fi; echo ${EB_LN}X ] function+lfp { db0 e ~/file_positions_~0.txt etmp <+1 ^^ .X if(?) { up if(*) { down } else { q } } } # Refresh the file and return to the current line number. # usage: