first commit
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
# hangul-overview-latin
|
||||
|
||||
GNOME Shell extension. When the Activities Overview opens, it flips ibus-hangul's
|
||||
`InputMode` property to Latin so overview search accepts Latin text immediately.
|
||||
The input source stays `hangul` — only the mode changes, so nothing needs to be
|
||||
switched back afterwards.
|
||||
|
||||
Private extension. Not published to extensions.gnome.org.
|
||||
|
||||
## Layout
|
||||
|
||||
hangul-overview-latin@timothykim.net/ source (metadata.json, extension.js)
|
||||
*.shell-extension.zip packed build output
|
||||
plan.md design notes
|
||||
|
||||
## Installed as
|
||||
|
||||
A symlink from the extensions directory into this repo:
|
||||
|
||||
~/.local/share/gnome-shell/extensions/hangul-overview-latin@timothykim.net
|
||||
-> <this repo>/hangul-overview-latin@timothykim.net
|
||||
|
||||
Editing the source therefore edits the installed extension. The catch: moving,
|
||||
renaming, or deleting this repo silently breaks the extension. To make the
|
||||
install independent of the repo, replace the symlink with a real copy:
|
||||
|
||||
rm ~/.local/share/gnome-shell/extensions/hangul-overview-latin@timothykim.net
|
||||
gnome-extensions install --force hangul-overview-latin@timothykim.net.shell-extension.zip
|
||||
|
||||
## Install on another machine
|
||||
|
||||
gnome-extensions install hangul-overview-latin@timothykim.net.shell-extension.zip
|
||||
gnome-extensions enable hangul-overview-latin@timothykim.net
|
||||
|
||||
Then log out and back in. Wayland cannot restart GNOME Shell in place, so a new
|
||||
or changed extension only takes effect on the next login.
|
||||
|
||||
## Rebuild the zip after editing
|
||||
|
||||
gnome-extensions pack hangul-overview-latin@timothykim.net/ --force
|
||||
|
||||
## Maintenance
|
||||
|
||||
`metadata.json` declares `"shell-version": ["50"]`. On the next GNOME major
|
||||
upgrade the extension is flagged out of date and stops loading. Fix by adding
|
||||
the new version to that array, then logging out and back in:
|
||||
|
||||
"shell-version": ["50", "51"]
|
||||
|
||||
The APIs it uses (`Main.overview`, `getInputSourceManager()`,
|
||||
`getIBusManager().activateProperty()`) are internal Shell APIs and can change
|
||||
between releases, so re-test after a major upgrade rather than assuming the
|
||||
version bump alone is enough.
|
||||
|
||||
## Checking whether it is running
|
||||
|
||||
gnome-extensions info hangul-overview-latin@timothykim.net
|
||||
|
||||
This reports `State: INACTIVE` whenever the screen is locked, which is normal:
|
||||
the extension does not declare the `unlock-dialog` session mode, so GNOME
|
||||
suspends it on the lock screen and resumes it on unlock. Check it from an
|
||||
unlocked session, where it should read `ACTIVE`.
|
||||
Reference in New Issue
Block a user