From fb1eba99b45819cd014bfb0f04bffe533ba0bdd0 Mon Sep 17 00:00:00 2001 From: Toby Merz Date: Tue, 15 Jun 2021 11:44:45 +0200 Subject: [PATCH] New package: helix-bin-22.03 --- srcpkgs/helix-bin/files/hx | 2 + ...3d446914ec0953cd7e056d430fc3b959e75d.patch | 101 ++++++++++++++++++ srcpkgs/helix-bin/template | 20 ++++ 3 files changed, 123 insertions(+) create mode 100755 srcpkgs/helix-bin/files/hx create mode 100644 srcpkgs/helix-bin/patches/f2dd3d446914ec0953cd7e056d430fc3b959e75d.patch create mode 100644 srcpkgs/helix-bin/template diff --git a/srcpkgs/helix-bin/files/hx b/srcpkgs/helix-bin/files/hx new file mode 100755 index 000000000000..845ed5293826 --- /dev/null +++ b/srcpkgs/helix-bin/files/hx @@ -0,0 +1,2 @@ +#!/usr/bin/sh +HELIX_RUNTIME=/usr/lib/helix/runtime exec /usr/lib/helix/hx $@ diff --git a/srcpkgs/helix-bin/patches/f2dd3d446914ec0953cd7e056d430fc3b959e75d.patch b/srcpkgs/helix-bin/patches/f2dd3d446914ec0953cd7e056d430fc3b959e75d.patch new file mode 100644 index 000000000000..5e77fb9b304c --- /dev/null +++ b/srcpkgs/helix-bin/patches/f2dd3d446914ec0953cd7e056d430fc3b959e75d.patch @@ -0,0 +1,101 @@ +From f2dd3d446914ec0953cd7e056d430fc3b959e75d Mon Sep 17 00:00:00 2001 +From: Marcin Puc +Date: Wed, 30 Mar 2022 02:08:30 +0200 +Subject: [PATCH] Avoid using the format ident Rust feature (#1881) + +--- + helix-loader/src/grammar.rs | 14 +++++++++----- + helix-term/src/commands/typed.rs | 4 ++-- + helix-term/src/health.rs | 9 +++++---- + 3 files changed, 16 insertions(+), 11 deletions(-) + +diff --git a/helix-loader/src/grammar.rs b/helix-loader/src/grammar.rs +index 299a06bfe..f0c5ea282 100644 +--- a/helix-loader/src/grammar.rs ++++ b/helix-loader/src/grammar.rs +@@ -63,12 +63,12 @@ pub fn get_language(name: &str) -> Result { + library_path.set_extension(DYLIB_EXTENSION); + + let library = unsafe { Library::new(&library_path) } +- .with_context(|| format!("Error opening dynamic library {library_path:?}"))?; ++ .with_context(|| format!("Error opening dynamic library {:?}", library_path))?; + let language_fn_name = format!("tree_sitter_{}", name.replace('-', "_")); + let language = unsafe { + let language_fn: Symbol Language> = library + .get(language_fn_name.as_bytes()) +- .with_context(|| format!("Failed to load symbol {language_fn_name}"))?; ++ .with_context(|| format!("Failed to load symbol {}", language_fn_name))?; + language_fn() + }; + std::mem::forget(library); +@@ -133,7 +133,7 @@ where + // TODO: print all failures instead of the first one found. + rx.iter() + .find(|result| result.is_err()) +- .map(|err| err.with_context(|| format!("Failed to {action} some grammar(s)"))) ++ .map(|err| err.with_context(|| format!("Failed to {} some grammar(s)", action))) + .unwrap_or(Ok(())) + } + +@@ -238,12 +238,16 @@ fn build_grammar(grammar: GrammarConfiguration) -> Result<()> { + }; + + let grammar_dir_entries = grammar_dir.read_dir().with_context(|| { +- format!("Failed to read directory {grammar_dir:?}. Did you use 'hx --grammar fetch'?") ++ format!( ++ "Failed to read directory {:?}. Did you use 'hx --grammar fetch'?", ++ grammar_dir ++ ) + })?; + + if grammar_dir_entries.count() == 0 { + return Err(anyhow!( +- "Directory {grammar_dir:?} is empty. Did you use 'hx --grammar fetch'?" ++ "Directory {:?} is empty. Did you use 'hx --grammar fetch'?", ++ grammar_dir + )); + }; + +diff --git a/helix-term/src/commands/typed.rs b/helix-term/src/commands/typed.rs +index 8b7f481b9..c921f85b2 100644 +--- a/helix-term/src/commands/typed.rs ++++ b/helix-term/src/commands/typed.rs +@@ -891,8 +891,8 @@ fn setting( + } + let (key, arg) = (&args[0].to_lowercase(), &args[1]); + +- let key_error = || anyhow::anyhow!("Unknown key `{key}`"); +- let field_error = |_| anyhow::anyhow!("Could not parse field `{arg}`"); ++ let key_error = || anyhow::anyhow!("Unknown key `{}`", key); ++ let field_error = |_| anyhow::anyhow!("Could not parse field `{}`", arg); + + let mut config = serde_json::to_value(&cx.editor.config().clone()).unwrap(); + let pointer = format!("/{}", key.replace('.', "/")); +diff --git a/helix-term/src/health.rs b/helix-term/src/health.rs +index f13d35f09..2a02e118c 100644 +--- a/helix-term/src/health.rs ++++ b/helix-term/src/health.rs +@@ -89,10 +89,11 @@ pub fn languages_all() { + + let column = |item: &str, color: Color| { + let data = format!( +- "{:column_width$}", ++ "{:width$}", + item.get(..column_width - 2) +- .map(|s| format!("{s}…")) +- .unwrap_or_else(|| item.to_string()) ++ .map(|s| format!("{}…", s)) ++ .unwrap_or_else(|| item.to_string()), ++ width = column_width, + ) + .stylize() + .with(color); +@@ -158,7 +159,7 @@ pub fn language(lang_str: String) { + { + Some(l) => l, + None => { +- let msg = format!("Language '{lang_str}' not found"); ++ let msg = format!("Language '{}' not found", lang_str); + println!("{}", msg.red()); + let suggestions: Vec<&str> = syn_loader_conf + .language diff --git a/srcpkgs/helix-bin/template b/srcpkgs/helix-bin/template new file mode 100644 index 000000000000..f5fa65a1b34d --- /dev/null +++ b/srcpkgs/helix-bin/template @@ -0,0 +1,20 @@ +# Template file for 'helix-bin' +pkgname=helix-bin +version=22.03 +revision=1 +archs="x86_64" +wrksrc="helix-${version}-x86_64-linux" +short_desc="Kakoune / neovim inspired editor, written in Rust" +maintainer="shizonic " +license="MPL-2.0" +homepage="https://helix-editor.com/" +distfiles="https://github.com/helix-editor/helix/releases/download/${version}/helix-${version}-x86_64-linux.tar.xz" +checksum=844ec88c81e2e4ca6153499a8b371cfbd3602f32492326b91bf2547d515f528f +conflicts="hex>=0" + +do_install() { + vmkdir usr/lib/helix + vcopy runtime usr/lib/helix/ + vcopy hx usr/lib/helix + vbin ${FILESDIR}/hx +}