
a improvement for modmenu, supports modmenu, make you can just edit the configure file like text editor
A professional in-game configuration file editor for Minecraft, providing advanced editing capabilities with syntax highlighting, real-time validation, and extensible plugin system.
How to set keybindingThank you for downloading my mod!
Next version will coming soon. Your support means everything!
If you have any ideas, please post on github discussions



Config Editor provides a comprehensive API for developers to extend functionality through plugins:
build.gradle
dependencies {
implementation("io.github.zhengzhengyiyi:config_editor:project.config_editor_version")
}
gradle.properties
config_editor_version=1.1.4+1.21.5
public interface ApiEntrypoint {
// Plugin initialization
void init();
// Editor lifecycle events
void onEditerOpen(EditorScreen editor);
void onEditerClose(EditorScreen editor);
// Input handling with precise control
ActionResult onMouseDown(int x, int y);
void onMouseScroll();
ActionResult onType(int keyCode, int scanCode, int modifiers);
ActionResult onCharTyped(char character, int modifiers);
// Custom rendering capabilities
void renderButton(DrawContext context, int mouseX, int mouseY, float delta);
}
The mod includes several example plugins demonstrating API capabilities:
// Auto bracket completion
public class AutoBracketCompletionEntrypoint implements ApiEntrypoint
// Date-time display in editor
public class DateTimeDisplayEntrypoint implements ApiEntrypoint
// Text statistics and analytics
public class TextStatsEntrypoint implements ApiEntrypoint
// Undo/redo functionality
public class UndoRedoEntrypoint implements ApiEntrypoint
// AI integration features
public class AiClient implements ApiEntrypoint
// NBT editing capabilities
public class NbtEditorScreen implements ApiEntrypoint
public class AdvancedPlugin implements ApiEntrypoint {
private static final Logger LOGGER = ApiEntrypoint.LOGGER;
@Override
public void init() {
LOGGER.info("Advanced plugin initialized with custom features");
}
@Override
public ActionResult onType(int keyCode, int scanCode, int modifiers) {
// Custom keyboard shortcuts
if (keyCode == GLFW.GLFW_KEY_F1 && hasControlDown()) {
showCustomHelp();
return ActionResult.FAIL; // Prevent default handling
}
return ActionResult.PASS; // Allow normal processing
}
@Override
public void renderButton(DrawContext context, int mouseX, int mouseY, float delta) {
// Add custom UI elements to editor
context.drawText(context.getTextRenderer(), "Custom Plugin", 10, 10, 0xFFFFFF, false);
}
}
SUCCESS: Event handled successfully, continue processingPASS: Allow other plugins to handle the eventFAIL: Event handled completely, stop propagation{
"entrypoints": {
"config_editor": [
"com.yourmod.YourCustomPlugin",
"com.yourmod.AnotherPlugin"
]
}
}
The API now fully supports NeoForge alongside Fabric, providing cross-platform compatibility for mod developers.
.json).properties).toml).yml, .yaml).cfg, .conf, .ini).txt).nbt, .dat)Happy configuring!
If you find this mod useful, please consider giving it a star on Modrinth!