From f39f82e2831cfbe5f3c0a3bf02f695cc2305add5 Mon Sep 17 00:00:00 2001 From: h-east Date: Fri, 29 Nov 2024 19:37:18 +0900 Subject: [PATCH 1/3] Update quickfix.{txt,jax} --- doc/quickfix.jax | 114 +++++++++++++++++++++++++++++++++++++++++++++-- en/quickfix.txt | 113 ++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 220 insertions(+), 7 deletions(-) diff --git a/doc/quickfix.jax b/doc/quickfix.jax index b8067253c..3d186d7be 100644 --- a/doc/quickfix.jax +++ b/doc/quickfix.jax @@ -1,4 +1,4 @@ -*quickfix.txt* For Vim バージョン 9.1. Last change: 2024 Nov 12 +*quickfix.txt* For Vim バージョン 9.1. Last change: 2024 Nov 28 VIMリファレンスマニュアル by Bram Moolenaar @@ -1282,11 +1282,117 @@ g:compiler_gcc_ignore_unmatched_lines JAVAC *compiler-javac* -よく使用されるコンパイラオプションは、g:javac_makeprg_params 変数を設定するこ -とで 'makeprg' に追加できる。例: > +よく使用されるコンパイラオプションは、b/g:javac_makeprg_params 変数を設定する +ことで 'makeprg' に追加できる。例: > let g:javac_makeprg_params = "-Xlint:all -encoding utf-8" -< + +MAVEN *compiler-maven* + +よく使用されるコンパイラオプションは、b/g:maven_makeprg_params 変数を設定する +ことで 'makeprg' に追加できる。例: > + + let g:maven_makeprg_params = "-DskipTests -U -X" + +SPOTBUGS *compiler-spotbugs* + +SpotBugs は、Java のバグを見つけるために使用できる静的解析ツールである。現在開 +いているバッファ内のすべてのクラスの Java バイトコードをスキャンする。(したがっ +て、`:compiler! spotbugs` はサポートされていない。) + +よく使用されるコンパイラオプションは、"b:" または "g:spotbugs_makeprg_params" +変数を設定することで 'makeprg' に追加できる。例: > + + let b:spotbugs_makeprg_params = "-longBugCodes -effort:max -low" + +グローバルのデフォルトは "-workHard -experimental" である。 + +デフォルトでは、クラスファイルはソースファイルが配置されているディレクトリで検 +索される。ただし、一般的な Java プロジェクトでは、ソースファイルとクラスファイ +ルに別々のディレクトリを使用する。両方を SpotBugs に認識させるには、それらのパ +ス (共通のルートディレクトリに対して異なる相対パス) を次のプロパティに割り当て +る (一般的な Maven プロジェクトの例を使用): > + + let g:spotbugs_properties = { + \ 'sourceDirPath': 'src/main/java', + \ 'classDirPath': 'target/classes', + \ 'testSourceDirPath': 'src/test/java', + \ 'testClassDirPath': 'target/test-classes', + \ } + +Note パスキーの値は、SpotBugs がファイルを検索する場所のみを記述することに注 +意。詳細については、特定のコンパイラプラグインのドキュメントを参照。 + +Ant、Maven、および Javac コンパイラプラグインには、デフォルトのプリコンパイラ +アクションとポストコンパイラアクションが用意されており、コンパイラプラグインの +名前を "compiler" キーに割り当てることで選択できる: > + + let g:spotbugs_properties = { + \ 'compiler': 'maven', + \ } + +この単一の設定は、基本的に以下のすべての設定と同等だが、"PreCompilerAction" お +よび "PreCompilerTestAction" の値は例外である。リストされている |Funcref| は +no-op 実装を取得するが、"compiler" キーの暗黙的な Funcref は、使用可能な場合は +要求されたデフォルトを取得する。 > + + let g:spotbugs_properties = { + \ 'PreCompilerAction': + \ function('spotbugs#DefaultPreCompilerAction'), + \ 'PreCompilerTestAction': + \ function('spotbugs#DefaultPreCompilerTestAction'), + \ 'PostCompilerAction': + \ function('spotbugs#DefaultPostCompilerAction'), + \ 'sourceDirPath': 'src/main/java', + \ 'classDirPath': 'target/classes', + \ 'testSourceDirPath': 'src/test/java', + \ 'testClassDirPath': 'target/test-classes', + \ } + +デフォルトのアクションでは、選択されたコンパイラは Java 構文ファイルがロードさ +れるとすぐにバッファのクラスファイル (おそらくプロジェクト全体) を再構築しよう +とする。次に、`spotbugs` はバッファのコンパイルユニットの品質を分析しようとす +る。 + +デフォルトのアクションが目的のワークフローに適していない場合は、任意の関数を自 +分で作成し、その |Funcref| をサポートされているキー "PreCompilerAction"、 +"PreCompilerTestAction"、および "PostCompilerAction" と一致させることを検討す +ること。 + +次の例では、Maven プロジェクトのデフォルトのプリコンパイラアクションを再実装 +し、"compiler" エントリを使用して他のデフォルトの Maven 設定を要求する: > + + function! MavenPreCompilerAction() abort + call spotbugs#DeleteClassFiles() + compiler maven + make compile + endfunction + + function! MavenPreCompilerTestAction() abort + call spotbugs#DeleteClassFiles() + compiler maven + make test-compile + endfunction + + let g:spotbugs_properties = { + \ 'compiler': 'maven', + \ 'PreCompilerAction': + \ function('MavenPreCompilerAction'), + \ 'PreCompilerTestAction': + \ function('MavenPreCompilerTestAction'), + \ } + +Note 入力されたすべてのカスタム設定は、"g:spotbugs_properties" 内の一致するデ +フォルト設定よりも優先されることに注意。 + +"g:spotbugs_properties" 変数は、Java ファイルタイププラグイン +(|ft-java-plugin|) によって参照され、説明されている自動化を調整する。したがっ +て、Java ソースファイルがロードされたバッファに対して |FileType| イベントが発 +生する前に定義する必要がある。たとえば、[0] によってロードされるプロジェクト +ローカルの |vimrc| で設定できる。 + +[0] https://github.com/MarcWeber/vim-addon-local-vimrc/ + GNU MAKE *compiler-make* デフォルトの make プログラムは "make" であるため、make のコンパイラプラグイ diff --git a/en/quickfix.txt b/en/quickfix.txt index 671630d66..5d97f793f 100644 --- a/en/quickfix.txt +++ b/en/quickfix.txt @@ -1,4 +1,4 @@ -*quickfix.txt* For Vim version 9.1. Last change: 2024 Nov 12 +*quickfix.txt* For Vim version 9.1. Last change: 2024 Nov 28 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1331,10 +1331,117 @@ g:compiler_gcc_ignore_unmatched_lines JAVAC *compiler-javac* Commonly used compiler options can be added to 'makeprg' by setting the -g:javac_makeprg_params variable. For example: > +b/g:javac_makeprg_params variable. For example: > let g:javac_makeprg_params = "-Xlint:all -encoding utf-8" -< + +MAVEN *compiler-maven* + +Commonly used compiler options can be added to 'makeprg' by setting the +b/g:maven_makeprg_params variable. For example: > + + let g:maven_makeprg_params = "-DskipTests -U -X" + +SPOTBUGS *compiler-spotbugs* + +SpotBugs is a static analysis tool that can be used to find bugs in Java. +It scans the Java bytecode of all classes in the currently open buffer. +(Therefore, `:compiler! spotbugs` is not supported.) + +Commonly used compiler options can be added to 'makeprg' by setting the +"b:" or "g:spotbugs_makeprg_params" variable. For example: > + + let b:spotbugs_makeprg_params = "-longBugCodes -effort:max -low" + +The global default is "-workHard -experimental". + +By default, the class files are searched in the directory where the source +files are placed. However, typical Java projects use distinct directories +for source files and class files. To make both known to SpotBugs, assign +their paths (distinct and relative to their common root directory) to the +following properties (using the example of a common Maven project): > + + let g:spotbugs_properties = { + \ 'sourceDirPath': 'src/main/java', + \ 'classDirPath': 'target/classes', + \ 'testSourceDirPath': 'src/test/java', + \ 'testClassDirPath': 'target/test-classes', + \ } + +Note that values for the path keys describe only for SpotBugs where to look +for files; refer to the documentation for particular compiler plugins for more +information. + +The default pre- and post-compiler actions are provided for Ant, Maven, and +Javac compiler plugins and can be selected by assigning the name of a compiler +plugin to the "compiler" key: > + + let g:spotbugs_properties = { + \ 'compiler': 'maven', + \ } + +This single setting is essentially equivalent to all the settings below, with +the exception made for the "PreCompilerAction" and "PreCompilerTestAction" +values: their listed |Funcref|s will obtain no-op implementations whereas the +implicit Funcrefs of the "compiler" key will obtain the requested defaults if +available. > + + let g:spotbugs_properties = { + \ 'PreCompilerAction': + \ function('spotbugs#DefaultPreCompilerAction'), + \ 'PreCompilerTestAction': + \ function('spotbugs#DefaultPreCompilerTestAction'), + \ 'PostCompilerAction': + \ function('spotbugs#DefaultPostCompilerAction'), + \ 'sourceDirPath': 'src/main/java', + \ 'classDirPath': 'target/classes', + \ 'testSourceDirPath': 'src/test/java', + \ 'testClassDirPath': 'target/test-classes', + \ } + +With default actions, the compiler of choice will attempt to rebuild the class +files for the buffer (and possibly for the whole project) as soon as a Java +syntax file is loaded; then, `spotbugs` will attempt to analyze the quality of +the compilation unit of the buffer. + +When default actions are not suited to a desired workflow, consider writing +arbitrary functions yourself and matching their |Funcref|s to the supported +keys: "PreCompilerAction", "PreCompilerTestAction", and "PostCompilerAction". + +The next example re-implements the default pre-compiler actions for a Maven +project and requests other default Maven settings with the "compiler" entry: > + + function! MavenPreCompilerAction() abort + call spotbugs#DeleteClassFiles() + compiler maven + make compile + endfunction + + function! MavenPreCompilerTestAction() abort + call spotbugs#DeleteClassFiles() + compiler maven + make test-compile + endfunction + + let g:spotbugs_properties = { + \ 'compiler': 'maven', + \ 'PreCompilerAction': + \ function('MavenPreCompilerAction'), + \ 'PreCompilerTestAction': + \ function('MavenPreCompilerTestAction'), + \ } + +Note that all entered custom settings will take precedence over the matching +default settings in "g:spotbugs_properties". + +The "g:spotbugs_properties" variable is consulted by the Java filetype plugin +(|ft-java-plugin|) to arrange for the described automation, and, therefore, it +must be defined before |FileType| events can take place for the buffers loaded +with Java source files. It could, for example, be set in a project-local +|vimrc| loaded by [0]. + +[0] https://github.com/MarcWeber/vim-addon-local-vimrc/ + GNU MAKE *compiler-make* Since the default make program is "make", the compiler plugin for make, From 6ce0aeb0d161f676f2ee20119de60409c15e4574 Mon Sep 17 00:00:00 2001 From: h-east Date: Fri, 29 Nov 2024 19:44:32 +0900 Subject: [PATCH 2/3] Fix by nvcheck --- doc/quickfix.jax | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/quickfix.jax b/doc/quickfix.jax index 3d186d7be..c2d53445e 100644 --- a/doc/quickfix.jax +++ b/doc/quickfix.jax @@ -1388,8 +1388,8 @@ Note 入力されたすべてのカスタム設定は、"g:spotbugs_properties" "g:spotbugs_properties" 変数は、Java ファイルタイププラグイン (|ft-java-plugin|) によって参照され、説明されている自動化を調整する。したがっ て、Java ソースファイルがロードされたバッファに対して |FileType| イベントが発 -生する前に定義する必要がある。たとえば、[0] によってロードされるプロジェクト -ローカルの |vimrc| で設定できる。 +生する前に定義する必要がある。例えば、[0] によってロードされるプロジェクトロー +カルの |vimrc| で設定できる。 [0] https://github.com/MarcWeber/vim-addon-local-vimrc/ From 7cd9bd5dc2784121771478fa7bc251bddc7e465c Mon Sep 17 00:00:00 2001 From: h_east Date: Sat, 30 Nov 2024 18:40:55 +0900 Subject: [PATCH 3/3] Update doc/quickfix.jax Co-authored-by: Tsuyoshi CHO --- doc/quickfix.jax | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/quickfix.jax b/doc/quickfix.jax index c2d53445e..00d779e40 100644 --- a/doc/quickfix.jax +++ b/doc/quickfix.jax @@ -1320,7 +1320,7 @@ SpotBugs は、Java のバグを見つけるために使用できる静的解析 \ 'testClassDirPath': 'target/test-classes', \ } -Note パスキーの値は、SpotBugs がファイルを検索する場所のみを記述することに注 +Note パスのキー値は、SpotBugs がファイルを検索する場所のみを記述することに注 意。詳細については、特定のコンパイラプラグインのドキュメントを参照。 Ant、Maven、および Javac コンパイラプラグインには、デフォルトのプリコンパイラ