с пасты
и Printf
:
$ printf '%s\n%s\n%s\n' $(cat file) | paste -sd ':-\n' -
chr1:53736473-54175786
chr1:56861276-56876438
chr1:57512145-57512200
] [] []Вы хотите изменить буфер, чей []дисковый файл изменился[] с момента последнего чтения или сохранения его в этом буфере.[
] [
]Это означает, что кто-то, где-то, изменил файл, в котором вы в данный момент активны, прежде чем сохранить ваши шансы, графически это будет выглядеть следующим образом:[
] [ — Current file on Disk
/
File-orig —
\
— Your saved buffer (*)
]
[]Оба могут быть разными. Если вы выберете []r[], то буфер будет сохранен на потом и []перезагрузится с диска[].[
] [ — Current file on Disk —
/ \
File-orig — — Current buffer (*)
\
— Your saved buffer
]
[]Таким образом, вы можете просмотреть изменения, которые были сделаны в файле с момента последнего чтения его с диска. [
] []Теперь, когда вы сделаете []r[], а затем []M-x реверт-буфер[], вот что произойдет:[
] [ — File on Disk —
/ \
File-orig — — Buffer read from disk ——— (*) Applied your changes over the one on the disk
\ /
— Your saved buffer —————————————————————
]
[][]Voila![] Изменения, сделанные на диске и ваши теперь находятся в одном и том же файле, оба были объединены. Если вы знаете Git, то вышеприведённые изменения должны быть аналогичны слиянию веток.[
] []Если вы выберете только []r[], то изменения, которые вы сделали, будут потеряны. Если вы выберете []y[], изменения, сделанные другим человеком, будут потеряны. Вот почему это рекомендуется. [
]