From 71c43a869b367ac28972df6895d9fffb9c9cd552 Mon Sep 17 00:00:00 2001 From: Douglas Creager Date: Wed, 23 Jun 2021 10:04:29 -0400 Subject: [PATCH] Allow `$` in `tree-sitter parse --edit` You can now specify `$` as the position to apply an edit, signifying the end of the file. (That prevents you from having to calculate the size of the file yourself.) --- cli/src/parse.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cli/src/parse.rs b/cli/src/parse.rs index 904ee396..15a9d4c9 100644 --- a/cli/src/parse.rs +++ b/cli/src/parse.rs @@ -311,7 +311,9 @@ fn parse_edit_flag(source_code: &Vec, flag: &str) -> Result { let inserted_text = parts.collect::>().join(" ").into_bytes(); // Position can either be a byte_offset or row,column pair, separated by a comma - let position = if position.contains(",") { + let position = if position == "$" { + source_code.len() + } else if position.contains(",") { let mut parts = position.split(","); let row = parts.next().ok_or_else(error)?; let row = usize::from_str_radix(row, 10).map_err(|_| error())?;