GIT batch的支持中文的方法和系统建议
GIT batch是window下原生的GIT命令行终端,兼顾了GIT的命令特性,同时也支持很多UNIX的原生的bash交互方法。但是由于编码问题,在使用GIT bach的时候,用户可能会遇到中文支持的问题。这里简单介绍一下GIT batch在Windows系统下如何有效的支持中文显示的问题。闲言少叙,ICer GO!
GIT batch的GUI界面支持中文
GIT batch的GUI默认是英文界面,用户可以使用下列步骤启用中文GUI界面
- 在GIT batch空白处,右击鼠标,选择Option…
- 在弹出的界面依次选择Window -> Ui language -> zh_CN
3.返回GIT batch,再在空白处单击鼠标右键,这个时候可以看到GIT batch的GUI就是中文格式了。
GIT batch的支持中文显示
GIT batch支持中文的前提是需要和系统的代码页保持一致。为了获取这个信息,这里有两个方法
-
通过txt 文本文件
用户创建一个txt文本文文件,并简单书写一些中文文字,然后单击文件->另存为…,这个时候在界面里边会出现编码的选项。
这个默认的编码来自于windows系统的区域配置(控制面板->区域,),中文区用户通常是:中文(简体,中国),这个信息很重要,所有的文件都是使用这个默认编码进行存储的,通常不建议修改,否则已经保存的文件可能都会出现编码问题。
记事本里边的另存为的ANSI编码是指:美国国家标准学会(American National Standards Institute),这个组织规定了不同国家的代码页(code page),这里给中国分配的是GBK,对应的代码页就是:936 (或者cp936). 通过这个信息可以看到,当前系统使用的代码页是GBK而非utf-8. -
通过命令
chcp
查看打开cmd终端,使用chcp,可以查看到系统默认的编码方式
-
代码页对终端(terminal)的影响
对于 windows系统,可以使用命令file查看一个文本文件的编码方式,譬如:
PS:记事本之类的GUI程序·可以自动识别编码方式,双击文件都可以准确显示文件内容:
但是对于终端(无论是cmd还是GIT batch),在同一时刻只能支持一种编码方式(即通过
chcp
返回的编码方式),这里的返回是936,所以只有text_ANSI.txt可以被正确显示:当然
chcp
也可以对当前终端的代码页进行更改(65001就是utf-8的代码页),以便正确显示对应代码页的文本内容
-
GIT batch支持中文显示
GIT batch也是一个终端,同样也受上述问题的影响,在GIT batch里边,可以使用
file
命令对文件进行编码方式的查询,如果不做干预,GIT batch 默认使用的是utf-8的代码页(65001),所以,默认会有下面的情形:-
text_ANSI.txt不能正确显示,
-
text_utf-8.txt可以正确显示,
由于GIT batch不能使用
chcp
命令改变代码页,用户如果需要在GIT batch显示ANSI编码方式的文件,需要采用下列方式进行文本的编码方式更改:选项 -> 文本 -> 本地 -> 字符集 (GBK就是:代码页936)这样就可以正确显示text_ANSI.txt文件了(对应的:text_utf-8.txt就不能正确显示了)
-
-
GIT batch的消息打印和命令回显
GIT batch和VIM一样,默认使用的是utf-8的编码方式,如果直接使用ls
等命令,GIT batch可以很好的显示中文字符。不足的是
- 不能在终端中使用
cat
命令显示ANSI编码的文本 - 不能使用VIM编辑ANSI编码的文本(VIM的默认编码也是utf-8)
除过上述不便,其余都很丝滑。
PS:如果在GIT batch里边配置了GBK的编码页,除过cat
ANSI编码的文件可以正常显示中文,其他所有命令的中文都会编程乱码
- python的对代码页的处理
在python里边,默认是使用系统的区域的编码对文件进行读取的,如果在GBK下,python是无法对utf-8的中文文件进行争取读取的,如果尝试读取,会有下面的问题
这个时候可以使用open函数里边的encoding选项处理utf-8文件的读取:
PS:终端打印和python是两个独立的系统,使用各自的方式处理代码页,互相独立,这里请不要混淆,
系统建议
对于中文windows系统,默认是GBK(代码页:936)的情形,但是对于常用的软件通常都是utf-8的默认编码,如果是终端类的工具,譬如:vim和GIT batch,可能对于ANSI的文件兼容性不好,这时候建议用户使用GVIM,记事本等GUI类的工具进行文本编辑。如果是python等编程工具,用户可以对目标文件的编码进行配置,这个并不需要调整原始文件的编码方式,
综上:系统中存在多个编码格式的文件本身就是常态,用户也不用去特意干预,但是但编辑、读取等操作的时候,需要采取正确的打开方式,保证正确的操作,这样才不会破坏原有的文本内容。
相关文章:

GIT batch的支持中文的方法和系统建议
GIT batch是window下原生的GIT命令行终端,兼顾了GIT的命令特性,同时也支持很多UNIX的原生的bash交互方法。但是由于编码问题,在使用GIT bach的时候,用户可能会遇到中文支持的问题。这里简单介绍一下GIT batch在Windows系统下如何有…...

