avante.nvim/lua/tiktoken_lib.lua
Aaron Pham 57cf490d45
fix(tiktoken_lib): correct matching for macos ()
Signed-off-by: Aaron Pham <contact@aarnphm.xyz>
2024-08-27 02:15:33 -04:00

23 lines
670 B
Lua

local M = {}
local function get_library_path()
local os_name = require("avante.utils").get_os_name()
local ext = os_name == "linux" and "so" or (os_name == "darwin" and "dylib" or "dll")
local dirname = string.sub(debug.getinfo(1).source, 2, #"/tiktoken_lib.lua" * -1)
return dirname .. ("../build/?.%s"):format(ext)
end
---@type fun(s: string): string
local trim_semicolon = function(s)
return s:sub(-1) == ";" and s:sub(1, -2) or s
end
M.load = function()
local library_path = get_library_path()
if not string.find(package.cpath, library_path, 1, true) then
package.cpath = trim_semicolon(package.cpath) .. ";" .. library_path
end
end
return M