2 个版本

0.1.1 2021年3月2日
0.1.0 2021年3月2日

#1473文件系统

24 每月下载量
用于 mcfg

MIT 许可证

48KB
679

包 xdirs

基于 dirs-next 的附加应用路径功能。

MIT License Minimum Rust Version crates.io docs.rs Build Audit GitHub stars


此包扩展了应用程序用于存储数据和配置的路径集。它通过添加后缀 _for 来补充如 cache_dirconfig_dirdata_dir 等函数的版本,这些版本接受一个应用程序名称。并非所有此类路径都可以安全地将应用程序名称附加到通用路径上,因此这些附加函数将确保正确构建特定于应用程序的路径。

这是 directories-next 的替代品,并保持了与 dirs-next 更接近的接口。

通用形式 dirs 特定形式
cache_dir cache_dir_for
config_dir config_dir_for
data_dir data_dir_for
data_local_dir data_local_dir_for
favorites_dir favorites_dir_for
log_dir log_dir_for
preference_dir preference_dir_for
template_dir template_dir_for

“dirs”列表示通用形式是否存在于 dirsdirs-next 包中。

示例

use xdirs::{application_dir, config_dir_for, log_dir_for};

const APP_NAME: &str = env!("CARGO_PKG_NAME");

let where_is_my_app_installed = application_dir();
let where_do_i_read_my_config = config_dir_for(APP_NAME);
let where_do_i_write_log_files = log_dir_for(APP_NAME);

附加功能

以下可用于确定已安装应用程序的位置。

  • application_dir
  • application_shared_dir
  • user_application_dir

最后,对于支持应用程序容器或捆绑包概念的系统,以下将提供这些目录的位置。目前这些仅适用于 macOS。

  • app_container_dir_for
  • app_container_executable_dir_for
  • user_app_container_dir_for
  • user_app_container_executable_dir_for

与 dirs-next 一样,此库通过利用 Linux 上定义的


变更

版本 0.1.1

  • 新增:README中的示例和文本。
  • 修复:文档链接和函数表。

版本 0.1.0

  • 初始版本:在Linux(Ubuntu)、macOS和Windows上测试了所有主要功能。
  • 文档:包含与dirs_next相同格式的函数文档。

待办事项

  • 支持WASM目标,dist-next支持。
  • 研究flatpack、app-image或snap应用容器支持。

依赖项

~52–520KB