• R/O
  • SSH
  • HTTPS

mergedoc: Commit


Commit MetaInfo

Revision1947 (tree)
Time2018-08-03 17:57:00
Authorcypher256

Log Message

(empty log message)

Change Summary

Incremental Difference

--- trunk/Pleiades/readme/readme_pleiades_changes.txt (revision 1946)
+++ trunk/Pleiades/readme/readme_pleiades_changes.txt (revision 1947)
@@ -1,3 +1,8 @@
1+beta
2+
3+・[IDEA] 訳追加修正: IntelliJ IDEA, PhpStorm, PyCharm, RubyMine, GoLand
4+・[Eclipse] 訳追加修正: Eclipse
5+
16 2018.08.03
27
38 ・[IDEA] Pleiades ON/OFF 切替時に切替前のアプリケーション実行構成が ?Unknown になる不具合を修正
--- trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/generator/Generator.java (revision 1946)
+++ trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/generator/Generator.java (revision 1947)
@@ -6,6 +6,21 @@
66 */
77 package jp.sourceforge.mergedoc.pleiades.generator;
88
9+import static jp.sourceforge.mergedoc.pleiades.resource.FileNames.*;
10+
11+import java.io.File;
12+import java.io.IOException;
13+import java.nio.charset.StandardCharsets;
14+import java.util.ArrayList;
15+import java.util.Arrays;
16+import java.util.HashMap;
17+import java.util.List;
18+import java.util.Map;
19+import java.util.Map.Entry;
20+
21+import org.apache.commons.io.FileUtils;
22+import org.apache.commons.lang3.ArrayUtils;
23+
924 import jp.sourceforge.mergedoc.pleiades.log.Logger;
1025 import jp.sourceforge.mergedoc.pleiades.resource.Files;
1126 import jp.sourceforge.mergedoc.pleiades.resource.Property;
@@ -12,17 +27,7 @@
1227 import jp.sourceforge.mergedoc.pleiades.resource.PropertySet;
1328 import jp.sourceforge.mergedoc.pleiades.resource.TranslationString;
1429 import jp.sourceforge.mergedoc.pleiades.runtime.resource.RegexDictionary;
15-import org.apache.commons.io.FileUtils;
16-import org.apache.commons.lang3.ArrayUtils;
1730
18-import java.io.File;
19-import java.io.IOException;
20-import java.nio.charset.StandardCharsets;
21-import java.util.*;
22-import java.util.Map.Entry;
23-
24-import static jp.sourceforge.mergedoc.pleiades.resource.FileNames.*;
25-
2631 /**
2732 * 複数のプロパティー・ファイルをマージし、1 つのプロパティー・ファイル
2833 * (translation.properties) を作成するための翻訳プロパティー・ジェネレーターです。
@@ -69,7 +74,7 @@
6974 private void run() throws IOException {
7075
7176 // ログ削除
72- for (File logFile : Files.conf("props").listFiles(Files.createSuffixFilter(".log"))) {
77+ for (File logFile : Files.listBySuffix(Files.conf("props"), ".log")) {
7378 logFile.delete();
7479 }
7580
@@ -83,7 +88,7 @@
8388
8489 if (!isClean) {
8590 if (isModified(TRANS_PROP, BABEL_CUSTOM_PROP, HELP_CUSTOM_PROP) ||
86- isModified(TRANS_PROP, Files.conf("props").listFiles(Files.createFileFilter()))
91+ isModified(TRANS_PROP, Files.listFiles(Files.conf("props")))
8792 ) {
8893 log.info("Babel プロパティー・ファイルの更新を検出したため -clean で実行します。");
8994 isClean = true;
@@ -135,7 +140,7 @@
135140
136141 // 辞書の振り分け - ライセンス別のフォルダーごとに処理 (EPL 優先のため最後に処理)
137142 // EPL を最後にする
138- File[] dirs = Files.conf("props/source").listFiles(Files.createDirectoryFilter());
143+ File[] dirs = Files.listFolders(Files.conf("props/source"));
139144 Arrays.sort(dirs, (dir1, dir2) -> {
140145 String dir1Name = dir1.getName();
141146 return dir1Name.equals("EPL") ? 1 : dir1Name.compareTo(dir2.getName());
@@ -156,7 +161,7 @@
156161 PropertySet excludeProp = new PropertySet();
157162 PropertySet transProp = new PropertySet();
158163
159- File[] propFiles = dir.listFiles(Files.createSuffixFilter(".properties"));
164+ File[] propFiles = Files.listBySuffix(dir, ".properties");
160165 boolean updatedPerLicense = false;
161166
162167 if (!isClean) {
--- trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/generator/nls/AbstractExtractor.java (revision 1946)
+++ trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/generator/nls/AbstractExtractor.java (revision 1947)
@@ -6,6 +6,16 @@
66 */
77 package jp.sourceforge.mergedoc.pleiades.generator.nls;
88
9+import java.io.File;
10+import java.io.IOException;
11+import java.nio.charset.StandardCharsets;
12+import java.util.ArrayList;
13+import java.util.Arrays;
14+import java.util.List;
15+
16+import org.apache.commons.io.FileUtils;
17+import org.apache.commons.lang3.StringUtils;
18+
919 import jp.sourceforge.mergedoc.pleiades.log.Logger;
1020 import jp.sourceforge.mergedoc.pleiades.log.Logger.Level;
1121 import jp.sourceforge.mergedoc.pleiades.log.SystemOutLogger;
@@ -12,16 +22,7 @@
1222 import jp.sourceforge.mergedoc.pleiades.resource.Files;
1323 import jp.sourceforge.mergedoc.pleiades.resource.Property;
1424 import jp.sourceforge.mergedoc.pleiades.resource.PropertySet;
15-import org.apache.commons.io.FileUtils;
16-import org.apache.commons.lang3.StringUtils;
1725
18-import java.io.File;
19-import java.io.IOException;
20-import java.nio.charset.StandardCharsets;
21-import java.util.ArrayList;
22-import java.util.Arrays;
23-import java.util.List;
24-
2526 /**
2627 * 言語パックから日本語訳を抽出し Pleiades 形式の
2728 * プロパティー・ファイルに出力するための抽象クラスです。
@@ -145,7 +146,7 @@
145146 */
146147 protected void extract(File nlsFolder) throws IOException {
147148
148- File[] dirs = nlsFolder.listFiles(Files.createDirectoryFilter());
149+ File[] dirs = Files.listFolders(nlsFolder);
149150 Arrays.sort(dirs); // 昇順
150151
151152 for (File dir : dirs) {
--- trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/resource/Files.java (revision 1946)
+++ trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/resource/Files.java (revision 1947)
@@ -6,15 +6,20 @@
66 */
77 package jp.sourceforge.mergedoc.pleiades.resource;
88
9+import java.io.Closeable;
10+import java.io.File;
11+import java.io.FileFilter;
12+import java.io.FileNotFoundException;
13+import java.io.IOException;
14+import java.io.UnsupportedEncodingException;
15+import java.net.URL;
16+import java.net.URLDecoder;
17+import java.nio.charset.StandardCharsets;
18+
919 import org.apache.commons.io.filefilter.DirectoryFileFilter;
1020 import org.apache.commons.io.filefilter.FileFileFilter;
1121 import org.apache.commons.io.filefilter.SuffixFileFilter;
1222
13-import java.io.*;
14-import java.net.URL;
15-import java.net.URLDecoder;
16-import java.nio.charset.StandardCharsets;
17-
1823 /**
1924 * ファイル・ユーティリティーです。
2025 * <p>
@@ -132,28 +137,34 @@
132137 }
133138
134139 /**
135- * ディレクトリーのファイル・フィルターを作成します。
136- * @return ファイル・フィルター
140+ * フォルダーの File 配列を取得します。
141+ * @param parent 親フォルダー
142+ * @return フォルダーの File 配列 (取得できない場合は長さ 0 の配列)
137143 */
138- public static FileFilter createDirectoryFilter() {
139- return DirectoryFileFilter.INSTANCE;
144+ public static File[] listFolders(File parent) {
145+ File[] folders = parent.listFiles((FileFilter) DirectoryFileFilter.INSTANCE);
146+ return folders == null ? new File[0] : folders;
140147 }
141148
142149 /**
143- * ファイルのファイル・フィルターを作成します。
144- * @return ファイル・フィルター
150+ * ファイルの File 配列を取得します。
151+ * @param parent 親フォルダー
152+ * @return ファイルの File 配列 (取得できない場合は長さ 0 の配列)
145153 */
146- public static FileFilter createFileFilter() {
147- return FileFileFilter.FILE;
154+ public static File[] listFiles(File parent) {
155+ File[] files = parent.listFiles((FileFilter) FileFileFilter.FILE);
156+ return files == null ? new File[0] : files;
148157 }
149158
150159 /**
151- * 接尾辞を指定してファイル・フィルターを作成します。
160+ * 接尾辞を指定してファイルの File 配列を取得します。
161+ * @param parent 親フォルダー
152162 * @param suffix 接尾辞
153- * @return ファイル・フィルター
163+ * @return ファイルの File 配列 (取得できない場合は長さ 0 の配列)
154164 */
155- public static FileFilter createSuffixFilter(String suffix) {
156- return new SuffixFileFilter(suffix);
165+ public static File[] listBySuffix(File parent, String suffix) {
166+ File[] files = parent.listFiles((FileFilter) new SuffixFileFilter(suffix));
167+ return files == null ? new File[0] : files;
157168 }
158169
159170 /**
--- trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/resource/PropertySet.java (revision 1946)
+++ trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/resource/PropertySet.java (revision 1947)
@@ -6,17 +6,37 @@
66 */
77 package jp.sourceforge.mergedoc.pleiades.resource;
88
9-import jp.sourceforge.mergedoc.pleiades.log.Logger;
10-import org.apache.commons.lang3.StringUtils;
11-
12-import java.io.*;
9+import java.io.BufferedInputStream;
10+import java.io.BufferedOutputStream;
11+import java.io.BufferedWriter;
12+import java.io.File;
13+import java.io.FileInputStream;
14+import java.io.FileOutputStream;
15+import java.io.IOException;
16+import java.io.InputStream;
17+import java.io.InputStreamReader;
18+import java.io.OutputStream;
19+import java.io.OutputStreamWriter;
20+import java.io.Reader;
1321 import java.nio.charset.StandardCharsets;
14-import java.util.*;
22+import java.util.ArrayList;
23+import java.util.Arrays;
24+import java.util.ConcurrentModificationException;
25+import java.util.Date;
26+import java.util.HashMap;
27+import java.util.Iterator;
28+import java.util.List;
29+import java.util.Map;
30+import java.util.Properties;
1531 import java.util.zip.Deflater;
1632 import java.util.zip.ZipEntry;
1733 import java.util.zip.ZipInputStream;
1834 import java.util.zip.ZipOutputStream;
1935
36+import org.apache.commons.lang3.StringUtils;
37+
38+import jp.sourceforge.mergedoc.pleiades.log.Logger;
39+
2040 /**
2141 * プロパティー・セット・クラスです。
2242 * このクラスは java.util.Properties と比較し、以下の利点があります。
@@ -150,7 +170,7 @@
150170 */
151171 public static File[] listPropertiesFiles(File dir) {
152172
153- File[] fs = dir.listFiles(Files.createFileFilter());
173+ File[] fs = Files.listFiles(dir);
154174 Arrays.sort(fs); // 昇順
155175 List<File> list = new ArrayList<>();
156176
--- trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/runtime/Applications.java (revision 1946)
+++ trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/runtime/Applications.java (revision 1947)
@@ -12,6 +12,7 @@
1212 import java.util.regex.Matcher;
1313
1414 import org.apache.commons.io.comparator.NameFileComparator;
15+
1516 import jp.sourceforge.mergedoc.pleiades.Pleiades;
1617 import jp.sourceforge.mergedoc.pleiades.log.Logger;
1718 import jp.sourceforge.mergedoc.pleiades.resource.Files;
@@ -86,7 +87,7 @@
8687
8788 // config ディレクトリが -configuration で変更されている場合の検索 (ファイル名だけで検索)
8889 for (File dir = eclipseDir; dir != null; dir = dir.getParentFile()) {
89- for (File d : dir.listFiles(Files.createDirectoryFilter())) {
90+ for (File d : Files.listFolders(dir)) {
9091 configIniFile = new File(d, CONFIG_INI);
9192 if (configIniFile.exists()) {
9293 return configIniFile;
--- trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/runtime/LauncherEclipseTransformer.java (revision 1946)
+++ trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/runtime/LauncherEclipseTransformer.java (revision 1947)
@@ -53,15 +53,15 @@
5353
5454 // 直下の plugins
5555 File plugins = new File(Applications.getOsgiHome(), "plugins");
56- File[] jars = plugins.listFiles(Files.createSuffixFilter(".jar"));
56+ File[] jars = Files.listBySuffix(plugins, ".jar");
5757
5858 // dropins の plugins
5959 File dropins = new File(Applications.getOsgiHome(), "dropins");
6060 if (dropins.exists()) {
61- for (File dir : dropins.listFiles(Files.createDirectoryFilter())) {
61+ for (File dir : Files.listFolders(dropins)) {
6262 File p = new File(dropins, dir.getName() + "/eclipse/plugins");
6363 if (p.exists()) {
64- File[] js = p.listFiles(Files.createSuffixFilter(".jar"));
64+ File[] js = Files.listBySuffix(p, ".jar");
6565 jars = ArrayUtils.addAll(jars, js);
6666 }
6767 }
--- trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/runtime/LauncherIdeaTransformer.java (revision 1946)
+++ trunk/Pleiades/src/main/java/jp/sourceforge/mergedoc/pleiades/runtime/LauncherIdeaTransformer.java (revision 1947)
@@ -52,16 +52,13 @@
5252 AsyncQueue.add("IDEA lib の jar を AOP クラスパスへ追加", () -> {
5353
5454 // lib/*.jar 追加 (idea.jar は phpstorm.jar など製品ごとに異なる)
55- for (File jar : lib.listFiles(Files.createSuffixFilter(".jar"))) {
55+ for (File jar : Files.listBySuffix(lib, ".jar")) {
5656 addClassPath(jar);
5757 }
5858
5959 // plugins/android/lib/*.jar 追加 (android.jar など分かる範囲では 3 つ)
60- File[] androidLibJars = new File(plugins, "android/lib").listFiles(Files.createSuffixFilter(".jar"));
61- if (androidLibJars != null) {
62- for (File jar : androidLibJars) {
63- addClassPath(jar);
64- }
60+ for (File jar : Files.listBySuffix(new File(plugins, "android/lib"), ".jar")) {
61+ addClassPath(jar);
6562 }
6663
6764 // 存在する場合のみ追加する jar (IDEA Ultimate では一部のみ存在する場合がある)
@@ -73,6 +70,7 @@
7370
7471 // 2017.10.16 廃止: High Sierra のバグで English 以外にするとメニューが disabled になる
7572 // ⇒ 将来、バグが解消した場合でもインストーラーで処理する
73+ // ⇒ TODO 2017/10/31 macOS 10.13.1 修正されたためインストーラーに実装して確認
7674 // ------------------------------------------------------------------------------------------
7775 // Mac の場合、Info.plist の English を Japanese に書き換え (コメント考慮なし、次回起動時に有効)
7876 /*
Show on old repository browser