-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathuninstall.sh
More file actions
144 lines (135 loc) · 4.7 KB
/
Copy pathuninstall.sh
File metadata and controls
144 lines (135 loc) · 4.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#!/usr/bin/env bash
# ==============================================================================
# LazyLite Configuration Uninstaller (Linux & macOS)
# Cleanly removes all LazyLite plugins, fonts, colors, and scripts,
# and automatically cleans up init.lua (with a safety backup).
# ==============================================================================
CONFIG_DIR="$HOME/.config/lite-xl"
if [[ "$(uname)" == "Darwin" ]] && [ -d "$HOME/Library/Application Support/lite-xl" ]; then
CONFIG_DIR="$HOME/Library/Application Support/lite-xl"
fi
echo "=========================================="
echo " LazyLite Configuration Uninstaller "
echo "=========================================="
echo "Removing LazyLite configuration from $CONFIG_DIR..."
# Individual plugin files
FILES=(
"plugins/activity_bar.lua"
"plugins/agy_pty_bridge.py"
"plugins/ai_plugin_gen.lua"
"plugins/antigravity_sidebar.lua"
"plugins/autoclose.lua"
"plugins/autocomplete.lua"
"plugins/autosave.lua"
"plugins/auto_healer.lua"
"plugins/close_all_tabs.lua"
"plugins/codespace_treeview.lua"
"plugins/company_scores.json"
"plugins/company_tags.json"
"plugins/complexity.lua"
"plugins/default_snippets.lua"
"plugins/dump_log.lua"
"plugins/emmet.lua"
"plugins/empty_file_guide.lua"
"plugins/fix_titleview.lua"
"plugins/font_picker.lua"
"plugins/ghost_text.lua"
"plugins/github_actions.lua"
"plugins/github_codespaces.lua"
"plugins/git_timeline.lua"
"plugins/image_viewer.lua"
"plugins/img_to_rects.py"
"plugins/indentguide.lua"
"plugins/language_dockerfile.lua"
"plugins/language_ignore.lua"
"plugins/lazy_lite_preview_server.exe"
"plugins/lazy_lite_web_preview.lua"
"plugins/leetcode.lua"
"plugins/leetcode_assessment.lua"
"plugins/lsp_setup.lua"
"plugins/lsp_snippets.lua"
"plugins/markdown_view.lua"
"plugins/mongodb_explorer.lua"
"plugins/mossy_icons.lua"
"plugins/mossy_statusbar.lua"
"plugins/mossy_treeview.lua"
"plugins/open_project_mode.lua"
"plugins/pdf_engine.py"
"plugins/pdf_viewer.lua"
"plugins/podman_manager.lua"
"plugins/port_forward.lua"
"plugins/premium_splits.lua"
"plugins/problem_tags.json"
"plugins/resource_monitor.lua"
"plugins/smart_indent.lua"
"plugins/snippets.lua"
"plugins/splash_art.lua"
"plugins/split_editor_buttons.lua"
"plugins/tempfiles_manager.lua"
"plugins/toggle_terminal.lua"
"plugins/virtual_codespace_fs.lua"
"plugins/workspace.lua"
"colors/everforest_lite_xl.lua"
"colors/dark_forest_lite_xl.lua"
"colors/tokyo_night_remix.lua"
"fonts/FiraCode-iScript.ttf"
"fonts/FiraCodeiScript-Bold.ttf"
"fonts/FiraCodeNerdFont-Regular.ttf"
"scripts/colab_notebook_parser.py"
"scripts/gen_splash_art.py"
"scripts/leetcode_api.py"
"scripts/localtunnel_bridge.js"
"scripts/mongodb_bridge.py"
"scripts/remote_lsp_proxy.py"
)
# Sub-directories
SUBDIRS=(
"plugins/lsp"
"plugins/widget"
"plugins/lintplus"
"plugins/loader_games"
"plugins/toggle_terminal"
"plugins/tunnel_monitor"
"plugins/python_runtime"
"codespaces"
)
for dir in "${SUBDIRS[@]}"; do
if [ -d "$CONFIG_DIR/$dir" ]; then
rm -rf "$CONFIG_DIR/$dir"
echo "[-] Removed $dir"
fi
done
for file in "${FILES[@]}"; do
if [ -f "$CONFIG_DIR/$file" ]; then
rm -f "$CONFIG_DIR/$file"
echo "[-] Removed $file"
fi
done
# Automatically clean init.lua
INIT_FILE="$CONFIG_DIR/init.lua"
if [ -f "$INIT_FILE" ] && grep -qF -- "-- [[ LazyLite Configuration ]]" "$INIT_FILE"; then
cp -f "$INIT_FILE" "$CONFIG_DIR/init.lua.bak"
echo "[+] Created backup at $CONFIG_DIR/init.lua.bak"
# Use python if available or awk/sed for clean multi-line removal
if command -v python3 &> /dev/null; then
python3 -c "
import re
p = r'$INIT_FILE'
with open(p, 'r', encoding='utf-8') as f:
content = f.read()
cleaned = re.sub(r'(?s)--\s*\[\[\s*LazyLite Configuration\s*\]\].*?--\s*\[\[\s*End LazyLite Configuration\s*\]\]\s*', '', content)
if '-- [[ LazyLite Configuration ]]' in cleaned:
cleaned = re.sub(r'(?s)--\s*\[\[\s*LazyLite Configuration\s*\]\].*', '', content)
with open(p, 'w', encoding='utf-8') as f:
f.write(cleaned.strip() + '\n')
" 2>/dev/null || true
else
sed -i '/-- \[\[ LazyLite Configuration \]\]/,/-- \[\[ End LazyLite Configuration \]\]/d' "$INIT_FILE" 2>/dev/null || true
fi
echo "[+] Automatically cleaned up init.lua"
fi
echo ""
echo "=================================================================="
echo " Uninstallation complete! Restart Lite-XL."
echo "=================================================================="
echo ""