骑砍霸主MOD天芒传奇Ⅱ·前传-序章
基于少年包青天第一到三部的闯关夺宝MOD,故事发生在北宋仁宗年间,玩家需要代替包拯寻找天芒,最终完成统一大业.开局可尝试使用暴雨梨花针神器. MOD下载地址: 【免费】PLReminiscence资源-CSDN文库https://download.csdn.net/download/qq_35829452/89851155效果演示: 骑砍2霸…...

神经网络量化基础
1,模型量化概述 1.1,模型量化优点1.2,模型量化的方案 1.2.1,PTQ 理解 1.3,量化的分类 1.3.1,线性量化概述 2,量化算术 2.1,定点和浮点2.2,量化浮点2.2,量化算…...

飞机大战告尾
参考 PPO算法逐行代码详解 链接 通过网盘分享的文件:PlaneWar 链接: https://pan.baidu.com/s/1cbLKTcBxL6Aem3WkyDtPzg?pwd1234 提取码: 1234 10.17关于博客发了又改这件事 悲催的事 今天训练了一早上ppo模型,满怀期待的检测成果时发现一点长进都…...

支持向量机SVM原理详解
SVM原理详解 1、超平面2、SVM原理1. 问题定义2. 分类决策得到约束条件 3. 最大化间隔4. 优化目标 3、凸优化问题1. 原始优化问题优化目标约束条件 2. 拉格朗日乘子法3. 拉格朗日函数分析4. 求解对 w w w 和 b b b 的极值5. 构造对偶问题对偶问题的约束条件: 6、通…...

使用JMeter进行Spring Boot接口的压力测试
使用 Apache JMeter 对接口进行压力测试是一个相对简单的过程。以下是详细的步骤,包括安装、配置和执行测试计划。 1. 下载和安装 JMeter 下载 JMeter 从 JMeter 官方网站https://jmeter.apache.org/download_jmeter.cgi 下载最新版本的 JMeter。 解压缩 将下载的 …...

C++学习笔记----9、发现继承的技巧(三)---- 尊重父类(1)
当写继承类的时候,需要清楚父类与子类之间的交互。像生成顺序,构造函数链,以及转化都可以是问题的根源。 1、父类构造函数 对象不会马上就能干活;它们必须由父类以及所包含的任意对象进行构建。c定义了如下的生成顺序:…...

启动service报错ORA-44317: database open read-only
ADG(RAC)备库环境,srvctl添加service服务成功,启动service时报错ORA-44317: database open read-only。 这是预期行为, 使用“srvctl add service -d <db_name> -s <service_name>”创建服务时,…...

GNU/Linux - Savannah项目
* 我们托管在自由操作系统上运行的自由项目,不依赖任何专有软件。 * 我们的服务使用 100% 的自由软件运行,包括服务本身。 * We host free projects that run on free operating systems and without any proprietary software dependencies. * Our se…...

Debug-028-el-carousel走马灯-当展示图片为2的问题处理
前言: el-carousel走马灯又是给elementui填坑的一天。el-carousel走马灯其实类似小程序中的轮播图。这里担心涉及版权问题就不贴项目中的图了。简单阐述一下问题:正常使用el-carousel时,如果图片数量大于等于3时,可以定时自动顺序…...

TapData 知识库 | 一文吃透数据整合(Data Consolidation)
顾名思义,数据整合指的是将不同来源的数据汇集在一起,并将其集中存储于一个统一的数据平台。数据整合使用户能够通过单一访问入口获取数据,进而推动数据洞察的生成与分析。 数据通常被简单地看作信息的集合,仿佛默认每个数据单元在…...

MySQL数据的导出
【图书推荐】《MySQL 9从入门到性能优化(视频教学版)》-CSDN博客 《MySQL 9从入门到性能优化(视频教学版)(数据库技术丛书)》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) MySQL9数据库技术_夏天又到了…...

微服务--OpenFeign【重点】
如果哪天 我们硬编码写的接口变了,只要写过该接口的 都要改,太麻烦了, 所以 就用 OpenFeign 来解决这个麻烦 了解: SimpleClientHttpRequestFactory和 HttpComponentsClientHttpRequestFactory 都是Spring框架中用于创建ClientH…...

【力扣打卡系列】滑动窗口与双指针(两数之和)
坚持按题型打卡&刷&梳理力扣算法题系列,语言为go,Day1 两数之和 题目描述 解题思路 采用哈希表 将nums[i] nums[j] target 转化成 nums[i] target - nums[j]去思考新建一个map来存储,键为值(左边的)&#…...

蚂蚁华东师范大学:从零开始学习定义和解决一般优化问题LLMOPT
🎯 推荐指数:🌟🌟🌟 📖 title:LLMOPT: Learning to Define and Solve General Optimization Problems from Scratch 🔥 code:https://github.com/caigaojiang/LLMOPT &am…...

