gpt4 book ai didi

android - 带有 Android Studio 的 IntelliJ Android 代码样式模板删除了字符串中复数前面的空格

转载 作者:行者123 更新时间:2023-11-29 17:53:17 26 4
gpt4 key购买 nike

我应用了 IntelliJ Android code style template到开源项目 OneBusAway Android使用 Android Studio 来标准化代码样式和格式。

问题是应用模板会推送 <xliff:g> strings.xml 中的标签到一个新行并从上一行中删除尾随空格。这有效地防止了在复数值之前引入任何间距。

在应用样式模板之前:

<plurals name="stop_info_no_additional_data_hours_minutes">
<item quantity="one">No additional arrivals in the next 1 hour and %1$d minutes.</item>
<item quantity="other">No additional arrivals in the next <xliff:g id="count">%2$d</xliff:g> hours and %1$d minutes.</item>
</plurals>

.. 它创建正确的字符串:

No additional arrivals in the next 2 hours and 35 minutes.

应用模板后,它会切断复数值之前的空格:

<plurals name="stop_info_no_additional_data_hours_minutes">
<item quantity="one">No additional arrivals in the next 1 hour and %1$d minutes.</item>
<item quantity="other">No additional arrivals in the next
<xliff:g id="count">%2$d</xliff:g>
hours and %1$d minutes.
</item>
</plurals>

...结果为字符串:

No additional arrivals in the next2 hours and 35 minutes.

我查看了 Android 开源项目以了解他们如何处理此问题,XML 标记似乎留在一行中: https://github.com/android/platform_packages_apps_mms/blob/master/res/values/strings.xml#L690 https://github.com/android/platform_packages_apps_contacts/blob/master/res/values/strings.xml#L568

AOSP 的 two exceptions to the line limit不要在这里申请。

我的选择似乎是:

  1. 更改样式模板以允许前导或尾随空格(我宁愿避免这种情况以保持模板与 AOSP 相同)
  2. 忽略这些行的模板,方法是将它们扩展到 100 个字符以上或在 <xliff:g> 中添加前导空格标记(我更愿意将整个项目放在模板下,这样以后就不会有人重新格式化并再次触发此问题)。

我错过了什么吗?是否有另一种方法在这里引入空格(例如,使用特殊/编码字符)?

我也将其跟踪为 an issue对于 Github 上的 OneBusAway Android,如果有人感兴趣,它有屏幕截图和其他链接。

更新:我尝试使用 Android Template for Eclipse 在 Eclipse 中格式化相同的 XML , 它不会导致这个问题。换句话说,应用模板后 XML 没有变化。所以这似乎是 Android Studio 的错误或 IntelliJ 模板的问题。我假设这就是 AOSP 行完好无损的原因。

编辑:此问题已在 Android Studio 0.4.4 中修复,但在 0.8.9 中重新出现。参见 AOSP Issue 65394了解详情。

最佳答案

这是一个 IntelliJ/Studio 错误,将在 Android Studio 0.4.4 中修复: https://code.google.com/p/android/issues/detail?id=65394

(感谢您提交该问题!)

关于android - 带有 Android Studio 的 IntelliJ Android 代码样式模板删除了字符串中复数前面的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21416360/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com