Skip to content

在mac下 复制完成的文本会有bom标记 #1

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
CaiJingLong opened this issue May 19, 2018 · 5 comments
Closed

在mac下 复制完成的文本会有bom标记 #1

CaiJingLong opened this issue May 19, 2018 · 5 comments

Comments

@CaiJingLong
Copy link
Contributor

CaiJingLong commented May 19, 2018

在mac系统下
复制左部生成的bean文件的文本
到idea中会变成65279开头

在idea的开发环境下 会造成报错

@debuggerx01
Copy link
Owner

感谢PR!由于我的日常开发环境是Linux,win和mac版本都是打包后看能运行就没再管了,确实没发现这个相当烦人的问题……

我也google了一下这个问题,然后发现了这样一条qt的bug记录:
https://bugreports.qt.io/browse/QTBUG-61562

看来这个问题确实是mac所独有的,通过代码方式似乎无法避免。你用增加按钮并直接操作系统剪切板的方式确实能够回避问题,只是我觉得稍微有点不爽,因为不想单独为mac版本增加交互去提醒使用者不要直接复制文本框里的内容,而应该点击复制按钮来避免bom。

所以我试着降低了mac版依赖pyqt库的版本,因为根据上面记录里所说,这个问题应该是5.9版本之后才出现的,5.8版本正常——但是我多次尝试之后发现pyqt最后一个正常的版本是5.7.1,之后的5.8版本也是有问题的,估计是pyqt和qt版本号上的差异。我会基于这个正常的pyqt版本再打个包,来确保文本框直接复制也能够正常使用,如果可以的话麻烦你下载试试看是不是还有什么问题。

当然那个复制按钮还是保留,我觉得即使文本框没问题,多一个按钮直接复制简化操作也是很不错的~

@CaiJingLong
Copy link
Contributor Author

我下载了你
https://github.com/debuggerx01/JSONFormat4Flutter/releases/tag/0.4
中的mac版本打包文件
因为没有扩展名,所以我这里直接双击无法打开直接打开这个文件

我尝试修改扩展名为mac常规的 .app后缀 或 .dmg后缀均无法打开

后来考虑到可能是Unix exec,修改权限为sudo chmod 777 Formater_mac ,然后果然可以双击打开了
我觉得可能需要一个使用说明来帮助使用者

当然,最新的0.4版本中没有发现复制后的bom问题
感谢提供开源工具

@debuggerx01

@debuggerx01
Copy link
Owner

@CaiJingLong 我在主页README里加了运行方式说明,最简单的 sudo chmod u+x Formater_mac && ./Formater_mac 就可以了,是不是不够明显?
因为我是直接用pyinstaller打包的,虽然它会生成一个无后缀二进制文件和一个后缀名app的文件(夹?),比如我发布的0.1release里就有Formater4Flutter_mac.app.zip这个下载项。但是不知道为什么我测试下来只要把这个app后缀的复制到其他mac运行就会提示签名损坏,而打包的那台机子却可以直接运行……实在不是很明白mac里各种乱七八糟的限制。。如果你知道该怎么解决打包运行问题的话请告诉我,能方便别人使用那是最好的了

@CaiJingLong
Copy link
Contributor Author

@debuggerx01
mac中运行.app文件的话需要用户的同意,并且会显示签名信息,如同ios的app打包一个概念,只是使用的打包方式是mac app,理论上使用ios的开发者身份也可以同时申请mac的app签名密钥
你的app签名如果没有经过苹果审核,则签名信息无法通过安全校验,需要在如截图所示的位置开启安全性,才能使用

个人觉得还是二进制文件使用起来方便,毕竟受众是程序员,应该可以理解
2018-05-30 10 21 56

@debuggerx01
Copy link
Owner

@CaiJingLong 我也稍微搜了下,好像签名需要开发者账号的?我只是偶尔写点ios的demo,只有普通个人账号,看来也搞不来了哈~

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants