#!/bin/sh # Open files from search result. # # Input format: ::: # Execute the following Kakoune commands. # # Input: ::: # Output: select_each_line='_' select_search_fields='s^(.+?):(\d+):(\d+):(.+?)$' save_selections='Z' select_file_save_and_restore='1s"fZz' select_line_save_and_restore='2s"faz' select_column_save_and_restore='3s"faz' select_data='"fz' prepare_output='y%a' delete_end_of_file='ged' kak -f "${select_each_line}${select_search_fields}${save_selections}${select_file_save_and_restore}${select_line_save_and_restore}${select_column_save_and_restore}${select_data}${prepare_output}${delete_end_of_file}" | while read file; read line; read column; do :edit "$file" "+$line:$column" done