From 14c1496cde7d5a00b692a7ea31d896ba2e2c1e56 Mon Sep 17 00:00:00 2001 From: DualFroz Date: Wed, 5 Aug 2026 20:07:13 +0200 Subject: [PATCH] docs: add README with install, configuration and migration Written for someone who has never seen the pre-split extension: what the plugin adds to Nemo, what it costs, every config key, and the exact steps to move over from the single file version or go back. --- README.md | 108 ++++++++++++++++++++++++++++++++++++++++++++ config.example.json | 8 ++++ 2 files changed, 116 insertions(+) create mode 100644 README.md create mode 100644 config.example.json diff --git a/README.md b/README.md new file mode 100644 index 0000000..09fdeb9 --- /dev/null +++ b/README.md @@ -0,0 +1,108 @@ +# nemo-folder-tools + +"Open Terminal Here" and "Open in Editor" in the right click menu of +[Nemo](https://github.com/linuxmint/nemo), the Cinnamon file manager. + +Two entries, on any local folder, on the folder icon and on the empty +background of an open folder: + +| Entry | What it does | +| --- | --- | +| Open Terminal Here | Opens your terminal emulator with the folder as its working directory | +| Open in Editor | Opens the folder in the editor you configured, `code` by default | + +Nothing here is git specific. It is the part of a larger repository plugin that +turned out to be useful everywhere, so it is packaged on its own. + +An entry is only added when it can actually work: no terminal on the system +means no Open Terminal Here, an editor command that is not installed means no +Open in Editor, rather than a menu entry that silently does nothing. + +## Requirements + +- [nemo-repo-core](https://github.com/dualfroz/nemo-repo-core) 1.x, for the + shared config file and the launcher helpers +- Nemo with `nemo-python` +- A terminal emulator. `gnome-terminal`, `tilix`, `konsole`, `xfce4-terminal`, + `mate-terminal`, `kitty`, `alacritty` and `xterm` are detected automatically; + anything else can be named in the config. + +## Install + +```bash +git clone https://github.com/dualfroz/nemo-repo-core +cd nemo-repo-core && ./install.sh && cd .. + +git clone https://github.com/dualfroz/nemo-folder-tools +cd nemo-folder-tools && ./install.sh + +nemo -q +``` + +`install.sh` links the plugin into `~/.local/share/nemo-python/extensions` and +checks that it imports. Pass `--copy` to copy instead of link. `./uninstall.sh` +removes it. Nothing is written outside your home directory and no root is +required. + +## Configuration + +Shared file, read live, no restart needed: + +``` +~/.config/nemo-repo-core.json +``` + +```json +{ + "editor_command": "code", + "terminal_command": null, + "actions": { + "open_terminal": true, + "open_editor": true + } +} +``` + +| Key | Default | Meaning | +| --- | --- | --- | +| `actions.open_terminal` | `true` | Show the Open Terminal Here entry | +| `actions.open_editor` | `true` | Show the Open in Editor entry | +| `editor_command` | `"code"` | Command to open the folder with. May include arguments, for example `"code -n"` | +| `terminal_command` | `null` | Terminal to use; `null` auto detects | + +`editor_command` and `terminal_command` belong to the core and are shared with +the other plugins in the family, so setting your editor once covers all of +them. + +Some editors people set here: `code`, `codium`, `subl`, `zed`, `nvim` inside a +terminal wrapper, or `xdg-open` to hand the folder to whatever the desktop +considers the default. + +## Migrating from the single file version + +These two entries used to live in `nemo_repo_emblems.py` together with git +emblems, columns, a properties tab and git menu actions. They work on every +folder and have nothing to do with git, so they are their own plugin now. The +git actions moved to +[nemo-repo-git-menu](https://github.com/dualfroz/nemo-repo-git-menu). + +One change worth knowing: the Open in Editor entry used to appear only when +Visual Studio Code specifically was installed, no matter what `editor_command` +said. It now checks the command you actually configured. + +Your config carries over automatically, and the old file is not modified. +Remove the old extension so the entries are not listed twice: + +```bash +rm ~/.local/share/nemo-python/extensions/nemo_repo_emblems.py +nemo -q +``` + +## Tested on + +Linux Mint 22.2 (Zara), Cinnamon 6.4.14, Nemo 6.4.5, python-nemo 6.4.0, +Python 3.12.3, with `gnome-terminal` and `code`. + +## License + +MIT. See `LICENSE`. diff --git a/config.example.json b/config.example.json new file mode 100644 index 0000000..4159cd2 --- /dev/null +++ b/config.example.json @@ -0,0 +1,8 @@ +{ + "editor_command": "code", + "terminal_command": null, + "actions": { + "open_terminal": true, + "open_editor": true + } +}