把中文标点自动切换关掉
中文输入法默认在中文状态下输出全角标点,写代码时这对括号、分号、逗号、引号都是灾难。编译器报的语法错误很可能来自一个看不见的全角字符。设置里通常有「中文时使用英文标点」选项,打开后中文状态也输出半角标点,写代码时不用频繁切换输入法。写文档时再临时切回全角,成本远低于排查语法错误。
善用代码编辑器,而不是输入法
自动补全括号、引号、变量名提示,这些应该由编辑器和语言服务完成,不要指望输入法。输入法负责的是中文注释、提交信息、文档说明。把职责分清,配置才不会越搞越复杂。给输入法加几十条代码片段短语,通常不如在编辑器里配好模板来得可靠,因为短语无法感知语法上下文。
注释的输入方式
中文注释建议用完整句子,句末加句号,避免碎片化短语。原因不是审美,而是三个月后回看时,完整句子更容易恢复上下文。注释里出现英文术语时,中英文之间留一个空格,可读性明显更好。这类排版习惯可以做成短语,但更有价值的是养成习惯。
写提交信息时同理:一句话说清「改了什么、为什么改」,比堆十个关键词有用。
变量命名不要用输入法代劳
命名是设计行为,不是输入行为。用输入法的英文候选去猜变量名,往往得到语义模糊的单词组合。正确做法是先想清楚语义,再按项目约定使用驼峰或下划线风格,让编辑器补全。输入法最多帮你快速输入已经确定的长命名,例如把项目里高频出现的长函数名加入词库。
容易踩的三个坑
- 全角空格:从网页或聊天窗口复制代码时最常见,肉眼几乎看不出。
- 中文引号:文档里复制过来的「」,黏贴进代码直接报错。
- 输入法候选遮挡:候选框挡住下一行代码,误选候选导致代码被替换。
排查方法很直接:用编辑器的显示不可见字符功能,或用正则搜索全角字符范围,一次性定位。团队里可以把这条检查加进提交前钩子,比靠人眼可靠。
终端与命令行场景
在终端里输入中文路径或参数时,务必确认当前是半角状态。路径里带空格要用引号包裹,而中文输入法可能把引号自动配对成全角。建议在终端窗口养成先切英文再输入的习惯,或者使用支持路径补全的 shell,减少手打。
推荐的基础配置
中文状态使用英文标点、关闭云候选在代码窗口的弹出、给编辑器单独设置输入法状态记忆(部分系统支持按应用记忆输入法)、关闭输入法的自动纠错与联想替换。这四项配置完成后,写代码时基本不会再被输入法打断。
遇到「代码看起来完全正确但就是报错」,第一反应应该是检查不可见字符,而不是怀疑编译器。