我正在寻找一种用于显示 Unicode 的好字体,特别是我想要一套完整的 U2400-U2800。在 Firefox 中我得到了大部分,但在我的应用程序中,我尝试了 Arial Unicode MS、Lucida Unicode MS、Calibri、Times New Roman、Courier New、Symbol 和 Serif,大部分来自我通过谷歌搜索找到的页面的推荐,一些来自Firefox 默认,但我一直缺少 U2680-U26A0 和其他几个较小的块。
unicode.org上的参考图表当然显示了完整的范围,但它们没有标识使用的字体(大概是为了避免盗版的威胁,尽管这对我来说似乎是自取其辱)。通过 fontforge 或各种网络服务提取字体(仅获取名称)失败,因为字体似乎包含在不受支持的加密部分中(另一种反盗版措施...*叹息*)。
因此,如果有人可以推荐更完整的 Unicode 字体(最好是免费或价格合理的),我将非常感激。
干杯,
埃蒂亚尔。
是否有适用于 Windows 的工具(命令行、gui、脚本等)可以递归目录并识别所有编码为 UTF-16 的文件?
我需要在 Windows 7 上查看大型 Unicode 文本文件(当前版本为 2,379,415,348 字节)。
通常我更喜欢 UTF-8,但是在查看 SuperUser 之后,似乎最好的 Windows 大文件查看器无法处理 UTF-8,所以我不介意将这些文件一次性转换为 UTF-16-LE,直到更好的观众出现了。
所以同时我需要一个可以转换编码的工具。请注意,我不能为此使用编辑器,否则我只会在该编辑器中查看文件。命令行或 GUI 工具都可以。
(我有一台最大内存为 2G 的上网本,有时我可以在 gVim 中很好地查看这些文件,但我经常打开很多浏览器窗口并且多次耗尽内存。LTFViewer 可以直接从磁盘查看文本文件而无需加载整个事情进入RAM)
在 Windows 中,使用 ALT+nnn 输入字符时,使用的是哪种字符编码?使用 ALT+0nnn 输入字符时,使用的是哪种字符编码?这些答案如何取决于 Windows 的语言和输入法设置(如果有的话)?代码是否总是在 255 之后重复?
我发现多个网站的信息令人困惑、过时、可能是特定于语言的或错误的。尽管这是众所周知且广泛使用的 Windows 功能,但我似乎找不到任何合理的官方文档。
我最近从 OpenSuSE 切换到 Arch Linux。名称中带有 unicode 字符的文件过去可以正常显示,但切换后我只得到 mojibake。例如,在我的音乐库中,Queensrÿche 显示为 Queensrÿche。
这也发生在控制台上。
我在 Arch Linux 论坛上找了一个相关的帖子,但没有得到答案。
$ export LC_ALL=en_US.UTF-8
$ ls -al
total 24
drwxr-xr-x 6 pi pi 4096 Jul 23 16:34 .
drwxr-xr-x 9 pi pi 4096 Jul 23 16:33 ..
drwxr-xr-x 2 pi pi 4096 Jul 23 16:33 .A
drwxr-xr-x 2 pi pi 4096 Jul 23 16:33 B
drwxr-xr-x 2 pi pi 4096 Jul 23 16:33 .C
drwxr-xr-x 2 pi pi 4096 Jul 23 16:34 ???
Run Code Online (Sandbox Code Playgroud)
当我更改LC_ALL为 时C,首先列出点文件,unicode 文件名不可读:
$ export LC_ALL=C
$ ls -al
total 24
drwxr-xr-x 6 pi …Run Code Online (Sandbox Code Playgroud) 据我所知,设置环境变量LC_COLLATE=en_US.utf8与 相比改变了四件事LC_COLLATE=c,关于程序如何ls对文件进行排序:
??垃圾替换)功能 1 是当今时代必不可少的。
特性 2 和特性 3 也很棒,因为它们可以更方便地处理现实生活中的 Unicode 文件名。
另一方面,特性 4 是我在日常工作中发现的真正反生产力的东西,因为它经常为 Linux 文件名产生违反直觉的排序顺序 - 其中点往往用于分隔后缀或表示点文件。我真的无法想象为什么有人认为在排序文件名时忽略点是个好主意。
例如:
$ touch foo.txt foo2.txt foó3.txt foo4.txt
$ LC_COLLATE=en_US.utf8 ls
foo2.txt foó3.txt foo4.txt foo.txt
$ LC_COLLATE=c ls
foo.txt foo2.txt foo4.txt fo??3.txt
Run Code Online (Sandbox Code Playgroud)
两者都不令人满意。这就是我希望对这些文件进行排序的方式:
foo.txt foo2.txt foó3.txt foo4.txt
Run Code Online (Sandbox Code Playgroud)
换句话说,就像 with 一样LC_COLLATE=en_US.utf8,只是标点符号被视为重要字符(在字母之前排序)。
是否存在执行此操作的任何 LC_COLLATE 设置?
如果没有支持所有功能 1-3 的标点符号,是否至少有一个支持功能 1(即排序LC_COLLATE=c但不乱码 Unicode 字符)?
我有两个文本文件,我提供下载链接而不是 pastebin 来精确保存它们的内容:
这两个文本文件都只包含空格、回车符、换行符和字母 X,并且它们应该是 ASCII 编码的。这两个文件之间的唯一区别是第二个文件删除了前导和尾随空白行,并删除了每行上的一些前导和尾随空格。
第一个文件没有引起任何问题。出于某种原因,我的文本编辑器将第二个文件检测为 UTF-8:
在 Notepad++ 中,即使我选择“转换为 ANSI”并保存文件,保存的文件与原始文件逐字节相同,两个编辑器仍将其检测为 UTF-8!
两个编辑器对第一个文件都没有问题,并正确地将其识别为 ASCII(或 ANSI)。
我在十六进制编辑器中查看了第二个文本文件。事实上,它不是从 BOM 开始的。文件的前几个字节20 20 20 20 20 20 20 20应该是 ,因为它以空格开头:
我的问题是:那么,为什么 Notepad 和 Notepad++ 都将第二个文件检测为 UTF-8?鉴于该文件没有 BOM 标头,为什么会发生这种情况,与导致此问题的第一个文件相比,第二个文件有何独特之处?我无法弄清楚发生了什么。
希望你能帮我解决这个问题...
对于我的工作,过去几周我一直在协助 DBA,现在我们的任务是上传一个非常大的电子表格,该电子表格有几个包含 Unicode 字符(™、®、° 等等)的字段) 到 MariaDB 表中。
我们最初尝试将其导出到 .csv 文件并将其放入表格中,但似乎无法使用特殊字符,并且实际上切断了同一单元格中的其余数据,这显然是不理想。当我在文本编辑器(Sublime Text 3)中打开 .csv 文件时,它的所有特殊字符都显示为菱形中的问号,所以我们认为这意味着格式之间存在某种冲突。
如果有人可以建议我如何导出到 UTF-8 或 UNICODE .csv 文件以便我们可以保留字符,那就太好了。
提前致谢。