Compare commits
134
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
09e5f1ad6b | ||
|
|
7541a45e77 | ||
|
|
1a91d00f2c | ||
|
|
19063a3e02 | ||
|
|
5e6dc9e533 | ||
|
|
ca64d4b9b6 | ||
|
|
b28edcd01f | ||
|
|
9c574f9eb7 | ||
|
|
d1b2cd2083 | ||
|
|
8c4dee0ca8 | ||
|
|
71ee18048e | ||
|
|
668983e16d | ||
|
|
17e23a6cf4 | ||
|
|
d18fe51553 | ||
|
|
9f9515ffe0 | ||
|
|
94353aa0bd | ||
|
|
3a2295ff53 | ||
|
|
de1b8a7673 | ||
|
|
39a26adcc2 | ||
|
|
eff0bc44ff | ||
|
|
c038c57278 | ||
|
|
420b7aa1a6 | ||
|
|
f22e405b50 | ||
|
|
3cfa592db9 | ||
|
|
81096e2d95 | ||
|
|
c415c4f176 | ||
|
|
86742da63d | ||
|
|
3c521cf5fa | ||
|
|
c087998710 | ||
|
|
b9800bfbab | ||
|
|
7b8270fdd6 | ||
|
|
6d3f888784 | ||
|
|
c2cd79b547 | ||
|
|
0a18290137 | ||
|
|
efc53435a2 | ||
|
|
67674d297e | ||
|
|
2d4b126f14 | ||
|
|
5671324eb2 | ||
|
|
83391e0453 | ||
|
|
172b099a04 | ||
|
|
cae72b5179 | ||
|
|
b3b8e0d66d | ||
|
|
787d2b121a | ||
|
|
1b323c2fa5 | ||
|
|
1ca571458c | ||
|
|
768801dbe4 | ||
|
|
375ecfcd95 | ||
|
|
ce95b34d19 | ||
|
|
9d430a3079 | ||
|
|
bac68d2bfb | ||
|
|
634a9ebe07 | ||
|
|
150f3cdb09 | ||
|
|
6377bfb8fd | ||
|
|
2bc12e6022 | ||
|
|
fe7c85e471 | ||
|
|
8a04e4f9d1 | ||
|
|
5347954a88 | ||
|
|
00a81edadd | ||
|
|
4bd3638012 | ||
|
|
7f540a58e5 | ||
|
|
7ac5355a77 | ||
|
|
a9eb90f457 | ||
|
|
b5c9156e64 | ||
|
|
3213a0989a | ||
|
|
fbf729b25c | ||
|
|
e37df9d838 | ||
|
|
673aac6aba | ||
|
|
c8eb344a0b | ||
|
|
65966200fe | ||
|
|
2130d6a1a5 | ||
|
|
9a99c6064e | ||
|
|
4f93522f7d | ||
|
|
a325ec807e | ||
|
|
c2b19f7545 | ||
|
|
925fc0276f | ||
|
|
65a8197419 | ||
|
|
ff67387c42 | ||
|
|
c42794c5e2 | ||
|
|
0964af7b73 | ||
|
|
15fb008954 | ||
|
|
f4c3ffed43 | ||
|
|
5f965daa6a | ||
|
|
5940d6b4bd | ||
|
|
190e3200e0 | ||
|
|
49ec4d8f6a | ||
|
|
173c00fca7 | ||
|
|
3a903934c0 | ||
|
|
dc6da5af34 | ||
|
|
922395d2b4 | ||
|
|
a5450fdb6d | ||
|
|
1ce5c732b7 | ||
|
|
f9cc15fb96 | ||
|
|
2728fb08fb | ||
|
|
f27a1dca11 | ||
|
|
03914e23af | ||
|
|
6a1bec849d | ||
|
|
fb27c5b309 | ||
|
|
d37d4a87de | ||
|
|
530a5590a6 | ||
|
|
e92c2ee5f9 | ||
|
|
5248883e4b | ||
|
|
67033f2a31 | ||
|
|
2dc9676822 | ||
|
|
89666e7485 | ||
|
|
7123bb4885 | ||
|
|
7461c88b98 | ||
|
|
11202d06d9 | ||
|
|
ac57cfa319 | ||
|
|
4c529afae7 | ||
|
|
372a0f60e5 | ||
|
|
19b8ec2542 | ||
|
|
210bdbdddc | ||
|
|
47137191dd | ||
|
|
ef2d49fbaa | ||
|
|
065b7747cf | ||
|
|
cfc2b82c06 | ||
|
|
e985792472 | ||
|
|
d9ee1ddce4 | ||
|
|
4fcfb9c45e | ||
|
|
50ea51263a | ||
|
|
53bec8ddbc | ||
|
|
b8ce2aef5c | ||
|
|
7c55264138 | ||
|
|
6150274903 | ||
|
|
c0ba11768a | ||
|
|
fba92951f9 | ||
|
|
11863984ca | ||
|
|
e4f1fe8e05 | ||
|
|
18cfd8b174 | ||
|
|
ca7d4e3460 | ||
|
|
3bb192238c | ||
|
|
cba2ca3b1c | ||
|
|
81eefc4f84 | ||
|
|
5f73b76800 |
+15
-3
@@ -1,6 +1,18 @@
|
|||||||
# Ignore Wireguard config of course!
|
|
||||||
/config/wg/**
|
|
||||||
# Ignore bash environment variables.
|
# Ignore bash environment variables.
|
||||||
/config/bash/env
|
/config/bash/env
|
||||||
# Ignore backups of old config files
|
# Ignore backups of old config files
|
||||||
/config/old/**
|
/config/old
|
||||||
|
# Ignore Wireguard config of course!
|
||||||
|
/config/wg/**
|
||||||
|
# Ignore Neovim lazy-lock file
|
||||||
|
/config/dot/nvim/lazy-lock.json
|
||||||
|
# Local visual-companion sessions and generated design mocks.
|
||||||
|
/.superpowers/
|
||||||
|
# Local linked worktrees used for reviewed feature development.
|
||||||
|
/.worktrees/
|
||||||
|
# Python helper bytecode is local runtime state.
|
||||||
|
__pycache__/
|
||||||
|
*.py[cod]
|
||||||
|
|
||||||
|
# Generated from the colour scheme; machine state, not configuration.
|
||||||
|
/config/dot/kitty/current-theme.conf
|
||||||
|
|||||||
@@ -1,2 +1,62 @@
|
|||||||
# Panama
|
# Panama
|
||||||
## Formerly Sunhat, this is a personal config for Fedora, with the intention of helping a user set up their Fedora system with one command.
|
|
||||||
|
Formerly Sunhat. A personal config for Fedora, with the intention of helping a
|
||||||
|
user set up their Fedora system with one command.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
git clone https://git.gbrown.org/gib/Panama.git ~/.local/share/Panama
|
||||||
|
~/.local/share/Panama/install
|
||||||
|
```
|
||||||
|
|
||||||
|
`install` runs everything in `setup/scripts/` in order:
|
||||||
|
|
||||||
|
| Script | Does |
|
||||||
|
|---|---|
|
||||||
|
| `install-packages` | Repos (RPM Fusion, Terra, Hyprland COPR), then the four package lists in `setup/packages/` |
|
||||||
|
| `link-dotfiles` | Symlinks `config/dot/<name>` → `~/.config/<name>` |
|
||||||
|
| `change-settings` | Copies `config/copy/` over `/`, applies gsettings, enables user services |
|
||||||
|
|
||||||
|
Existing configs are moved to `config/old/` rather than overwritten.
|
||||||
|
|
||||||
|
## Desktops
|
||||||
|
|
||||||
|
Panama configures **two** desktops that coexist. Both sessions stay available in
|
||||||
|
GDM, so you can switch back and forth while you settle in.
|
||||||
|
|
||||||
|
### GNOME
|
||||||
|
The original setup: Forge for tiling, Dash-to-Dock, Openbar, Vitals,
|
||||||
|
AppIndicator support. Configured through `config/dot/forge/` and gsettings.
|
||||||
|
|
||||||
|
### Hyprland
|
||||||
|
A from-scratch replacement built to reproduce the GNOME setup closely enough
|
||||||
|
that muscle memory transfers — same keybinds, same panel contents, same dock,
|
||||||
|
same Tokyo Night Moon palette.
|
||||||
|
|
||||||
|
| Piece | What it is |
|
||||||
|
|---|---|
|
||||||
|
| `config/dot/hypr/` | Compositor config. **Lua, not hyprlang** — see its README |
|
||||||
|
| `config/dot/quickshell/` | The shell: bar, dock, Continuum overview, Panama Settings, Screen Intelligence, focus sessions, quick settings, notifications, screenshot UI |
|
||||||
|
| `config/dot/vicinae/` | Raycast-style launcher, themed |
|
||||||
|
| `config/dot/uwsm/` | Session environment (see the uwsm caveat in the hypr README) |
|
||||||
|
| `config/dot/wofi/` | Fallback launcher, in case the shell fails to start |
|
||||||
|
| `config/dot/xdg-desktop-portal/` | Portal backend routing |
|
||||||
|
|
||||||
|
**Start here: [`config/dot/hypr/README.md`](config/dot/hypr/README.md)** — it
|
||||||
|
covers the Lua migration, the uwsm environment gotcha, the HDR decision, the
|
||||||
|
full keymap, and troubleshooting.
|
||||||
|
|
||||||
|
Log in as **"Hyprland (uwsm-managed)"**, not plain "Hyprland".
|
||||||
|
|
||||||
|
## Layout
|
||||||
|
|
||||||
|
```
|
||||||
|
bin/ Small user-facing commands on PATH
|
||||||
|
config/
|
||||||
|
bash/ .bashrc, aliases, env (env is gitignored)
|
||||||
|
copy/ Files copied verbatim over / (needs sudo)
|
||||||
|
dot/ Symlinked into ~/.config
|
||||||
|
old/ Backups of whatever was replaced (gitignored)
|
||||||
|
setup/
|
||||||
|
packages/ One package per line
|
||||||
|
scripts/ Run in order by ./install
|
||||||
|
```
|
||||||
|
|||||||
Executable
+99
@@ -0,0 +1,99 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import argparse
|
||||||
|
from pathlib import Path
|
||||||
|
import pyperclip
|
||||||
|
import questionary
|
||||||
|
|
||||||
|
# List of directories to exclude
|
||||||
|
EXCLUDED_DIRS = {'node_modules', '.next', '.venv', '.git', '__pycache__', '.idea', '.vscode', 'ui'}
|
||||||
|
|
||||||
|
def collect_files(project_path):
|
||||||
|
"""
|
||||||
|
Collects files from the project directory, excluding specified directories and filtering by extensions.
|
||||||
|
Returns a list of file paths relative to the project directory.
|
||||||
|
"""
|
||||||
|
collected_files = []
|
||||||
|
|
||||||
|
for root, dirs, files in os.walk(project_path):
|
||||||
|
# Exclude specified directories
|
||||||
|
dirs[:] = [d for d in dirs if d not in EXCLUDED_DIRS]
|
||||||
|
|
||||||
|
for file in files:
|
||||||
|
file_path = Path(root) / file
|
||||||
|
relative_path = file_path.relative_to(project_path)
|
||||||
|
collected_files.append(relative_path)
|
||||||
|
|
||||||
|
return collected_files
|
||||||
|
|
||||||
|
def main():
|
||||||
|
# Parse command-line arguments
|
||||||
|
parser = argparse.ArgumentParser(description='Generate Markdown from selected files.')
|
||||||
|
parser.add_argument('path', nargs='?', default='.', help='Path to the project directory')
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
project_path = Path(args.path).resolve()
|
||||||
|
if not project_path.is_dir():
|
||||||
|
print(f"Error: '{project_path}' is not a directory.")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
# Collect files from the project directory
|
||||||
|
file_list = collect_files(project_path)
|
||||||
|
|
||||||
|
if not file_list:
|
||||||
|
print("No files found in the project directory with the specified extensions.")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
# Sort file_list for better organization
|
||||||
|
file_list.sort()
|
||||||
|
|
||||||
|
# Interactive file selection using questionary
|
||||||
|
print("\nSelect the files you want to include:")
|
||||||
|
selected_files = questionary.checkbox(
|
||||||
|
"Press space to select files, and Enter when you're done:",
|
||||||
|
choices=[str(f) for f in file_list]
|
||||||
|
).ask()
|
||||||
|
|
||||||
|
if not selected_files:
|
||||||
|
print("No files selected.")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
# Generate markdown
|
||||||
|
markdown_lines = []
|
||||||
|
markdown_lines.append('')
|
||||||
|
|
||||||
|
for selected_file in selected_files:
|
||||||
|
file_path = project_path / selected_file
|
||||||
|
try:
|
||||||
|
with open(file_path, 'r', encoding='utf-8') as f:
|
||||||
|
content = f.read()
|
||||||
|
# Determine the language for code block from file extension
|
||||||
|
language = file_path.suffix.lstrip('.')
|
||||||
|
markdown_lines.append(f'{selected_file}')
|
||||||
|
markdown_lines.append(f'```{language}')
|
||||||
|
markdown_lines.append(content)
|
||||||
|
markdown_lines.append('```')
|
||||||
|
markdown_lines.append('')
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error reading file {selected_file}: {e}")
|
||||||
|
|
||||||
|
markdown_text = '\n'.join(markdown_lines)
|
||||||
|
|
||||||
|
# Copy markdown content to clipboard
|
||||||
|
pyperclip.copy(markdown_text)
|
||||||
|
print("Markdown content has been copied to the clipboard.")
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
# Check if required libraries are installed
|
||||||
|
try:
|
||||||
|
import questionary
|
||||||
|
import pyperclip
|
||||||
|
except ImportError as e:
|
||||||
|
missing_module = e.name
|
||||||
|
print(f"Error: Missing required module '{missing_module}'.")
|
||||||
|
print(f"Please install it by running: pip install {missing_module}")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
main()
|
||||||
Executable
+227
@@ -0,0 +1,227 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# panama – Helper for managing the Panama dotfiles/repo
|
||||||
|
# Version 1.0
|
||||||
|
# Author: Gabriel Brown
|
||||||
|
#
|
||||||
|
# Commands:
|
||||||
|
# update Commit & sync local changes (or just pull if clean)
|
||||||
|
# edit Open the Panama repo in Neovim
|
||||||
|
# help Show this help
|
||||||
|
#
|
||||||
|
# Designed to grow: add new subcommands as cmd_<name> functions and
|
||||||
|
# register them in the dispatcher / usage block below.
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
PROGRAM=$(basename "$0")
|
||||||
|
VERSION="1.0"
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
# Locate the Panama repo (this script lives in <repo>/bin/panama)
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
SCRIPT_PATH=$(readlink -f "${BASH_SOURCE[0]}")
|
||||||
|
PANAMA_DIR=$(cd "$(dirname "$SCRIPT_PATH")/.." && pwd)
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
# Pretty output
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
if [[ -t 1 ]] && command -v tput >/dev/null 2>&1 && [[ $(tput colors 2>/dev/null || echo 0) -ge 8 ]]; then
|
||||||
|
BOLD=$(tput bold); RESET=$(tput sgr0)
|
||||||
|
RED=$(tput setaf 1); GREEN=$(tput setaf 2); YELLOW=$(tput setaf 3)
|
||||||
|
BLUE=$(tput setaf 4); MAGENTA=$(tput setaf 5); CYAN=$(tput setaf 6)
|
||||||
|
else
|
||||||
|
BOLD=""; RESET=""; RED=""; GREEN=""; YELLOW=""; BLUE=""; MAGENTA=""; CYAN=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
info() { printf '%s==>%s %s\n' "${BLUE}${BOLD}" "$RESET" "$*"; }
|
||||||
|
ok() { printf '%s✓%s %s\n' "${GREEN}${BOLD}" "$RESET" "$*"; }
|
||||||
|
warn() { printf '%s!%s %s\n' "${YELLOW}${BOLD}" "$RESET" "$*"; }
|
||||||
|
err() { printf '%s✗%s %s\n' "${RED}${BOLD}" "$RESET" "$*" >&2; }
|
||||||
|
header(){ printf '\n%s%s%s\n' "${MAGENTA}${BOLD}" "$*" "$RESET"; }
|
||||||
|
|
||||||
|
# Ask a yes/no question. Returns 0 for yes, 1 for no. Default = no.
|
||||||
|
confirm() {
|
||||||
|
local prompt="$1" reply
|
||||||
|
printf '%s?%s %s %s[y/N]%s ' "${CYAN}${BOLD}" "$RESET" "$prompt" "$BOLD" "$RESET"
|
||||||
|
read -r reply || true
|
||||||
|
[[ "$reply" =~ ^[Yy]([Ee][Ss])?$ ]]
|
||||||
|
}
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
# Usage
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
usage() {
|
||||||
|
cat <<EOF
|
||||||
|
${BOLD}$PROGRAM${RESET} – manage the Panama repo (${PANAMA_DIR})
|
||||||
|
|
||||||
|
${BOLD}Usage:${RESET}
|
||||||
|
$PROGRAM <command> [options]
|
||||||
|
|
||||||
|
${BOLD}Commands:${RESET}
|
||||||
|
${GREEN}update${RESET} Review, commit & sync local changes. If the working tree is
|
||||||
|
clean it simply runs 'git pull'.
|
||||||
|
${GREEN}edit${RESET} Open the Panama repo in Neovim.
|
||||||
|
${GREEN}help${RESET} Show this help (also -h, --help).
|
||||||
|
|
||||||
|
${BOLD}Options:${RESET}
|
||||||
|
-h, --help Show this help and exit
|
||||||
|
--version Show version and exit
|
||||||
|
|
||||||
|
${BOLD}Examples:${RESET}
|
||||||
|
$PROGRAM update
|
||||||
|
$PROGRAM edit
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
# Guard: make sure we're in a git repo
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
require_git_repo() {
|
||||||
|
if ! git -C "$PANAMA_DIR" rev-parse --git-dir >/dev/null 2>&1; then
|
||||||
|
err "'$PANAMA_DIR' is not a git repository."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
# Command: update
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
cmd_update() {
|
||||||
|
require_git_repo
|
||||||
|
cd "$PANAMA_DIR"
|
||||||
|
|
||||||
|
info "Panama repo: ${BOLD}${PANAMA_DIR}${RESET}"
|
||||||
|
|
||||||
|
# Any changes in the working tree? (modified, staged, or untracked)
|
||||||
|
if [[ -z "$(git status --porcelain)" ]]; then
|
||||||
|
info "Working tree is clean — pulling latest changes."
|
||||||
|
if git pull --ff-only; then
|
||||||
|
ok "Already in sync."
|
||||||
|
else
|
||||||
|
err "git pull failed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Show what changed
|
||||||
|
header "Changed files"
|
||||||
|
git -c color.status=always status --short
|
||||||
|
|
||||||
|
header "Diff"
|
||||||
|
# Tracked changes (staged + unstaged) relative to the last commit.
|
||||||
|
git --no-pager -c color.diff=always diff HEAD
|
||||||
|
|
||||||
|
# Untracked files won't appear in 'git diff', so show them as new files.
|
||||||
|
local untracked
|
||||||
|
untracked=$(git ls-files --others --exclude-standard)
|
||||||
|
if [[ -n "$untracked" ]]; then
|
||||||
|
while IFS= read -r f; do
|
||||||
|
[[ -z "$f" ]] && continue
|
||||||
|
git --no-pager -c color.diff=always diff --no-index -- /dev/null "$f" || true
|
||||||
|
done <<< "$untracked"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo
|
||||||
|
if ! confirm "Commit these changes?"; then
|
||||||
|
warn "Aborted — no changes committed."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Commit message
|
||||||
|
local msg
|
||||||
|
printf '%s?%s Commit message: ' "${CYAN}${BOLD}" "$RESET"
|
||||||
|
read -r msg || true
|
||||||
|
if [[ -z "${msg// }" ]]; then
|
||||||
|
msg="Update $(date '+%Y-%m-%d %H:%M:%S')"
|
||||||
|
warn "No message given — using: ${BOLD}${msg}${RESET}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Is the local branch up to date with its upstream?
|
||||||
|
info "Checking whether the repo is up to date..."
|
||||||
|
if git rev-parse --abbrev-ref --symbolic-full-name '@{u}' >/dev/null 2>&1; then
|
||||||
|
git fetch --quiet
|
||||||
|
local local_rev remote_rev base_rev
|
||||||
|
local_rev=$(git rev-parse @)
|
||||||
|
remote_rev=$(git rev-parse '@{u}')
|
||||||
|
base_rev=$(git merge-base @ '@{u}')
|
||||||
|
|
||||||
|
if [[ "$local_rev" == "$remote_rev" ]]; then
|
||||||
|
ok "Repo is up to date."
|
||||||
|
elif [[ "$local_rev" == "$base_rev" ]]; then
|
||||||
|
warn "Repo is behind upstream — stashing, pulling, then re-applying."
|
||||||
|
info "Stashing local changes..."
|
||||||
|
git stash push --include-untracked -m "panama-update-$(date +%s)" >/dev/null
|
||||||
|
|
||||||
|
if ! git pull --ff-only; then
|
||||||
|
err "git pull failed — restoring your changes."
|
||||||
|
git stash pop || true
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
info "Re-applying stashed changes..."
|
||||||
|
if ! git stash pop; then
|
||||||
|
err "Conflict while re-applying changes. Resolve it, then commit manually."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
warn "Local branch has diverged from upstream — committing locally only."
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
warn "No upstream configured for this branch — committing locally only."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Commit everything
|
||||||
|
info "Committing changes..."
|
||||||
|
git add -A
|
||||||
|
git commit -m "$msg"
|
||||||
|
ok "Committed: ${BOLD}${msg}${RESET}"
|
||||||
|
|
||||||
|
echo
|
||||||
|
if confirm "Push the changes now?"; then
|
||||||
|
info "Pushing..."
|
||||||
|
if git push; then
|
||||||
|
ok "Pushed to remote."
|
||||||
|
else
|
||||||
|
err "git push failed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
info "Done — changes committed locally but not pushed."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
# Command: edit
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
cmd_edit() {
|
||||||
|
if ! command -v nvim >/dev/null 2>&1; then
|
||||||
|
err "Neovim (nvim) is not installed or not on PATH."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
info "Opening ${BOLD}${PANAMA_DIR}${RESET} in Neovim."
|
||||||
|
cd "$PANAMA_DIR"
|
||||||
|
exec nvim .
|
||||||
|
}
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
# Dispatcher
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
main() {
|
||||||
|
local cmd="${1:-}"
|
||||||
|
case "$cmd" in
|
||||||
|
update) shift; cmd_update "$@" ;;
|
||||||
|
edit) shift; cmd_edit "$@" ;;
|
||||||
|
help|-h|--help|"") usage ;;
|
||||||
|
--version) printf '%s %s\n' "$PROGRAM" "$VERSION" ;;
|
||||||
|
*)
|
||||||
|
err "Unknown command: '$cmd'"
|
||||||
|
echo
|
||||||
|
usage
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
main "$@"
|
||||||
Executable
BIN
Binary file not shown.
@@ -24,3 +24,8 @@ else
|
|||||||
fi
|
fi
|
||||||
export PATH
|
export PATH
|
||||||
fi
|
fi
|
||||||
|
. "$HOME/.cargo/env"
|
||||||
|
|
||||||
|
# >>> Codex installer >>>
|
||||||
|
export PATH="/home/gib/.local/bin:$PATH"
|
||||||
|
# <<< Codex installer <<<
|
||||||
|
|||||||
@@ -10,6 +10,11 @@ alias shutdown="systemctl poweroff"
|
|||||||
alias update-grub="sudo grub-mkconfig -o /etc/grub2-efi.cfg"
|
alias update-grub="sudo grub-mkconfig -o /etc/grub2-efi.cfg"
|
||||||
alias nvidia-smi-docker='sudo docker run --rm --gpus all --privileged nvidia/cuda:12.8.1-base-ubuntu24.04 nvidia-smi'
|
alias nvidia-smi-docker='sudo docker run --rm --gpus all --privileged nvidia/cuda:12.8.1-base-ubuntu24.04 nvidia-smi'
|
||||||
alias ncconnect='sudo docker exec -u www-data -it nextcloud-aio-nextcloud bash'
|
alias ncconnect='sudo docker exec -u www-data -it nextcloud-aio-nextcloud bash'
|
||||||
|
alias avante='nvim -c "lua vim.defer_fn(function()require(\"avante.api\").zen_mode()end, 100)"'
|
||||||
|
alias nlc='nvim leetcode.nvim'
|
||||||
|
alias clauded='claude --allow-dangerously-skip-permissions'
|
||||||
|
alias claudedr='claude --allow-dangerously-skip-permissions --resume'
|
||||||
|
alias commit-repo='git add -A && git commit -m "Update stuff" && git push'
|
||||||
|
|
||||||
# Docker Shortcuts
|
# Docker Shortcuts
|
||||||
alias docker-up='sudo docker compose up -d'
|
alias docker-up='sudo docker compose up -d'
|
||||||
@@ -35,6 +40,7 @@ alias ...='cd ../..'
|
|||||||
alias ....='cd ../../..'
|
alias ....='cd ../../..'
|
||||||
|
|
||||||
# Tools
|
# Tools
|
||||||
|
alias vim='vimx'
|
||||||
alias n='nvim'
|
alias n='nvim'
|
||||||
alias n.="nvim ."
|
alias n.="nvim ."
|
||||||
alias ns="nvim src"
|
alias ns="nvim src"
|
||||||
|
|||||||
+17
-4
@@ -16,13 +16,26 @@ export ANDROID_SDK_HOME="$HOME/.local/share/Android"
|
|||||||
export GOPATH="$HOME/.local/share/go"
|
export GOPATH="$HOME/.local/share/go"
|
||||||
export DOTNETPATH="$HOME/.dotnet/tools"
|
export DOTNETPATH="$HOME/.dotnet/tools"
|
||||||
|
|
||||||
|
# Podman
|
||||||
|
# export DOCKER_HOST=unix:///run/user/1000/podman/podman.sock
|
||||||
|
|
||||||
# Set complete path
|
# Set complete path
|
||||||
export PATH="$HOME/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PANAMA_PATH/bin:$BUN_INSTALL/bin:$CARGO_PATH/bin:$PNPM_HOME:$PYENV_ROOT/bin:$HOME/.rbenv/bin:/usr/lib/ccache/bin/:$GOPATH/bin:$DOTNETPATH"
|
export PATH="$HOME/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PANAMA_PATH/bin:$BUN_INSTALL/bin:$CARGO_PATH/bin:$PNPM_HOME/bin:$PYENV_ROOT/bin:$HOME/.rbenv/bin:/usr/lib/ccache/bin/:$GOPATH/bin:$DOTNETPATH"
|
||||||
|
|
||||||
# Nvm
|
# Nvm
|
||||||
set -h
|
source /etc/profile.d/nvm.sh
|
||||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
# Auto-switch Node version when entering a directory with .nvmrc
|
||||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
_nvm_auto_use() {
|
||||||
|
if [[ -f .nvmrc ]]; then
|
||||||
|
nvm use --silent
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
export PROMPT_COMMAND="${PROMPT_COMMAND:+$PROMPT_COMMAND; }_nvm_auto_use"
|
||||||
|
|
||||||
|
# Auto-start or attach tmux for SSH interactive shells
|
||||||
|
if [[ -n "$SSH_CONNECTION" && -z "$TMUX" && $- == *i* ]]; then
|
||||||
|
exec tmux new-session -A -s main
|
||||||
|
fi
|
||||||
|
|
||||||
# Zoxide
|
# Zoxide
|
||||||
eval "$(zoxide init bash)"
|
eval "$(zoxide init bash)"
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
# see `man dnf.conf` for defaults and possible options
|
||||||
|
|
||||||
|
[main]
|
||||||
|
fastestmirror=True
|
||||||
|
max_parallel_downloads=10
|
||||||
|
defaultyes=True
|
||||||
|
keepcache=True
|
||||||
|
deltarpm=True
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
# Stable, colon-free symlinks for the DRM devices.
|
||||||
|
#
|
||||||
|
# Why this exists: Hyprland's AQ_DRM_DEVICES selects which GPU renders, but
|
||||||
|
# - /dev/dri/cardN numbering is assigned at boot and is not stable, and
|
||||||
|
# - /dev/dri/by-path/ names contain colons, which AQ_DRM_DEVICES itself uses
|
||||||
|
# as its separator, so they cannot be used.
|
||||||
|
#
|
||||||
|
# These rules are keyed to specific PCI addresses and simply do not match on
|
||||||
|
# other machines; hypr/env.lua checks that the symlink exists before setting
|
||||||
|
# AQ_DRM_DEVICES, so a non-match is harmless.
|
||||||
|
#
|
||||||
|
# Apply without rebooting: sudo udevadm control --reload && sudo udevadm trigger
|
||||||
|
|
||||||
|
# desktop-gib: Radeon RX 7800 XT (discrete, drives DP-2)
|
||||||
|
KERNEL=="card*", KERNELS=="0000:03:00.0", SUBSYSTEM=="drm", SUBSYSTEMS=="pci", SYMLINK+="dri/amd-dgpu"
|
||||||
|
|
||||||
|
# desktop-gib: Granite Ridge integrated graphics
|
||||||
|
KERNEL=="card*", KERNELS=="0000:12:00.0", SUBSYSTEM=="drm", SUBSYSTEMS=="pci", SYMLINK+="dri/amd-igpu"
|
||||||
@@ -0,0 +1,614 @@
|
|||||||
|
"""nautilus extension: nautilus_open_any_terminal"""
|
||||||
|
|
||||||
|
# based on: https://github.com/gnunn1/tilix/blob/master/data/nautilus/open-tilix.py
|
||||||
|
|
||||||
|
import ast
|
||||||
|
import re
|
||||||
|
import shlex
|
||||||
|
from dataclasses import dataclass, field
|
||||||
|
from functools import cache
|
||||||
|
from gettext import gettext, translation
|
||||||
|
from os.path import expanduser
|
||||||
|
from subprocess import Popen
|
||||||
|
from typing import Optional
|
||||||
|
from urllib.parse import quote, unquote, urlparse
|
||||||
|
|
||||||
|
from gi import require_version
|
||||||
|
|
||||||
|
try:
|
||||||
|
require_version("Nautilus", "4.1")
|
||||||
|
except ValueError:
|
||||||
|
require_version("Nautilus", "4.0")
|
||||||
|
|
||||||
|
require_version("Gtk", "4.0")
|
||||||
|
|
||||||
|
from gi.repository import Nautilus as FileManager
|
||||||
|
API_VERSION = "4.1"
|
||||||
|
|
||||||
|
from gi.repository import Gio, GLib, GObject, Gtk # noqa: E402 pylint: disable=wrong-import-position
|
||||||
|
|
||||||
|
|
||||||
|
@dataclass(frozen=True)
|
||||||
|
class Terminal:
|
||||||
|
"""Data class representing a terminal configuration."""
|
||||||
|
|
||||||
|
name: str
|
||||||
|
workdir_arguments: Optional[list[str]] = None
|
||||||
|
new_tab_arguments: Optional[list[str]] = None
|
||||||
|
new_window_arguments: Optional[list[str]] = None
|
||||||
|
command_arguments: list[str] = field(default_factory=lambda: ["-e"])
|
||||||
|
flatpak_package: Optional[str] = None
|
||||||
|
|
||||||
|
|
||||||
|
_ = gettext
|
||||||
|
for localedir in [expanduser("~/.local/share/locale"), "/usr/share/locale"]:
|
||||||
|
try:
|
||||||
|
trans = translation("nautilus-open-any-terminal", localedir)
|
||||||
|
trans.install()
|
||||||
|
_ = trans.gettext
|
||||||
|
break
|
||||||
|
except FileNotFoundError:
|
||||||
|
continue
|
||||||
|
|
||||||
|
TERMINALS = {
|
||||||
|
"alacritty": Terminal("Alacritty"),
|
||||||
|
"app2unit-term": Terminal("app2unit-term"),
|
||||||
|
"blackbox": Terminal(
|
||||||
|
"Black Box",
|
||||||
|
workdir_arguments=["--working-directory"],
|
||||||
|
command_arguments=["-c"],
|
||||||
|
flatpak_package="com.raggesilver.BlackBox",
|
||||||
|
),
|
||||||
|
"blackbox-terminal": Terminal(
|
||||||
|
"Black Box",
|
||||||
|
workdir_arguments=["--working-directory"],
|
||||||
|
command_arguments=["-c"],
|
||||||
|
),
|
||||||
|
"bobcat": Terminal(
|
||||||
|
"Bobcat",
|
||||||
|
workdir_arguments=["--working-dir"],
|
||||||
|
command_arguments=["--"],
|
||||||
|
),
|
||||||
|
"cool-retro-term": Terminal("cool-retro-term", workdir_arguments=["--workdir"]),
|
||||||
|
"custom": Terminal(_("Terminal"), command_arguments=[]),
|
||||||
|
"contour": Terminal(
|
||||||
|
"Contour",
|
||||||
|
workdir_arguments=["--working-directory"],
|
||||||
|
flatpak_package="org.contourterminal.Contour",
|
||||||
|
),
|
||||||
|
"cosmic-term": Terminal("COSMIC Terminal"),
|
||||||
|
"deepin-terminal": Terminal("Deepin Terminal"),
|
||||||
|
"ddterm": Terminal(
|
||||||
|
"Drop down Terminal extension",
|
||||||
|
workdir_arguments=["--working-directory"],
|
||||||
|
flatpak_package="com.github.amezin.ddterm",
|
||||||
|
),
|
||||||
|
"foot": Terminal("Foot"),
|
||||||
|
"footclient": Terminal("FootClient"),
|
||||||
|
"ghostty": Terminal("Ghostty"),
|
||||||
|
"gnome-terminal": Terminal("Terminal", new_tab_arguments=["--tab"], command_arguments=["--"]),
|
||||||
|
"guake": Terminal("Guake", workdir_arguments=["--show", "--new-tab"]),
|
||||||
|
"kermit": Terminal("Kermit"),
|
||||||
|
"kgx": Terminal("Console", new_tab_arguments=["--tab"]),
|
||||||
|
"kitty": Terminal("Kitty"),
|
||||||
|
"konsole": Terminal("Konsole", new_tab_arguments=["--new-tab"]),
|
||||||
|
"mate-terminal": Terminal("Mate Terminal", new_tab_arguments=["--tab"]),
|
||||||
|
"mlterm": Terminal("Mlterm"),
|
||||||
|
"ptyxis": Terminal(
|
||||||
|
"Ptyxis",
|
||||||
|
workdir_arguments=["-d"],
|
||||||
|
command_arguments=["--"],
|
||||||
|
new_tab_arguments=["--tab"],
|
||||||
|
new_window_arguments=["--new-window"],
|
||||||
|
flatpak_package="app.devsuite.Ptyxis",
|
||||||
|
),
|
||||||
|
"ptyxis-nightly": Terminal(
|
||||||
|
"Ptyxis",
|
||||||
|
workdir_arguments=["-d"],
|
||||||
|
command_arguments=["--"],
|
||||||
|
new_tab_arguments=["--tab"],
|
||||||
|
new_window_arguments=["--new-window"],
|
||||||
|
flatpak_package="org.gnome.Ptyxis.Devel",
|
||||||
|
),
|
||||||
|
"qterminal": Terminal("QTerminal"),
|
||||||
|
"rio": Terminal("Rio"),
|
||||||
|
"sakura": Terminal("Sakura"),
|
||||||
|
"st": Terminal("Simple Terminal"),
|
||||||
|
"tabby": Terminal("Tabby", command_arguments=["run"], workdir_arguments=["open"]),
|
||||||
|
"terminator": Terminal("Terminator", new_tab_arguments=["--new-tab"]),
|
||||||
|
"terminology": Terminal("Terminology"),
|
||||||
|
"terminus": Terminal("Terminus"),
|
||||||
|
"termite": Terminal("Termite"),
|
||||||
|
"tilix": Terminal("Tilix", flatpak_package="com.gexperts.Tilix"),
|
||||||
|
"urxvt": Terminal("rxvt-unicode"),
|
||||||
|
"urxvtc": Terminal("urxvtc"),
|
||||||
|
"uwsm-terminal": Terminal("uwsm-terminal"),
|
||||||
|
"uxterm": Terminal("UXTerm"),
|
||||||
|
"warp": Terminal(
|
||||||
|
"Warp",
|
||||||
|
new_tab_arguments=["--virtual-arg-for-tabs"], # This is just to indicate tab support
|
||||||
|
),
|
||||||
|
"wezterm": Terminal(
|
||||||
|
"Wez's Terminal Emulator",
|
||||||
|
workdir_arguments=["--cwd"],
|
||||||
|
new_tab_arguments=["start", "--new-tab"],
|
||||||
|
new_window_arguments=["start"],
|
||||||
|
flatpak_package="org.wezfurlong.wezterm",
|
||||||
|
),
|
||||||
|
"xfce4-terminal": Terminal("Xfce Terminal", new_tab_arguments=["--tab"]),
|
||||||
|
"xterm": Terminal("XTerm"),
|
||||||
|
}
|
||||||
|
|
||||||
|
FLATPAK_PARMS = ["off", "system", "user"]
|
||||||
|
|
||||||
|
terminal = "gnome-terminal"
|
||||||
|
terminal_cmd: list[str] = None # type: ignore
|
||||||
|
terminal_data: Terminal = TERMINALS["gnome-terminal"]
|
||||||
|
new_tab = False
|
||||||
|
flatpak = FLATPAK_PARMS[0]
|
||||||
|
custom_local_command: str
|
||||||
|
custom_remote_command: str
|
||||||
|
|
||||||
|
GSETTINGS_PATH = "com.github.stunkymonkey.nautilus-open-any-terminal"
|
||||||
|
GSETTINGS_KEYBINDINGS = "keybindings"
|
||||||
|
GSETTINGS_BIND_REMOTE = "bind-remote"
|
||||||
|
GSETTINGS_TERMINAL = "terminal"
|
||||||
|
GSETTINGS_NEW_TAB = "new-tab"
|
||||||
|
GSETTINGS_FLATPAK = "flatpak"
|
||||||
|
GSETTINGS_USE_GENERIC_TERMINAL_NAME = "use-generic-terminal-name"
|
||||||
|
GSETTINGS_CUSTOM_LOCAL_COMMAND = "custom-local-command"
|
||||||
|
GSETTINGS_CUSTOM_REMOTE_COMMAND = "custom-remote-command"
|
||||||
|
REMOTE_URI_SCHEME = ["ftp", "sftp"]
|
||||||
|
|
||||||
|
|
||||||
|
# Adapted from https://www.freedesktop.org/software/systemd/man/latest/os-release.html
|
||||||
|
def read_os_release():
|
||||||
|
"""Read and parse the OS release information."""
|
||||||
|
possible_os_release_paths = ["/etc/os-release", "/usr/lib/os-release"]
|
||||||
|
for file_path in possible_os_release_paths:
|
||||||
|
try:
|
||||||
|
with open(file_path, mode="r", encoding="utf-8") as os_release:
|
||||||
|
for line_number, line in enumerate(os_release, start=1):
|
||||||
|
line = line.rstrip()
|
||||||
|
if not line or line.startswith("#"):
|
||||||
|
continue
|
||||||
|
result = re.match(r"([A-Z][A-Z_0-9]+)=(.*)", line)
|
||||||
|
if result:
|
||||||
|
name, val = result.groups()
|
||||||
|
if val and val[0] in "\"'":
|
||||||
|
val = ast.literal_eval(val)
|
||||||
|
yield name, val
|
||||||
|
else:
|
||||||
|
raise OSError(f"{file_path}:{line_number}: bad line {line!r}")
|
||||||
|
except FileNotFoundError:
|
||||||
|
continue
|
||||||
|
|
||||||
|
|
||||||
|
@cache
|
||||||
|
def distro_id() -> set[str]:
|
||||||
|
"""get the set of distribution ids"""
|
||||||
|
try:
|
||||||
|
os_release = dict(read_os_release())
|
||||||
|
except OSError:
|
||||||
|
return set(["unknown"])
|
||||||
|
ids = [os_release["ID"]]
|
||||||
|
if id_like := os_release.get("ID_LIKE"):
|
||||||
|
ids.extend(id_like.split(" "))
|
||||||
|
return set(ids)
|
||||||
|
|
||||||
|
|
||||||
|
def parse_custom_command(command: str, data: str | list[str]) -> list[str]:
|
||||||
|
"""Substitute every '%s' in the command with data and split it into arguments"""
|
||||||
|
if isinstance(data, str):
|
||||||
|
data = [data]
|
||||||
|
|
||||||
|
return shlex.split(command.replace("%s", shlex.join(data)))
|
||||||
|
|
||||||
|
|
||||||
|
def run_command_in_terminal(command: list[str], *, cwd: str | None = None):
|
||||||
|
if terminal == "custom":
|
||||||
|
cmd = parse_custom_command(custom_remote_command, command)
|
||||||
|
else:
|
||||||
|
cmd = terminal_cmd.copy()
|
||||||
|
if cwd and terminal_data.workdir_arguments:
|
||||||
|
cmd.extend(terminal_data.workdir_arguments)
|
||||||
|
cmd.append(cwd)
|
||||||
|
cmd.extend(terminal_data.command_arguments)
|
||||||
|
cmd.extend(command)
|
||||||
|
|
||||||
|
Popen(cmd, cwd=cwd) # pylint: disable=consider-using-with
|
||||||
|
|
||||||
|
|
||||||
|
def ssh_command_from_uri(uri: str, *, is_directory: bool):
|
||||||
|
"""Creates an ssh command that executes or cd's into remote uri"""
|
||||||
|
result = urlparse(uri)
|
||||||
|
cmd = ["ssh", "-t"]
|
||||||
|
if result.username:
|
||||||
|
cmd.append(f"{result.username}@{result.hostname}")
|
||||||
|
else:
|
||||||
|
cmd.append(result.hostname) # type: ignore
|
||||||
|
|
||||||
|
if result.port:
|
||||||
|
cmd.append("-p")
|
||||||
|
cmd.append(str(result.port))
|
||||||
|
|
||||||
|
target = shlex.quote(unquote(result.path))
|
||||||
|
if is_directory:
|
||||||
|
cmd.extend(["cd", target, ";", "exec", "${SHELL:-/bin/sh}", "-l"])
|
||||||
|
else:
|
||||||
|
cmd.extend(["exec", target])
|
||||||
|
|
||||||
|
return cmd
|
||||||
|
|
||||||
|
|
||||||
|
def open_remote_terminal_in_uri(uri: str):
|
||||||
|
"""Open a new remote terminal"""
|
||||||
|
run_command_in_terminal(ssh_command_from_uri(uri, is_directory=True))
|
||||||
|
|
||||||
|
|
||||||
|
def open_local_terminal_in_uri(uri: str):
|
||||||
|
"""open the new terminal with correct path"""
|
||||||
|
result = urlparse(uri)
|
||||||
|
filename = unquote(result.path)
|
||||||
|
if result.scheme == "admin":
|
||||||
|
run_command_in_terminal(["sudo", "-s"], cwd=filename)
|
||||||
|
return
|
||||||
|
|
||||||
|
if terminal == "warp":
|
||||||
|
# Force new_tab to be considered even without traditional tab arguments
|
||||||
|
Popen( # pylint: disable=consider-using-with
|
||||||
|
["xdg-open", f"warp://action/new_{'tab' if new_tab else 'window'}?path={result.path}"]
|
||||||
|
)
|
||||||
|
return
|
||||||
|
|
||||||
|
cmd = terminal_cmd.copy()
|
||||||
|
if terminal == "custom":
|
||||||
|
cmd = parse_custom_command(custom_local_command, filename)
|
||||||
|
elif filename and terminal_data.workdir_arguments:
|
||||||
|
cmd.extend(terminal_data.workdir_arguments)
|
||||||
|
cmd.append(filename)
|
||||||
|
|
||||||
|
Popen(cmd, cwd=filename) # pylint: disable=consider-using-with
|
||||||
|
|
||||||
|
|
||||||
|
def directory_menu_item_id(*, foreground: bool, remote: bool):
|
||||||
|
return f"OpenTerminal::open{'_' if foreground else '_bg_'}{'remote' if remote else 'file'}_item"
|
||||||
|
|
||||||
|
|
||||||
|
def executable_menu_item_id(*, remote: bool):
|
||||||
|
return f"OpenTerminal::execute{'_remote_' if remote else '_file_'}item"
|
||||||
|
|
||||||
|
|
||||||
|
def get_directory_menu_items(
|
||||||
|
file: FileManager.FileInfo, callback, *, foreground: bool, terminal_name: str | None = None
|
||||||
|
):
|
||||||
|
items = []
|
||||||
|
remote = file.get_uri_scheme() in REMOTE_URI_SCHEME
|
||||||
|
terminal_name = terminal_name or terminal_data.name
|
||||||
|
|
||||||
|
if remote:
|
||||||
|
if foreground:
|
||||||
|
REMOTE_LABEL = _("Open in Remote {}")
|
||||||
|
REMOTE_TIP = _("Open Remote {} in {}")
|
||||||
|
LOCAL_LABEL = _("Open in Local {}")
|
||||||
|
LOCAL_TIP = _("Open Local {} in {}")
|
||||||
|
tip = REMOTE_TIP.format(terminal_name, file.get_name())
|
||||||
|
else:
|
||||||
|
REMOTE_LABEL = _("Open Remote {} Here")
|
||||||
|
REMOTE_TIP = _("Open Remote {} in This Directory")
|
||||||
|
LOCAL_LABEL = _("Open Local {} Here")
|
||||||
|
LOCAL_TIP = _("Open Local {} in This Directory")
|
||||||
|
tip = REMOTE_TIP.format(terminal_name)
|
||||||
|
|
||||||
|
item = FileManager.MenuItem(
|
||||||
|
name=directory_menu_item_id(foreground=foreground, remote=True),
|
||||||
|
label=REMOTE_LABEL.format(terminal_name),
|
||||||
|
tip=tip,
|
||||||
|
)
|
||||||
|
item.connect("activate", callback, file, True)
|
||||||
|
items.append(item)
|
||||||
|
elif foreground:
|
||||||
|
LOCAL_LABEL = _("Open in {}")
|
||||||
|
LOCAL_TIP = _("Open {} in {}")
|
||||||
|
else:
|
||||||
|
LOCAL_LABEL = _("Open {} Here")
|
||||||
|
LOCAL_TIP = _("Open {} in This Directory")
|
||||||
|
|
||||||
|
# Let wezterm handle opening a local terminal
|
||||||
|
if terminal == "wezterm" and flatpak == "off":
|
||||||
|
return items
|
||||||
|
|
||||||
|
if foreground:
|
||||||
|
tip = LOCAL_TIP.format(terminal_name, file.get_name())
|
||||||
|
else:
|
||||||
|
tip = LOCAL_TIP.format(terminal_name)
|
||||||
|
|
||||||
|
item = FileManager.MenuItem(
|
||||||
|
name=directory_menu_item_id(foreground=foreground, remote=False),
|
||||||
|
label=LOCAL_LABEL.format(terminal_name),
|
||||||
|
tip=tip,
|
||||||
|
)
|
||||||
|
item.connect("activate", callback, file, False)
|
||||||
|
items.append(item)
|
||||||
|
return items
|
||||||
|
|
||||||
|
|
||||||
|
def get_executable_menu_items(file: FileManager.FileInfo, callback, *, terminal_name: str | None = None):
|
||||||
|
items = []
|
||||||
|
remote = file.get_uri_scheme() in REMOTE_URI_SCHEME
|
||||||
|
terminal_name = terminal_name or terminal_data.name
|
||||||
|
|
||||||
|
if remote:
|
||||||
|
REMOTE_LABEL = _("Execute in Remote {}")
|
||||||
|
REMOTE_TIP = _("Execute {} in {} via SSH")
|
||||||
|
LOCAL_LABEL = _("Execute in Local {}")
|
||||||
|
LOCAL_TIP = _("Execute {} in Local {}")
|
||||||
|
|
||||||
|
tip = REMOTE_TIP.format(file.get_name(), terminal_name)
|
||||||
|
item = FileManager.MenuItem(
|
||||||
|
name=executable_menu_item_id(remote=True),
|
||||||
|
label=REMOTE_LABEL.format(terminal_name),
|
||||||
|
tip=tip,
|
||||||
|
)
|
||||||
|
item.connect("activate", callback, file, True)
|
||||||
|
items.append(item)
|
||||||
|
else:
|
||||||
|
LOCAL_LABEL = _("Execute in {}")
|
||||||
|
LOCAL_TIP = _("Execute {} in {}")
|
||||||
|
|
||||||
|
tip = LOCAL_TIP.format(file.get_name(), terminal_name)
|
||||||
|
item = FileManager.MenuItem(
|
||||||
|
name=executable_menu_item_id(remote=False),
|
||||||
|
label=LOCAL_LABEL.format(terminal_name),
|
||||||
|
tip=tip,
|
||||||
|
)
|
||||||
|
item.connect("activate", callback, file, False)
|
||||||
|
items.append(item)
|
||||||
|
return items
|
||||||
|
|
||||||
|
|
||||||
|
def is_executable(file: Gio.File) -> bool:
|
||||||
|
try:
|
||||||
|
attributes = file.query_info("access::can-execute", Gio.FileQueryInfoFlags.NONE)
|
||||||
|
except GLib.Error:
|
||||||
|
return False
|
||||||
|
return attributes.get_attribute_boolean("access::can-execute")
|
||||||
|
|
||||||
|
|
||||||
|
def set_terminal_args(*_args):
|
||||||
|
# pylint: disable=possibly-used-before-assignment
|
||||||
|
"""set the terminal_cmd to the correct values"""
|
||||||
|
global new_tab
|
||||||
|
global flatpak
|
||||||
|
global terminal_cmd
|
||||||
|
global terminal_data
|
||||||
|
global custom_local_command
|
||||||
|
global custom_remote_command
|
||||||
|
value = _gsettings.get_string(GSETTINGS_TERMINAL)
|
||||||
|
newer_tab = _gsettings.get_boolean(GSETTINGS_NEW_TAB)
|
||||||
|
flatpak = FLATPAK_PARMS[_gsettings.get_enum(GSETTINGS_FLATPAK)]
|
||||||
|
new_terminal_data = TERMINALS.get(value)
|
||||||
|
if not new_terminal_data:
|
||||||
|
print(f'open-any-terminal: unknown terminal "{value}"')
|
||||||
|
return
|
||||||
|
|
||||||
|
global terminal
|
||||||
|
terminal = value
|
||||||
|
terminal_data = new_terminal_data
|
||||||
|
if newer_tab and terminal_data.new_tab_arguments:
|
||||||
|
new_tab = newer_tab
|
||||||
|
new_tab_text = "opening in a new tab"
|
||||||
|
else:
|
||||||
|
new_tab_text = "opening a new window"
|
||||||
|
if newer_tab and not terminal_data.new_tab_arguments:
|
||||||
|
new_tab_text += " (terminal does not support tabs)"
|
||||||
|
if flatpak != FLATPAK_PARMS[0] and terminal_data.flatpak_package is not None:
|
||||||
|
terminal_cmd = ["flatpak", "run", "--" + flatpak, terminal_data.flatpak_package]
|
||||||
|
flatpak_text = f"with flatpak as {flatpak}"
|
||||||
|
else:
|
||||||
|
terminal_cmd = [terminal]
|
||||||
|
if terminal == "blackbox" and "fedora" in distro_id():
|
||||||
|
# It's called like this on fedora
|
||||||
|
terminal_cmd[0] = "blackbox-terminal"
|
||||||
|
flatpak = FLATPAK_PARMS[0]
|
||||||
|
flatpak_text = ""
|
||||||
|
|
||||||
|
if terminal == "custom":
|
||||||
|
terminal_cmd = []
|
||||||
|
custom_local_command = _gsettings.get_string(GSETTINGS_CUSTOM_LOCAL_COMMAND)
|
||||||
|
custom_remote_command = _gsettings.get_string(GSETTINGS_CUSTOM_REMOTE_COMMAND)
|
||||||
|
elif new_tab and terminal_data.new_tab_arguments:
|
||||||
|
terminal_cmd.extend(terminal_data.new_tab_arguments)
|
||||||
|
elif terminal_data.new_window_arguments:
|
||||||
|
terminal_cmd.extend(terminal_data.new_window_arguments)
|
||||||
|
|
||||||
|
print(f'open-any-terminal: terminal is set to "{terminal}" {new_tab_text} {flatpak_text}')
|
||||||
|
|
||||||
|
|
||||||
|
if API_VERSION == ("4.0", "4.1"):
|
||||||
|
|
||||||
|
class OpenAnyTerminalShortcutProvider(GObject.GObject, FileManager.MenuProvider):
|
||||||
|
"""Provide keyboard shortcuts for opening terminals in Nautilus."""
|
||||||
|
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__()
|
||||||
|
self.previous_cwd = expanduser("~")
|
||||||
|
|
||||||
|
gsettings_source = Gio.SettingsSchemaSource.get_default()
|
||||||
|
if gsettings_source.lookup(GSETTINGS_PATH, True):
|
||||||
|
self._gsettings = Gio.Settings.new(GSETTINGS_PATH)
|
||||||
|
self._setup_keybindings()
|
||||||
|
|
||||||
|
def get_background_items(self, current_folder: FileManager.FileInfo):
|
||||||
|
"""Update current URI when folder changes."""
|
||||||
|
if current_folder:
|
||||||
|
if current_folder.get_uri_scheme() in REMOTE_URI_SCHEME:
|
||||||
|
folder_path = current_folder.get_uri()
|
||||||
|
else:
|
||||||
|
folder_path = current_folder.get_location().get_path()
|
||||||
|
|
||||||
|
if folder_path and folder_path != self.previous_cwd:
|
||||||
|
self.previous_cwd = folder_path
|
||||||
|
return []
|
||||||
|
|
||||||
|
def _open_terminal(self, *_args):
|
||||||
|
"""Open the terminal at the specified URI."""
|
||||||
|
if self._gsettings.get_boolean(GSETTINGS_BIND_REMOTE):
|
||||||
|
open_remote_terminal_in_uri(self.previous_cwd)
|
||||||
|
else:
|
||||||
|
open_local_terminal_in_uri(self.previous_cwd)
|
||||||
|
|
||||||
|
def _setup_keybindings(self):
|
||||||
|
"""Set up custom keybindings for the extension."""
|
||||||
|
self.app = Gtk.Application.get_default()
|
||||||
|
if self.app is None:
|
||||||
|
print("No Gtk.Application found. Keybindings cannot be set.")
|
||||||
|
return
|
||||||
|
|
||||||
|
action = Gio.SimpleAction.new("open_any_terminal", None)
|
||||||
|
action.connect("activate", self._open_terminal)
|
||||||
|
self.app.add_action(action)
|
||||||
|
self._bind_shortcut()
|
||||||
|
self._gsettings.connect("changed", self._update_shortcut)
|
||||||
|
|
||||||
|
def _update_shortcut(self, _gsettings, key):
|
||||||
|
"""remove keybinding"""
|
||||||
|
if key == GSETTINGS_KEYBINDINGS:
|
||||||
|
self.app.set_accels_for_action("app.open_any_terminal", [])
|
||||||
|
self._bind_shortcut()
|
||||||
|
|
||||||
|
def _bind_shortcut(self):
|
||||||
|
"""Parse and update keybindings when settings change."""
|
||||||
|
shortcut = self._gsettings.get_string(GSETTINGS_KEYBINDINGS)
|
||||||
|
|
||||||
|
if not shortcut:
|
||||||
|
self.app.set_accels_for_action("app.open_any_terminal", [])
|
||||||
|
return
|
||||||
|
|
||||||
|
valid, key, mods = Gtk.accelerator_parse(shortcut)
|
||||||
|
if not valid:
|
||||||
|
print("Invalid shortcut in GSettings: %r", shortcut)
|
||||||
|
self.app.set_accels_for_action("app.open_any_terminal", [])
|
||||||
|
return
|
||||||
|
|
||||||
|
normalized = Gtk.accelerator_name(key, mods)
|
||||||
|
self.app.set_accels_for_action("app.open_any_terminal", [normalized])
|
||||||
|
|
||||||
|
elif API_VERSION in ("3.0", "2.0"):
|
||||||
|
|
||||||
|
class OpenAnyTerminalShortcutProviderLegacy(GObject.GObject, FileManager.LocationWidgetProvider):
|
||||||
|
"""Provide keyboard shortcuts for opening terminals in Nautilus/Caja."""
|
||||||
|
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__()
|
||||||
|
gsettings_source = Gio.SettingsSchemaSource.get_default()
|
||||||
|
if gsettings_source.lookup(GSETTINGS_PATH, True):
|
||||||
|
self._gsettings = Gio.Settings.new(GSETTINGS_PATH)
|
||||||
|
self._gsettings.connect("changed", self._bind_shortcut)
|
||||||
|
self._create_accel_group()
|
||||||
|
self._window = None
|
||||||
|
self._uri = None
|
||||||
|
|
||||||
|
def _create_accel_group(self):
|
||||||
|
self._accel_group = Gtk.AccelGroup()
|
||||||
|
shortcut = self._gsettings.get_string(GSETTINGS_KEYBINDINGS)
|
||||||
|
key, mod = Gtk.accelerator_parse(shortcut)
|
||||||
|
self._accel_group.connect(key, mod, Gtk.AccelFlags.VISIBLE, self._open_terminal)
|
||||||
|
|
||||||
|
def _bind_shortcut(self, _gsettings, key):
|
||||||
|
if key == GSETTINGS_KEYBINDINGS:
|
||||||
|
self._accel_group.disconnect(self._open_terminal)
|
||||||
|
self._create_accel_group()
|
||||||
|
|
||||||
|
def _open_terminal(self, *_args):
|
||||||
|
if _gsettings.get_boolean(GSETTINGS_BIND_REMOTE):
|
||||||
|
open_local_terminal_in_uri(self._uri)
|
||||||
|
else:
|
||||||
|
open_remote_terminal_in_uri(self._uri)
|
||||||
|
|
||||||
|
def get_widget(self, uri, window):
|
||||||
|
"""follows uri and sets the correct window"""
|
||||||
|
self._uri = uri
|
||||||
|
if self._window:
|
||||||
|
self._window.remove_accel_group(self._accel_group)
|
||||||
|
if self._gsettings:
|
||||||
|
window.add_accel_group(self._accel_group)
|
||||||
|
self._window = window
|
||||||
|
|
||||||
|
|
||||||
|
class OpenAnyTerminalExtension(GObject.GObject, FileManager.MenuProvider):
|
||||||
|
"""Provide context menu items for opening terminals in Nautilus."""
|
||||||
|
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__()
|
||||||
|
gsettings_source = Gio.SettingsSchemaSource.get_default()
|
||||||
|
if gsettings_source.lookup(GSETTINGS_PATH, True):
|
||||||
|
self._gsettings = Gio.Settings.new(GSETTINGS_PATH)
|
||||||
|
|
||||||
|
def _get_terminal_name(self):
|
||||||
|
if self._gsettings.get_boolean(GSETTINGS_USE_GENERIC_TERMINAL_NAME):
|
||||||
|
return _("Terminal")
|
||||||
|
return None
|
||||||
|
|
||||||
|
def _menu_dir_activate_cb(self, menu, file_, remote: bool):
|
||||||
|
if remote:
|
||||||
|
open_remote_terminal_in_uri(file_.get_uri())
|
||||||
|
else:
|
||||||
|
if file_.get_uri_scheme() == "smb":
|
||||||
|
file_uri = "file://" + quote(file_.get_location().get_path())
|
||||||
|
else:
|
||||||
|
file_uri = file_.get_uri()
|
||||||
|
open_local_terminal_in_uri(file_uri)
|
||||||
|
|
||||||
|
def _menu_exe_activate_cb(self, menu, file_, remote: bool):
|
||||||
|
if remote:
|
||||||
|
cmd = ssh_command_from_uri(file_.get_uri(), is_directory=False)
|
||||||
|
else:
|
||||||
|
result = urlparse(file_.get_uri())
|
||||||
|
file = unquote(result.path)
|
||||||
|
|
||||||
|
if result.scheme == "admin":
|
||||||
|
cmd = ["sudo", file]
|
||||||
|
elif terminal in ["xterm", "uxterm"]:
|
||||||
|
cmd = [f"exec {shlex.quote(file)}"]
|
||||||
|
else:
|
||||||
|
cmd = [file]
|
||||||
|
run_command_in_terminal(cmd)
|
||||||
|
|
||||||
|
def get_file_items(self, *args):
|
||||||
|
"""Generates a list of menu items for a file or folder in the Nautilus file manager."""
|
||||||
|
# `args` will be `[files: List[Nautilus.FileInfo]]` in Nautilus 4.0 API,
|
||||||
|
# and `[window: Gtk.Widget, files: List[Nautilus.FileInfo]]` in Nautilus 3.0 API.
|
||||||
|
|
||||||
|
files = args[-1]
|
||||||
|
|
||||||
|
if len(files) != 1:
|
||||||
|
return []
|
||||||
|
file_ = files[0]
|
||||||
|
|
||||||
|
if file_.is_directory():
|
||||||
|
return get_directory_menu_items(
|
||||||
|
file_, self._menu_dir_activate_cb, foreground=True, terminal_name=self._get_terminal_name()
|
||||||
|
)
|
||||||
|
|
||||||
|
if is_executable(file_.get_location()):
|
||||||
|
return get_executable_menu_items(file_, self._menu_exe_activate_cb, terminal_name=self._get_terminal_name())
|
||||||
|
|
||||||
|
return []
|
||||||
|
|
||||||
|
def get_background_items(self, *args):
|
||||||
|
"""Generates a list of background menu items for a file or folder in the Nautilus file manager."""
|
||||||
|
# `args` will be `[folder: Nautilus.FileInfo]` in Nautilus 4.0 API,
|
||||||
|
# and `[window: Gtk.Widget, file: Nautilus.FileInfo]` in Nautilus 3.0 API.
|
||||||
|
|
||||||
|
file_ = args[-1]
|
||||||
|
return get_directory_menu_items(
|
||||||
|
file_, self._menu_dir_activate_cb, foreground=False, terminal_name=self._get_terminal_name()
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
source = Gio.SettingsSchemaSource.get_default()
|
||||||
|
if source is not None and source.lookup(GSETTINGS_PATH, True):
|
||||||
|
_gsettings = Gio.Settings.new(GSETTINGS_PATH)
|
||||||
|
_gsettings.connect("changed", set_terminal_args)
|
||||||
|
set_terminal_args()
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
source ~/.local/share/sunhat/defaults/bash/api_keys
|
||||||
|
printf '%s\t%s' \
|
||||||
|
"$(bw --session "$BW_SESSION" get username "$1")" \
|
||||||
|
"$(bw --session "$BW_SESSION" get password "$1")"
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
# espanso configuration file
|
||||||
|
|
||||||
|
# For a complete introduction, visit the official docs at: https://espanso.org/docs/
|
||||||
|
|
||||||
|
# You can use this file to define the global configuration options for espanso.
|
||||||
|
# These are the parameters that will be used by default on every application,
|
||||||
|
# but you can also override them on a per-application basis.
|
||||||
|
|
||||||
|
# To make customization easier, this file contains some of the commonly used
|
||||||
|
# parameters. Feel free to uncomment and tune them to fit your needs!
|
||||||
|
|
||||||
|
# --- Toggle key
|
||||||
|
|
||||||
|
# Customize the key used to disable and enable espanso (when double tapped)
|
||||||
|
# Available options: CTRL, SHIFT, ALT, CMD, OFF
|
||||||
|
# You can also specify the key variant, such as LEFT_CTRL, RIGHT_SHIFT, etc...
|
||||||
|
# toggle_key: ALT
|
||||||
|
# You can also disable the toggle key completely with
|
||||||
|
# toggle_key: OFF
|
||||||
|
|
||||||
|
# --- Injection Backend
|
||||||
|
|
||||||
|
# Espanso supports multiple ways of injecting text into applications. Each of
|
||||||
|
# them has its quirks, therefore you may want to change it if you are having problems.
|
||||||
|
# By default, espanso uses the "Auto" backend which should work well in most cases,
|
||||||
|
# but you may want to try the "Clipboard" or "Inject" backend in case of issues.
|
||||||
|
# backend: Clipboard
|
||||||
|
|
||||||
|
# --- Auto-restart
|
||||||
|
|
||||||
|
# Enable/disable the config auto-reload after a file change is detected.
|
||||||
|
# auto_restart: false
|
||||||
|
|
||||||
|
# --- Clipboard threshold
|
||||||
|
|
||||||
|
# Because injecting long texts char-by-char is a slow operation, espanso automatically
|
||||||
|
# uses the clipboard if the text is longer than 'clipboard_threshold' characters.
|
||||||
|
clipboard_threshold: 500
|
||||||
|
# For a list of all the available options, visit the official docs at: https://espanso.org/docs/
|
||||||
|
show_icon: false
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,56 @@
|
|||||||
|
# html-utils-package
|
||||||
|
|
||||||
|
Make HTML5 easier and less time-consuming with this [Espanso](https://espanso.org/) package!
|
||||||
|
|
||||||
|
# Installation
|
||||||
|
|
||||||
|
Make sure you have already installed [Espanso](https://espanso.org/install/) first.
|
||||||
|
|
||||||
|
```
|
||||||
|
espanso install html-utils-package
|
||||||
|
```
|
||||||
|
|
||||||
|
That's all. You can start using the package. Open your favorite editor and type `::docskel` to test!
|
||||||
|
|
||||||
|
# Preview
|
||||||
|
|
||||||
|
You can choose between all of them from the Search-bar:
|
||||||
|

|
||||||
|
|
||||||
|
# Triggers
|
||||||
|
|
||||||
|
Here you can see some of them:
|
||||||
|
|
||||||
|
| Trigger | Result |
|
||||||
|
| ------------- | ------------- |
|
||||||
|
| `::docskel` | Generates an empty document with `utf-8` and `viewport` headers (unindented) |
|
||||||
|
| `::doctype` | `<!DOCTYPE html>` |
|
||||||
|
| `::meta-charset` | `<meta charset="">` |
|
||||||
|
| `::meta-utf-8` | `<meta charset="UTF-8">` |
|
||||||
|
| `::meta-viewport` | `<meta name="viewport" content="width=device-width, initial-scale=1">` |
|
||||||
|
| `::meta-author` | `<meta name="author" content="">` |
|
||||||
|
| `::meta-desc` | `<meta name="description" content="">` |
|
||||||
|
| `::meta-keywords` | `<meta name="keywords" content="">` |
|
||||||
|
| `::title` | `<title></title>` |
|
||||||
|
| `::div` | `<div></div>` |
|
||||||
|
| `::html` | `<html></html>` |
|
||||||
|
| `::head` | `<head></head>` |
|
||||||
|
| `::body` | `<body></body>` |
|
||||||
|
| `::a` | `<a href=""></a>` |
|
||||||
|
| `::br` | `<br>` |
|
||||||
|
| `::button` | `<button type="button"></button> ` |
|
||||||
|
| `::style` | `<style></style>` |
|
||||||
|
| `::css` | `<link rel="stylesheet" type="text/css" href="">` |
|
||||||
|
| `::script` | `<script></script>` |
|
||||||
|
| `::js` | `<script type="text/javascript" src=""></script>` |
|
||||||
|
| `::form` | `<form action="" method=""></form>` |
|
||||||
|
| `::label` | `<label for=""></label>` |
|
||||||
|
| `::input-submit` | `<input type="submit" value="">` |
|
||||||
|
| `::input-text` | `<input type="text" name="" id="">` |
|
||||||
|
| `::input-password` | `<input type="password" name="" id="">` |
|
||||||
|
| `::input-radio` | `<input type="radio" name="" id="" value="">` |
|
||||||
|
| `::input-checkbox` | `<input type="checkbox" name="" id="" value="">` |
|
||||||
|
| `::input-file` | `<input type="file" name="" id="">` |
|
||||||
|
|
||||||
|
# Contributions
|
||||||
|
If you feel like there's any important tag/snippet missing, feel free to create a Pull Request or open an [Issue](https://github.com/woodenbell/html-utils-package/issues/new).
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
author: Gabriel Barbosa
|
||||||
|
description: A simple package to make coding in HTML5 easier.
|
||||||
|
name: html-utils-package
|
||||||
|
title: HTML utilities package
|
||||||
|
version: 2.0.1
|
||||||
|
homepage: "https://github.com/woodenbell/html-utils-package"
|
||||||
|
tags: ["frontend", "html", "development"]
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
hub
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 8.4 KiB |
@@ -0,0 +1,239 @@
|
|||||||
|
matches:
|
||||||
|
- trigger: "::doctype"
|
||||||
|
label: "HTML - doctype"
|
||||||
|
replace: >-
|
||||||
|
<!DOCTYPE html>
|
||||||
|
|
||||||
|
- trigger: "::meta-charset"
|
||||||
|
label: "HTML - meta-charset"
|
||||||
|
replace: >-
|
||||||
|
<meta charset="$|$">
|
||||||
|
|
||||||
|
- trigger: "::meta-utf-8"
|
||||||
|
label: "HTML - meta-utf-8"
|
||||||
|
replace: >-
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
|
||||||
|
- trigger: "::meta-viewport"
|
||||||
|
label: "HTML - meta-viewport"
|
||||||
|
replace: >-
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
|
||||||
|
- trigger: "::meta-author"
|
||||||
|
label: "HTML - meta-autor"
|
||||||
|
replace: >-
|
||||||
|
<meta name="author" content="$|$">
|
||||||
|
|
||||||
|
- trigger: "::meta-desc"
|
||||||
|
label: "HTML - meta-desc"
|
||||||
|
replace: >-
|
||||||
|
<meta name="description" content="$|$">
|
||||||
|
|
||||||
|
- trigger: "::meta-keywords"
|
||||||
|
label: "HTML - meta-keywords"
|
||||||
|
replace: >-
|
||||||
|
<meta name="keywords" content="$|$">
|
||||||
|
|
||||||
|
- trigger: "::title"
|
||||||
|
label: "HTML - title"
|
||||||
|
replace: >-
|
||||||
|
<title>$|$</title>
|
||||||
|
|
||||||
|
- trigger: "::div"
|
||||||
|
label: "HTML - div"
|
||||||
|
replace: >-
|
||||||
|
<div>$|$</div>
|
||||||
|
|
||||||
|
- trigger: "::html"
|
||||||
|
label: "HTML - html"
|
||||||
|
replace: >-
|
||||||
|
<html>$|$</html>
|
||||||
|
|
||||||
|
- trigger: "::head"
|
||||||
|
label: "HTML - head"
|
||||||
|
replace: >-
|
||||||
|
<head>$|$</head>
|
||||||
|
|
||||||
|
- trigger: "::body"
|
||||||
|
label: "HTML - body"
|
||||||
|
replace: >-
|
||||||
|
<body>$|$</body>
|
||||||
|
|
||||||
|
- trigger: "::inline-css"
|
||||||
|
label: "HTML - inline-css"
|
||||||
|
replace: style="{{element}}:$|$;"
|
||||||
|
vars:
|
||||||
|
- name: element
|
||||||
|
type: choice
|
||||||
|
params:
|
||||||
|
values:
|
||||||
|
- "color"
|
||||||
|
- "background-color"
|
||||||
|
- "padding"
|
||||||
|
- "font-family"
|
||||||
|
- "font-size"
|
||||||
|
- "font-weight"
|
||||||
|
- "border"
|
||||||
|
- "padding"
|
||||||
|
- "margin"
|
||||||
|
|
||||||
|
- trigger: "::a"
|
||||||
|
label: "HTML - a"
|
||||||
|
replace: >-
|
||||||
|
<a href="$|$"></a>
|
||||||
|
|
||||||
|
- trigger: "::2a"
|
||||||
|
label: "HTML - 2a"
|
||||||
|
replace: <a href="{{clipboard}}" target="_blank" rel="noopener noreferrer">$|$</a>
|
||||||
|
vars:
|
||||||
|
- name: "clipboard"
|
||||||
|
type: "clipboard"
|
||||||
|
|
||||||
|
- trigger: "::br"
|
||||||
|
label: "HTML - br"
|
||||||
|
replace: >-
|
||||||
|
<br>
|
||||||
|
|
||||||
|
- trigger: "::p"
|
||||||
|
label: "HTML - p"
|
||||||
|
replace: >-
|
||||||
|
<p>$|$</p>
|
||||||
|
|
||||||
|
- trigger: "::block"
|
||||||
|
label: "HTML - block"
|
||||||
|
replace: >-
|
||||||
|
<blockquote>$|$</blockquote>
|
||||||
|
|
||||||
|
- trigger: "::button"
|
||||||
|
label: "HTML - button"
|
||||||
|
replace: >-
|
||||||
|
<button type="button">$|$</button>
|
||||||
|
|
||||||
|
- trigger: "::style"
|
||||||
|
label: "HTML - style"
|
||||||
|
replace: >-
|
||||||
|
<style>$|$</style>
|
||||||
|
|
||||||
|
- trigger: "::css"
|
||||||
|
label: "HTML - css"
|
||||||
|
replace: >-
|
||||||
|
<link rel="stylesheet" type="text/css" href="$|$">
|
||||||
|
|
||||||
|
- trigger: "::ul"
|
||||||
|
label: "HTML - ul"
|
||||||
|
replace: |
|
||||||
|
<ul>
|
||||||
|
<li>$|$</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
- trigger: "::li"
|
||||||
|
label: "HTML - li"
|
||||||
|
replace: >-
|
||||||
|
<li>$|$</li>
|
||||||
|
|
||||||
|
- trigger: "::table"
|
||||||
|
label: "HTML - table"
|
||||||
|
replace: |
|
||||||
|
<table width="$|$" border="" align="">
|
||||||
|
<tr>
|
||||||
|
<td width=""></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
- trigger: "::td"
|
||||||
|
label: "HTML - td"
|
||||||
|
replace: >-
|
||||||
|
<td>$|$</td>
|
||||||
|
|
||||||
|
- trigger: "::select"
|
||||||
|
label: "HTML - select"
|
||||||
|
replace: |
|
||||||
|
<select name="$|$" id="">
|
||||||
|
<option value=""></option>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
- trigger: "::optgroup"
|
||||||
|
label: "HTML - optgroup"
|
||||||
|
replace: |
|
||||||
|
<select name="$|$" id="">
|
||||||
|
<optgroup label="">
|
||||||
|
<option value=""></option>
|
||||||
|
</optgroup>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
- trigger: "::option"
|
||||||
|
label: "HTML - option"
|
||||||
|
replace: >-
|
||||||
|
<option value="$|$"></option>
|
||||||
|
|
||||||
|
- trigger: "::script"
|
||||||
|
label: "HTML - script"
|
||||||
|
replace: >-
|
||||||
|
<script>$|$</script>
|
||||||
|
|
||||||
|
- trigger: "::js"
|
||||||
|
label: "HTML - js"
|
||||||
|
replace: >-
|
||||||
|
<script type="text/javascript" src="$|$"></script>
|
||||||
|
|
||||||
|
- trigger: "::form"
|
||||||
|
label: "HTML - form"
|
||||||
|
replace: >-
|
||||||
|
<form action="$|$" method=""></form>
|
||||||
|
|
||||||
|
- trigger: "::label"
|
||||||
|
label: "HTML - label"
|
||||||
|
replace: >-
|
||||||
|
<label for="$|$"></label>
|
||||||
|
|
||||||
|
- trigger: "::img"
|
||||||
|
label: "HTML - img"
|
||||||
|
replace: >-
|
||||||
|
<img src="$|$" alt="">
|
||||||
|
|
||||||
|
- trigger: "::input-submit"
|
||||||
|
label: "HTML - input-submit"
|
||||||
|
replace: >-
|
||||||
|
<input type="submit" value="$|$">
|
||||||
|
|
||||||
|
- trigger: "::input-text"
|
||||||
|
label: "HTML - input-text"
|
||||||
|
replace: >-
|
||||||
|
<input type="text" name="$|$" id="">
|
||||||
|
|
||||||
|
- trigger: "::input-password"
|
||||||
|
label: "HTML - input-password"
|
||||||
|
replace: >-
|
||||||
|
<input type="password" name="$|$" id="">
|
||||||
|
|
||||||
|
- trigger: "::input-radio"
|
||||||
|
label: "HTML - input-radio"
|
||||||
|
replace: >-
|
||||||
|
<input type="radio" name="$|$" id="" value="">
|
||||||
|
|
||||||
|
- trigger: "::input-checkbox"
|
||||||
|
label: "HTML - input-checkbox"
|
||||||
|
replace: >-
|
||||||
|
<input type="checkbox" name="$|$" id="" value="">
|
||||||
|
|
||||||
|
- trigger: "::input-file"
|
||||||
|
label: "HTML - input-file"
|
||||||
|
replace: >-
|
||||||
|
<input type="file" name="$|$" id="">
|
||||||
|
|
||||||
|
- trigger: "::docskel"
|
||||||
|
label: "HTML - docskel"
|
||||||
|
replace: |
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<title>$|$</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2021 José Ferreira
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
# Available matches
|
||||||
|
| Trigger | Replace |
|
||||||
|
|--------------|-----------------------------------------------------------------|
|
||||||
|
| :block: | \```🖰<br>``` |
|
||||||
|
| :code: | \`🖰` |
|
||||||
|
| :h1: | # |
|
||||||
|
| :h2: | ## |
|
||||||
|
| :h3: | ### |
|
||||||
|
| :h4: | #### |
|
||||||
|
| :h5: | ##### |
|
||||||
|
| :h6: | ###### |
|
||||||
|
| :bold: | \*\*🖰** |
|
||||||
|
| :italic: | \*🖰\* |
|
||||||
|
| :strike: | \~\~🖰~~ |
|
||||||
|
| :url: | \[🖰]() |
|
||||||
|
| :image: | !\[](🖰) |
|
||||||
|
| :horizontal: | ___<br> |
|
||||||
|
| :task: | - [ ] |
|
||||||
|
| :donetask: | - [x] |
|
||||||
|
| :collapse: | \<details><br>\<summary>\</summary><br>🖱<br>\</details> |
|
||||||
|
| :comment: | \<\!--- 🖱 --> |
|
||||||
|
|
||||||
|
**Note**: The symbol "🖰" denotes where your mouse cursor will be after the trigger.
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
author: "Jos\xE9 Ferreira"
|
||||||
|
description: A simple package to make writing Markdown easier
|
||||||
|
name: markdown-shortcuts
|
||||||
|
title: Markdown shortcuts
|
||||||
|
version: 0.2.0
|
||||||
|
homepage: "https://github.com/jpmvferreira/espanso-mega-pack"
|
||||||
|
tags: ["markdown", "development", "writing"]
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
hub
|
||||||
@@ -0,0 +1,83 @@
|
|||||||
|
matches:
|
||||||
|
- trigger: ":block:"
|
||||||
|
label: "Markdown - Code block"
|
||||||
|
replace: |-
|
||||||
|
```$|$
|
||||||
|
```
|
||||||
|
force_clipboard: true
|
||||||
|
|
||||||
|
- trigger: ":code:"
|
||||||
|
label: "Markdown - Inline code"
|
||||||
|
replace: |-
|
||||||
|
`$|$`
|
||||||
|
force_clipboard: true
|
||||||
|
|
||||||
|
- trigger: ":h1:"
|
||||||
|
label: "Markdown - Header1"
|
||||||
|
replace: "#"
|
||||||
|
|
||||||
|
- trigger: ":h2:"
|
||||||
|
label: "Markdown - Header2"
|
||||||
|
replace: "##"
|
||||||
|
|
||||||
|
- trigger: ":h3:"
|
||||||
|
label: "Markdown - Header3"
|
||||||
|
replace: "###"
|
||||||
|
|
||||||
|
- trigger: ":h4:"
|
||||||
|
label: "Markdown - Header4"
|
||||||
|
replace: "####"
|
||||||
|
|
||||||
|
- trigger: ":h5:"
|
||||||
|
label: "Markdown - Header5"
|
||||||
|
replace: "#####"
|
||||||
|
|
||||||
|
- trigger: ":h6:"
|
||||||
|
label: "Markdown - Header6"
|
||||||
|
replace: "######"
|
||||||
|
|
||||||
|
- trigger: ":bold:"
|
||||||
|
label: "Markdown - Bold"
|
||||||
|
replace: "**$|$**"
|
||||||
|
|
||||||
|
- trigger: ":italic:"
|
||||||
|
label: "Markdown - Italic"
|
||||||
|
replace: "*$|$*"
|
||||||
|
|
||||||
|
- trigger: ":strike:"
|
||||||
|
label: "Markdown - Strikethrough"
|
||||||
|
replace: "~~$|$~~"
|
||||||
|
|
||||||
|
- trigger: ":url:"
|
||||||
|
label: "Markdown - URL"
|
||||||
|
replace: "[$|$]()"
|
||||||
|
|
||||||
|
- trigger: ":img:"
|
||||||
|
label: "Markdown - Image"
|
||||||
|
replace: ""
|
||||||
|
|
||||||
|
- trigger: ":horizontal:"
|
||||||
|
label: "Markdown - Horizontal line"
|
||||||
|
replace: "___"
|
||||||
|
|
||||||
|
- trigger: ":task:"
|
||||||
|
label: "Markdown - Task"
|
||||||
|
replace: "- [ ] "
|
||||||
|
|
||||||
|
- trigger: ":taskdone:"
|
||||||
|
label: "Markdown - Task completed"
|
||||||
|
replace: "- [x] "
|
||||||
|
|
||||||
|
- trigger: ":collapse:"
|
||||||
|
label: "Markdown - Collapse block"
|
||||||
|
replace: |-
|
||||||
|
<details>
|
||||||
|
<summary></summary>
|
||||||
|
$|$
|
||||||
|
</details>
|
||||||
|
force_clipboard: true
|
||||||
|
|
||||||
|
- trigger: ":comment:"
|
||||||
|
label: "Markdown - Comment"
|
||||||
|
replace: "<!--- $|$ -->"
|
||||||
|
force_clipboard: true
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
Copyright (c) 2019 Timo Runge <[email protected]>
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
1. Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its contributors
|
||||||
|
may be used to endorse or promote products derived from this software
|
||||||
|
without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||||
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
# misspell-en
|
||||||
|
|
||||||
|
misspell-en is a espanso package which is replacing commonly misspelled english words.
|
||||||
|
The package is based on [github.com/client9/misspell](https://github.com/client9/misspell).
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Install the package with:
|
||||||
|
|
||||||
|
```
|
||||||
|
espanso install misspell-en
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Type `yuo` and see what's happening.
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
[BSD 3-Clause "New" or "Revised" License](LICENSE)
|
||||||
|
|
||||||
|
Misspell is [MIT](https://github.com/client9/misspell/blob/master/LICENSE).
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
author: Timo Runge
|
||||||
|
description: Replace commonly misspelled english words.
|
||||||
|
name: misspell-en
|
||||||
|
title: Misspell EN
|
||||||
|
version: 0.1.2
|
||||||
|
homepage: "https://github.com/timorunge/espanso-misspell-en"
|
||||||
|
tags: ["spell-correction", "english"]
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
hub
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,72 @@
|
|||||||
|
{
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"wmClass": "jetbrains-toolbox",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.amezin.ddterm",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.donadigo.eddy",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Conky",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Gnome-initial-setup",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "org.gnome.Calculator",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "gnome-terminal-preferences",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Guake",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "zoom",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "mpv",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Bitwarden",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Hidamari",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.mattjakeman.ExtensionManager",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Cider",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Ulauncher",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.nextcloud.desktopclient.nextcloud",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Emulator",
|
||||||
|
"mode": "float"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
{
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"wmClass": "jetbrains-toolbox",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.amezin.ddterm",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.donadigo.eddy",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Conky",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Gnome-initial-setup",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "org.gnome.Calculator",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "gnome-terminal-preferences",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Guake",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "zoom",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "mpv",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Bitwarden",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Hidamari",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.mattjakeman.ExtensionManager",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Cider",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Ulauncher",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.nextcloud.desktopclient.nextcloud",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Emulator",
|
||||||
|
"mode": "float"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
{
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"wmClass": "jetbrains-toolbox",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.amezin.ddterm",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.donadigo.eddy",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Conky",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Gnome-initial-setup",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "org.gnome.Calculator",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "gnome-terminal-preferences",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Guake",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "zoom",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "mpv",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Bitwarden",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Hidamari",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.mattjakeman.ExtensionManager",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Cider",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Ulauncher",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.nextcloud.desktopclient.nextcloud",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Emulator",
|
||||||
|
"mode": "float"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
{
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"wmClass": "jetbrains-toolbox",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.amezin.ddterm",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.donadigo.eddy",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Conky",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Gnome-initial-setup",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "org.gnome.Calculator",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "gnome-terminal-preferences",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Guake",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "zoom",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "mpv",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Bitwarden",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Hidamari",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.mattjakeman.ExtensionManager",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Cider",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Ulauncher",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.nextcloud.desktopclient.nextcloud",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Emulator",
|
||||||
|
"mode": "float"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
{
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"wmClass": "jetbrains-toolbox",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.amezin.ddterm",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.donadigo.eddy",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Conky",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Gnome-initial-setup",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "org.gnome.Calculator",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "gnome-terminal-preferences",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Guake",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "zoom",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "mpv",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Bitwarden",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Hidamari",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.mattjakeman.ExtensionManager",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Cider",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Ulauncher",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.nextcloud.desktopclient.nextcloud",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Emulator",
|
||||||
|
"mode": "float"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
{
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"wmClass": "jetbrains-toolbox",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.amezin.ddterm",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.donadigo.eddy",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Conky",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Gnome-initial-setup",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "org.gnome.Calculator",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "gnome-terminal-preferences",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Guake",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "zoom",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "mpv",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Bitwarden",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Hidamari",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.mattjakeman.ExtensionManager",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Cider",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Ulauncher",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.nextcloud.desktopclient.nextcloud",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Emulator",
|
||||||
|
"mode": "float"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,76 @@
|
|||||||
|
{
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"wmClass": "jetbrains-toolbox",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.amezin.ddterm",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Com.github.donadigo.eddy",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Conky",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Gnome-initial-setup",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "org.gnome.Calculator",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "gnome-terminal-preferences",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Guake",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "zoom",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Bitwarden",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Hidamari",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.mattjakeman.ExtensionManager",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Cider",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Ulauncher",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "com.nextcloud.desktopclient.nextcloud",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "mpv",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "Spotify",
|
||||||
|
"mode": "float"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"wmClass": "bitwarden",
|
||||||
|
"mode": "float"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,190 @@
|
|||||||
|
.tiled {
|
||||||
|
color: rgba(236, 94, 94, 1);
|
||||||
|
opacity: 1;
|
||||||
|
border-width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.split {
|
||||||
|
color: rgba(255, 246, 108, 1);
|
||||||
|
opacity: 1;
|
||||||
|
border-width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.stacked {
|
||||||
|
color: rgba(247, 162, 43, 1);
|
||||||
|
opacity: 1;
|
||||||
|
border-width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbed {
|
||||||
|
color: rgba(17, 199, 224, 1);
|
||||||
|
opacity: 1;
|
||||||
|
border-width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.floated {
|
||||||
|
color: rgba(180, 167, 214, 1);
|
||||||
|
border-width: 3px;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tiled-border {
|
||||||
|
border-width: 3px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-split-border {
|
||||||
|
border-width: 3px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* forge-36le: St does not paint an asymmetric (single-side) border when a
|
||||||
|
* border-radius is set, so the directional hint never rendered. Drop the radius
|
||||||
|
* on the one-edge variants; St paints a straight single-side border reliably. */
|
||||||
|
|
||||||
|
.window-split-horizontal {
|
||||||
|
border-left-width: 0;
|
||||||
|
border-top-width: 0;
|
||||||
|
border-bottom-width: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-split-vertical {
|
||||||
|
border-left-width: 0;
|
||||||
|
border-top-width: 0;
|
||||||
|
border-right-width: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-stacked-border {
|
||||||
|
border-width: 3px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-border {
|
||||||
|
border-width: 3px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-bg {
|
||||||
|
border-radius: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-tab {
|
||||||
|
background-color: rgba(54, 47, 45, 1);
|
||||||
|
border-color: rgba(98,160,234,0.6);
|
||||||
|
border-width: 1px;
|
||||||
|
border-radius: 8px;
|
||||||
|
color: white;
|
||||||
|
margin: 1px;
|
||||||
|
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-tab-active {
|
||||||
|
background-color: rgb(98,160,234);
|
||||||
|
color: black;
|
||||||
|
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-tab-close {
|
||||||
|
padding: 3px;
|
||||||
|
margin: 4px;
|
||||||
|
border-radius: 16px;
|
||||||
|
width: 16px;
|
||||||
|
background-color: #e06666;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-tab-icon {
|
||||||
|
margin: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-floated-border {
|
||||||
|
border-width: 3px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tilepreview-tiled {
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: rgba(98,160,234,0.3);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(98,160,234,0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tilepreview-stacked {
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: rgba(98,160,234,0.3);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(98,160,234,0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tilepreview-swap {
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: rgba(162, 247, 43, 0.4);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(162, 247, 43, 0.4);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tilepreview-tabbed {
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: rgba(98,160,234,0.3);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(98,160,234,0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Keybindings Cheatsheet Overlay */
|
||||||
|
|
||||||
|
.forge-cheatsheet {
|
||||||
|
background-color: #2d2d2d;
|
||||||
|
border-radius: 16px;
|
||||||
|
padding: 24px 32px;
|
||||||
|
border: 1px solid #4d4d4d;
|
||||||
|
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-title {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #ffffff;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-category {
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #78aeed;
|
||||||
|
margin-top: 16px;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-row {
|
||||||
|
font-size: 12px;
|
||||||
|
color: #eeeeec;
|
||||||
|
margin: 4px 0;
|
||||||
|
padding: 2px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-key {
|
||||||
|
font-family: monospace;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #f5c211;
|
||||||
|
min-width: 180px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-desc {
|
||||||
|
color: #d0cfcc;
|
||||||
|
}
|
||||||
@@ -0,0 +1,190 @@
|
|||||||
|
.tiled {
|
||||||
|
color: rgba(236, 94, 94, 1);
|
||||||
|
opacity: 1;
|
||||||
|
border-width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.split {
|
||||||
|
color: rgba(255, 246, 108, 1);
|
||||||
|
opacity: 1;
|
||||||
|
border-width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.stacked {
|
||||||
|
color: rgba(247, 162, 43, 1);
|
||||||
|
opacity: 1;
|
||||||
|
border-width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbed {
|
||||||
|
color: rgba(17, 199, 224, 1);
|
||||||
|
opacity: 1;
|
||||||
|
border-width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.floated {
|
||||||
|
color: rgba(180, 167, 214, 1);
|
||||||
|
border-width: 3px;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tiled-border {
|
||||||
|
border-width: 3px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-split-border {
|
||||||
|
border-width: 3px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* forge-36le: St does not paint an asymmetric (single-side) border when a
|
||||||
|
* border-radius is set, so the directional hint never rendered. Drop the radius
|
||||||
|
* on the one-edge variants; St paints a straight single-side border reliably. */
|
||||||
|
|
||||||
|
.window-split-horizontal {
|
||||||
|
border-left-width: 0;
|
||||||
|
border-top-width: 0;
|
||||||
|
border-bottom-width: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-split-vertical {
|
||||||
|
border-left-width: 0;
|
||||||
|
border-top-width: 0;
|
||||||
|
border-right-width: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-stacked-border {
|
||||||
|
border-width: 3px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-border {
|
||||||
|
border-width: 3px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-bg {
|
||||||
|
border-radius: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-tab {
|
||||||
|
background-color: rgba(54, 47, 45, 1);
|
||||||
|
border-color: rgba(98,160,234,0.6);
|
||||||
|
border-width: 1px;
|
||||||
|
border-radius: 8px;
|
||||||
|
color: white;
|
||||||
|
margin: 1px;
|
||||||
|
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-tab-active {
|
||||||
|
background-color: rgb(98,160,234);
|
||||||
|
color: black;
|
||||||
|
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-tab-close {
|
||||||
|
padding: 3px;
|
||||||
|
margin: 4px;
|
||||||
|
border-radius: 16px;
|
||||||
|
width: 16px;
|
||||||
|
background-color: #e06666;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tabbed-tab-icon {
|
||||||
|
margin: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-floated-border {
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: rgb(98,160,234);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tilepreview-tiled {
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: rgba(98,160,234,0.3);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(98,160,234,0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tilepreview-stacked {
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: rgba(98,160,234,0.3);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(98,160,234,0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tilepreview-swap {
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: rgba(162, 247, 43, 0.4);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(162, 247, 43, 0.4);
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-tilepreview-tabbed {
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: rgba(98,160,234,0.3);
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 14px;
|
||||||
|
background-color: rgba(98,160,234,0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Keybindings Cheatsheet Overlay */
|
||||||
|
|
||||||
|
.forge-cheatsheet {
|
||||||
|
background-color: #2d2d2d;
|
||||||
|
border-radius: 16px;
|
||||||
|
padding: 24px 32px;
|
||||||
|
border: 1px solid #4d4d4d;
|
||||||
|
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-title {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #ffffff;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-category {
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #78aeed;
|
||||||
|
margin-top: 16px;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-row {
|
||||||
|
font-size: 12px;
|
||||||
|
color: #eeeeec;
|
||||||
|
margin: 4px 0;
|
||||||
|
padding: 2px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-key {
|
||||||
|
font-family: monospace;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #f5c211;
|
||||||
|
min-width: 180px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.forge-cheatsheet-desc {
|
||||||
|
color: #d0cfcc;
|
||||||
|
}
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
|
||||||
|
# Theme
|
||||||
|
|
||||||
|
theme = TokyoNight Moon
|
||||||
|
font-family = "VictorMono Nerd Font Mono"
|
||||||
|
#font-family-bold = "VictorMono Nerd Font Mono, Bold"
|
||||||
|
#font-family-italic = "VictorMono Nerd Font Mono, Regular Italic"
|
||||||
|
#font-family-bold-italic = "VictorMono Nerd Font Mono, Bold Italic"
|
||||||
|
font-size = 15
|
||||||
|
background-opacity = 0.92
|
||||||
|
background-blur = true
|
||||||
|
shell-integration = detect
|
||||||
|
|
||||||
|
# Keybindings
|
||||||
|
keybind = ctrl+shift+r=reload_config
|
||||||
|
|
||||||
|
## Tabs
|
||||||
|
keybind = ctrl+shift+h=previous_tab
|
||||||
|
keybind = ctrl+shift+l=next_tab
|
||||||
|
keybind = ctrl+shift+j=move_tab:-1
|
||||||
|
keybind = ctrl+shift+k=move_tab:1
|
||||||
|
keybind = ctrl+shift+q=close_tab
|
||||||
|
|
||||||
|
## Splits
|
||||||
|
keybind = ctrl+shift+b=new_split:right
|
||||||
|
keybind = ctrl+shift+d=new_split:down
|
||||||
|
keybind = ctrl+shift+,=goto_split:previous
|
||||||
|
keybind = ctrl+shift+.=goto_split:next
|
||||||
|
keybind = ctrl+shift+up=goto_split:up
|
||||||
|
keybind = ctrl+shift+down=goto_split:down
|
||||||
|
keybind = ctrl+shift+left=goto_split:left
|
||||||
|
keybind = ctrl+shift+right=goto_split:right
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#262427
|
||||||
|
palette = 1=#ff666d
|
||||||
|
palette = 2=#b3e03a
|
||||||
|
palette = 3=#ffc739
|
||||||
|
palette = 4=#00cde8
|
||||||
|
palette = 5=#a392e8
|
||||||
|
palette = 6=#9deaf6
|
||||||
|
palette = 7=#fcfcfa
|
||||||
|
palette = 8=#545452
|
||||||
|
palette = 9=#ff7e83
|
||||||
|
palette = 10=#bee55e
|
||||||
|
palette = 11=#ffd05e
|
||||||
|
palette = 12=#1bd5eb
|
||||||
|
palette = 13=#b0a3eb
|
||||||
|
palette = 14=#acedf8
|
||||||
|
palette = 15=#fcfcfa
|
||||||
|
background = #262427
|
||||||
|
foreground = #fcfcfa
|
||||||
|
cursor-color = #fcfcfa
|
||||||
|
cursor-text = #000000
|
||||||
|
selection-background = #fcfcfa
|
||||||
|
selection-foreground = #262427
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#a03050
|
||||||
|
palette = 2=#40d080
|
||||||
|
palette = 3=#e09040
|
||||||
|
palette = 4=#3060b0
|
||||||
|
palette = 5=#603090
|
||||||
|
palette = 6=#0090c0
|
||||||
|
palette = 7=#dbded8
|
||||||
|
palette = 8=#685656
|
||||||
|
palette = 9=#c06060
|
||||||
|
palette = 10=#90d050
|
||||||
|
palette = 11=#e0d000
|
||||||
|
palette = 12=#00b0c0
|
||||||
|
palette = 13=#801070
|
||||||
|
palette = 14=#20b0c0
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #040404
|
||||||
|
foreground = #feffff
|
||||||
|
cursor-color = #e0d000
|
||||||
|
cursor-text = #000000
|
||||||
|
selection-background = #606060
|
||||||
|
selection-foreground = #ffffff
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#090300
|
||||||
|
palette = 1=#db2d20
|
||||||
|
palette = 2=#01a252
|
||||||
|
palette = 3=#caba00
|
||||||
|
palette = 4=#01a0e4
|
||||||
|
palette = 5=#a16a94
|
||||||
|
palette = 6=#8fbece
|
||||||
|
palette = 7=#a5a2a2
|
||||||
|
palette = 8=#5c5855
|
||||||
|
palette = 9=#dbaec3
|
||||||
|
palette = 10=#3a3432
|
||||||
|
palette = 11=#4a4543
|
||||||
|
palette = 12=#807d7c
|
||||||
|
palette = 13=#bcbbba
|
||||||
|
palette = 14=#cdab53
|
||||||
|
palette = 15=#f7f7f7
|
||||||
|
background = #f7f7f7
|
||||||
|
foreground = #4a4543
|
||||||
|
cursor-color = #4a4543
|
||||||
|
cursor-text = #f7f7f7
|
||||||
|
selection-background = #a5a2a2
|
||||||
|
selection-foreground = #4a4543
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#090300
|
||||||
|
palette = 1=#db2d20
|
||||||
|
palette = 2=#01a252
|
||||||
|
palette = 3=#fded02
|
||||||
|
palette = 4=#01a0e4
|
||||||
|
palette = 5=#a16a94
|
||||||
|
palette = 6=#b5e4f4
|
||||||
|
palette = 7=#a5a2a2
|
||||||
|
palette = 8=#5c5855
|
||||||
|
palette = 9=#e8bbd0
|
||||||
|
palette = 10=#47413f
|
||||||
|
palette = 11=#4a4543
|
||||||
|
palette = 12=#807d7c
|
||||||
|
palette = 13=#d6d5d4
|
||||||
|
palette = 14=#cdab53
|
||||||
|
palette = 15=#f7f7f7
|
||||||
|
background = #090300
|
||||||
|
foreground = #a5a2a2
|
||||||
|
cursor-color = #a5a2a2
|
||||||
|
cursor-text = #090300
|
||||||
|
selection-background = #4a4543
|
||||||
|
selection-foreground = #a5a2a2
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#191919
|
||||||
|
palette = 1=#aa342e
|
||||||
|
palette = 2=#4b8c0f
|
||||||
|
palette = 3=#dbba00
|
||||||
|
palette = 4=#1370d3
|
||||||
|
palette = 5=#c43ac3
|
||||||
|
palette = 6=#008eb0
|
||||||
|
palette = 7=#bebebe
|
||||||
|
palette = 8=#525252
|
||||||
|
palette = 9=#f05b50
|
||||||
|
palette = 10=#95dc55
|
||||||
|
palette = 11=#ffe763
|
||||||
|
palette = 12=#60a4ec
|
||||||
|
palette = 13=#e26be2
|
||||||
|
palette = 14=#60b6cb
|
||||||
|
palette = 15=#f7f7f7
|
||||||
|
background = #102040
|
||||||
|
foreground = #dddddd
|
||||||
|
cursor-color = #007acc
|
||||||
|
cursor-text = #bfdbfe
|
||||||
|
selection-background = #bfdbfe
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#cd0000
|
||||||
|
palette = 2=#00cd00
|
||||||
|
palette = 3=#cdcd00
|
||||||
|
palette = 4=#1093f5
|
||||||
|
palette = 5=#cd00cd
|
||||||
|
palette = 6=#00cdcd
|
||||||
|
palette = 7=#faebd7
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#ff0000
|
||||||
|
palette = 10=#00ff00
|
||||||
|
palette = 11=#ffff00
|
||||||
|
palette = 12=#11b5f6
|
||||||
|
palette = 13=#ff00ff
|
||||||
|
palette = 14=#00ffff
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #111416
|
||||||
|
foreground = #eeeeec
|
||||||
|
cursor-color = #bbbbbb
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #eeeeec
|
||||||
|
selection-foreground = #333333
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#040404
|
||||||
|
palette = 1=#d84a33
|
||||||
|
palette = 2=#5da602
|
||||||
|
palette = 3=#eebb6e
|
||||||
|
palette = 4=#417ab3
|
||||||
|
palette = 5=#e5c499
|
||||||
|
palette = 6=#bdcfe5
|
||||||
|
palette = 7=#dbded8
|
||||||
|
palette = 8=#685656
|
||||||
|
palette = 9=#d76b42
|
||||||
|
palette = 10=#99b52c
|
||||||
|
palette = 11=#ffb670
|
||||||
|
palette = 12=#97d7ef
|
||||||
|
palette = 13=#aa7900
|
||||||
|
palette = 14=#bdcfe5
|
||||||
|
palette = 15=#e4d5c7
|
||||||
|
background = #040404
|
||||||
|
foreground = #feffff
|
||||||
|
cursor-color = #feffff
|
||||||
|
cursor-text = #000000
|
||||||
|
selection-background = #606060
|
||||||
|
selection-foreground = #ffffff
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#050404
|
||||||
|
palette = 1=#bd0013
|
||||||
|
palette = 2=#4ab118
|
||||||
|
palette = 3=#e7741e
|
||||||
|
palette = 4=#0f4ac6
|
||||||
|
palette = 5=#665993
|
||||||
|
palette = 6=#70a598
|
||||||
|
palette = 7=#f8dcc0
|
||||||
|
palette = 8=#4e7cbf
|
||||||
|
palette = 9=#fc5f5a
|
||||||
|
palette = 10=#9eff6e
|
||||||
|
palette = 11=#efc11a
|
||||||
|
palette = 12=#1997c6
|
||||||
|
palette = 13=#9b5953
|
||||||
|
palette = 14=#c8faf4
|
||||||
|
palette = 15=#f6f5fb
|
||||||
|
background = #1f1d45
|
||||||
|
foreground = #f8dcc0
|
||||||
|
cursor-color = #efbf38
|
||||||
|
cursor-text = #08080a
|
||||||
|
selection-background = #706b4e
|
||||||
|
selection-foreground = #f3d9c4
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#241f31
|
||||||
|
palette = 1=#c01c28
|
||||||
|
palette = 2=#2ec27e
|
||||||
|
palette = 3=#e8b504
|
||||||
|
palette = 4=#1e78e4
|
||||||
|
palette = 5=#9841bb
|
||||||
|
palette = 6=#0ab9dc
|
||||||
|
palette = 7=#c0bfbc
|
||||||
|
palette = 8=#5e5c64
|
||||||
|
palette = 9=#ed333b
|
||||||
|
palette = 10=#4ad67c
|
||||||
|
palette = 11=#d2be36
|
||||||
|
palette = 12=#51a1ff
|
||||||
|
palette = 13=#c061cb
|
||||||
|
palette = 14=#4fd2fd
|
||||||
|
palette = 15=#f6f5f4
|
||||||
|
background = #ffffff
|
||||||
|
foreground = #000000
|
||||||
|
cursor-color = #000000
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #c0bfbc
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#241f31
|
||||||
|
palette = 1=#c01c28
|
||||||
|
palette = 2=#2ec27e
|
||||||
|
palette = 3=#f5c211
|
||||||
|
palette = 4=#1e78e4
|
||||||
|
palette = 5=#9841bb
|
||||||
|
palette = 6=#0ab9dc
|
||||||
|
palette = 7=#c0bfbc
|
||||||
|
palette = 8=#5e5c64
|
||||||
|
palette = 9=#ed333b
|
||||||
|
palette = 10=#57e389
|
||||||
|
palette = 11=#f8e45c
|
||||||
|
palette = 12=#51a1ff
|
||||||
|
palette = 13=#c061cb
|
||||||
|
palette = 14=#4fd2fd
|
||||||
|
palette = 15=#f6f5f4
|
||||||
|
background = #1d1d20
|
||||||
|
foreground = #ffffff
|
||||||
|
cursor-color = #ffffff
|
||||||
|
cursor-text = #1d1d20
|
||||||
|
selection-background = #ffffff
|
||||||
|
selection-foreground = #5e5c64
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#151515
|
||||||
|
palette = 1=#ac4142
|
||||||
|
palette = 2=#7e8e50
|
||||||
|
palette = 3=#e5b567
|
||||||
|
palette = 4=#6c99bb
|
||||||
|
palette = 5=#9f4e85
|
||||||
|
palette = 6=#7dd6cf
|
||||||
|
palette = 7=#d0d0d0
|
||||||
|
palette = 8=#505050
|
||||||
|
palette = 9=#ac4142
|
||||||
|
palette = 10=#7e8e50
|
||||||
|
palette = 11=#e5b567
|
||||||
|
palette = 12=#6c99bb
|
||||||
|
palette = 13=#9f4e85
|
||||||
|
palette = 14=#7dd6cf
|
||||||
|
palette = 15=#f5f5f5
|
||||||
|
background = #212121
|
||||||
|
foreground = #d0d0d0
|
||||||
|
cursor-color = #d0d0d0
|
||||||
|
cursor-text = #151515
|
||||||
|
selection-background = #303030
|
||||||
|
selection-foreground = #d0d0d0
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#aa3731
|
||||||
|
palette = 2=#448c27
|
||||||
|
palette = 3=#cb9000
|
||||||
|
palette = 4=#325cc0
|
||||||
|
palette = 5=#7a3e9d
|
||||||
|
palette = 6=#0083b2
|
||||||
|
palette = 7=#b7b7b7
|
||||||
|
palette = 8=#777777
|
||||||
|
palette = 9=#f05050
|
||||||
|
palette = 10=#60cb00
|
||||||
|
palette = 11=#f2af50
|
||||||
|
palette = 12=#007acc
|
||||||
|
palette = 13=#e64ce6
|
||||||
|
palette = 14=#00aacb
|
||||||
|
palette = 15=#f7f7f7
|
||||||
|
background = #f7f7f7
|
||||||
|
foreground = #000000
|
||||||
|
cursor-color = #007acc
|
||||||
|
cursor-text = #bfdbfe
|
||||||
|
selection-background = #bfdbfe
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#112616
|
||||||
|
palette = 1=#7f2b27
|
||||||
|
palette = 2=#2f7e25
|
||||||
|
palette = 3=#717f24
|
||||||
|
palette = 4=#2f6a7f
|
||||||
|
palette = 5=#47587f
|
||||||
|
palette = 6=#327f77
|
||||||
|
palette = 7=#647d75
|
||||||
|
palette = 8=#3c4812
|
||||||
|
palette = 9=#e08009
|
||||||
|
palette = 10=#18e000
|
||||||
|
palette = 11=#bde000
|
||||||
|
palette = 12=#00aae0
|
||||||
|
palette = 13=#0058e0
|
||||||
|
palette = 14=#00e0c4
|
||||||
|
palette = 15=#73fa91
|
||||||
|
background = #0f1610
|
||||||
|
foreground = #637d75
|
||||||
|
cursor-color = #73fa91
|
||||||
|
cursor-text = #0f1610
|
||||||
|
selection-background = #1d4125
|
||||||
|
selection-foreground = #73fa91
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#cd3131
|
||||||
|
palette = 2=#05bc79
|
||||||
|
palette = 3=#e5e512
|
||||||
|
palette = 4=#2472c8
|
||||||
|
palette = 5=#bc3fbc
|
||||||
|
palette = 6=#0fa8cd
|
||||||
|
palette = 7=#e5e5e5
|
||||||
|
palette = 8=#666666
|
||||||
|
palette = 9=#cd3131
|
||||||
|
palette = 10=#05bc79
|
||||||
|
palette = 11=#e5e512
|
||||||
|
palette = 12=#2472c8
|
||||||
|
palette = 13=#bc3fbc
|
||||||
|
palette = 14=#0fa8cd
|
||||||
|
palette = 15=#e5e5e5
|
||||||
|
background = #262a33
|
||||||
|
foreground = #e5e5e5
|
||||||
|
cursor-color = #f8f8f0
|
||||||
|
cursor-text = #b5b5a8
|
||||||
|
selection-background = #5a5c62
|
||||||
|
selection-foreground = #ece7e7
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#c91b00
|
||||||
|
palette = 2=#00c200
|
||||||
|
palette = 3=#c7c400
|
||||||
|
palette = 4=#1c3fe1
|
||||||
|
palette = 5=#ca30c7
|
||||||
|
palette = 6=#00c5c7
|
||||||
|
palette = 7=#c7c7c7
|
||||||
|
palette = 8=#686868
|
||||||
|
palette = 9=#ff6e67
|
||||||
|
palette = 10=#5ffa68
|
||||||
|
palette = 11=#fffc67
|
||||||
|
palette = 12=#6871ff
|
||||||
|
palette = 13=#ff77ff
|
||||||
|
palette = 14=#60fdff
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #2c2b2b
|
||||||
|
foreground = #d5a200
|
||||||
|
cursor-color = #c7c7c7
|
||||||
|
cursor-text = #8c8c8c
|
||||||
|
selection-background = #6b5b02
|
||||||
|
selection-foreground = #67e000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#1a1a1a
|
||||||
|
palette = 1=#cc372e
|
||||||
|
palette = 2=#26a439
|
||||||
|
palette = 3=#cdac08
|
||||||
|
palette = 4=#0869cb
|
||||||
|
palette = 5=#9647bf
|
||||||
|
palette = 6=#479ec2
|
||||||
|
palette = 7=#98989d
|
||||||
|
palette = 8=#464646
|
||||||
|
palette = 9=#ff453a
|
||||||
|
palette = 10=#32d74b
|
||||||
|
palette = 11=#ffd60a
|
||||||
|
palette = 12=#0a84ff
|
||||||
|
palette = 13=#bf5af2
|
||||||
|
palette = 14=#76d6ff
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #1e1e1e
|
||||||
|
foreground = #ffffff
|
||||||
|
cursor-color = #98989d
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #3f638b
|
||||||
|
selection-foreground = #ffffff
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#1a1a1a
|
||||||
|
palette = 1=#cc372e
|
||||||
|
palette = 2=#26a439
|
||||||
|
palette = 3=#cdac08
|
||||||
|
palette = 4=#0869cb
|
||||||
|
palette = 5=#9647bf
|
||||||
|
palette = 6=#479ec2
|
||||||
|
palette = 7=#98989d
|
||||||
|
palette = 8=#464646
|
||||||
|
palette = 9=#ff453a
|
||||||
|
palette = 10=#32d74b
|
||||||
|
palette = 11=#e5bc00
|
||||||
|
palette = 12=#0a84ff
|
||||||
|
palette = 13=#bf5af2
|
||||||
|
palette = 14=#69c9f2
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #feffff
|
||||||
|
foreground = #000000
|
||||||
|
cursor-color = #98989d
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #abd8ff
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#333333
|
||||||
|
palette = 1=#da2700
|
||||||
|
palette = 2=#12c258
|
||||||
|
palette = 3=#ffc656
|
||||||
|
palette = 4=#518bfc
|
||||||
|
palette = 5=#e37bd9
|
||||||
|
palette = 6=#63fad5
|
||||||
|
palette = 7=#bab2b2
|
||||||
|
palette = 8=#777777
|
||||||
|
palette = 9=#ffb9b9
|
||||||
|
palette = 10=#e3f6aa
|
||||||
|
palette = 11=#ffddaa
|
||||||
|
palette = 12=#b3e8f3
|
||||||
|
palette = 13=#cbbaf9
|
||||||
|
palette = 14=#bcffc7
|
||||||
|
palette = 15=#efefef
|
||||||
|
background = #201f1e
|
||||||
|
foreground = #eee4d9
|
||||||
|
cursor-color = #872929
|
||||||
|
cursor-text = #fffbf2
|
||||||
|
selection-background = #25524a
|
||||||
|
selection-foreground = #f3fffd
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#2c2c2c
|
||||||
|
palette = 1=#d3322d
|
||||||
|
palette = 2=#588b35
|
||||||
|
palette = 3=#fca93a
|
||||||
|
palette = 4=#2465c2
|
||||||
|
palette = 5=#7332b4
|
||||||
|
palette = 6=#64e1b8
|
||||||
|
palette = 7=#f7f7f7
|
||||||
|
palette = 8=#535353
|
||||||
|
palette = 9=#fa5852
|
||||||
|
palette = 10=#8dc252
|
||||||
|
palette = 11=#ffea51
|
||||||
|
palette = 12=#6ab5f8
|
||||||
|
palette = 13=#be68ca
|
||||||
|
palette = 14=#89ffdb
|
||||||
|
palette = 15=#fefefe
|
||||||
|
background = #1e1e1e
|
||||||
|
foreground = #eaeaea
|
||||||
|
cursor-color = #f7f7f7
|
||||||
|
cursor-text = #000000
|
||||||
|
selection-background = #46515e
|
||||||
|
selection-foreground = #f1f3f5
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#232323
|
||||||
|
palette = 1=#ff000f
|
||||||
|
palette = 2=#8ce10b
|
||||||
|
palette = 3=#ffb900
|
||||||
|
palette = 4=#008df8
|
||||||
|
palette = 5=#6d43a6
|
||||||
|
palette = 6=#00d8eb
|
||||||
|
palette = 7=#ffffff
|
||||||
|
palette = 8=#444444
|
||||||
|
palette = 9=#ff2740
|
||||||
|
palette = 10=#abe15b
|
||||||
|
palette = 11=#ffd242
|
||||||
|
palette = 12=#0092ff
|
||||||
|
palette = 13=#9a5feb
|
||||||
|
palette = 14=#67fff0
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #0e1019
|
||||||
|
foreground = #fffaf4
|
||||||
|
cursor-color = #ff0018
|
||||||
|
cursor-text = #ff8ca4
|
||||||
|
selection-background = #002a3b
|
||||||
|
selection-foreground = #ffffff
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#3d352a
|
||||||
|
palette = 1=#cd5c5c
|
||||||
|
palette = 2=#86af80
|
||||||
|
palette = 3=#e8ae5b
|
||||||
|
palette = 4=#6495ed
|
||||||
|
palette = 5=#deb887
|
||||||
|
palette = 6=#b0c4de
|
||||||
|
palette = 7=#bbaa99
|
||||||
|
palette = 8=#554444
|
||||||
|
palette = 9=#cc5533
|
||||||
|
palette = 10=#88aa22
|
||||||
|
palette = 11=#ffa75d
|
||||||
|
palette = 12=#87ceeb
|
||||||
|
palette = 13=#996600
|
||||||
|
palette = 14=#b0c4de
|
||||||
|
palette = 15=#ddccbb
|
||||||
|
background = #1c1c1c
|
||||||
|
foreground = #ddeedd
|
||||||
|
cursor-color = #e2bbef
|
||||||
|
cursor-text = #000000
|
||||||
|
selection-background = #4d4d4d
|
||||||
|
selection-foreground = #ffffff
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#202746
|
||||||
|
palette = 1=#c94922
|
||||||
|
palette = 2=#ac9739
|
||||||
|
palette = 3=#c08b30
|
||||||
|
palette = 4=#3d8fd1
|
||||||
|
palette = 5=#6679cc
|
||||||
|
palette = 6=#22a2c9
|
||||||
|
palette = 7=#979db4
|
||||||
|
palette = 8=#6b7394
|
||||||
|
palette = 9=#c76b29
|
||||||
|
palette = 10=#4f587c
|
||||||
|
palette = 11=#5e6687
|
||||||
|
palette = 12=#898ea4
|
||||||
|
palette = 13=#dfe2f1
|
||||||
|
palette = 14=#9c637a
|
||||||
|
palette = 15=#f5f7ff
|
||||||
|
background = #202746
|
||||||
|
foreground = #979db4
|
||||||
|
cursor-color = #979db4
|
||||||
|
cursor-text = #202746
|
||||||
|
selection-background = #5e6687
|
||||||
|
selection-foreground = #979db4
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#fd5ff1
|
||||||
|
palette = 2=#87c38a
|
||||||
|
palette = 3=#ffd7b1
|
||||||
|
palette = 4=#85befd
|
||||||
|
palette = 5=#b9b6fc
|
||||||
|
palette = 6=#85befd
|
||||||
|
palette = 7=#e0e0e0
|
||||||
|
palette = 8=#4c4c4c
|
||||||
|
palette = 9=#fd5ff1
|
||||||
|
palette = 10=#94fa36
|
||||||
|
palette = 11=#f5ffa8
|
||||||
|
palette = 12=#96cbfe
|
||||||
|
palette = 13=#b9b6fc
|
||||||
|
palette = 14=#85befd
|
||||||
|
palette = 15=#e0e0e0
|
||||||
|
background = #161719
|
||||||
|
foreground = #c5c8c6
|
||||||
|
cursor-color = #d0d0d0
|
||||||
|
cursor-text = #151515
|
||||||
|
selection-background = #444444
|
||||||
|
selection-foreground = #c5c8c6
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#21252b
|
||||||
|
palette = 1=#e06c75
|
||||||
|
palette = 2=#98c379
|
||||||
|
palette = 3=#e5c07b
|
||||||
|
palette = 4=#61afef
|
||||||
|
palette = 5=#c678dd
|
||||||
|
palette = 6=#56b6c2
|
||||||
|
palette = 7=#abb2bf
|
||||||
|
palette = 8=#767676
|
||||||
|
palette = 9=#e06c75
|
||||||
|
palette = 10=#98c379
|
||||||
|
palette = 11=#e5c07b
|
||||||
|
palette = 12=#61afef
|
||||||
|
palette = 13=#c678dd
|
||||||
|
palette = 14=#56b6c2
|
||||||
|
palette = 15=#abb2bf
|
||||||
|
background = #21252b
|
||||||
|
foreground = #abb2bf
|
||||||
|
cursor-color = #abb2bf
|
||||||
|
cursor-text = #21252b
|
||||||
|
selection-background = #323844
|
||||||
|
selection-foreground = #abb2bf
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#de3e35
|
||||||
|
palette = 2=#3f953a
|
||||||
|
palette = 3=#d2b67c
|
||||||
|
palette = 4=#2f5af3
|
||||||
|
palette = 5=#950095
|
||||||
|
palette = 6=#3f953a
|
||||||
|
palette = 7=#bbbbbb
|
||||||
|
palette = 8=#000000
|
||||||
|
palette = 9=#de3e35
|
||||||
|
palette = 10=#3f953a
|
||||||
|
palette = 11=#d2b67c
|
||||||
|
palette = 12=#2f5af3
|
||||||
|
palette = 13=#a00095
|
||||||
|
palette = 14=#3f953a
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #f9f9f9
|
||||||
|
foreground = #2a2c33
|
||||||
|
cursor-color = #bbbbbb
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #ededed
|
||||||
|
selection-foreground = #2a2c33
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#110f18
|
||||||
|
palette = 1=#ff6767
|
||||||
|
palette = 2=#61ffca
|
||||||
|
palette = 3=#ffca85
|
||||||
|
palette = 4=#a277ff
|
||||||
|
palette = 5=#a277ff
|
||||||
|
palette = 6=#61ffca
|
||||||
|
palette = 7=#edecee
|
||||||
|
palette = 8=#4d4d4d
|
||||||
|
palette = 9=#ffca85
|
||||||
|
palette = 10=#a277ff
|
||||||
|
palette = 11=#ffca85
|
||||||
|
palette = 12=#a277ff
|
||||||
|
palette = 13=#a277ff
|
||||||
|
palette = 14=#61ffca
|
||||||
|
palette = 15=#edecee
|
||||||
|
background = #15141b
|
||||||
|
foreground = #edecee
|
||||||
|
cursor-color = #a277ff
|
||||||
|
cursor-text = #edecee
|
||||||
|
selection-background = #a277ff
|
||||||
|
selection-foreground = #edecee
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#23262e
|
||||||
|
palette = 1=#f0266f
|
||||||
|
palette = 2=#8fd46d
|
||||||
|
palette = 3=#ffe66d
|
||||||
|
palette = 4=#102ee4
|
||||||
|
palette = 5=#ee5d43
|
||||||
|
palette = 6=#03d6b8
|
||||||
|
palette = 7=#c74ded
|
||||||
|
palette = 8=#4f545e
|
||||||
|
palette = 9=#f92672
|
||||||
|
palette = 10=#8fd46d
|
||||||
|
palette = 11=#ffe66d
|
||||||
|
palette = 12=#03d6b8
|
||||||
|
palette = 13=#ee5d43
|
||||||
|
palette = 14=#03d6b8
|
||||||
|
palette = 15=#c74ded
|
||||||
|
background = #23262e
|
||||||
|
foreground = #ffca28
|
||||||
|
cursor-color = #ee5d43
|
||||||
|
cursor-text = #ffd29c
|
||||||
|
selection-background = #292e38
|
||||||
|
selection-foreground = #00e8c6
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#11151c
|
||||||
|
palette = 1=#ea6c73
|
||||||
|
palette = 2=#7fd962
|
||||||
|
palette = 3=#f9af4f
|
||||||
|
palette = 4=#53bdfa
|
||||||
|
palette = 5=#cda1fa
|
||||||
|
palette = 6=#90e1c6
|
||||||
|
palette = 7=#c7c7c7
|
||||||
|
palette = 8=#686868
|
||||||
|
palette = 9=#f07178
|
||||||
|
palette = 10=#aad94c
|
||||||
|
palette = 11=#ffb454
|
||||||
|
palette = 12=#59c2ff
|
||||||
|
palette = 13=#d2a6ff
|
||||||
|
palette = 14=#95e6cb
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #0b0e14
|
||||||
|
foreground = #bfbdb6
|
||||||
|
cursor-color = #e6b450
|
||||||
|
cursor-text = #0b0e14
|
||||||
|
selection-background = #409fff
|
||||||
|
selection-foreground = #0b0e14
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#ea6c6d
|
||||||
|
palette = 2=#6cbf43
|
||||||
|
palette = 3=#eca944
|
||||||
|
palette = 4=#3199e1
|
||||||
|
palette = 5=#9e75c7
|
||||||
|
palette = 6=#46ba94
|
||||||
|
palette = 7=#bababa
|
||||||
|
palette = 8=#686868
|
||||||
|
palette = 9=#f07171
|
||||||
|
palette = 10=#86b300
|
||||||
|
palette = 11=#f2ae49
|
||||||
|
palette = 12=#399ee6
|
||||||
|
palette = 13=#a37acc
|
||||||
|
palette = 14=#4cbf99
|
||||||
|
palette = 15=#d1d1d1
|
||||||
|
background = #f8f9fa
|
||||||
|
foreground = #5c6166
|
||||||
|
cursor-color = #ffaa33
|
||||||
|
cursor-text = #f8f9fa
|
||||||
|
selection-background = #035bd6
|
||||||
|
selection-foreground = #f8f9fa
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#171b24
|
||||||
|
palette = 1=#ed8274
|
||||||
|
palette = 2=#87d96c
|
||||||
|
palette = 3=#facc6e
|
||||||
|
palette = 4=#6dcbfa
|
||||||
|
palette = 5=#dabafa
|
||||||
|
palette = 6=#90e1c6
|
||||||
|
palette = 7=#c7c7c7
|
||||||
|
palette = 8=#686868
|
||||||
|
palette = 9=#f28779
|
||||||
|
palette = 10=#d5ff80
|
||||||
|
palette = 11=#ffd173
|
||||||
|
palette = 12=#73d0ff
|
||||||
|
palette = 13=#dfbfff
|
||||||
|
palette = 14=#95e6cb
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #1f2430
|
||||||
|
foreground = #cccac2
|
||||||
|
cursor-color = #ffcc66
|
||||||
|
cursor-text = #1f2430
|
||||||
|
selection-background = #409fff
|
||||||
|
selection-foreground = #1f2430
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#17141f
|
||||||
|
palette = 1=#ff6b7f
|
||||||
|
palette = 2=#00bd9c
|
||||||
|
palette = 3=#e6c62f
|
||||||
|
palette = 4=#22e8df
|
||||||
|
palette = 5=#dc396a
|
||||||
|
palette = 6=#56b6c2
|
||||||
|
palette = 7=#f1f1f1
|
||||||
|
palette = 8=#495162
|
||||||
|
palette = 9=#fe9ea1
|
||||||
|
palette = 10=#98c379
|
||||||
|
palette = 11=#f9e46b
|
||||||
|
palette = 12=#91fff4
|
||||||
|
palette = 13=#da70d6
|
||||||
|
palette = 14=#bcf3ff
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #191323
|
||||||
|
foreground = #cccccc
|
||||||
|
cursor-color = #e07d13
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #220525
|
||||||
|
selection-foreground = #f4f4f4
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#1b1d1e
|
||||||
|
palette = 1=#e6dc44
|
||||||
|
palette = 2=#c8be46
|
||||||
|
palette = 3=#f4fd22
|
||||||
|
palette = 4=#737174
|
||||||
|
palette = 5=#747271
|
||||||
|
palette = 6=#62605f
|
||||||
|
palette = 7=#c6c5bf
|
||||||
|
palette = 8=#505354
|
||||||
|
palette = 9=#fff78e
|
||||||
|
palette = 10=#fff27d
|
||||||
|
palette = 11=#feed6c
|
||||||
|
palette = 12=#919495
|
||||||
|
palette = 13=#9a9a9d
|
||||||
|
palette = 14=#a3a3a6
|
||||||
|
palette = 15=#dadbd6
|
||||||
|
background = #1b1d1e
|
||||||
|
foreground = #6f6f6f
|
||||||
|
cursor-color = #fcef0c
|
||||||
|
cursor-text = #000000
|
||||||
|
selection-background = #4d504c
|
||||||
|
selection-foreground = #f0e04a
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#20111b
|
||||||
|
palette = 1=#be100e
|
||||||
|
palette = 2=#858162
|
||||||
|
palette = 3=#d08b30
|
||||||
|
palette = 4=#426a79
|
||||||
|
palette = 5=#97522c
|
||||||
|
palette = 6=#989a9c
|
||||||
|
palette = 7=#968c83
|
||||||
|
palette = 8=#5e5252
|
||||||
|
palette = 9=#be100e
|
||||||
|
palette = 10=#858162
|
||||||
|
palette = 11=#d08b30
|
||||||
|
palette = 12=#426a79
|
||||||
|
palette = 13=#97522c
|
||||||
|
palette = 14=#989a9c
|
||||||
|
palette = 15=#d5ccba
|
||||||
|
background = #d5ccba
|
||||||
|
foreground = #45373c
|
||||||
|
cursor-color = #45373c
|
||||||
|
cursor-text = #d5ccba
|
||||||
|
selection-background = #968c83
|
||||||
|
selection-foreground = #45373c
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#20111b
|
||||||
|
palette = 1=#be100e
|
||||||
|
palette = 2=#858162
|
||||||
|
palette = 3=#eaa549
|
||||||
|
palette = 4=#426a79
|
||||||
|
palette = 5=#97522c
|
||||||
|
palette = 6=#989a9c
|
||||||
|
palette = 7=#968c83
|
||||||
|
palette = 8=#5e5252
|
||||||
|
palette = 9=#be100e
|
||||||
|
palette = 10=#858162
|
||||||
|
palette = 11=#eaa549
|
||||||
|
palette = 12=#426a79
|
||||||
|
palette = 13=#97522c
|
||||||
|
palette = 14=#989a9c
|
||||||
|
palette = 15=#d5ccba
|
||||||
|
background = #20111b
|
||||||
|
foreground = #968c83
|
||||||
|
cursor-color = #968c83
|
||||||
|
cursor-text = #20111b
|
||||||
|
selection-background = #45373c
|
||||||
|
selection-foreground = #968c83
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#573d26
|
||||||
|
palette = 1=#be2d26
|
||||||
|
palette = 2=#6ba18a
|
||||||
|
palette = 3=#e99d2a
|
||||||
|
palette = 4=#5a86ad
|
||||||
|
palette = 5=#ac80a6
|
||||||
|
palette = 6=#74a6ad
|
||||||
|
palette = 7=#e0dbb7
|
||||||
|
palette = 8=#9b6c4a
|
||||||
|
palette = 9=#e84627
|
||||||
|
palette = 10=#95d8ba
|
||||||
|
palette = 11=#d0d150
|
||||||
|
palette = 12=#b8d3ed
|
||||||
|
palette = 13=#d19ecb
|
||||||
|
palette = 14=#93cfd7
|
||||||
|
palette = 15=#fff9d5
|
||||||
|
background = #2a1f1d
|
||||||
|
foreground = #e0dbb7
|
||||||
|
cursor-color = #644a33
|
||||||
|
cursor-text = #8a7059
|
||||||
|
selection-background = #563c27
|
||||||
|
selection-foreground = #e0dbbb
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#486e6f
|
||||||
|
palette = 2=#dd9999
|
||||||
|
palette = 3=#a06666
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#486e6f
|
||||||
|
palette = 10=#dd9999
|
||||||
|
palette = 11=#a06666
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#fbcb97
|
||||||
|
palette = 3=#e78a53
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#fbcb97
|
||||||
|
palette = 11=#e78a53
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#ddeecc
|
||||||
|
palette = 3=#99bbaa
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#ddeecc
|
||||||
|
palette = 11=#99bbaa
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#d0dfee
|
||||||
|
palette = 3=#5f81a5
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#d0dfee
|
||||||
|
palette = 11=#5f81a5
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#9b8d7f
|
||||||
|
palette = 3=#8c7f70
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#9b8d7f
|
||||||
|
palette = 11=#8c7f70
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#7799bb
|
||||||
|
palette = 3=#556677
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#7799bb
|
||||||
|
palette = 11=#556677
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#eceee3
|
||||||
|
palette = 3=#974b46
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#eceee3
|
||||||
|
palette = 11=#974b46
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#a5aaa7
|
||||||
|
palette = 3=#626b67
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#a5aaa7
|
||||||
|
palette = 11=#626b67
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#f3ecd4
|
||||||
|
palette = 3=#eecc6c
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#f3ecd4
|
||||||
|
palette = 11=#eecc6c
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#aa9988
|
||||||
|
palette = 3=#777755
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#aa9988
|
||||||
|
palette = 11=#777755
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#5f8787
|
||||||
|
palette = 2=#f8f7f2
|
||||||
|
palette = 3=#79241f
|
||||||
|
palette = 4=#888888
|
||||||
|
palette = 5=#999999
|
||||||
|
palette = 6=#aaaaaa
|
||||||
|
palette = 7=#c1c1c1
|
||||||
|
palette = 8=#404040
|
||||||
|
palette = 9=#5f8787
|
||||||
|
palette = 10=#f8f7f2
|
||||||
|
palette = 11=#79241f
|
||||||
|
palette = 12=#888888
|
||||||
|
palette = 13=#999999
|
||||||
|
palette = 14=#aaaaaa
|
||||||
|
palette = 15=#c1c1c1
|
||||||
|
background = #000000
|
||||||
|
foreground = #c1c1c1
|
||||||
|
cursor-color = #c1c1c1
|
||||||
|
cursor-text = #8e8e8e
|
||||||
|
selection-background = #c1c1c1
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#b87a7a
|
||||||
|
palette = 2=#7ab87a
|
||||||
|
palette = 3=#b8b87a
|
||||||
|
palette = 4=#7a7ab8
|
||||||
|
palette = 5=#b87ab8
|
||||||
|
palette = 6=#7ab8b8
|
||||||
|
palette = 7=#d9d9d9
|
||||||
|
palette = 8=#4c4c4c
|
||||||
|
palette = 9=#dbbdbd
|
||||||
|
palette = 10=#bddbbd
|
||||||
|
palette = 11=#dbdbbd
|
||||||
|
palette = 12=#bdbddb
|
||||||
|
palette = 13=#dbbddb
|
||||||
|
palette = 14=#bddbdb
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #0d1926
|
||||||
|
foreground = #d9e6f2
|
||||||
|
cursor-color = #d9e6f2
|
||||||
|
cursor-text = #0d1926
|
||||||
|
selection-background = #c1ddff
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#0a4c62
|
||||||
|
palette = 1=#99246e
|
||||||
|
palette = 2=#5cb1b3
|
||||||
|
palette = 3=#eab9a8
|
||||||
|
palette = 4=#90a5bd
|
||||||
|
palette = 5=#9d54a7
|
||||||
|
palette = 6=#7e83cc
|
||||||
|
palette = 7=#f0e8d6
|
||||||
|
palette = 8=#463c5d
|
||||||
|
palette = 9=#c87272
|
||||||
|
palette = 10=#0a6c7e
|
||||||
|
palette = 11=#7a3188
|
||||||
|
palette = 12=#5f3d63
|
||||||
|
palette = 13=#bc94b7
|
||||||
|
palette = 14=#5e6071
|
||||||
|
palette = 15=#0a6c7e
|
||||||
|
background = #1c0c28
|
||||||
|
foreground = #babab9
|
||||||
|
cursor-color = #fcfad6
|
||||||
|
cursor-text = #000000
|
||||||
|
selection-background = #606060
|
||||||
|
selection-foreground = #ffffff
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#292d3e
|
||||||
|
palette = 1=#ff8288
|
||||||
|
palette = 2=#b4e88d
|
||||||
|
palette = 3=#f4d69f
|
||||||
|
palette = 4=#82aaff
|
||||||
|
palette = 5=#e9c1ff
|
||||||
|
palette = 6=#89ebff
|
||||||
|
palette = 7=#d0d0d0
|
||||||
|
palette = 8=#9094a4
|
||||||
|
palette = 9=#ff8b92
|
||||||
|
palette = 10=#ddffa7
|
||||||
|
palette = 11=#ffe585
|
||||||
|
palette = 12=#9cc4ff
|
||||||
|
palette = 13=#ddb0f6
|
||||||
|
palette = 14=#a3f7ff
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #006984
|
||||||
|
foreground = #c5f2ff
|
||||||
|
cursor-color = #ffcc00
|
||||||
|
cursor-text = #292d3e
|
||||||
|
selection-background = #2baeca
|
||||||
|
selection-foreground = #eceff1
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#101116
|
||||||
|
palette = 1=#ff5680
|
||||||
|
palette = 2=#00ff9c
|
||||||
|
palette = 3=#fffc58
|
||||||
|
palette = 4=#00b0ff
|
||||||
|
palette = 5=#d57bff
|
||||||
|
palette = 6=#76c1ff
|
||||||
|
palette = 7=#c7c7c7
|
||||||
|
palette = 8=#686868
|
||||||
|
palette = 9=#ff6e67
|
||||||
|
palette = 10=#5ffa68
|
||||||
|
palette = 11=#fffc67
|
||||||
|
palette = 12=#6871ff
|
||||||
|
palette = 13=#d682ec
|
||||||
|
palette = 14=#60fdff
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #101116
|
||||||
|
foreground = #00a2ff
|
||||||
|
cursor-color = #76ff9f
|
||||||
|
cursor-text = #a6a6a6
|
||||||
|
selection-background = #c1deff
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#41444d
|
||||||
|
palette = 1=#fc2f52
|
||||||
|
palette = 2=#25a45c
|
||||||
|
palette = 3=#ff936a
|
||||||
|
palette = 4=#3476ff
|
||||||
|
palette = 5=#7a82da
|
||||||
|
palette = 6=#4483aa
|
||||||
|
palette = 7=#cdd4e0
|
||||||
|
palette = 8=#8f9aae
|
||||||
|
palette = 9=#ff6480
|
||||||
|
palette = 10=#3fc56b
|
||||||
|
palette = 11=#f9c859
|
||||||
|
palette = 12=#10b1fe
|
||||||
|
palette = 13=#ff78f8
|
||||||
|
palette = 14=#5fb9bc
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #282c34
|
||||||
|
foreground = #b9c0cb
|
||||||
|
cursor-color = #ffcc00
|
||||||
|
cursor-text = #282c34
|
||||||
|
selection-background = #b9c0ca
|
||||||
|
selection-foreground = #272b33
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#373a41
|
||||||
|
palette = 1=#d52753
|
||||||
|
palette = 2=#23974a
|
||||||
|
palette = 3=#df631c
|
||||||
|
palette = 4=#275fe4
|
||||||
|
palette = 5=#823ff1
|
||||||
|
palette = 6=#27618d
|
||||||
|
palette = 7=#babbc2
|
||||||
|
palette = 8=#676a77
|
||||||
|
palette = 9=#ff6480
|
||||||
|
palette = 10=#3cbc66
|
||||||
|
palette = 11=#c5a332
|
||||||
|
palette = 12=#0099e1
|
||||||
|
palette = 13=#ce33c0
|
||||||
|
palette = 14=#6d93bb
|
||||||
|
palette = 15=#d3d3d3
|
||||||
|
background = #f9f9f9
|
||||||
|
foreground = #373a41
|
||||||
|
cursor-color = #f32759
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #daf0ff
|
||||||
|
selection-foreground = #373a41
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#4f4f4f
|
||||||
|
palette = 1=#ff6c60
|
||||||
|
palette = 2=#a8ff60
|
||||||
|
palette = 3=#ffffb6
|
||||||
|
palette = 4=#96cbfe
|
||||||
|
palette = 5=#ff73fd
|
||||||
|
palette = 6=#c6c5fe
|
||||||
|
palette = 7=#eeeeee
|
||||||
|
palette = 8=#7c7c7c
|
||||||
|
palette = 9=#ffb6b0
|
||||||
|
palette = 10=#ceffac
|
||||||
|
palette = 11=#ffffcc
|
||||||
|
palette = 12=#b5dcff
|
||||||
|
palette = 13=#ff9cfe
|
||||||
|
palette = 14=#dfdffe
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #0000a4
|
||||||
|
foreground = #ffff4e
|
||||||
|
cursor-color = #ffa560
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #a4a4a4
|
||||||
|
selection-foreground = #0000a4
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#cc0403
|
||||||
|
palette = 2=#19cb00
|
||||||
|
palette = 3=#cecb00
|
||||||
|
palette = 4=#0d73cc
|
||||||
|
palette = 5=#cb1ed1
|
||||||
|
palette = 6=#0dcdcd
|
||||||
|
palette = 7=#dddddd
|
||||||
|
palette = 8=#767676
|
||||||
|
palette = 9=#f2201f
|
||||||
|
palette = 10=#23fd00
|
||||||
|
palette = 11=#fffd00
|
||||||
|
palette = 12=#1a8fff
|
||||||
|
palette = 13=#fd28ff
|
||||||
|
palette = 14=#14ffff
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #141d2b
|
||||||
|
foreground = #9fef00
|
||||||
|
cursor-color = #9fef00
|
||||||
|
cursor-text = #111111
|
||||||
|
selection-background = #a4b1cd
|
||||||
|
selection-foreground = #141d2b
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#362c24
|
||||||
|
palette = 1=#b10b00
|
||||||
|
palette = 2=#007232
|
||||||
|
palette = 3=#8b4c00
|
||||||
|
palette = 4=#005cb4
|
||||||
|
palette = 5=#9b0097
|
||||||
|
palette = 6=#006a78
|
||||||
|
palette = 7=#baa99d
|
||||||
|
palette = 8=#514337
|
||||||
|
palette = 9=#de1100
|
||||||
|
palette = 10=#008f40
|
||||||
|
palette = 11=#ae6000
|
||||||
|
palette = 12=#0074e1
|
||||||
|
palette = 13=#c300bd
|
||||||
|
palette = 14=#008697
|
||||||
|
palette = 15=#eae1da
|
||||||
|
background = #f1ebe6
|
||||||
|
foreground = #362c24
|
||||||
|
cursor-color = #362c24
|
||||||
|
cursor-text = #f1ebe6
|
||||||
|
selection-background = #362c24
|
||||||
|
selection-foreground = #f1ebe6
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#31363b
|
||||||
|
palette = 1=#ed1515
|
||||||
|
palette = 2=#11d116
|
||||||
|
palette = 3=#f67400
|
||||||
|
palette = 4=#1d99f3
|
||||||
|
palette = 5=#9b59b6
|
||||||
|
palette = 6=#1abc9c
|
||||||
|
palette = 7=#eff0f1
|
||||||
|
palette = 8=#7f8c8d
|
||||||
|
palette = 9=#c0392b
|
||||||
|
palette = 10=#1cdc9a
|
||||||
|
palette = 11=#fdbc4b
|
||||||
|
palette = 12=#3daee9
|
||||||
|
palette = 13=#8e44ad
|
||||||
|
palette = 14=#16a085
|
||||||
|
palette = 15=#fcfcfc
|
||||||
|
background = #31363b
|
||||||
|
foreground = #eff0f1
|
||||||
|
cursor-color = #eff0f1
|
||||||
|
cursor-text = #31363b
|
||||||
|
selection-background = #eff0f1
|
||||||
|
selection-foreground = #31363b
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#191919
|
||||||
|
palette = 1=#ff355b
|
||||||
|
palette = 2=#b7e876
|
||||||
|
palette = 3=#ffc251
|
||||||
|
palette = 4=#76d4ff
|
||||||
|
palette = 5=#ba76e7
|
||||||
|
palette = 6=#6cbfb5
|
||||||
|
palette = 7=#c2c8d7
|
||||||
|
palette = 8=#4c4c4c
|
||||||
|
palette = 9=#ff355b
|
||||||
|
palette = 10=#b7e876
|
||||||
|
palette = 11=#ffc251
|
||||||
|
palette = 12=#76d5ff
|
||||||
|
palette = 13=#ba76e7
|
||||||
|
palette = 14=#6cbfb5
|
||||||
|
palette = 15=#c2c8d7
|
||||||
|
background = #191919
|
||||||
|
foreground = #b3c9d7
|
||||||
|
cursor-color = #f34b00
|
||||||
|
cursor-text = #002831
|
||||||
|
selection-background = #b3c9d7
|
||||||
|
selection-foreground = #191919
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#da4939
|
||||||
|
palette = 2=#519f50
|
||||||
|
palette = 3=#ffd24a
|
||||||
|
palette = 4=#6d9cbe
|
||||||
|
palette = 5=#d0d0ff
|
||||||
|
palette = 6=#6e9cbe
|
||||||
|
palette = 7=#ffffff
|
||||||
|
palette = 8=#585858
|
||||||
|
palette = 9=#ff7b6b
|
||||||
|
palette = 10=#83d182
|
||||||
|
palette = 11=#ffff7c
|
||||||
|
palette = 12=#9fcef0
|
||||||
|
palette = 13=#ffffff
|
||||||
|
palette = 14=#a0cef0
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #2b2b2b
|
||||||
|
foreground = #e6e1dc
|
||||||
|
cursor-color = #ffffff
|
||||||
|
cursor-text = #c0bbb6
|
||||||
|
selection-background = #5a647e
|
||||||
|
selection-foreground = #e6e1dc
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#1f1f1f
|
||||||
|
palette = 1=#f81118
|
||||||
|
palette = 2=#2dc55e
|
||||||
|
palette = 3=#ecba0f
|
||||||
|
palette = 4=#2a84d2
|
||||||
|
palette = 5=#4e5ab7
|
||||||
|
palette = 6=#1081d6
|
||||||
|
palette = 7=#d6dbe5
|
||||||
|
palette = 8=#d6dbe5
|
||||||
|
palette = 9=#de352e
|
||||||
|
palette = 10=#1dd361
|
||||||
|
palette = 11=#f3bd09
|
||||||
|
palette = 12=#1081d6
|
||||||
|
palette = 13=#5350b9
|
||||||
|
palette = 14=#0f7ddb
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #131313
|
||||||
|
foreground = #d6dbe5
|
||||||
|
cursor-color = #b9b9b9
|
||||||
|
cursor-text = #101010
|
||||||
|
selection-background = #1f1f1f
|
||||||
|
selection-foreground = #d6dbe5
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#bb0000
|
||||||
|
palette = 2=#00bb00
|
||||||
|
palette = 3=#bbbb00
|
||||||
|
palette = 4=#0d0dc8
|
||||||
|
palette = 5=#bb00bb
|
||||||
|
palette = 6=#00bbbb
|
||||||
|
palette = 7=#bbbbbb
|
||||||
|
palette = 8=#555555
|
||||||
|
palette = 9=#ff5555
|
||||||
|
palette = 10=#55ff55
|
||||||
|
palette = 11=#ffff55
|
||||||
|
palette = 12=#5555ff
|
||||||
|
palette = 13=#ff55ff
|
||||||
|
palette = 14=#55ffff
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #000000
|
||||||
|
foreground = #bbbbbb
|
||||||
|
cursor-color = #bbbbbb
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #b5d5ff
|
||||||
|
selection-foreground = #000000
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
palette = 0=#000000
|
||||||
|
palette = 1=#bb0000
|
||||||
|
palette = 2=#00bb00
|
||||||
|
palette = 3=#bbbb00
|
||||||
|
palette = 4=#0000bb
|
||||||
|
palette = 5=#bb00bb
|
||||||
|
palette = 6=#00bbbb
|
||||||
|
palette = 7=#bbbbbb
|
||||||
|
palette = 8=#555555
|
||||||
|
palette = 9=#ff5555
|
||||||
|
palette = 10=#2fd92f
|
||||||
|
palette = 11=#bfbf15
|
||||||
|
palette = 12=#5555ff
|
||||||
|
palette = 13=#ff55ff
|
||||||
|
palette = 14=#22cccc
|
||||||
|
palette = 15=#ffffff
|
||||||
|
background = #ffffff
|
||||||
|
foreground = #000000
|
||||||
|
cursor-color = #000000
|
||||||
|
cursor-text = #ffffff
|
||||||
|
selection-background = #b5d5ff
|
||||||
|
selection-foreground = #000000
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user