Determine runtime dir based on executable location or env override.
This commit is contained in:
parent
d33e8fd3d8
commit
0f77f543e5
3 changed files with 16 additions and 1 deletions
|
@ -44,6 +44,18 @@ pub(crate) fn find_first_non_whitespace_char(text: RopeSlice, line_num: usize) -
|
||||||
None
|
None
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn runtime_dir() -> std::path::PathBuf {
|
||||||
|
// runtime env var || dir where binary is located
|
||||||
|
std::env::var("HELIX_RUNTIME")
|
||||||
|
.map(|path| path.into())
|
||||||
|
.unwrap_or_else(|_| {
|
||||||
|
std::env::current_exe()
|
||||||
|
.ok()
|
||||||
|
.and_then(|path| path.parent().map(|path| path.to_path_buf()))
|
||||||
|
.unwrap()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
pub fn config_dir() -> std::path::PathBuf {
|
pub fn config_dir() -> std::path::PathBuf {
|
||||||
// TODO: allow env var override
|
// TODO: allow env var override
|
||||||
let xdg_dirs =
|
let xdg_dirs =
|
||||||
|
|
|
@ -63,7 +63,8 @@ fn read_query(language: &str, filename: &str) -> String {
|
||||||
static INHERITS_REGEX: Lazy<Regex> =
|
static INHERITS_REGEX: Lazy<Regex> =
|
||||||
Lazy::new(|| Regex::new(r";+\s*inherits\s*:?\s*([a-z_,()]+)\s*").unwrap());
|
Lazy::new(|| Regex::new(r";+\s*inherits\s*:?\s*([a-z_,()]+)\s*").unwrap());
|
||||||
|
|
||||||
let root = PathBuf::from(env!("CARGO_MANIFEST_DIR"));
|
let root = crate::runtime_dir();
|
||||||
|
// let root = PathBuf::from(env!("CARGO_MANIFEST_DIR"));
|
||||||
|
|
||||||
let path = root
|
let path = root
|
||||||
.join("../runtime/queries")
|
.join("../runtime/queries")
|
||||||
|
|
|
@ -11,5 +11,7 @@ pkgs.mkShell {
|
||||||
RUST_BACKTRACE = "1";
|
RUST_BACKTRACE = "1";
|
||||||
# https://github.com/rust-lang/rust/issues/55979
|
# https://github.com/rust-lang/rust/issues/55979
|
||||||
LD_LIBRARY_PATH="${stdenv.cc.cc.lib}/lib64:$LD_LIBRARY_PATH";
|
LD_LIBRARY_PATH="${stdenv.cc.cc.lib}/lib64:$LD_LIBRARY_PATH";
|
||||||
|
|
||||||
|
HELIX_RUNTIME=./runtime;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue