This repository is to distribute certified omegat plugins.
The project orders plugin authors to register their GnuPG/OpenPGP public keys in GitHub accout. Please check GitHub documentations.
Following attributes are mandatory to publish your plugin in OmegaT repository.
- "Name"
- "Version"
- "Author"
- "Category"
To help finding the plugins more easily, here is a list of categories
Category Value | Category description |
---|---|
appearance |
Appearance / Theming |
dictionary |
Dictionary |
file |
File management |
filter |
Filter |
importexport |
Project exchange |
input |
Text input |
machinetranslator |
Machine translation |
team |
Team projects |
tokenizer |
Tokenizer |
visualization |
Visualization |
Plugin developers who want to add your plugin to repository, please raise a pull-request
to add your plugin jar file under plugins/
folder.
You should add just TWO files.
- Plugin jar file (file end with .jar)
- Plugin jar sign file (file end with .jar.asc)
A signature file can be created with Gradle signing plugin, or made manually with command line.
When you have a plugin file named omegat-some-plugin-1.2.3.jar
, you can run
gpg --armor --detach-sign omegat-some-plugin-1.2.3.jar
When you have build.gradle.kts
in your plugin project, it may become like
plugins {
java
signing
}
val signKey = listOf("signingKey", "signing.keyId", "signing.gnupg.keyName").find {project.hasProperty(it)}
tasks.withType<Sign> {
onlyIf { signKey != null }
}
signing {
when (signKey) {
"signingKey" -> {
val signingKey: String? by project
val signingPassword: String? by project
useInMemoryPgpKeys(signingKey, signingPassword)
}
"signing.keyId" -> {/* do nothing */
}
"signing.gnupg.keyName" -> {
useGpgCmd()
}
}
sign(tasks.jar.get())
}
OmegaT set up an automation workflows to check manifest and jar signature. An actor who creates a Pull-Request should be as same as a signer of a signature.
After all the checks are passed, your PR will be merged into a main branch.
Plugin database is published OmegaT web page. A file is in a JSON format.
OmegaT will download the database file and show it on Preferences->plugin
dialog.