价格游戏的终章:品牌如何在通货膨胀时代智取市场
来源:The era of price-led profit growth is coming to an end (marketingweek.com) 近年来,通货膨胀促使许多品牌通过提价来提升利润,而销量几乎没有受到太大影响。然而,随着通货膨胀放缓,继续提价的策略可能会吸引…...

CVTE Android面试题及参考答案
Activity 的生命周期 Activity 的生命周期分为以下几个主要状态: onCreate ():在 Activity 第一次被创建的时候调用。通常在这个方法中进行一些初始化操作,如设置布局、初始化成员变量等。这是 Activity 进入可见状态的第一步。onStart ():当 Activity 即将对用户可见的时候…...

Docker实战:从入门到进阶
Docker实战:从入门到进阶 引言 Docker是一个开源的应用容器引擎,它允许开发者打包他们的应用以及应用的依赖包到一个可移植的容器中,然后发布到任何支持Docker的平台上。本文将通过实战和应用举例,带领大家深入了解Docker的强大…...

Jupyter Notebook汉化(中文版)
原版jupyter notebook是英文的,想要将其改为中文 在jupyter notebook所在环境输入以下命令 pip install jupyterlab-language-pack-zh-CN打开jupyter notebook,在设置语言中将其设置为中文...

C#的小数位保留以及四舍五入
C#使用Math.Round("数值","保留位","保留方式")进行小数位保留以及四舍五入 //1.MidpointRounding.ToEven(四舍六入五成双) //当保留小数位后一位为0~4时,舍去末位 var x1 Math.Round(1.124, 2, MidpointRo…...

KNNImputer
KNNImputer实例是指在使用Python的scikit-learn库时,通过sklearn.impute.KNNImputer类创建的一个对象,该对象专门用于处理数据集中的缺失值。KNNImputer采用K-近邻(K-Nearest Neighbors,KNN)算法来估算并填充这些缺失值…...

RHCE例行性工作笔记
1、单一执行的例行性工作 单一执行的例行性工作: 仅处理执行一次就结束了 at命令的工作过程 /etc/at.allow ,写在该文件的人可以使用 at 命令 /etc/at.deny ,黑名单 两个文件如果都不存在,只有 root 能使用 #at 工作调度对应的…...

ros2 action server示例、拓展、练习
注意:以下代码全部由ai生成,没有大问题,运用时需根据报错逐步调试 action server示例 将 goal、result 和 feedback 作为类的成员变量的 C 示例代码: 示例代码 #include "rclcpp/rclcpp.hpp" #include "rclcpp…...

【Go语言】安装及使用基础教程
文章目录 1. 下载安装Go官网安装使用 Homebrew 安装 (Mac)创建工作目录 (Workspace)设置环境变量通过 VSCode 扩展商店安装 Go 插件处理权限问题 2. Hello, World 示例3. 语法基础变量声明常量数组切片(Slice)Map(集合)控制结构fo…...

【大模型】3分钟了解提示(Prompt)工程、检索增强(RAG)和微调
我们先看下面这个图: 简单理解大模型是通过海量训练数据训练出来的,它的能力非常强,但是有时候会给出错误的回答。那产生错误的原因可能是什么呢? 1.提问错误(提示工程) 在我们提问的方式不对的情况下&a…...

太速科技-509-基于XCVU13P的4路QSFP28光纤PCIeX16收发卡
基于XCVU13P的4路QSFP28光纤PCIeX16收发卡 一、板卡概述 基于XCVU13P的4路QSFP28光纤PCIeX16收发卡。该板卡要求符合PCIe 3.0标准,包含一片XCVU13P-2FLGA2014I、4组64-bit/8GB DDR4;4路QSFP28 4X光纤,每路光纤支持4X25Gbps&#…...

C#从零开始学习(基本语法概念)(2)
深入C# 本章所有的代码都放在 https://github.com/hikinazimi/head-first-Csharp 控制台项目结构 每个C#程序采用同样的方式组织,命名空间,类和方法 using System;namespace helloworld//命名空间 {class Program//类{static void Main(string[] args)//程序入口{Console.Writ…...

基于SSM+微信小程序的家庭记账本管理系统(家庭1)
👉文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1、项目介绍 1、管理员端功能有首页、个人中心、用户管理,消费详情管理、收入详情管理、系统管理等。 2、用户端功能有首页、消费详情、收入详情、论坛信息、我的等功能。 2、项目技术 …...

MEMC功能详解
文章目录 MEMC的工作原理:优点:缺点:适用场景:1. Deblur(去模糊)2. Dejudder(去抖动)总结两者区别: MEMC(Motion Estimation and Motion Compensation&#x…...

C++ | Leetcode C++题解之第493题翻转对
题目: 题解: class BIT { private:vector<int> tree;int n;public:BIT(int _n) : n(_n), tree(_n 1) {}static constexpr int lowbit(int x) {return x & (-x);}void update(int x, int d) {while (x < n) {tree[x] d;x lowbit(x);}}in…...