Fixing locheck tool (#788)

* fixing locheck

* fixing locheck tool

* Revert "fixing locheck tool"

This reverts commit 9bb3dbcd70d1ecbc62b4289623b5f9e584929997.

* locheck install

* using the original code to get the directory

* adding swiftgen to download strings

* setup project on ci

* added Strings.swift to the path

* adding String.swift
This commit is contained in:
Mauro
2023-04-12 12:03:11 +02:00
committed by GitHub
parent 30a3efcf51
commit 8403b07874
6 changed files with 255 additions and 4 deletions
+4 -3
View File
@@ -14,8 +14,8 @@ jobs:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Localazy and Mint
run: brew install mint localazy/tools/localazy
- name: Setup Project
run: swift run tools setup-project --ci
- name: Download All Translations
run: swift run tools download-strings --all-languages
@@ -34,4 +34,5 @@ jobs:
base: develop
add-paths: |
*.strings
*.stringsdict
*.stringsdict
Strings.swift
@@ -3,8 +3,10 @@
"a11y_send_files" = "Send files";
"a11y_show_password" = "Show password";
"a11y_user_menu" = "User menu";
"action_accept" = "Accept";
"action_back" = "Back";
"action_cancel" = "Cancel";
"action_choose_photo" = "Choose photo";
"action_clear" = "Clear";
"action_close" = "Close";
"action_complete_verification" = "Complete verification";
@@ -12,13 +14,16 @@
"action_continue" = "Continue";
"action_copy" = "Copy";
"action_copy_link" = "Copy link";
"action_create" = "Create";
"action_create_a_room" = "Create a room";
"action_decline" = "Decline";
"action_disable" = "Disable";
"action_done" = "Done";
"action_edit" = "Edit";
"action_enable" = "Enable";
"action_invite" = "Invite";
"action_invite_friends_to_app" = "Invite friends to %1$@";
"action_invites_list" = "Invites";
"action_learn_more" = "Learn more";
"action_leave" = "Leave";
"action_leave_room" = "Leave room";
@@ -37,12 +42,14 @@
"action_save" = "Save";
"action_search" = "Search";
"action_send" = "Send";
"action_send_message" = "Send message";
"action_share" = "Share";
"action_share_link" = "Share link";
"action_skip" = "Skip";
"action_start" = "Start";
"action_start_chat" = "Start chat";
"action_start_verification" = "Start verification";
"action_take_photo" = "Take photo";
"action_view_source" = "View Source";
"action_yes" = "Yes";
"common_about" = "About";
@@ -115,6 +122,23 @@
"leave_room_alert_private_subtitle" = "Are you sure that you want to leave this room? This room is not public and you will not be able to rejoin without an invite.";
"leave_room_alert_subtitle" = "Are you sure that you want to leave the room?";
"login_initial_device_name_ios" = "%1$@ iOS";
"notification_channel_call" = "Call";
"notification_channel_listening_for_events" = "Listening for events";
"notification_channel_noisy" = "Noisy notifications";
"notification_channel_silent" = "Silent notifications";
"notification_inline_reply_failed" = "** Failed to send - please open room";
"notification_invitation_action_join" = "Join";
"notification_invitation_action_reject" = "Reject";
"notification_new_messages" = "New Messages";
"notification_room_action_mark_as_read" = "Mark as read";
"notification_room_action_quick_reply" = "Quick reply";
"notification_sender_me" = "Me";
"notification_test_push_notification_content" = "You are viewing the notification! Click me!";
"notification_ticker_text_dm" = "%1$@: %2$@";
"notification_ticker_text_group" = "%1$@: %2$@ %3$@";
"notification_unread_notified_messages_and_invitation" = "%1$@ and %2$@";
"notification_unread_notified_messages_in_room" = "%1$@ in %2$@";
"notification_unread_notified_messages_in_room_and_invitation" = "%1$@ in %2$@ and %3$@";
"preference_rageshake" = "Rageshake to report bug";
"rageshake_detection_dialog_content" = "You seem to be shaking the phone in frustration. Would you like to open the bug report screen?";
"rageshake_dialog_content" = "You seem to be shaking the phone in frustration. Would you like to open the bug report screen?";
@@ -158,12 +182,22 @@
"screen_create_room_action_create_room" = "New room";
"screen_create_room_action_invite_people" = "Invite people";
"screen_create_room_add_people_title" = "Add people";
"screen_create_room_private_option_description" = "Messages in this room are encrypted. Encryption can’t be disabled afterwards.";
"screen_create_room_private_option_title" = "Private room (invite only)";
"screen_create_room_public_option_description" = "Messages are not encrypted and anyone can read them. You can enable encryption at a later date.";
"screen_create_room_public_option_title" = "Public room (anyone)";
"screen_create_room_room_name_label" = "Room name";
"screen_create_room_room_name_placeholder" = "e.g. Product Sprint";
"screen_create_room_title" = "Create a room";
"screen_create_room_topic_label" = "Topic (optional)";
"screen_create_room_topic_placeholder" = "What is this room about?";
"screen_dm_details_block_alert_action" = "Block";
"screen_dm_details_block_alert_description" = "Blocked users will not be able to send you messages and all message by them will be hidden. You can reverse this action anytime.";
"screen_dm_details_block_user" = "Block user";
"screen_dm_details_unblock_alert_action" = "Unblock";
"screen_dm_details_unblock_alert_description" = "On unblocking the user, you will be able to see all messages by them again.";
"screen_dm_details_unblock_user" = "Unblock user";
"screen_invites_invited_you" = "%1$@ invited you";
"screen_login_error_deactivated_account" = "This account has been deactivated.";
"screen_login_error_invalid_credentials" = "Incorrect username and/or password";
"screen_login_error_invalid_user_id" = "This is not a valid user identifier. Expected format: ‘@user:homeserver.org’";
@@ -18,6 +18,102 @@
<string>%1$d members</string>
</dict>
</dict>
<key>notification_compat_summary_line_for_room</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@COUNT@</string>
<key>COUNT</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>one</key>
<string>%1$@: %2$d message</string>
<key>other</key>
<string>%1$@: %2$d messages</string>
</dict>
</dict>
<key>notification_compat_summary_title</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@COUNT@</string>
<key>COUNT</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>one</key>
<string>%d notification</string>
<key>other</key>
<string>%d notifications</string>
</dict>
</dict>
<key>notification_invitations</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@COUNT@</string>
<key>COUNT</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>one</key>
<string>%d invitation</string>
<key>other</key>
<string>%d invitations</string>
</dict>
</dict>
<key>notification_new_messages_for_room</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@COUNT@</string>
<key>COUNT</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>one</key>
<string>%d new message</string>
<key>other</key>
<string>%d new messages</string>
</dict>
</dict>
<key>notification_unread_notified_messages</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@COUNT@</string>
<key>COUNT</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>one</key>
<string>%d unread notified message</string>
<key>other</key>
<string>%d unread notified messages</string>
</dict>
</dict>
<key>notification_unread_notified_messages_in_room_rooms</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@COUNT@</string>
<key>COUNT</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>one</key>
<string>%d room</string>
<key>other</key>
<string>%d rooms</string>
</dict>
</dict>
<key>room_timeline_state_changes</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
+104
View File
@@ -18,10 +18,14 @@ public enum L10n {
public static var a11yShowPassword: String { return L10n.tr("Localizable", "a11y_show_password") }
/// User menu
public static var a11yUserMenu: String { return L10n.tr("Localizable", "a11y_user_menu") }
/// Accept
public static var actionAccept: String { return L10n.tr("Localizable", "action_accept") }
/// Back
public static var actionBack: String { return L10n.tr("Localizable", "action_back") }
/// Cancel
public static var actionCancel: String { return L10n.tr("Localizable", "action_cancel") }
/// Choose photo
public static var actionChoosePhoto: String { return L10n.tr("Localizable", "action_choose_photo") }
/// Clear
public static var actionClear: String { return L10n.tr("Localizable", "action_clear") }
/// Close
@@ -36,8 +40,12 @@ public enum L10n {
public static var actionCopy: String { return L10n.tr("Localizable", "action_copy") }
/// Copy link
public static var actionCopyLink: String { return L10n.tr("Localizable", "action_copy_link") }
/// Create
public static var actionCreate: String { return L10n.tr("Localizable", "action_create") }
/// Create a room
public static var actionCreateARoom: String { return L10n.tr("Localizable", "action_create_a_room") }
/// Decline
public static var actionDecline: String { return L10n.tr("Localizable", "action_decline") }
/// Disable
public static var actionDisable: String { return L10n.tr("Localizable", "action_disable") }
/// Done
@@ -52,6 +60,8 @@ public enum L10n {
public static func actionInviteFriendsToApp(_ p1: Any) -> String {
return L10n.tr("Localizable", "action_invite_friends_to_app", String(describing: p1))
}
/// Invites
public static var actionInvitesList: String { return L10n.tr("Localizable", "action_invites_list") }
/// Learn more
public static var actionLearnMore: String { return L10n.tr("Localizable", "action_learn_more") }
/// Leave
@@ -88,6 +98,8 @@ public enum L10n {
public static var actionSearch: String { return L10n.tr("Localizable", "action_search") }
/// Send
public static var actionSend: String { return L10n.tr("Localizable", "action_send") }
/// Send message
public static var actionSendMessage: String { return L10n.tr("Localizable", "action_send_message") }
/// Share
public static var actionShare: String { return L10n.tr("Localizable", "action_share") }
/// Share link
@@ -100,6 +112,8 @@ public enum L10n {
public static var actionStartChat: String { return L10n.tr("Localizable", "action_start_chat") }
/// Start verification
public static var actionStartVerification: String { return L10n.tr("Localizable", "action_start_verification") }
/// Take photo
public static var actionTakePhoto: String { return L10n.tr("Localizable", "action_take_photo") }
/// View Source
public static var actionViewSource: String { return L10n.tr("Localizable", "action_view_source") }
/// Yes
@@ -258,6 +272,74 @@ public enum L10n {
}
/// Notification
public static var notification: String { return L10n.tr("Localizable", "Notification") }
/// Call
public static var notificationChannelCall: String { return L10n.tr("Localizable", "notification_channel_call") }
/// Listening for events
public static var notificationChannelListeningForEvents: String { return L10n.tr("Localizable", "notification_channel_listening_for_events") }
/// Noisy notifications
public static var notificationChannelNoisy: String { return L10n.tr("Localizable", "notification_channel_noisy") }
/// Silent notifications
public static var notificationChannelSilent: String { return L10n.tr("Localizable", "notification_channel_silent") }
/// Plural format key: "%#@COUNT@"
public static func notificationCompatSummaryLineForRoom(_ p1: Int) -> String {
return L10n.tr("Localizable", "notification_compat_summary_line_for_room", p1)
}
/// Plural format key: "%#@COUNT@"
public static func notificationCompatSummaryTitle(_ p1: Int) -> String {
return L10n.tr("Localizable", "notification_compat_summary_title", p1)
}
/// ** Failed to send - please open room
public static var notificationInlineReplyFailed: String { return L10n.tr("Localizable", "notification_inline_reply_failed") }
/// Join
public static var notificationInvitationActionJoin: String { return L10n.tr("Localizable", "notification_invitation_action_join") }
/// Reject
public static var notificationInvitationActionReject: String { return L10n.tr("Localizable", "notification_invitation_action_reject") }
/// Plural format key: "%#@COUNT@"
public static func notificationInvitations(_ p1: Int) -> String {
return L10n.tr("Localizable", "notification_invitations", p1)
}
/// New Messages
public static var notificationNewMessages: String { return L10n.tr("Localizable", "notification_new_messages") }
/// Plural format key: "%#@COUNT@"
public static func notificationNewMessagesForRoom(_ p1: Int) -> String {
return L10n.tr("Localizable", "notification_new_messages_for_room", p1)
}
/// Mark as read
public static var notificationRoomActionMarkAsRead: String { return L10n.tr("Localizable", "notification_room_action_mark_as_read") }
/// Quick reply
public static var notificationRoomActionQuickReply: String { return L10n.tr("Localizable", "notification_room_action_quick_reply") }
/// Me
public static var notificationSenderMe: String { return L10n.tr("Localizable", "notification_sender_me") }
/// You are viewing the notification! Click me!
public static var notificationTestPushNotificationContent: String { return L10n.tr("Localizable", "notification_test_push_notification_content") }
/// %1$@: %2$@
public static func notificationTickerTextDm(_ p1: Any, _ p2: Any) -> String {
return L10n.tr("Localizable", "notification_ticker_text_dm", String(describing: p1), String(describing: p2))
}
/// %1$@: %2$@ %3$@
public static func notificationTickerTextGroup(_ p1: Any, _ p2: Any, _ p3: Any) -> String {
return L10n.tr("Localizable", "notification_ticker_text_group", String(describing: p1), String(describing: p2), String(describing: p3))
}
/// Plural format key: "%#@COUNT@"
public static func notificationUnreadNotifiedMessages(_ p1: Int) -> String {
return L10n.tr("Localizable", "notification_unread_notified_messages", p1)
}
/// %1$@ and %2$@
public static func notificationUnreadNotifiedMessagesAndInvitation(_ p1: Any, _ p2: Any) -> String {
return L10n.tr("Localizable", "notification_unread_notified_messages_and_invitation", String(describing: p1), String(describing: p2))
}
/// %1$@ in %2$@
public static func notificationUnreadNotifiedMessagesInRoom(_ p1: Any, _ p2: Any) -> String {
return L10n.tr("Localizable", "notification_unread_notified_messages_in_room", String(describing: p1), String(describing: p2))
}
/// %1$@ in %2$@ and %3$@
public static func notificationUnreadNotifiedMessagesInRoomAndInvitation(_ p1: Any, _ p2: Any, _ p3: Any) -> String {
return L10n.tr("Localizable", "notification_unread_notified_messages_in_room_and_invitation", String(describing: p1), String(describing: p2), String(describing: p3))
}
/// Plural format key: "%#@COUNT@"
public static func notificationUnreadNotifiedMessagesInRoomRooms(_ p1: Int) -> String {
return L10n.tr("Localizable", "notification_unread_notified_messages_in_room_rooms", p1)
}
/// Rageshake to report bug
public static var preferenceRageshake: String { return L10n.tr("Localizable", "preference_rageshake") }
/// You seem to be shaking the phone in frustration. Would you like to open the bug report screen?
@@ -354,6 +436,24 @@ public enum L10n {
public static var screenCreateRoomActionInvitePeople: String { return L10n.tr("Localizable", "screen_create_room_action_invite_people") }
/// Add people
public static var screenCreateRoomAddPeopleTitle: String { return L10n.tr("Localizable", "screen_create_room_add_people_title") }
/// Messages in this room are encrypted. Encryption can’t be disabled afterwards.
public static var screenCreateRoomPrivateOptionDescription: String { return L10n.tr("Localizable", "screen_create_room_private_option_description") }
/// Private room (invite only)
public static var screenCreateRoomPrivateOptionTitle: String { return L10n.tr("Localizable", "screen_create_room_private_option_title") }
/// Messages are not encrypted and anyone can read them. You can enable encryption at a later date.
public static var screenCreateRoomPublicOptionDescription: String { return L10n.tr("Localizable", "screen_create_room_public_option_description") }
/// Public room (anyone)
public static var screenCreateRoomPublicOptionTitle: String { return L10n.tr("Localizable", "screen_create_room_public_option_title") }
/// Room name
public static var screenCreateRoomRoomNameLabel: String { return L10n.tr("Localizable", "screen_create_room_room_name_label") }
/// e.g. Product Sprint
public static var screenCreateRoomRoomNamePlaceholder: String { return L10n.tr("Localizable", "screen_create_room_room_name_placeholder") }
/// Create a room
public static var screenCreateRoomTitle: String { return L10n.tr("Localizable", "screen_create_room_title") }
/// Topic (optional)
public static var screenCreateRoomTopicLabel: String { return L10n.tr("Localizable", "screen_create_room_topic_label") }
/// What is this room about?
public static var screenCreateRoomTopicPlaceholder: String { return L10n.tr("Localizable", "screen_create_room_topic_placeholder") }
/// Block
public static var screenDmDetailsBlockAlertAction: String { return L10n.tr("Localizable", "screen_dm_details_block_alert_action") }
/// Blocked users will not be able to send you messages and all message by them will be hidden. You can reverse this action anytime.
@@ -366,6 +466,10 @@ public enum L10n {
public static var screenDmDetailsUnblockAlertDescription: String { return L10n.tr("Localizable", "screen_dm_details_unblock_alert_description") }
/// Unblock user
public static var screenDmDetailsUnblockUser: String { return L10n.tr("Localizable", "screen_dm_details_unblock_user") }
/// %1$@ invited you
public static func screenInvitesInvitedYou(_ p1: Any) -> String {
return L10n.tr("Localizable", "screen_invites_invited_you", String(describing: p1))
}
/// This account has been deactivated.
public static var screenLoginErrorDeactivatedAccount: String { return L10n.tr("Localizable", "screen_login_error_deactivated_account") }
/// Incorrect username and/or password
+5
View File
@@ -9,10 +9,15 @@ struct DownloadStrings: ParsableCommand {
func run() throws {
try localazyDownload()
try swiftgen()
}
private func localazyDownload() throws {
let json = allLanguages ? "localazy-all.json" : "localazy-en.json"
try Utilities.zsh("localazy download --config \(json)")
}
private func swiftgen() throws {
try Utilities.zsh("swiftgen config run --config Tools/SwiftGen/swiftgen-config.yml")
}
}
+12 -1
View File
@@ -4,9 +4,13 @@ import Foundation
struct SetupProject: ParsableCommand {
static var configuration = CommandConfiguration(abstract: "A tool to setup the required components to efficiently run and contribute to Element X iOS")
@Flag(help: "Use this only on ci to avoid installing failing packages")
var ci = false
func run() throws {
try setupGitHooks()
try brewBundleInstall()
try mintPackagesInstall()
try xcodegen()
}
@@ -15,7 +19,14 @@ struct SetupProject: ParsableCommand {
}
func brewBundleInstall() throws {
try Utilities.zsh("brew install xcodegen swiftgen swiftlint swiftformat git-lfs sourcery mint kiliankoe/formulae/swift-outdated localazy/tools/localazy")
try Utilities.zsh("brew install xcodegen swiftgen swiftformat git-lfs sourcery mint kiliankoe/formulae/swift-outdated localazy/tools/localazy")
if !ci {
try Utilities.zsh("brew install swiftlint")
}
}
func mintPackagesInstall() throws {
try Utilities.zsh("mint install Asana/locheck")
}
func xcodegen() throws {