package comby
A tool for structural code search and replace that supports ~every language
Install
Dune Dependency
Authors
Maintainers
Sources
1.4.0.tar.gz
md5=58295a68289d68231cb3c9e0377e44ef
sha512=3f0154f26cc6016c12f57d0b8e43da32b9329572bf67fb5719008eaf3377b8d5a2ab6f775ffe8d16bc85f2c4db52f567ef64da52ccb77d6ba8e496a0dc9eddf7
doc/src/comby.configuration/ripgrep.ml.html
Source file ripgrep.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
open Core open Lwt let debug = Sys.getenv "DEBUG_COMBY" |> Option.is_some let run ~pattern ~args = let options = ["--files-with-matches"; "--multiline"] in let pattern = Format.sprintf {|'%s'|} pattern in let command = ("rg" :: options @ args @ [pattern]) |> String.concat ~sep:" " in if debug then Format.printf "Executing: %s@." command; let lwt_command = Lwt_process.shell command in let recv proc = let ic = proc#stdout in Lwt.finalize (fun () -> Lwt_io.read ic) (fun () -> Lwt_io.close ic) in let f () = Lwt_process.with_process_in lwt_command (fun proc -> recv proc >>= fun result -> proc#status >>= function | WEXITED v when v <> 0 -> return @@ Or_error.errorf "Error executing rg, exit status %d." v | _ -> return (Ok (String.split ~on:'\n' result |> List.filter ~f:(String.(<>) "")))) in try Lwt_main.run (f ()) with Sys.Break -> exit 0
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>