当前位置: 首页 > news >正文

sftpgo汉化处理

问题描述

官方提供的sftpgo webui的默认语言为英文, 没有待中文的语言包。实际上中文语言包已经翻译完毕,本文介绍一种在不重新编译的情况下为sftpgo的webui增加中文包的方法。

准备

  1. (已完成安装的跳过) 安装sftpgo的官方安装包, 这里例子中使用的是: sftpgo_v2.6.6_windows_portable.zip 具体下载地址: https://github.com/drakkan/sftpgo/releases
  2. 下载已经汉化的中文资源,其实际上是一个json文件, 可以参考这个:https://gitee.com/chenbichao/sftpgo-ryan/blob/master/static/locales/zh/translation.json
  3. sftpgo服务已可以正常使用

原理

webui的前端资源都已经在sftpgo的可执行文件的同级目录下存在,分别是template文件夹下的页面展示信息 和 static文件夹下的资源。通过直接修改template中的js代码可以增加页面中的语言选项,并在用户点击是自动下载该资源。资源数据下载后存储在浏览器的localstorage中,可能存在缓存。可能需要清理localstorage中该网址下的i18next开头的项。

操作步骤

  1. 修改 template/common/base.html
    搜索 Italiano 字样, 原始数据如下:
const lngs = {en: { nativeName: 'English' },it: { nativeName: 'Italiano' }};

将这部分修改为

const lngs = {en: { nativeName: 'English' },it: { nativeName: 'Italiano' },zh: { nativeName: '简体中文' }};

然后搜索 supportedLngs 字段, 原始数据如下:

supportedLngs: ["en", "it"],

将这部分修改为:

supportedLngs: ["en", "it", "zh"],

完成上述两处修改后保存文件

  1. 增加 static/locales/zh/translation.json 文件
    把下载得到的translation.json文件 存放至 static/locales/zh/ 目录下(没有该目录则创建)

  2. 清理浏览器的localstorage,并重启sftpgo服务
    避免缓存影响.

结束.

补充说明

以上过程也适用于linux等环境下的sftpgo版本.

另外一种简化版思路

直接使用中文的translation.json覆盖意大利语的 static/locales/it/translation.json, 清理localstorage中的i18next_res_it-translation项, 后续选意大利语实际上就会直接使用中文资源了.

http://www.dtcms.com/a/469326.html

相关文章:

  • Java打包时,不将本地Jar打包到项目的最终 JAR 中
  • Go语言泛型全面解析:从基础到高级应用
  • 在css里优雅地使用if函数
  • 中国建设银行个人网站银行欧美在线做视频网站
  • 2018年网站开发语言如何加强英文网站建设
  • Pandas:机器学习数据处理的核心利器
  • ECharts + AWS 服务联动的揭示板(Dashboard)开发示例
  • 运动控制教学——5分钟学会PRM算法!
  • RK平台Uniapp自启动缓存问题解决
  • Java 大视界 -- Java 大数据在智能家居设备联动与场景自动化中的应用
  • 湛江网站建设方案推广怎样做中考成绩查询网站
  • 1.5 labview几个使用小知识点
  • TypeScript 面试题及详细答案 100题 (11-20)-- 基础类型与类型操作
  • LLMs From Scratch(一)---理解大语言模型
  • 清除 iPhone 数据以便出售:永久删除您的数据
  • 关于在ios系统中签名并安装ipa文件的五种方法,PakePlus打包的ipa文件可以看看
  • 网站首页动画代码澄海区建设局网站
  • 设计模式篇之 单例模式 Singleton
  • C++设计模式_结构型模式_组合模式Composite(树形模式)
  • 反转控制与依赖注入详解:以订单处理系统为例
  • 【Unity每日一记】Unity脚本基础指南
  • Isaac Lab 2.3深度解析:全身控制与增强遥操作如何重塑机器人学习
  • 全美东莞网站建设福建省建设行业企业资质查询网站
  • SpringBoot集成springdoc
  • 【Java开发日记】请介绍类加载过程,什么是双亲委派模型?
  • 算法奇妙屋(五)-链表
  • 从iPhone转移到itel手机的联系人转移指南
  • MySQL实战篇04_Docker入门实战:从零搭建MySQL容器环境
  • 上海网站制作机构做网站后面维护要收钱吗
  • wget 命令速查手册 | HTTP / FTP 文件下载全指南