Description
RocqIDE still defaults to several legacy Coq command names for external commands, even though the Rocq CLI provides corresponding rocq subcommands.
In ide/rocqide/preferences.ml, the defaults are currently:
let cmd_rocqc =
new preference ~name:["cmd_coqc"] ~init:"coqc" ~repr:Repr.(string)
let cmd_rocqmakefile =
new preference ~name:["cmd_coqmakefile"]
~init:"coq_makefile -o makefile *.v" ~repr:Repr.(string)
let cmd_rocqdoc =
new preference ~name:["cmd_coqdoc"]
~init:"coqdoc -q -g" ~repr:Repr.(string)
Compile buffer then directly uses cmd_rocqc, so with the default preferences RocqIDE runs coqc rather than rocq compile.
The preferences UI also still exposes these commands using names such as coqc:, coqmakefile:, and coqdoc:.
Documentation inconsistency
The current RocqIDE manual says that Compile buffer compiles the current buffer with:
So the documented behavior and the current default configuration appear to disagree.
Suggested change
Would it make sense for RocqIDE to use the Rocq CLI commands as its defaults?
For example:
coqc -> rocq compile
coq_makefile ... -> rocq makefile ...
coqdoc ... -> rocq doc ...
The old commands can of course remain available as compatibility binaries through coq-core; this issue is only about what RocqIDE itself uses by default.
The persisted preference names (cmd_coqc, cmd_coqmakefile, etc.) may need to remain supported for compatibility with existing RocqIDE configuration files, even if the displayed labels or defaults are updated.
Context
This looks like a remaining part of the staged Coq → Rocq migration:
Updating RocqIDE's external-command defaults seems like another small step in the same migration.
Description
RocqIDE still defaults to several legacy Coq command names for external commands, even though the Rocq CLI provides corresponding
rocqsubcommands.In
ide/rocqide/preferences.ml, the defaults are currently:Compile bufferthen directly usescmd_rocqc, so with the default preferences RocqIDE runscoqcrather thanrocq compile.The preferences UI also still exposes these commands using names such as
coqc:,coqmakefile:, andcoqdoc:.Documentation inconsistency
The current RocqIDE manual says that Compile buffer compiles the current buffer with:
So the documented behavior and the current default configuration appear to disagree.
Suggested change
Would it make sense for RocqIDE to use the Rocq CLI commands as its defaults?
For example:
The old commands can of course remain available as compatibility binaries through
coq-core; this issue is only about what RocqIDE itself uses by default.The persisted preference names (
cmd_coqc,cmd_coqmakefile, etc.) may need to remain supported for compatibility with existing RocqIDE configuration files, even if the displayed labels or defaults are updated.Context
This looks like a remaining part of the staged Coq → Rocq migration:
Rocq CLI #19927 introduced the Rocq CLI, including mappings such as:
coqc→rocq compilecoqdoc→rocq doccoq_makefile→rocq makefileand explicitly kept the old commands as compatibility binaries.
Rename coqide -> rocqide #20036 renamed
coqidetorocqide.Coqide server renamed to RocqIDE server (coqidetop -> rocqidetop) #22327 renamed the IDE server from
coqidetoptorocqidetopand cleaned up additional user-visible Coq naming.Updating RocqIDE's external-command defaults seems like another small step in the same migration.