From 15b0ef21ff768faa5329714c503e4b5046bf3e43 Mon Sep 17 00:00:00 2001 From: lealife Date: Sat, 19 Mar 2016 15:37:36 +0800 Subject: [PATCH] restructure messages --- app/lea/i18n/i18n.go | 23 +++++++++++++++---- messages/{album.en-us => en-us/album.conf} | 0 messages/{blog.en-us => en-us/blog.conf} | 0 .../{markdown.en-us => en-us/markdown.conf} | 0 messages/{member.en-us => en-us/member.conf} | 0 messages/{msg.en-us => en-us/msg.conf} | 0 .../tinymce_editor.conf} | 0 messages/{album.fr-fr => fr-fr/album.conf} | 0 messages/{blog.fr-fr => fr-fr/blog.conf} | 0 .../{markdown.fr-fr => fr-fr/markdown.conf} | 0 messages/{member.fr-fr => fr-fr/member.conf} | 0 messages/{msg.fr-fr => fr-fr/msg.conf} | 0 .../tinymce_editor.conf} | 0 messages/{album.pt-pt => pt-pt/album.conf} | 0 messages/{blog.pt-pt => pt-pt/blog.conf} | 0 .../{markdown.pt-pt => pt-pt/markdown.conf} | 0 messages/{member.pt-pt => pt-pt/member.conf} | 0 messages/{msg.pt-pt => pt-pt/msg.conf} | 0 .../tinymce_editor.conf} | 0 messages/{album.zh-cn => zh-cn/album.conf} | 0 messages/{blog.zh-cn => zh-cn/blog.conf} | 0 .../{markdown.zh-cn => zh-cn/markdown.conf} | 0 messages/{member.zh-cn => zh-cn/member.conf} | 0 messages/{msg.zh-cn => zh-cn/msg.conf} | 0 .../tinymce_editor.conf} | 0 messages/{album.zh-hk => zh-hk/album.conf} | 0 messages/{blog.zh-hk => zh-hk/blog.conf} | 0 .../{markdown.zh-hk => zh-hk/markdown.conf} | 0 messages/{member.zh-hk => zh-hk/member.conf} | 0 messages/{msg.zh-hk => zh-hk/msg.conf} | 0 .../tinymce_editor.conf} | 0 31 files changed, 19 insertions(+), 4 deletions(-) rename messages/{album.en-us => en-us/album.conf} (100%) rename messages/{blog.en-us => en-us/blog.conf} (100%) rename messages/{markdown.en-us => en-us/markdown.conf} (100%) rename messages/{member.en-us => en-us/member.conf} (100%) rename messages/{msg.en-us => en-us/msg.conf} (100%) rename messages/{tinymce_editor.en-us => en-us/tinymce_editor.conf} (100%) rename messages/{album.fr-fr => fr-fr/album.conf} (100%) rename messages/{blog.fr-fr => fr-fr/blog.conf} (100%) rename messages/{markdown.fr-fr => fr-fr/markdown.conf} (100%) rename messages/{member.fr-fr => fr-fr/member.conf} (100%) rename messages/{msg.fr-fr => fr-fr/msg.conf} (100%) rename messages/{tinymce_editor.fr-fr => fr-fr/tinymce_editor.conf} (100%) rename messages/{album.pt-pt => pt-pt/album.conf} (100%) rename messages/{blog.pt-pt => pt-pt/blog.conf} (100%) rename messages/{markdown.pt-pt => pt-pt/markdown.conf} (100%) rename messages/{member.pt-pt => pt-pt/member.conf} (100%) rename messages/{msg.pt-pt => pt-pt/msg.conf} (100%) rename messages/{tinymce_editor.pt-pt => pt-pt/tinymce_editor.conf} (100%) rename messages/{album.zh-cn => zh-cn/album.conf} (100%) rename messages/{blog.zh-cn => zh-cn/blog.conf} (100%) rename messages/{markdown.zh-cn => zh-cn/markdown.conf} (100%) rename messages/{member.zh-cn => zh-cn/member.conf} (100%) rename messages/{msg.zh-cn => zh-cn/msg.conf} (100%) rename messages/{tinymce_editor.zh-cn => zh-cn/tinymce_editor.conf} (100%) rename messages/{album.zh-hk => zh-hk/album.conf} (100%) rename messages/{blog.zh-hk => zh-hk/blog.conf} (100%) rename messages/{markdown.zh-hk => zh-hk/markdown.conf} (100%) rename messages/{member.zh-hk => zh-hk/member.conf} (100%) rename messages/{msg.zh-hk => zh-hk/msg.conf} (100%) rename messages/{tinymce_editor.zh-hk => zh-hk/tinymce_editor.conf} (100%) diff --git a/app/lea/i18n/i18n.go b/app/lea/i18n/i18n.go index e646027..af5303a 100644 --- a/app/lea/i18n/i18n.go +++ b/app/lea/i18n/i18n.go @@ -14,7 +14,7 @@ const ( CurrentLocaleRenderArg = "currentLocale" // The key for the current locale render arg value messageFilesDirectory = "messages" - messageFilePattern = `^\w+\.[a-zA-Z]{2}\-[a-zA-Z]{2}$` + messageFilePattern = `^\w+\.conf$` unknownValueFormat = "??? %s ???" defaultLanguageOption = "i18n.default_language" localeCookieConfigKey = "i18n.cookie" @@ -107,13 +107,28 @@ func parseLocale(locale string) (language, region string) { func loadMessages(path string) { messages = make(map[string]*config.Config) - if error := filepath.Walk(path, loadMessageFile); error != nil && !os.IsNotExist(error) { + if error := filepath.Walk(path, loadEachMessageLang); error != nil && !os.IsNotExist(error) { // ERROR.Println("Error reading messages files:", error) } } +// 加载每一个文件夹 +func loadEachMessageLang(parentPath string, parentInfo os.FileInfo, osError error) (err error) { + if !parentInfo.IsDir() { + return nil + } + + if err := filepath.Walk(parentPath, func(path string, info os.FileInfo, osError error) error { + return loadMessageFile(parentInfo.Name(), path, info, osError) + + }); err != nil && !os.IsNotExist(err) { + // ERROR.Println("Error reading messages files:", error) + } + return err +} + // Load a single message file -func loadMessageFile(path string, info os.FileInfo, osError error) error { +func loadMessageFile(locale string, path string, info os.FileInfo, osError error) error { if osError != nil { return osError } @@ -125,7 +140,7 @@ func loadMessageFile(path string, info os.FileInfo, osError error) error { if config, error := parseMessagesFile(path); error != nil { return error } else { - locale := parseLocaleFromFileName(info.Name()) + // locale := parseLocaleFromFileName(info.Name()) // revel.TRACE.Print(locale + "----locale") // If we have already parsed a message file for this locale, merge both diff --git a/messages/album.en-us b/messages/en-us/album.conf similarity index 100% rename from messages/album.en-us rename to messages/en-us/album.conf diff --git a/messages/blog.en-us b/messages/en-us/blog.conf similarity index 100% rename from messages/blog.en-us rename to messages/en-us/blog.conf diff --git a/messages/markdown.en-us b/messages/en-us/markdown.conf similarity index 100% rename from messages/markdown.en-us rename to messages/en-us/markdown.conf diff --git a/messages/member.en-us b/messages/en-us/member.conf similarity index 100% rename from messages/member.en-us rename to messages/en-us/member.conf diff --git a/messages/msg.en-us b/messages/en-us/msg.conf similarity index 100% rename from messages/msg.en-us rename to messages/en-us/msg.conf diff --git a/messages/tinymce_editor.en-us b/messages/en-us/tinymce_editor.conf similarity index 100% rename from messages/tinymce_editor.en-us rename to messages/en-us/tinymce_editor.conf diff --git a/messages/album.fr-fr b/messages/fr-fr/album.conf similarity index 100% rename from messages/album.fr-fr rename to messages/fr-fr/album.conf diff --git a/messages/blog.fr-fr b/messages/fr-fr/blog.conf similarity index 100% rename from messages/blog.fr-fr rename to messages/fr-fr/blog.conf diff --git a/messages/markdown.fr-fr b/messages/fr-fr/markdown.conf similarity index 100% rename from messages/markdown.fr-fr rename to messages/fr-fr/markdown.conf diff --git a/messages/member.fr-fr b/messages/fr-fr/member.conf similarity index 100% rename from messages/member.fr-fr rename to messages/fr-fr/member.conf diff --git a/messages/msg.fr-fr b/messages/fr-fr/msg.conf similarity index 100% rename from messages/msg.fr-fr rename to messages/fr-fr/msg.conf diff --git a/messages/tinymce_editor.fr-fr b/messages/fr-fr/tinymce_editor.conf similarity index 100% rename from messages/tinymce_editor.fr-fr rename to messages/fr-fr/tinymce_editor.conf diff --git a/messages/album.pt-pt b/messages/pt-pt/album.conf similarity index 100% rename from messages/album.pt-pt rename to messages/pt-pt/album.conf diff --git a/messages/blog.pt-pt b/messages/pt-pt/blog.conf similarity index 100% rename from messages/blog.pt-pt rename to messages/pt-pt/blog.conf diff --git a/messages/markdown.pt-pt b/messages/pt-pt/markdown.conf similarity index 100% rename from messages/markdown.pt-pt rename to messages/pt-pt/markdown.conf diff --git a/messages/member.pt-pt b/messages/pt-pt/member.conf similarity index 100% rename from messages/member.pt-pt rename to messages/pt-pt/member.conf diff --git a/messages/msg.pt-pt b/messages/pt-pt/msg.conf similarity index 100% rename from messages/msg.pt-pt rename to messages/pt-pt/msg.conf diff --git a/messages/tinymce_editor.pt-pt b/messages/pt-pt/tinymce_editor.conf similarity index 100% rename from messages/tinymce_editor.pt-pt rename to messages/pt-pt/tinymce_editor.conf diff --git a/messages/album.zh-cn b/messages/zh-cn/album.conf similarity index 100% rename from messages/album.zh-cn rename to messages/zh-cn/album.conf diff --git a/messages/blog.zh-cn b/messages/zh-cn/blog.conf similarity index 100% rename from messages/blog.zh-cn rename to messages/zh-cn/blog.conf diff --git a/messages/markdown.zh-cn b/messages/zh-cn/markdown.conf similarity index 100% rename from messages/markdown.zh-cn rename to messages/zh-cn/markdown.conf diff --git a/messages/member.zh-cn b/messages/zh-cn/member.conf similarity index 100% rename from messages/member.zh-cn rename to messages/zh-cn/member.conf diff --git a/messages/msg.zh-cn b/messages/zh-cn/msg.conf similarity index 100% rename from messages/msg.zh-cn rename to messages/zh-cn/msg.conf diff --git a/messages/tinymce_editor.zh-cn b/messages/zh-cn/tinymce_editor.conf similarity index 100% rename from messages/tinymce_editor.zh-cn rename to messages/zh-cn/tinymce_editor.conf diff --git a/messages/album.zh-hk b/messages/zh-hk/album.conf similarity index 100% rename from messages/album.zh-hk rename to messages/zh-hk/album.conf diff --git a/messages/blog.zh-hk b/messages/zh-hk/blog.conf similarity index 100% rename from messages/blog.zh-hk rename to messages/zh-hk/blog.conf diff --git a/messages/markdown.zh-hk b/messages/zh-hk/markdown.conf similarity index 100% rename from messages/markdown.zh-hk rename to messages/zh-hk/markdown.conf diff --git a/messages/member.zh-hk b/messages/zh-hk/member.conf similarity index 100% rename from messages/member.zh-hk rename to messages/zh-hk/member.conf diff --git a/messages/msg.zh-hk b/messages/zh-hk/msg.conf similarity index 100% rename from messages/msg.zh-hk rename to messages/zh-hk/msg.conf diff --git a/messages/tinymce_editor.zh-hk b/messages/zh-hk/tinymce_editor.conf similarity index 100% rename from messages/tinymce_editor.zh-hk rename to messages/zh-hk/tinymce_editor.conf