Compare commits
10 Commits
3550eaadb4
...
77315f17f8
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
77315f17f8 | ||
|
|
585a5298ad | ||
|
|
2241b6fc7d | ||
|
|
8e0d415afa | ||
|
|
241b50501b | ||
|
|
483be6c985 | ||
|
|
f1ce25adf0 | ||
|
|
e8994b77f1 | ||
|
|
aa479dc6b0 | ||
|
|
014b6f7a8b |
9
.gitignore
vendored
9
.gitignore
vendored
@@ -1,8 +1,7 @@
|
|||||||
packer_compiled.lua
|
packer_compiled.lua
|
||||||
|
lazy-lock.json
|
||||||
flameshot.ini
|
flameshot.ini
|
||||||
|
.config/nvim/lazy-lock.json
|
||||||
|
node_modules/
|
||||||
|
|
||||||
# Added by cargo
|
|
||||||
|
|
||||||
/target
|
/target
|
||||||
|
.DS_Store
|
||||||
|
|||||||
24
.gitmodules
vendored
24
.gitmodules
vendored
@@ -1,21 +1,3 @@
|
|||||||
[submodule "common/.config/awesome/awesome-wm-widgets"]
|
[submodule "themes/catppuccin-iterm"]
|
||||||
path = common/.config/awesome/awesome-wm-widgets
|
path = themes/catppuccin-iterm
|
||||||
url = https://github.com/streetturtle/awesome-wm-widgets/
|
url = https://github.com/catppuccin/iterm
|
||||||
[submodule "common/.config/awesome/plugins/rubato"]
|
|
||||||
path = common/.config/awesome/plugins/rubato
|
|
||||||
url = https://github.com/andOrlando/rubato
|
|
||||||
[submodule "common/.config/awesome/json.lua"]
|
|
||||||
path = common/.config/awesome/json/
|
|
||||||
url = https://github.com/rxi/json.lua
|
|
||||||
[submodule "common/.config/awesome/json"]
|
|
||||||
path = common/.config/awesome/json
|
|
||||||
url = https://github.com/rxi/json.lua
|
|
||||||
[submodule "common/.config/awesome/plugins/bling"]
|
|
||||||
path = common/.config/awesome/plugins/bling
|
|
||||||
url = https://github.com/BlingCorp/bling
|
|
||||||
[submodule "common/.config/awesome/plugins/nice"]
|
|
||||||
path = common/.config/awesome/plugins/nice
|
|
||||||
url = https://github.com/AlphaKeks/awesome-wm-nice
|
|
||||||
[submodule "common/.config/awesome/plugins/udisks2"]
|
|
||||||
path = common/.config/awesome/plugins/udisks2
|
|
||||||
url = https://github.com/mireq/awesome-udisks2-mount
|
|
||||||
|
|||||||
61
README.md
61
README.md
@@ -1,16 +1,61 @@
|
|||||||
# Dotfiles
|
# dotfiles
|
||||||
|
|
||||||
## Ben's Amazing Dotfile Installer
|
Centralized database of how my machines should be set up. All Macs are identical to each other, all Arch machines are identical to each other. OS is the only axis of variation.
|
||||||
|
|
||||||
NOTE THIS ONLY WORKS IF THE USERNAME IS benk
|
```
|
||||||
|
dotfiles/
|
||||||
|
home/benk/ mirrors $HOME — files here get synced to the machine
|
||||||
|
etc/ mirrors /etc — applied with sudo on Linux
|
||||||
|
packages/
|
||||||
|
brew.txt Homebrew formulae (all Macs)
|
||||||
|
brew-casks.txt Homebrew casks (all Macs)
|
||||||
|
arch.txt yay packages (all Arch machines)
|
||||||
|
themes/
|
||||||
|
catppuccin-iterm/ submodule: catppuccin/iterm
|
||||||
|
setup.toml declarative tooling config (fish + tmux plugins)
|
||||||
|
bootstrap.py the manager — run this
|
||||||
|
```
|
||||||
|
|
||||||
ALSO BEN NEEDS TO GET HIS NEOVIM CONFIG TO BOOTSTRAP ON A NEW MACHINE!
|
## setup
|
||||||
|
|
||||||
It appears Ben doesn't want to do this, so this message should remain until he does.
|
```bash
|
||||||
|
git clone --recurse-submodules git@github.com:benkyd/dotfiles.git ~/dotfiles
|
||||||
|
cd ~/dotfiles
|
||||||
|
python3 bootstrap.py
|
||||||
|
```
|
||||||
|
|
||||||
The only prerequisite for Ben's Amazing Dotfile Installer is to install nodejs
|
Dependencies (`rich`, `questionary`) are auto-installed on first run.
|
||||||
|
|
||||||
`node bootstrap.js [--os[-o] ubuntu/arch] [--host[-h] host/laptop]`
|
## usage
|
||||||
|
|
||||||
NOTE: This will install and set up everything but it will not source tmux for example, you must `<C-b>I` in order to do that
|
Running `python3 bootstrap.py` drops you into a TUI. Pick a mode:
|
||||||
|
|
||||||
|
- **Set up this machine** — install packages, shell tooling, sync dotfiles. use this on a fresh machine.
|
||||||
|
- **Apply dotfiles** — push repo → `$HOME`. skips packages.
|
||||||
|
- **Save changes** — pull edits you made on this machine back into the repo.
|
||||||
|
- **Check status** — see what's drifted. nothing is changed.
|
||||||
|
|
||||||
|
Or pass a mode directly to skip the TUI:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python3 bootstrap.py install
|
||||||
|
python3 bootstrap.py copy
|
||||||
|
python3 bootstrap.py pull
|
||||||
|
python3 bootstrap.py status
|
||||||
|
python3 bootstrap.py add ~/.config/something.conf # start tracking a new file
|
||||||
|
```
|
||||||
|
|
||||||
|
## per-file variation
|
||||||
|
|
||||||
|
If you've edited something on a work machine and don't want to clobber it or pull it back, the sync steps show a per-file checkbox for any file that's newer on the machine than in the repo. just uncheck what you want to skip.
|
||||||
|
|
||||||
|
## OS-specific paths
|
||||||
|
|
||||||
|
Some paths only make sense on one OS and are excluded automatically:
|
||||||
|
|
||||||
|
- `Library/` — macOS only (iTerm2 prefs, etc.)
|
||||||
|
- `.config/wezterm/` — Linux only (iTerm2 is used on Mac)
|
||||||
|
|
||||||
|
## themes
|
||||||
|
|
||||||
|
Catppuccin Mocha is the colour scheme. The iTerm2 colour preset lives at `themes/catppuccin-iterm/colors/catppuccin-mocha.itermcolors`. Import it via iTerm2 → Profiles → Colors → Color Presets → Import.
|
||||||
|
|||||||
2
arch-installer/.gitignore
vendored
2
arch-installer/.gitignore
vendored
@@ -1,2 +0,0 @@
|
|||||||
target/
|
|
||||||
|
|
||||||
7
arch-installer/Cargo.lock
generated
7
arch-installer/Cargo.lock
generated
@@ -1,7 +0,0 @@
|
|||||||
# This file is automatically @generated by Cargo.
|
|
||||||
# It is not intended for manual editing.
|
|
||||||
version = 3
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "arch-installer"
|
|
||||||
version = "0.1.0"
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
[package]
|
|
||||||
name = "arch-installer"
|
|
||||||
version = "0.1.0"
|
|
||||||
edition = "2021"
|
|
||||||
|
|
||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
|
|
||||||
fn main() {
|
|
||||||
println!("Hello, world!");
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
{"rustc_fingerprint":4211202014750124613,"outputs":{"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/benk/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\noverflow_checks\npanic=\"unwind\"\nproc_macro\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"unknown\"\nunix\n","stderr":""},"14371922958718593042":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/benk/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\noverflow_checks\npanic=\"unwind\"\nproc_macro\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"unknown\"\nunix\n","stderr":""},"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.71.0-nightly (5ea3f0ae0 2023-05-23)\nbinary: rustc\ncommit-hash: 5ea3f0ae08c07472239a94ce55601e9b63eb1f45\ncommit-date: 2023-05-23\nhost: x86_64-unknown-linux-gnu\nrelease: 1.71.0-nightly\nLLVM version: 16.0.4\n","stderr":""}},"successes":{}}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
Signature: 8a477f597d28d172789f06886806bc55
|
|
||||||
# This file is a cache directory tag created by cargo.
|
|
||||||
# For information about cache directory tags see https://bford.info/cachedir/
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
e59d1462709270be
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
{"rustc":4936231744503104448,"features":"[]","target":3400825955169654745,"profile":7309141686862299243,"path":1684066648322511884,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/arch-installer-056fe2d5dde1f706/dep-bin-arch-installer"}}],"rustflags":[],"metadata":7797948686568424061,"config":2202906307356721367,"compile_kind":0}
|
|
||||||
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
This file has an mtime of when this was started.
|
|
||||||
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
This file has an mtime of when this was started.
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
2cc37faa52debce5
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
{"rustc":4936231744503104448,"features":"[]","target":3400825955169654745,"profile":1021633075455700787,"path":1684066648322511884,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/arch-installer-97c981ca69cc9ded/dep-test-bin-arch-installer"}}],"rustflags":[],"metadata":7797948686568424061,"config":2202906307356721367,"compile_kind":0}
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
d3bf99b02c482e5f
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
{"rustc":4936231744503104448,"features":"[]","target":3400825955169654745,"profile":9251013656241001069,"path":1684066648322511884,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/arch-installer-c43bb0bd1c69f361/dep-bin-arch-installer"}}],"rustflags":[],"metadata":7797948686568424061,"config":2202906307356721367,"compile_kind":0}
|
|
||||||
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
This file has an mtime of when this was started.
|
|
||||||
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
/home/benk/dotfiles/arch-installer/target/debug/arch-installer: /home/benk/dotfiles/arch-installer/src/main.rs
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
/home/benk/dotfiles/arch-installer/target/debug/deps/arch_installer-056fe2d5dde1f706.rmeta: src/main.rs
|
|
||||||
|
|
||||||
/home/benk/dotfiles/arch-installer/target/debug/deps/arch_installer-056fe2d5dde1f706.d: src/main.rs
|
|
||||||
|
|
||||||
src/main.rs:
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
/home/benk/dotfiles/arch-installer/target/debug/deps/arch_installer-97c981ca69cc9ded.rmeta: src/main.rs
|
|
||||||
|
|
||||||
/home/benk/dotfiles/arch-installer/target/debug/deps/arch_installer-97c981ca69cc9ded.d: src/main.rs
|
|
||||||
|
|
||||||
src/main.rs:
|
|
||||||
Binary file not shown.
@@ -1,5 +0,0 @@
|
|||||||
/home/benk/dotfiles/arch-installer/target/debug/deps/arch_installer-c43bb0bd1c69f361: src/main.rs
|
|
||||||
|
|
||||||
/home/benk/dotfiles/arch-installer/target/debug/deps/arch_installer-c43bb0bd1c69f361.d: src/main.rs
|
|
||||||
|
|
||||||
src/main.rs:
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
26
arch.os
26
arch.os
@@ -1,26 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
#
|
|
||||||
# Dev utilsv
|
|
||||||
yay -S neovim-git nvm wezterm ranger ripgrep zsh zsh-vi-mode curl exa
|
|
||||||
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
|
|
||||||
|
|
||||||
# WM Deps
|
|
||||||
yay -S awesome-git i3 betterlockscreen polybar-git eww xss-lock ttf-material-design-icons ttf-unifont polybar
|
|
||||||
yay -S picom-ftlabs-git dunst alternating-layouts-git stalonetray
|
|
||||||
yay -S i3exit arc-icon-theme ttf-twemoji xorg-xbacklight xidlehook sysstat i3blocks mpris-ctl flameshot perl rofi
|
|
||||||
yay -S ttf-dejavu-nerd
|
|
||||||
|
|
||||||
# Tmux
|
|
||||||
yay -S tmux
|
|
||||||
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
|
|
||||||
tmux source ~/.tmux.conf
|
|
||||||
|
|
||||||
git clone https://gist.github.com/fa6258f3ff7b17747ee3.git
|
|
||||||
cd ./fa6258f3ff7b17747ee3
|
|
||||||
chmod +x sp
|
|
||||||
# This widget will work by default if the binary is in the system PATH
|
|
||||||
sudo cp ./sp /usr/local/bin/
|
|
||||||
|
|
||||||
# Audio
|
|
||||||
yay -S pulseaudio-equalizer-ladspa mpris-ctl
|
|
||||||
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"!root-password": "password",
|
|
||||||
"!superusers": {
|
|
||||||
"root": { "!password": "password" },
|
|
||||||
"benk": { "!password": "password" }
|
|
||||||
},
|
|
||||||
"!users": {
|
|
||||||
"benk": { "!password": "password" }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
{
|
|
||||||
"audio": "pulseaudio",
|
|
||||||
"bootloader": "grub-install",
|
|
||||||
"custom-commands": [
|
|
||||||
],
|
|
||||||
"filesystem": "ext4",
|
|
||||||
"gfx_driver": "Intel (open-source)",
|
|
||||||
"swap": true,
|
|
||||||
"hostname": "benk",
|
|
||||||
"kernels": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"keyboard-language": "uk",
|
|
||||||
"mirror-region": "United Kingdom",
|
|
||||||
"nic": {
|
|
||||||
"NetworkManager": true
|
|
||||||
},
|
|
||||||
"ntp": true,
|
|
||||||
"packages": [
|
|
||||||
"yay"
|
|
||||||
],
|
|
||||||
"services": [
|
|
||||||
],
|
|
||||||
"sys-encoding": "utf-8",
|
|
||||||
"sys-language": "en_GB",
|
|
||||||
"timezone": "Europe/London"
|
|
||||||
}
|
|
||||||
@@ -1,50 +0,0 @@
|
|||||||
{
|
|
||||||
"packages": [
|
|
||||||
"fakeroot",
|
|
||||||
"sudo",
|
|
||||||
"vim",
|
|
||||||
"man",
|
|
||||||
"man-db",
|
|
||||||
"yay",
|
|
||||||
"git",
|
|
||||||
"wget",
|
|
||||||
"curl",
|
|
||||||
"zsh",
|
|
||||||
"zsh-vi-mode",
|
|
||||||
"base-devel",
|
|
||||||
"rust-git",
|
|
||||||
"cmake-git",
|
|
||||||
"exa",
|
|
||||||
"bluez",
|
|
||||||
"bluez-utils",
|
|
||||||
"blueman",
|
|
||||||
"wireless_tools",
|
|
||||||
"wpa_supplicant",
|
|
||||||
"gparted",
|
|
||||||
"network-manager-applet-git",
|
|
||||||
"xfce4-power-manager",
|
|
||||||
"volumeicon",
|
|
||||||
"pulseaudio-equalizer-ladspa",
|
|
||||||
"neovim-git",
|
|
||||||
"mpris-cli",
|
|
||||||
"wezterm",
|
|
||||||
"tmux",
|
|
||||||
"ranger",
|
|
||||||
"xorg-server",
|
|
||||||
"xorg-xbacklight",
|
|
||||||
"xidlehook",
|
|
||||||
"lightdm",
|
|
||||||
"lightdm-gtk-greeter",
|
|
||||||
"awesome-git",
|
|
||||||
"picom-git",
|
|
||||||
"i3lock-git",
|
|
||||||
"i3exit",
|
|
||||||
"arc-icon-theme",
|
|
||||||
"ttf-dejavu-sans-mono-powerline-git",
|
|
||||||
"flameshot",
|
|
||||||
"rofi",
|
|
||||||
"google-chrome-unstable",
|
|
||||||
"darktable-git",
|
|
||||||
"ktira"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
155
bootstrap.js
vendored
155
bootstrap.js
vendored
@@ -1,155 +0,0 @@
|
|||||||
// Ben's amazing dotfiles installer!
|
|
||||||
// it would be super cool if it did stuff like notice a new hostname
|
|
||||||
// and respond by backing up the current dotfiles in a new host file
|
|
||||||
// TODO:
|
|
||||||
// - Util scripts to add dotfiles
|
|
||||||
// - this could even be extended to auto profile the host & move
|
|
||||||
// stuff accordingly
|
|
||||||
// - .zshrc, .profile etc should create a new file and append
|
|
||||||
// "source .zshrc.laptop" to the current one, in order to not mess
|
|
||||||
// up specific environments
|
|
||||||
//
|
|
||||||
// FEATURES:
|
|
||||||
// - Backup current dotfiles to dotfiles.bak/
|
|
||||||
// - Create symlinks between dotfiles and the actual dotfiles
|
|
||||||
|
|
||||||
import fs from 'fs';
|
|
||||||
import { readdir } from 'fs/promises';
|
|
||||||
import opsys from 'os';
|
|
||||||
import path from 'path';
|
|
||||||
import { parseArgs } from 'node:util';
|
|
||||||
import subProcess from 'child_process';
|
|
||||||
|
|
||||||
const HOME = opsys.homedir() + '/';
|
|
||||||
|
|
||||||
const VERSION_MAJOR = 1;
|
|
||||||
const VERSION_MINOR = 0;
|
|
||||||
const VERSION_PATCH = 1;
|
|
||||||
|
|
||||||
console.log('Ben\'s amazing dotfiles installer!');
|
|
||||||
console.log(`Version v${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}`);
|
|
||||||
|
|
||||||
const {
|
|
||||||
values: {
|
|
||||||
host, os
|
|
||||||
}
|
|
||||||
} = parseArgs({
|
|
||||||
options: {
|
|
||||||
host: {
|
|
||||||
type: 'string',
|
|
||||||
short: 'h',
|
|
||||||
},
|
|
||||||
os: {
|
|
||||||
type: 'string',
|
|
||||||
short: 'o',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
const panic = (error) => {
|
|
||||||
console.error('Error: ' + error);
|
|
||||||
console.error('usage: bootstrap -h <host> -o <os>');
|
|
||||||
process.exit(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!host) {
|
|
||||||
panic('Incorrect usage');
|
|
||||||
}
|
|
||||||
|
|
||||||
if (os) {
|
|
||||||
// check we have the host
|
|
||||||
const dir = fs.readdirSync('.', { withFileTypes: true }).filter(d => d.isDirectory() && !d.name.startsWith('.')).map(d => d.name);
|
|
||||||
if (!dir.includes(host)) {
|
|
||||||
panic(`Host ${host} does not exist`);
|
|
||||||
}
|
|
||||||
|
|
||||||
// install the packages that the dotfiles need to function properly
|
|
||||||
const targetInstallScript = os + '.os';
|
|
||||||
const installScripts = fs.readdirSync('.').filter(f => f.endsWith('.os'));
|
|
||||||
if (!installScripts.includes(targetInstallScript)) {
|
|
||||||
panic(`OS ${os} does not exist`);
|
|
||||||
}
|
|
||||||
|
|
||||||
console.log('Installing dependencies...');
|
|
||||||
subProcess.spawnSync('./' + targetInstallScript, [], {
|
|
||||||
stdio: 'inherit',
|
|
||||||
});
|
|
||||||
|
|
||||||
console.log('Successfully installed OS deps...');
|
|
||||||
}
|
|
||||||
|
|
||||||
// we want to create a symlink between common/ & {host}/ to ~/
|
|
||||||
// for every file stored in this repo, so we need
|
|
||||||
// to create a .bak/ of the origionals as this might
|
|
||||||
// well cause some issues...
|
|
||||||
|
|
||||||
const deepReadDir = async (dirPath) => await Promise.all(
|
|
||||||
(await readdir(dirPath, {withFileTypes: true})).map(async (dirent) => {
|
|
||||||
const currentPath = path.join(dirPath, dirent.name)
|
|
||||||
return dirent.isDirectory() ? await deepReadDir(currentPath) : currentPath;
|
|
||||||
}),
|
|
||||||
)
|
|
||||||
|
|
||||||
const parentDir = 'common/';
|
|
||||||
const childDir = host + '/';
|
|
||||||
const basePaths = (await deepReadDir(parentDir)).flat(999);
|
|
||||||
const childPaths = (await deepReadDir(childDir)).flat(999);
|
|
||||||
|
|
||||||
// start by making the backup
|
|
||||||
const backupDir = HOME + 'dotfiles.bak/'; // TODO: make this a cmd option
|
|
||||||
console.log(`Backing up current dotfiles to ${backupDir}`);
|
|
||||||
|
|
||||||
// delete current backupDir first, we might want to warn the user of this Y/n
|
|
||||||
if (fs.existsSync(backupDir))
|
|
||||||
fs.rmSync(backupDir, { recursive: true });
|
|
||||||
if (!fs.existsSync(backupDir))
|
|
||||||
fs.mkdirSync(backupDir);
|
|
||||||
|
|
||||||
const anonBasePaths = basePaths.map(e => e.split('/').slice(1).join('/'));
|
|
||||||
const anonChildPaths = childPaths.map(e => e.split('/').slice(1).join('/'));
|
|
||||||
const allAnonPaths = Array.from(new Set(anonBasePaths.concat(anonChildPaths)));
|
|
||||||
|
|
||||||
for (const path of allAnonPaths) {
|
|
||||||
const copyTarget = HOME + path;
|
|
||||||
if (!fs.existsSync(copyTarget)) {
|
|
||||||
console.log(`Not backing up ${copyTarget}... it does not exist...`);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
const backupTarget = backupDir + path;
|
|
||||||
const backupTargetDir = backupTarget.substring(0, backupTarget.lastIndexOf('/') + 1);
|
|
||||||
|
|
||||||
console.log(`Moving ${copyTarget} to ${backupTarget}`);
|
|
||||||
if (!fs.existsSync(backupTargetDir)) {
|
|
||||||
console.log(`${backupTargetDir} does not exist... creating`);
|
|
||||||
fs.mkdirSync(backupTargetDir, { recursive: true });
|
|
||||||
}
|
|
||||||
fs.copyFileSync(copyTarget, backupTarget);
|
|
||||||
}
|
|
||||||
|
|
||||||
// we prioritise targetDir over parentDir
|
|
||||||
// we first need to make a list that includes both the
|
|
||||||
// base and childPaths without the base if child exists
|
|
||||||
let symLinks = basePaths.filter(e => {
|
|
||||||
return !anonChildPaths.includes(e.split('/').slice(1).join('/'))
|
|
||||||
});
|
|
||||||
symLinks = symLinks.concat(childPaths);
|
|
||||||
|
|
||||||
for (const symLink of symLinks) {
|
|
||||||
const targetSymLink = HOME + (symLink.split('/').slice(1).join('/'))
|
|
||||||
const sourceSymLink = process.cwd() + '/' + symLink;
|
|
||||||
console.log(`Creating symlink between ${sourceSymLink} to ${targetSymLink}`);
|
|
||||||
|
|
||||||
if (!fs.existsSync(targetSymLink.substring(0, targetSymLink.lastIndexOf('/')))) {
|
|
||||||
fs.mkdirSync(targetSymLink.substring(0, targetSymLink.lastIndexOf('/')), { recursive: true });
|
|
||||||
}
|
|
||||||
|
|
||||||
if (fs.existsSync(targetSymLink)) {
|
|
||||||
fs.rmSync(targetSymLink);
|
|
||||||
}
|
|
||||||
|
|
||||||
fs.symlinkSync(sourceSymLink, targetSymLink);
|
|
||||||
}
|
|
||||||
|
|
||||||
console.log('Done!');
|
|
||||||
|
|
||||||
1083
bootstrap.py
Normal file
1083
bootstrap.py
Normal file
File diff suppressed because it is too large
Load Diff
Submodule common/.config/awesome/awesome-wm-widgets deleted from c8388f484e
Submodule common/.config/awesome/json deleted from dbf4b2dd2e
Submodule common/.config/awesome/plugins/bling deleted from 677917056d
Submodule common/.config/awesome/plugins/nice deleted from 34862a301c
Submodule common/.config/awesome/plugins/rubato deleted from a918170886
Submodule common/.config/awesome/plugins/udisks2 deleted from 55301d16e2
@@ -1,274 +0,0 @@
|
|||||||
local lsp = require('lsp-zero');
|
|
||||||
local cmp = require('cmp')
|
|
||||||
local luasnip = require('luasnip')
|
|
||||||
local dap = require('dap')
|
|
||||||
local dapui = require('dapui')
|
|
||||||
|
|
||||||
dap.configurations = {
|
|
||||||
cpp = {
|
|
||||||
{
|
|
||||||
name = "Launch",
|
|
||||||
type = "codelldb",
|
|
||||||
request = "launch",
|
|
||||||
program = function()
|
|
||||||
return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/build/', 'file')
|
|
||||||
end,
|
|
||||||
cwd = '${workspaceFolder}',
|
|
||||||
stopOnEntry = true,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
dap.adapters.codelldb = {
|
|
||||||
type = 'server',
|
|
||||||
port = '13000',
|
|
||||||
host = '127.0.0.1',
|
|
||||||
executable = {
|
|
||||||
command = vim.fn.stdpath('data') .. '/mason/bin/codelldb',
|
|
||||||
args = {"--port", "13000"}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
dapui.setup({
|
|
||||||
icons = { expanded = "➡️", collapsed = "⬇️" },
|
|
||||||
mappings = {
|
|
||||||
open = "o",
|
|
||||||
remove = "d",
|
|
||||||
edit = "e",
|
|
||||||
repl = "r",
|
|
||||||
toggle = "t",
|
|
||||||
},
|
|
||||||
expand_lines = vim.fn.has("nvim-0.7"),
|
|
||||||
layouts = {
|
|
||||||
{
|
|
||||||
elements = {
|
|
||||||
"scopes",
|
|
||||||
"stacks",
|
|
||||||
"watches"
|
|
||||||
},
|
|
||||||
size = 0.17,
|
|
||||||
position = "left"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
elements = {
|
|
||||||
"repl",
|
|
||||||
"console",
|
|
||||||
"breakpoints",
|
|
||||||
},
|
|
||||||
size = 0.15,
|
|
||||||
position = "bottom",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
floating = {
|
|
||||||
max_height = nil,
|
|
||||||
max_width = nil,
|
|
||||||
border = "single",
|
|
||||||
mappings = {
|
|
||||||
close = { "q", "<Esc>" },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
windows = { indent = 1 },
|
|
||||||
render = {
|
|
||||||
max_type_length = nil,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
dap.listeners.after.event_initialized["dapui_config"]=function()
|
|
||||||
dapui.open()
|
|
||||||
end
|
|
||||||
dap.listeners.before.event_terminated["dapui_config"]=function()
|
|
||||||
dapui.close()
|
|
||||||
end
|
|
||||||
dap.listeners.before.event_exited["dapui_config"]=function()
|
|
||||||
dapui.close()
|
|
||||||
end
|
|
||||||
vim.keymap.set("n", "<leader>ds", function()
|
|
||||||
dap.continue()
|
|
||||||
dapui.toggle({})
|
|
||||||
end)
|
|
||||||
vim.keymap.set("n", "<leader>de", function()
|
|
||||||
dapui.toggle({})
|
|
||||||
dap.terminate()
|
|
||||||
require("notify")("Debugger session ended", "warn")
|
|
||||||
end)
|
|
||||||
vim.keymap.set("n", "<leader>dC", function()
|
|
||||||
require('dap').clear_breakpoints()
|
|
||||||
require("notify")("Cleared breakpoints", "warn")
|
|
||||||
end)
|
|
||||||
vim.fn.sign_define('DapBreakpoint',{ text ='🔴', texthl ='', linehl ='', numhl =''})
|
|
||||||
vim.fn.sign_define('DapStopped',{ text ='▶️', texthl ='', linehl ='', numhl =''})
|
|
||||||
|
|
||||||
lsp.configure('clangd', {
|
|
||||||
capabilities = {
|
|
||||||
offsetEncoding = { "utf-16" }
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- lsp.setup_nvim_cmp({
|
|
||||||
-- preselect = require('cmp').PreselectMode.None,
|
|
||||||
-- completion = {
|
|
||||||
-- completeopt = 'menu,menuone,noinsert,noselect'
|
|
||||||
-- },
|
|
||||||
-- mapping = cmp_mappings,
|
|
||||||
-- })
|
|
||||||
|
|
||||||
lsp.on_attach(function(client, bufnr)
|
|
||||||
local opts = { buffer = bufnr }
|
|
||||||
vim.keymap.set('n', 'gD', '<Cmd>lua vim.lsp.buf.definition()<CR>', opts)
|
|
||||||
vim.keymap.set('n', 'gT', '<Cmd>lua vim.lsp.buf.type_definition()<CR>', opts)
|
|
||||||
vim.keymap.set('n', 'gR', '<Cmd>lua vim.lsp.buf.references()<CR>', opts)
|
|
||||||
|
|
||||||
-- diagnostics
|
|
||||||
vim.keymap.set('n', 'gn', '<Cmd>lua vim.diagnostic.goto_next()<CR>', opts)
|
|
||||||
vim.keymap.set('n', 'gN', '<Cmd>lua vim.diagnostic.goto_prev()<CR>', opts)
|
|
||||||
|
|
||||||
-- action & rename
|
|
||||||
vim.keymap.set('n', '<A-CR>', '<Cmd>Lspsaga code_action<CR>', opts)
|
|
||||||
vim.keymap.set('n', '<Leader>gr', '<Cmd>Lspsaga rename<CR>', opts)
|
|
||||||
|
|
||||||
-- overwrite the defaults
|
|
||||||
vim.keymap.set('n', 'gi', '<Cmd>lua vim.lsp.buf.implementation()<CR>', opts)
|
|
||||||
vim.keymap.set('n', 'K', '<Cmd>Lspsaga hover_doc<CR>', opts)
|
|
||||||
|
|
||||||
-- jump forward/backward up/down the call list
|
|
||||||
vim.keymap.set('n', 'gI', '<Cmd>Lspsaga incoming_calls<CR>', opts)
|
|
||||||
vim.keymap.set('n', 'gO', '<Cmd>Lspsaga outgoing_calls<CR>', opts)
|
|
||||||
|
|
||||||
-- Sexy LSP
|
|
||||||
vim.keymap.set('n', 'gd', '<CMD>Lspsaga peek_definition<CR>', opts)
|
|
||||||
vim.keymap.set('n', 'gt', '<CMD>Lspsaga peek_type_definition<CR>', opts)
|
|
||||||
vim.keymap.set('n', 'gr', '<CMD>Lspsaga lsp_finder<CR>', opts)
|
|
||||||
|
|
||||||
-- CLANGFORMATTTTT
|
|
||||||
vim.keymap.set('n', 'gf', '<Cmd>lua vim.lsp.buf.format()<CR>', opts)
|
|
||||||
vim.keymap.set('n', '<Leader>gg', '<Cmd>ClangdSwitchSourceHeader<CR>', opts)
|
|
||||||
vim.keymap.set('n', 'gw', '<Cmd>StripWhitespace<CR>', opts)
|
|
||||||
end)
|
|
||||||
|
|
||||||
|
|
||||||
lsp.setup()
|
|
||||||
|
|
||||||
local cmp_kinds = {
|
|
||||||
Text = "",
|
|
||||||
Method = "",
|
|
||||||
Function = "",
|
|
||||||
Constructor = "",
|
|
||||||
Field = "ﴲ",
|
|
||||||
Variable = "",
|
|
||||||
Class = "",
|
|
||||||
Interface = "ﰮ",
|
|
||||||
Module = "",
|
|
||||||
Property = "襁",
|
|
||||||
Unit = "",
|
|
||||||
Value = "",
|
|
||||||
Enum = "練",
|
|
||||||
Keyword = "",
|
|
||||||
Snippet = "",
|
|
||||||
Color = "",
|
|
||||||
File = "",
|
|
||||||
Reference = "",
|
|
||||||
Folder = "",
|
|
||||||
EnumMember = "",
|
|
||||||
Constant = "ﲀ",
|
|
||||||
Struct = "ﳤ",
|
|
||||||
Event = "",
|
|
||||||
Operator = "",
|
|
||||||
TypeParameter = ""
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
require('mason').setup({})
|
|
||||||
require('mason-lspconfig').setup({
|
|
||||||
handlers = {
|
|
||||||
lsp.default_setup,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
cmp.setup({
|
|
||||||
sources = {
|
|
||||||
{ name = 'nvim_lsp' },
|
|
||||||
{ name = 'luasnip' },
|
|
||||||
{ name = 'buffer' },
|
|
||||||
{ name = 'path' },
|
|
||||||
},
|
|
||||||
window = {
|
|
||||||
completion = cmp.config.window.bordered(),
|
|
||||||
documentation = cmp.config.window.bordered()
|
|
||||||
},
|
|
||||||
completion = {
|
|
||||||
completeopt = "menu,menuone,preview,noselect",
|
|
||||||
},
|
|
||||||
snippet = {
|
|
||||||
expand = function(args)
|
|
||||||
luasnip.lsp_expand(args.body)
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
formatting = {
|
|
||||||
fields = { "kind", "abbr", "menu" },
|
|
||||||
format = function(entry, vim_item)
|
|
||||||
vim_item.menu = ({
|
|
||||||
buffer = "",
|
|
||||||
nvim_lsp = "",
|
|
||||||
})[entry.source.name]
|
|
||||||
local kind = vim_item.kind
|
|
||||||
vim_item.kind = " " .. (cmp_kinds[kind] or "?") .. ""
|
|
||||||
local source = entry.source.name
|
|
||||||
vim_item.menu = "[" .. source .. "]"
|
|
||||||
return vim_item
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
sorting = {
|
|
||||||
priority_weight = 1.0,
|
|
||||||
},
|
|
||||||
matching = {
|
|
||||||
disallow_fuzzy_matching = true,
|
|
||||||
disallow_fullfuzzy_matching = true,
|
|
||||||
disallow_partial_fuzzy_matching = true,
|
|
||||||
disallow_partial_matching = false,
|
|
||||||
disallow_prefix_unmatching = true,
|
|
||||||
},
|
|
||||||
performance = {
|
|
||||||
max_view_entries = 20,
|
|
||||||
},
|
|
||||||
mapping = {
|
|
||||||
["<Tab>"] = cmp.mapping(function(fallback)
|
|
||||||
if (cmp.visible()) then
|
|
||||||
cmp.select_next_item(cmp_mode)
|
|
||||||
elseif luasnip.expand_or_jumpable() then
|
|
||||||
luasnip.expand_or_jump()
|
|
||||||
else
|
|
||||||
fallback()
|
|
||||||
end
|
|
||||||
cmp.mapping.select_next_item(cmp_mode)
|
|
||||||
end, { 'i', 's' }),
|
|
||||||
["<S-Tab>"] = cmp.mapping.select_prev_item(cmp_mode),
|
|
||||||
["<Up>"] = nil,
|
|
||||||
["<Down>"] = nil
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
cmp.setup.cmdline('/', {
|
|
||||||
sources = {
|
|
||||||
{ name = 'buffer' }
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
cmp.setup.cmdline(':', {
|
|
||||||
sources = cmp.config.sources({
|
|
||||||
{ name = 'path' }
|
|
||||||
}, {
|
|
||||||
{ name = 'cmdline' }
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.api.nvim_set_hl(0, "CmpItemMenu", { italic = true })
|
|
||||||
vim.diagnostic.config({
|
|
||||||
virtual_text = true,
|
|
||||||
signs = {
|
|
||||||
[vim.diagnostic.severity.ERROR] = '',
|
|
||||||
[vim.diagnostic.severity.WARN] = '',
|
|
||||||
[vim.diagnostic.severity.HINT] = '',
|
|
||||||
[vim.diagnostic.severity.INFO] = ''
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
local opts = {
|
|
||||||
settings = {
|
|
||||||
Lua = {
|
|
||||||
diagnostics = {
|
|
||||||
globals = { "vim" },
|
|
||||||
},
|
|
||||||
workspace = {
|
|
||||||
library = {
|
|
||||||
[vim.fn.expand "$VIMRUNTIME/lua"] = true,
|
|
||||||
[vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true,
|
|
||||||
},
|
|
||||||
maxPreload = 100000,
|
|
||||||
preloadFileSize = 10000,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
return opts
|
|
||||||
@@ -1,159 +0,0 @@
|
|||||||
require('dressing').setup({
|
|
||||||
input = {
|
|
||||||
-- Set to false to disable the vim.ui.input implementation
|
|
||||||
enabled = true,
|
|
||||||
|
|
||||||
-- Default prompt string
|
|
||||||
default_prompt = "Input:",
|
|
||||||
|
|
||||||
-- Can be 'left', 'right', or 'center'
|
|
||||||
prompt_align = "center",
|
|
||||||
|
|
||||||
-- When true, <Esc> will close the modal
|
|
||||||
insert_only = true,
|
|
||||||
|
|
||||||
-- When true, input will start in insert mode.
|
|
||||||
start_in_insert = true,
|
|
||||||
|
|
||||||
-- These are passed to nvim_open_win
|
|
||||||
anchor = "SW",
|
|
||||||
border = "rounded",
|
|
||||||
-- 'editor' and 'win' will default to being centered
|
|
||||||
relative = "cursor",
|
|
||||||
|
|
||||||
-- These can be integers or a float between 0 and 1 (e.g. 0.4 for 40%)
|
|
||||||
prefer_width = 40,
|
|
||||||
width = nil,
|
|
||||||
-- min_width and max_width can be a list of mixed types.
|
|
||||||
-- min_width = {20, 0.2} means "the greater of 20 columns or 20% of total"
|
|
||||||
max_width = { 140, 0.9 },
|
|
||||||
min_width = { 20, 0.2 },
|
|
||||||
|
|
||||||
buf_options = {},
|
|
||||||
win_options = {
|
|
||||||
-- Window transparency (0-100)
|
|
||||||
winblend = 10,
|
|
||||||
-- Disable line wrapping
|
|
||||||
wrap = false,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Set to `false` to disable
|
|
||||||
mappings = {
|
|
||||||
n = {
|
|
||||||
["<Esc>"] = "Close",
|
|
||||||
["<CR>"] = "Confirm",
|
|
||||||
},
|
|
||||||
i = {
|
|
||||||
["<C-c>"] = "Close",
|
|
||||||
["<CR>"] = "Confirm",
|
|
||||||
["<Up>"] = "HistoryPrev",
|
|
||||||
["<Down>"] = "HistoryNext",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
override = function(conf)
|
|
||||||
-- This is the config that will be passed to nvim_open_win.
|
|
||||||
-- Change values here to customize the layout
|
|
||||||
return conf
|
|
||||||
end,
|
|
||||||
|
|
||||||
-- see :help dressing_get_config
|
|
||||||
get_config = nil,
|
|
||||||
},
|
|
||||||
select = {
|
|
||||||
-- Set to false to disable the vim.ui.select implementation
|
|
||||||
enabled = true,
|
|
||||||
|
|
||||||
-- Priority list of preferred vim.select implementations
|
|
||||||
backend = { "telescope", "fzf_lua", "fzf", "builtin", "nui" },
|
|
||||||
|
|
||||||
-- Trim trailing `:` from prompt
|
|
||||||
trim_prompt = true,
|
|
||||||
|
|
||||||
-- Options for telescope selector
|
|
||||||
-- These are passed into the telescope picker directly. Can be used like:
|
|
||||||
-- telescope = require('telescope.themes').get_ivy({...})
|
|
||||||
telescope = nil,
|
|
||||||
|
|
||||||
-- Options for fzf selector
|
|
||||||
fzf = {
|
|
||||||
window = {
|
|
||||||
width = 0.5,
|
|
||||||
height = 0.4,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Options for fzf_lua selector
|
|
||||||
fzf_lua = {
|
|
||||||
winopts = {
|
|
||||||
width = 0.5,
|
|
||||||
height = 0.4,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Options for nui Menu
|
|
||||||
nui = {
|
|
||||||
position = "50%",
|
|
||||||
size = nil,
|
|
||||||
relative = "editor",
|
|
||||||
border = {
|
|
||||||
style = "rounded",
|
|
||||||
},
|
|
||||||
buf_options = {
|
|
||||||
swapfile = false,
|
|
||||||
filetype = "DressingSelect",
|
|
||||||
},
|
|
||||||
win_options = {
|
|
||||||
winblend = 10,
|
|
||||||
},
|
|
||||||
max_width = 80,
|
|
||||||
max_height = 40,
|
|
||||||
min_width = 40,
|
|
||||||
min_height = 10,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Options for built-in selector
|
|
||||||
builtin = {
|
|
||||||
-- These are passed to nvim_open_win
|
|
||||||
anchor = "NW",
|
|
||||||
border = "rounded",
|
|
||||||
-- 'editor' and 'win' will default to being centered
|
|
||||||
relative = "editor",
|
|
||||||
|
|
||||||
buf_options = {},
|
|
||||||
win_options = {
|
|
||||||
-- Window transparency (0-100)
|
|
||||||
winblend = 10,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- These can be integers or a float between 0 and 1 (e.g. 0.4 for 40%)
|
|
||||||
-- the min_ and max_ options can be a list of mixed types.
|
|
||||||
-- max_width = {140, 0.8} means "the lesser of 140 columns or 80% of total"
|
|
||||||
width = nil,
|
|
||||||
max_width = { 140, 0.8 },
|
|
||||||
min_width = { 40, 0.2 },
|
|
||||||
height = nil,
|
|
||||||
max_height = 0.9,
|
|
||||||
min_height = { 10, 0.2 },
|
|
||||||
|
|
||||||
-- Set to `false` to disable
|
|
||||||
mappings = {
|
|
||||||
["<Esc>"] = "Close",
|
|
||||||
["<C-c>"] = "Close",
|
|
||||||
["<CR>"] = "Confirm",
|
|
||||||
},
|
|
||||||
|
|
||||||
override = function(conf)
|
|
||||||
-- This is the config that will be passed to nvim_open_win.
|
|
||||||
-- Change values here to customize the layout
|
|
||||||
return conf
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Used to override format_item. See :help dressing-format
|
|
||||||
format_item_override = {},
|
|
||||||
|
|
||||||
-- see :help dressing_get_config
|
|
||||||
get_config = nil,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
@@ -1,233 +0,0 @@
|
|||||||
local line_ok, feline = pcall(require, "feline")
|
|
||||||
if not line_ok then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
local one_monokai = {
|
|
||||||
fg = "#abb2bf",
|
|
||||||
bg = "#1e2024",
|
|
||||||
green = "#98c379",
|
|
||||||
yellow = "#e5c07b",
|
|
||||||
purple = "#c678dd",
|
|
||||||
orange = "#d19a66",
|
|
||||||
peanut = "#f6d5a4",
|
|
||||||
red = "#e06c75",
|
|
||||||
aqua = "#61afef",
|
|
||||||
darkblue = "#282c34",
|
|
||||||
dark_red = "#f75f5f",
|
|
||||||
}
|
|
||||||
|
|
||||||
local vi_mode_colors = {
|
|
||||||
NORMAL = "green",
|
|
||||||
OP = "green",
|
|
||||||
INSERT = "yellow",
|
|
||||||
VISUAL = "purple",
|
|
||||||
LINES = "orange",
|
|
||||||
BLOCK = "dark_red",
|
|
||||||
REPLACE = "red",
|
|
||||||
COMMAND = "aqua",
|
|
||||||
}
|
|
||||||
|
|
||||||
local c = {
|
|
||||||
vim_mode = {
|
|
||||||
provider = {
|
|
||||||
name = "vi_mode",
|
|
||||||
opts = {
|
|
||||||
show_mode_name = true,
|
|
||||||
-- padding = "center", -- Uncomment for extra padding.
|
|
||||||
},
|
|
||||||
},
|
|
||||||
hl = function()
|
|
||||||
return {
|
|
||||||
fg = require("feline.providers.vi_mode").get_mode_color(),
|
|
||||||
bg = "darkblue",
|
|
||||||
style = "bold",
|
|
||||||
name = "NeovimModeHLColor",
|
|
||||||
}
|
|
||||||
end,
|
|
||||||
left_sep = "block",
|
|
||||||
right_sep = "block",
|
|
||||||
},
|
|
||||||
gitBranch = {
|
|
||||||
provider = "git_branch",
|
|
||||||
hl = {
|
|
||||||
fg = "peanut",
|
|
||||||
bg = "darkblue",
|
|
||||||
style = "bold",
|
|
||||||
},
|
|
||||||
left_sep = "block",
|
|
||||||
right_sep = "block",
|
|
||||||
},
|
|
||||||
gitDiffAdded = {
|
|
||||||
provider = "git_diff_added",
|
|
||||||
hl = {
|
|
||||||
fg = "green",
|
|
||||||
bg = "darkblue",
|
|
||||||
},
|
|
||||||
left_sep = "block",
|
|
||||||
right_sep = "block",
|
|
||||||
},
|
|
||||||
gitDiffRemoved = {
|
|
||||||
provider = "git_diff_removed",
|
|
||||||
hl = {
|
|
||||||
fg = "red",
|
|
||||||
bg = "darkblue",
|
|
||||||
},
|
|
||||||
left_sep = "block",
|
|
||||||
right_sep = "block",
|
|
||||||
},
|
|
||||||
gitDiffChanged = {
|
|
||||||
provider = "git_diff_changed",
|
|
||||||
hl = {
|
|
||||||
fg = "fg",
|
|
||||||
bg = "darkblue",
|
|
||||||
},
|
|
||||||
left_sep = "block",
|
|
||||||
right_sep = "right_filled",
|
|
||||||
},
|
|
||||||
separator = {
|
|
||||||
provider = "",
|
|
||||||
},
|
|
||||||
fileinfo = {
|
|
||||||
provider = {
|
|
||||||
name = "file_info",
|
|
||||||
opts = {
|
|
||||||
type = "relative-short",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
hl = {
|
|
||||||
style = "bold",
|
|
||||||
},
|
|
||||||
left_sep = " ",
|
|
||||||
right_sep = " ",
|
|
||||||
},
|
|
||||||
diagnostic_errors = {
|
|
||||||
provider = "diagnostic_errors",
|
|
||||||
hl = {
|
|
||||||
fg = "red",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
diagnostic_warnings = {
|
|
||||||
provider = "diagnostic_warnings",
|
|
||||||
hl = {
|
|
||||||
fg = "yellow",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
diagnostic_hints = {
|
|
||||||
provider = "diagnostic_hints",
|
|
||||||
hl = {
|
|
||||||
fg = "aqua",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
diagnostic_info = {
|
|
||||||
provider = "diagnostic_info",
|
|
||||||
},
|
|
||||||
lsp_client_names = {
|
|
||||||
provider = "lsp_client_names",
|
|
||||||
hl = {
|
|
||||||
fg = "purple",
|
|
||||||
bg = "darkblue",
|
|
||||||
style = "bold",
|
|
||||||
},
|
|
||||||
left_sep = "left_filled",
|
|
||||||
right_sep = "block",
|
|
||||||
},
|
|
||||||
file_type = {
|
|
||||||
provider = {
|
|
||||||
name = "file_type",
|
|
||||||
opts = {
|
|
||||||
filetype_icon = true,
|
|
||||||
case = "titlecase",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
hl = {
|
|
||||||
fg = "red",
|
|
||||||
bg = "darkblue",
|
|
||||||
style = "bold",
|
|
||||||
},
|
|
||||||
left_sep = "block",
|
|
||||||
right_sep = "block",
|
|
||||||
},
|
|
||||||
file_encoding = {
|
|
||||||
provider = "file_encoding",
|
|
||||||
hl = {
|
|
||||||
fg = "orange",
|
|
||||||
bg = "darkblue",
|
|
||||||
style = "italic",
|
|
||||||
},
|
|
||||||
left_sep = "block",
|
|
||||||
right_sep = "block",
|
|
||||||
},
|
|
||||||
position = {
|
|
||||||
provider = "position",
|
|
||||||
hl = {
|
|
||||||
fg = "green",
|
|
||||||
bg = "darkblue",
|
|
||||||
style = "bold",
|
|
||||||
},
|
|
||||||
left_sep = "block",
|
|
||||||
right_sep = "block",
|
|
||||||
},
|
|
||||||
line_percentage = {
|
|
||||||
provider = "line_percentage",
|
|
||||||
hl = {
|
|
||||||
fg = "aqua",
|
|
||||||
bg = "darkblue",
|
|
||||||
style = "bold",
|
|
||||||
},
|
|
||||||
left_sep = "block",
|
|
||||||
right_sep = "block",
|
|
||||||
},
|
|
||||||
scroll_bar = {
|
|
||||||
provider = "scroll_bar",
|
|
||||||
hl = {
|
|
||||||
fg = "yellow",
|
|
||||||
style = "bold",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
local left = {
|
|
||||||
c.vim_mode,
|
|
||||||
c.gitBranch,
|
|
||||||
c.gitDiffAdded,
|
|
||||||
c.gitDiffRemoved,
|
|
||||||
c.gitDiffChanged,
|
|
||||||
c.separator,
|
|
||||||
}
|
|
||||||
|
|
||||||
local middle = {
|
|
||||||
c.fileinfo,
|
|
||||||
c.diagnostic_errors,
|
|
||||||
c.diagnostic_warnings,
|
|
||||||
c.diagnostic_info,
|
|
||||||
c.diagnostic_hints,
|
|
||||||
}
|
|
||||||
|
|
||||||
local right = {
|
|
||||||
c.lsp_client_names,
|
|
||||||
c.file_type,
|
|
||||||
c.file_encoding,
|
|
||||||
c.position,
|
|
||||||
c.line_percentage,
|
|
||||||
c.scroll_bar,
|
|
||||||
}
|
|
||||||
|
|
||||||
local components = {
|
|
||||||
active = {
|
|
||||||
left,
|
|
||||||
middle,
|
|
||||||
right,
|
|
||||||
},
|
|
||||||
inactive = {
|
|
||||||
left,
|
|
||||||
middle,
|
|
||||||
right,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
feline.setup({
|
|
||||||
components = components,
|
|
||||||
theme = one_monokai,
|
|
||||||
vi_mode_colors = vi_mode_colors,
|
|
||||||
})
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
-- Lua
|
|
||||||
require('lsp-colors').setup({
|
|
||||||
Error = '#F44747',
|
|
||||||
Warning = '#FF8800',
|
|
||||||
Hint = '#4FC1FF',
|
|
||||||
Information = '#FFCC66'
|
|
||||||
})
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
local opts = {silent = true, noremap = true}
|
|
||||||
vim.api.nvim_set_keymap("n", "<leader>xx", "<cmd>TroubleToggle<cr>", opts)
|
|
||||||
require('trouble').setup{
|
|
||||||
position = "bottom", -- position of the list can be: bottom, top, left, right
|
|
||||||
icons = true, -- use devicons for filenames
|
|
||||||
mode = "document_diagnostics", -- "workspace_diagnostics", "document_diagnostics", "quickfix", "lsp_references", "loclist"
|
|
||||||
fold_open = "", -- icon used for open folds
|
|
||||||
fold_closed = "", -- icon used for closed folds
|
|
||||||
group = true, -- group results by file
|
|
||||||
padding = true, -- add an extra new line on top of the list
|
|
||||||
action_keys = { -- key mappings for actions in the trouble list
|
|
||||||
close = "q", -- close the list
|
|
||||||
cancel = {"ć", "Ć"}, -- cancel the preview and get back to your last window / buffer / cursor
|
|
||||||
refresh = "r", -- manually refresh
|
|
||||||
jump = {"<cr>", "<tab>"}, -- jump to the diagnostic or open / close folds
|
|
||||||
toggle_mode = "m", -- toggle between "workspace" and "document" diagnostics mode
|
|
||||||
toggle_preview = "P", -- toggle auto_preview
|
|
||||||
hover = "H", -- opens a small popup with the full multiline message
|
|
||||||
preview = "p", -- preview the diagnostic location
|
|
||||||
close_folds = {"zM", "zm"}, -- close all folds
|
|
||||||
open_folds = {"zR", "zr"}, -- open all folds
|
|
||||||
toggle_fold = {"zA", "za"}, -- toggle fold of current file
|
|
||||||
previous = "l", -- preview item
|
|
||||||
next = "k" -- next item
|
|
||||||
},
|
|
||||||
indent_lines = true, -- add an indent guide below the fold icons
|
|
||||||
auto_open = false, -- automatically open the list when you have diagnostics
|
|
||||||
auto_close = false, -- automatically close the list when you have no diagnostics
|
|
||||||
auto_preview = true, -- automatically preview the location of the diagnostic. <esc> to close preview and go back to last window
|
|
||||||
auto_fold = false, -- automatically fold a file trouble list at creation
|
|
||||||
signs = {
|
|
||||||
-- icons / text used for a diagnostic
|
|
||||||
error = "",
|
|
||||||
warning = "",
|
|
||||||
hint = "",
|
|
||||||
information = "",
|
|
||||||
other = ""
|
|
||||||
},
|
|
||||||
use_diagnostic_signs = true -- enabling this will use the signs defined in your lsp client
|
|
||||||
}
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
--local status, starter = pcall(require, "mini.starter")
|
|
||||||
--if not status then
|
|
||||||
--return
|
|
||||||
--end
|
|
||||||
|
|
||||||
--starter.setup({
|
|
||||||
--content_hooks = {
|
|
||||||
--starter.gen_hook.adding_bullet(""),
|
|
||||||
--starter.gen_hook.aligning("center", "center"),
|
|
||||||
--},
|
|
||||||
--evaluate_single = true,
|
|
||||||
--footer = os.date(),
|
|
||||||
--header = table.concat({
|
|
||||||
--[[██████╗ ███████╗███╗ ██╗██╗ ██╗██╗███╗ ███╗]],
|
|
||||||
--[[██╔══██╗██╔════╝████╗ ██║██║ ██║██║████╗ ████║]],
|
|
||||||
--[[██████╔╝█████╗ ██╔██╗ ██║██║ ██║██║██╔████╔██║]],
|
|
||||||
--[[██╔══██╗██╔══╝ ██║╚██╗██║╚██╗ ██╔╝██║██║╚██╔╝██║]],
|
|
||||||
--[[██████╔╝███████╗██║ ╚████║ ╚████╔╝ ██║██║ ╚═╝ ██║]],
|
|
||||||
--[[╚═════╝ ╚══════╝╚═╝ ╚═══╝ ╚═══╝ ╚═╝╚═╝ ╚═╝]],
|
|
||||||
--[[─────────────────────────────────────────────────]],
|
|
||||||
--}, "\n"),
|
|
||||||
--query_updaters = [[abcdefghilmoqrstuvwxyz0123456789_-,.ABCDEFGHIJKLMOQRSTUVWXYZ]],
|
|
||||||
--items = {
|
|
||||||
--{ action = "PackerSync", name = "U: Update Plugins", section = "Plugins" },
|
|
||||||
--{ action = "PackerCompile", name = "R: Recompile Packer", section = "Plugins" },
|
|
||||||
--{ action = "enew", name = "E: New Buffer", section = "Builtin actions" },
|
|
||||||
--{ action = "qall!", name = "Q: Quit Neovim", section = "Builtin actions" },
|
|
||||||
--},
|
|
||||||
--})
|
|
||||||
|
|
||||||
--vim.cmd([[
|
|
||||||
--augroup MiniStarterJK
|
|
||||||
--au!
|
|
||||||
--au User MiniStarterOpened nmap <buffer> j <Cmd>lua MiniStarter.update_current_item('next')<CR>
|
|
||||||
--au User MiniStarterOpened nmap <buffer> k <Cmd>lua MiniStarter.update_current_item('prev')<CR>
|
|
||||||
--au User MiniStarterOpened nmap <buffer> <C-p> <Cmd>Telescope find_files<CR>
|
|
||||||
--au User MiniStarterOpened nmap <buffer> <C-n> <Cmd>Telescope file_browser<CR>
|
|
||||||
--augroup END
|
|
||||||
--]])
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
--require("nvim-tree").setup({
|
|
||||||
--hijack_unnamed_buffer_when_opening = true,
|
|
||||||
----open_on_setup = false,
|
|
||||||
----open_on_setup_file = false,
|
|
||||||
--update_focused_file = {
|
|
||||||
--enable = true,
|
|
||||||
--},
|
|
||||||
--view = {
|
|
||||||
--width = 35,
|
|
||||||
--side = "right",
|
|
||||||
--},
|
|
||||||
--git = {
|
|
||||||
--ignore = false,
|
|
||||||
--},
|
|
||||||
--filters = {
|
|
||||||
--dotfiles = false,
|
|
||||||
--}
|
|
||||||
--})
|
|
||||||
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
require'nvim-treesitter.configs'.setup {
|
|
||||||
ensure_installed = {
|
|
||||||
"c",
|
|
||||||
"cpp",
|
|
||||||
"lua",
|
|
||||||
"python",
|
|
||||||
"javascript",
|
|
||||||
"typescript",
|
|
||||||
"html",
|
|
||||||
"css",
|
|
||||||
"bash",
|
|
||||||
"json",
|
|
||||||
"yaml",
|
|
||||||
"markdown",
|
|
||||||
},
|
|
||||||
highlight = {
|
|
||||||
enable = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
require('obsidian').setup({
|
|
||||||
dir = '~/Obsidian',
|
|
||||||
completion = {
|
|
||||||
nvim_cmp = true, -- if using nvim-cmp, otherwise set to false
|
|
||||||
},
|
|
||||||
follow_url_func = function(url)
|
|
||||||
-- Open the URL in the default web browser.
|
|
||||||
vim.fn.jobstart({'xdg-open', url}) -- linux
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.keymap.set('n', 'go', function()
|
|
||||||
if require('obsidian').util.cursor_on_markdown_link() then
|
|
||||||
return '<cmd>ObsidianFollowLink<CR>'
|
|
||||||
else
|
|
||||||
return 'go'
|
|
||||||
end
|
|
||||||
end, { noremap = false, expr = true })
|
|
||||||
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
vsm.o.termguicolors = true
|
|
||||||
vim.o.background = 'light'
|
|
||||||
|
|
||||||
vim.cmd("colorscheme kanagawa-lotus")
|
|
||||||
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
host github.com
|
|
||||||
HostName ssh.github.com
|
|
||||||
IdentityFile ~/.ssh/github
|
|
||||||
|
|
||||||
host git.chamit.co.uk
|
|
||||||
HostName git.chamit.co.uk
|
|
||||||
IdentityFile ~/.ssh/github
|
|
||||||
|
|
||||||
Host vps
|
|
||||||
HostName ***
|
|
||||||
IdentityFile ~/.ssh/vps
|
|
||||||
User ben
|
|
||||||
|
|
||||||
host remarkable
|
|
||||||
HostName 192.168.0.18
|
|
||||||
User root
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
set-option -g default-shell /bin/zsh
|
|
||||||
|
|
||||||
set -s extended-keys on
|
|
||||||
set -as terminal-features 'xterm*:extkeys'
|
|
||||||
set -ga terminal-overrides ",xterm*:Tc"
|
|
||||||
set -sg escape-time 0
|
|
||||||
set -g history-limit 50000
|
|
||||||
|
|
||||||
# fix tmux being a pain in the fucking ass and pass through C-CR to vim
|
|
||||||
#bind C-Enter send-keys -t $PANE_ID C-Enter
|
|
||||||
unbind C-Enter
|
|
||||||
|
|
||||||
# smart pane switching with awareness of vim splits
|
|
||||||
bind h select-pane -L
|
|
||||||
bind j select-pane -D
|
|
||||||
bind k select-pane -U
|
|
||||||
bind l select-pane -R
|
|
||||||
|
|
||||||
bind -r C-h resize-pane -L 4
|
|
||||||
bind -r C-j resize-pane -D 2
|
|
||||||
bind -r C-k resize-pane -U 2
|
|
||||||
bind -r C-l resize-pane -R 4
|
|
||||||
|
|
||||||
bind C-p previous-window
|
|
||||||
bind C-n next-window
|
|
||||||
|
|
||||||
set -g repeat-time 1000
|
|
||||||
|
|
||||||
# split panes using v and x
|
|
||||||
bind v split-window -h
|
|
||||||
bind x split-window -v
|
|
||||||
unbind '"'
|
|
||||||
unbind %
|
|
||||||
|
|
||||||
set -g status-right ""
|
|
||||||
set -g status-style 'bg=#f5bde6 fg=#24273a'
|
|
||||||
set -g pane-active-border-style "bg=default fg=#f5bde6"
|
|
||||||
|
|
||||||
set -g @plugin 'tmux-plugins/tmux-resurrect'
|
|
||||||
set -g @plugin 'tmux-plugins/tmux-continuum'
|
|
||||||
set -g @resurrect-strategy-nvim 'session'
|
|
||||||
|
|
||||||
run '~/.tmux/plugins/tpm/tpm'
|
|
||||||
|
|
||||||
11
etc/fstab
Normal file
11
etc/fstab
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
# /etc/fstab: static file system information.
|
||||||
|
#
|
||||||
|
# <file system> <mount point> <type> <options> <dump> <pass>
|
||||||
|
# / was on /dev/sda1 during installation
|
||||||
|
UUID=CHANGEME / ext4 errors=remount-ro 0 1
|
||||||
|
|
||||||
|
# swap
|
||||||
|
#UUID=CHANGEME none swap sw 0 0
|
||||||
|
|
||||||
|
# tmpfs for /tmp
|
||||||
|
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
|
||||||
29
etc/nginx/nginx.conf
Normal file
29
etc/nginx/nginx.conf
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
user www-data;
|
||||||
|
worker_processes auto;
|
||||||
|
pid /run/nginx.pid;
|
||||||
|
include /etc/nginx/modules-enabled/*.conf;
|
||||||
|
|
||||||
|
events {
|
||||||
|
worker_connections 768;
|
||||||
|
}
|
||||||
|
|
||||||
|
http {
|
||||||
|
sendfile on;
|
||||||
|
tcp_nopush on;
|
||||||
|
types_hash_max_size 2048;
|
||||||
|
server_tokens off;
|
||||||
|
|
||||||
|
include /etc/nginx/mime.types;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
|
||||||
|
ssl_protocols TLSv1.2 TLSv1.3;
|
||||||
|
ssl_prefer_server_ciphers on;
|
||||||
|
|
||||||
|
access_log /var/log/nginx/access.log;
|
||||||
|
error_log /var/log/nginx/error.log;
|
||||||
|
|
||||||
|
gzip on;
|
||||||
|
|
||||||
|
include /etc/nginx/conf.d/*.conf;
|
||||||
|
include /etc/nginx/sites-enabled/*;
|
||||||
|
}
|
||||||
507
grep
507
grep
@@ -1,507 +0,0 @@
|
|||||||
# Configuration file for locale-gen
|
|
||||||
#
|
|
||||||
# lists of locales that are to be generated by the locale-gen command.
|
|
||||||
#
|
|
||||||
# Each line is of the form:
|
|
||||||
#
|
|
||||||
# <locale> <charset>
|
|
||||||
#
|
|
||||||
# where <locale> is one of the locales given in /usr/share/i18n/locales
|
|
||||||
# and <charset> is one of the character sets listed in /usr/share/i18n/charmaps
|
|
||||||
#
|
|
||||||
# The locale-gen command will generate all the locales,
|
|
||||||
# placing them in /usr/lib/locale.
|
|
||||||
#
|
|
||||||
# A list of supported locales is given in /usr/share/i18n/SUPPORTED
|
|
||||||
# and is included in this file. Uncomment the needed locales below.
|
|
||||||
#
|
|
||||||
#aa_DJ.UTF-8 UTF-8
|
|
||||||
#aa_DJ ISO-8859-1
|
|
||||||
#aa_ER UTF-8
|
|
||||||
#aa_ER@saaho UTF-8
|
|
||||||
#aa_ET UTF-8
|
|
||||||
#af_ZA.UTF-8 UTF-8
|
|
||||||
#af_ZA ISO-8859-1
|
|
||||||
#agr_PE UTF-8
|
|
||||||
#ak_GH UTF-8
|
|
||||||
#am_ET UTF-8
|
|
||||||
#an_ES.UTF-8 UTF-8
|
|
||||||
#an_ES ISO-8859-15
|
|
||||||
#anp_IN UTF-8
|
|
||||||
#ar_AE.UTF-8 UTF-8
|
|
||||||
#ar_AE ISO-8859-6
|
|
||||||
#ar_BH.UTF-8 UTF-8
|
|
||||||
#ar_BH ISO-8859-6
|
|
||||||
#ar_DZ.UTF-8 UTF-8
|
|
||||||
#ar_DZ ISO-8859-6
|
|
||||||
#ar_EG.UTF-8 UTF-8
|
|
||||||
#ar_EG ISO-8859-6
|
|
||||||
#ar_IN UTF-8
|
|
||||||
#ar_IQ.UTF-8 UTF-8
|
|
||||||
#ar_IQ ISO-8859-6
|
|
||||||
#ar_JO.UTF-8 UTF-8
|
|
||||||
#ar_JO ISO-8859-6
|
|
||||||
#ar_KW.UTF-8 UTF-8
|
|
||||||
#ar_KW ISO-8859-6
|
|
||||||
#ar_LB.UTF-8 UTF-8
|
|
||||||
#ar_LB ISO-8859-6
|
|
||||||
#ar_LY.UTF-8 UTF-8
|
|
||||||
#ar_LY ISO-8859-6
|
|
||||||
#ar_MA.UTF-8 UTF-8
|
|
||||||
#ar_MA ISO-8859-6
|
|
||||||
#ar_OM.UTF-8 UTF-8
|
|
||||||
#ar_OM ISO-8859-6
|
|
||||||
#ar_QA.UTF-8 UTF-8
|
|
||||||
#ar_QA ISO-8859-6
|
|
||||||
#ar_SA.UTF-8 UTF-8
|
|
||||||
#ar_SA ISO-8859-6
|
|
||||||
#ar_SD.UTF-8 UTF-8
|
|
||||||
#ar_SD ISO-8859-6
|
|
||||||
#ar_SS UTF-8
|
|
||||||
#ar_SY.UTF-8 UTF-8
|
|
||||||
#ar_SY ISO-8859-6
|
|
||||||
#ar_TN.UTF-8 UTF-8
|
|
||||||
#ar_TN ISO-8859-6
|
|
||||||
#ar_YE.UTF-8 UTF-8
|
|
||||||
#ar_YE ISO-8859-6
|
|
||||||
#ayc_PE UTF-8
|
|
||||||
#az_AZ UTF-8
|
|
||||||
#az_IR UTF-8
|
|
||||||
#as_IN UTF-8
|
|
||||||
#ast_ES.UTF-8 UTF-8
|
|
||||||
#ast_ES ISO-8859-15
|
|
||||||
#be_BY.UTF-8 UTF-8
|
|
||||||
#be_BY CP1251
|
|
||||||
#be_BY@latin UTF-8
|
|
||||||
#bem_ZM UTF-8
|
|
||||||
#ber_DZ UTF-8
|
|
||||||
#ber_MA UTF-8
|
|
||||||
#bg_BG.UTF-8 UTF-8
|
|
||||||
#bg_BG CP1251
|
|
||||||
#bhb_IN.UTF-8 UTF-8
|
|
||||||
#bho_IN UTF-8
|
|
||||||
#bho_NP UTF-8
|
|
||||||
#bi_VU UTF-8
|
|
||||||
#bn_BD UTF-8
|
|
||||||
#bn_IN UTF-8
|
|
||||||
#bo_CN UTF-8
|
|
||||||
#bo_IN UTF-8
|
|
||||||
#br_FR.UTF-8 UTF-8
|
|
||||||
#br_FR ISO-8859-1
|
|
||||||
#br_FR@euro ISO-8859-15
|
|
||||||
#brx_IN UTF-8
|
|
||||||
#bs_BA.UTF-8 UTF-8
|
|
||||||
#bs_BA ISO-8859-2
|
|
||||||
#byn_ER UTF-8
|
|
||||||
#ca_AD.UTF-8 UTF-8
|
|
||||||
#ca_AD ISO-8859-15
|
|
||||||
#ca_ES.UTF-8 UTF-8
|
|
||||||
#ca_ES ISO-8859-1
|
|
||||||
#ca_ES@euro ISO-8859-15
|
|
||||||
#ca_ES@valencia UTF-8
|
|
||||||
#ca_FR.UTF-8 UTF-8
|
|
||||||
#ca_FR ISO-8859-15
|
|
||||||
#ca_IT.UTF-8 UTF-8
|
|
||||||
#ca_IT ISO-8859-15
|
|
||||||
#ce_RU UTF-8
|
|
||||||
#chr_US UTF-8
|
|
||||||
#ckb_IQ UTF-8
|
|
||||||
#cmn_TW UTF-8
|
|
||||||
#crh_UA UTF-8
|
|
||||||
#cs_CZ.UTF-8 UTF-8
|
|
||||||
#cs_CZ ISO-8859-2
|
|
||||||
#csb_PL UTF-8
|
|
||||||
#cv_RU UTF-8
|
|
||||||
#cy_GB.UTF-8 UTF-8
|
|
||||||
#cy_GB ISO-8859-14
|
|
||||||
#da_DK.UTF-8 UTF-8
|
|
||||||
#da_DK ISO-8859-1
|
|
||||||
#de_AT.UTF-8 UTF-8
|
|
||||||
#de_AT ISO-8859-1
|
|
||||||
#de_AT@euro ISO-8859-15
|
|
||||||
#de_BE.UTF-8 UTF-8
|
|
||||||
#de_BE ISO-8859-1
|
|
||||||
#de_BE@euro ISO-8859-15
|
|
||||||
#de_CH.UTF-8 UTF-8
|
|
||||||
#de_CH ISO-8859-1
|
|
||||||
#de_DE.UTF-8 UTF-8
|
|
||||||
#de_DE ISO-8859-1
|
|
||||||
#de_DE@euro ISO-8859-15
|
|
||||||
#de_IT.UTF-8 UTF-8
|
|
||||||
#de_IT ISO-8859-1
|
|
||||||
#de_LI.UTF-8 UTF-8
|
|
||||||
#de_LU.UTF-8 UTF-8
|
|
||||||
#de_LU ISO-8859-1
|
|
||||||
#de_LU@euro ISO-8859-15
|
|
||||||
#doi_IN UTF-8
|
|
||||||
#dsb_DE UTF-8
|
|
||||||
#dv_MV UTF-8
|
|
||||||
#dz_BT UTF-8
|
|
||||||
#el_GR.UTF-8 UTF-8
|
|
||||||
#el_GR ISO-8859-7
|
|
||||||
#el_GR@euro ISO-8859-7
|
|
||||||
#el_CY.UTF-8 UTF-8
|
|
||||||
#el_CY ISO-8859-7
|
|
||||||
#en_AG UTF-8
|
|
||||||
#en_AU.UTF-8 UTF-8
|
|
||||||
#en_AU ISO-8859-1
|
|
||||||
#en_BW.UTF-8 UTF-8
|
|
||||||
#en_BW ISO-8859-1
|
|
||||||
#en_CA.UTF-8 UTF-8
|
|
||||||
#en_CA ISO-8859-1
|
|
||||||
#en_DK.UTF-8 UTF-8
|
|
||||||
#en_DK ISO-8859-1
|
|
||||||
en_GB.UTF-8 UTF-8
|
|
||||||
#en_GB ISO-8859-1
|
|
||||||
#en_HK.UTF-8 UTF-8
|
|
||||||
#en_HK ISO-8859-1
|
|
||||||
#en_IE.UTF-8 UTF-8
|
|
||||||
#en_IE ISO-8859-1
|
|
||||||
#en_IE@euro ISO-8859-15
|
|
||||||
#en_IL UTF-8
|
|
||||||
#en_IN UTF-8
|
|
||||||
#en_NG UTF-8
|
|
||||||
#en_NZ.UTF-8 UTF-8
|
|
||||||
#en_NZ ISO-8859-1
|
|
||||||
#en_PH.UTF-8 UTF-8
|
|
||||||
#en_PH ISO-8859-1
|
|
||||||
#en_SC.UTF-8 UTF-8
|
|
||||||
#en_SG.UTF-8 UTF-8
|
|
||||||
#en_SG ISO-8859-1
|
|
||||||
eu_US.UTF-8 UTF-8
|
|
||||||
#en_US ISO-8859-1
|
|
||||||
#en_ZA.UTF-8 UTF-8
|
|
||||||
#en_ZA ISO-8859-1
|
|
||||||
#en_ZM UTF-8
|
|
||||||
#en_ZW.UTF-8 UTF-8
|
|
||||||
#en_ZW ISO-8859-1
|
|
||||||
#eo UTF-8
|
|
||||||
#es_AR.UTF-8 UTF-8
|
|
||||||
#es_AR ISO-8859-1
|
|
||||||
#es_BO.UTF-8 UTF-8
|
|
||||||
#es_BO ISO-8859-1
|
|
||||||
#es_CL.UTF-8 UTF-8
|
|
||||||
#es_CL ISO-8859-1
|
|
||||||
#es_CO.UTF-8 UTF-8
|
|
||||||
#es_CO ISO-8859-1
|
|
||||||
#es_CR.UTF-8 UTF-8
|
|
||||||
#es_CR ISO-8859-1
|
|
||||||
#es_CU UTF-8
|
|
||||||
#es_DO.UTF-8 UTF-8
|
|
||||||
#es_DO ISO-8859-1
|
|
||||||
#es_EC.UTF-8 UTF-8
|
|
||||||
#es_EC ISO-8859-1
|
|
||||||
#es_ES.UTF-8 UTF-8
|
|
||||||
#es_ES ISO-8859-1
|
|
||||||
#es_ES@euro ISO-8859-15
|
|
||||||
#es_GT.UTF-8 UTF-8
|
|
||||||
#es_GT ISO-8859-1
|
|
||||||
#es_HN.UTF-8 UTF-8
|
|
||||||
#es_HN ISO-8859-1
|
|
||||||
#es_MX.UTF-8 UTF-8
|
|
||||||
#es_MX ISO-8859-1
|
|
||||||
#es_NI.UTF-8 UTF-8
|
|
||||||
#es_NI ISO-8859-1
|
|
||||||
#es_PA.UTF-8 UTF-8
|
|
||||||
#es_PA ISO-8859-1
|
|
||||||
#es_PE.UTF-8 UTF-8
|
|
||||||
#es_PE ISO-8859-1
|
|
||||||
#es_PR.UTF-8 UTF-8
|
|
||||||
#es_PR ISO-8859-1
|
|
||||||
#es_PY.UTF-8 UTF-8
|
|
||||||
#es_PY ISO-8859-1
|
|
||||||
#es_SV.UTF-8 UTF-8
|
|
||||||
#es_SV ISO-8859-1
|
|
||||||
#es_US.UTF-8 UTF-8
|
|
||||||
#es_US ISO-8859-1
|
|
||||||
#es_UY.UTF-8 UTF-8
|
|
||||||
#es_UY ISO-8859-1
|
|
||||||
#es_VE.UTF-8 UTF-8
|
|
||||||
#es_VE ISO-8859-1
|
|
||||||
#et_EE.UTF-8 UTF-8
|
|
||||||
#et_EE ISO-8859-1
|
|
||||||
#et_EE.ISO-8859-15 ISO-8859-15
|
|
||||||
#eu_ES.UTF-8 UTF-8
|
|
||||||
#eu_ES ISO-8859-1
|
|
||||||
#eu_ES@euro ISO-8859-15
|
|
||||||
#fa_IR UTF-8
|
|
||||||
#ff_SN UTF-8
|
|
||||||
#fi_FI.UTF-8 UTF-8
|
|
||||||
#fi_FI ISO-8859-1
|
|
||||||
#fi_FI@euro ISO-8859-15
|
|
||||||
#fil_PH UTF-8
|
|
||||||
#fo_FO.UTF-8 UTF-8
|
|
||||||
#fo_FO ISO-8859-1
|
|
||||||
#fr_BE.UTF-8 UTF-8
|
|
||||||
#fr_BE ISO-8859-1
|
|
||||||
#fr_BE@euro ISO-8859-15
|
|
||||||
#fr_CA.UTF-8 UTF-8
|
|
||||||
#fr_CA ISO-8859-1
|
|
||||||
#fr_CH.UTF-8 UTF-8
|
|
||||||
#fr_CH ISO-8859-1
|
|
||||||
#fr_FR.UTF-8 UTF-8
|
|
||||||
#fr_FR ISO-8859-1
|
|
||||||
#fr_FR@euro ISO-8859-15
|
|
||||||
#fr_LU.UTF-8 UTF-8
|
|
||||||
#fr_LU ISO-8859-1
|
|
||||||
#fr_LU@euro ISO-8859-15
|
|
||||||
#fur_IT UTF-8
|
|
||||||
#fy_NL UTF-8
|
|
||||||
#fy_DE UTF-8
|
|
||||||
#ga_IE.UTF-8 UTF-8
|
|
||||||
#ga_IE ISO-8859-1
|
|
||||||
#ga_IE@euro ISO-8859-15
|
|
||||||
#gd_GB.UTF-8 UTF-8
|
|
||||||
#gd_GB ISO-8859-15
|
|
||||||
#gez_ER UTF-8
|
|
||||||
#gez_ER@abegede UTF-8
|
|
||||||
#gez_ET UTF-8
|
|
||||||
#gez_ET@abegede UTF-8
|
|
||||||
#gl_ES.UTF-8 UTF-8
|
|
||||||
#gl_ES ISO-8859-1
|
|
||||||
#gl_ES@euro ISO-8859-15
|
|
||||||
#gu_IN UTF-8
|
|
||||||
#gv_GB.UTF-8 UTF-8
|
|
||||||
#gv_GB ISO-8859-1
|
|
||||||
#ha_NG UTF-8
|
|
||||||
#hak_TW UTF-8
|
|
||||||
#he_IL.UTF-8 UTF-8
|
|
||||||
#he_IL ISO-8859-8
|
|
||||||
#hi_IN UTF-8
|
|
||||||
#hif_FJ UTF-8
|
|
||||||
#hne_IN UTF-8
|
|
||||||
#hr_HR.UTF-8 UTF-8
|
|
||||||
#hr_HR ISO-8859-2
|
|
||||||
#hsb_DE ISO-8859-2
|
|
||||||
#hsb_DE.UTF-8 UTF-8
|
|
||||||
#ht_HT UTF-8
|
|
||||||
#hu_HU.UTF-8 UTF-8
|
|
||||||
#hu_HU ISO-8859-2
|
|
||||||
#hy_AM UTF-8
|
|
||||||
#hy_AM.ARMSCII-8 ARMSCII-8
|
|
||||||
#ia_FR UTF-8
|
|
||||||
#id_ID.UTF-8 UTF-8
|
|
||||||
#id_ID ISO-8859-1
|
|
||||||
#ig_NG UTF-8
|
|
||||||
#ik_CA UTF-8
|
|
||||||
#is_IS.UTF-8 UTF-8
|
|
||||||
#is_IS ISO-8859-1
|
|
||||||
#it_CH.UTF-8 UTF-8
|
|
||||||
#it_CH ISO-8859-1
|
|
||||||
#it_IT.UTF-8 UTF-8
|
|
||||||
#it_IT ISO-8859-1
|
|
||||||
#it_IT@euro ISO-8859-15
|
|
||||||
#iu_CA UTF-8
|
|
||||||
#ja_JP.EUC-JP EUC-JP
|
|
||||||
#ja_JP.UTF-8 UTF-8
|
|
||||||
#ka_GE.UTF-8 UTF-8
|
|
||||||
#ka_GE GEORGIAN-PS
|
|
||||||
#kab_DZ UTF-8
|
|
||||||
#kk_KZ.UTF-8 UTF-8
|
|
||||||
#kk_KZ PT154
|
|
||||||
#kl_GL.UTF-8 UTF-8
|
|
||||||
#kl_GL ISO-8859-1
|
|
||||||
#km_KH UTF-8
|
|
||||||
#kn_IN UTF-8
|
|
||||||
#ko_KR.EUC-KR EUC-KR
|
|
||||||
#ko_KR.UTF-8 UTF-8
|
|
||||||
#kok_IN UTF-8
|
|
||||||
#ks_IN UTF-8
|
|
||||||
#ks_IN@devanagari UTF-8
|
|
||||||
#ku_TR.UTF-8 UTF-8
|
|
||||||
#ku_TR ISO-8859-9
|
|
||||||
#kw_GB.UTF-8 UTF-8
|
|
||||||
#kw_GB ISO-8859-1
|
|
||||||
#ky_KG UTF-8
|
|
||||||
#lb_LU UTF-8
|
|
||||||
#lg_UG.UTF-8 UTF-8
|
|
||||||
#lg_UG ISO-8859-10
|
|
||||||
#li_BE UTF-8
|
|
||||||
#li_NL UTF-8
|
|
||||||
#lij_IT UTF-8
|
|
||||||
#ln_CD UTF-8
|
|
||||||
#lo_LA UTF-8
|
|
||||||
#lt_LT.UTF-8 UTF-8
|
|
||||||
#lt_LT ISO-8859-13
|
|
||||||
#lv_LV.UTF-8 UTF-8
|
|
||||||
#lv_LV ISO-8859-13
|
|
||||||
#lzh_TW UTF-8
|
|
||||||
#mag_IN UTF-8
|
|
||||||
#mai_IN UTF-8
|
|
||||||
#mai_NP UTF-8
|
|
||||||
#mfe_MU UTF-8
|
|
||||||
#mg_MG.UTF-8 UTF-8
|
|
||||||
#mg_MG ISO-8859-15
|
|
||||||
#mhr_RU UTF-8
|
|
||||||
#mi_NZ.UTF-8 UTF-8
|
|
||||||
#mi_NZ ISO-8859-13
|
|
||||||
#miq_NI UTF-8
|
|
||||||
#mjw_IN UTF-8
|
|
||||||
#mk_MK.UTF-8 UTF-8
|
|
||||||
#mk_MK ISO-8859-5
|
|
||||||
#ml_IN UTF-8
|
|
||||||
#mn_MN UTF-8
|
|
||||||
#mni_IN UTF-8
|
|
||||||
#mnw_MM UTF-8
|
|
||||||
#mr_IN UTF-8
|
|
||||||
#ms_MY.UTF-8 UTF-8
|
|
||||||
#ms_MY ISO-8859-1
|
|
||||||
#mt_MT.UTF-8 UTF-8
|
|
||||||
#mt_MT ISO-8859-3
|
|
||||||
#my_MM UTF-8
|
|
||||||
#nan_TW UTF-8
|
|
||||||
#nan_TW@latin UTF-8
|
|
||||||
#nb_NO.UTF-8 UTF-8
|
|
||||||
#nb_NO ISO-8859-1
|
|
||||||
#nds_DE UTF-8
|
|
||||||
#nds_NL UTF-8
|
|
||||||
#ne_NP UTF-8
|
|
||||||
#nhn_MX UTF-8
|
|
||||||
#niu_NU UTF-8
|
|
||||||
#niu_NZ UTF-8
|
|
||||||
#nl_AW UTF-8
|
|
||||||
#nl_BE.UTF-8 UTF-8
|
|
||||||
#nl_BE ISO-8859-1
|
|
||||||
#nl_BE@euro ISO-8859-15
|
|
||||||
#nl_NL.UTF-8 UTF-8
|
|
||||||
#nl_NL ISO-8859-1
|
|
||||||
#nl_NL@euro ISO-8859-15
|
|
||||||
#nn_NO.UTF-8 UTF-8
|
|
||||||
#nn_NO ISO-8859-1
|
|
||||||
#nr_ZA UTF-8
|
|
||||||
#nso_ZA UTF-8
|
|
||||||
#oc_FR.UTF-8 UTF-8
|
|
||||||
#oc_FR ISO-8859-1
|
|
||||||
#om_ET UTF-8
|
|
||||||
#om_KE.UTF-8 UTF-8
|
|
||||||
#om_KE ISO-8859-1
|
|
||||||
#or_IN UTF-8
|
|
||||||
#os_RU UTF-8
|
|
||||||
#pa_IN UTF-8
|
|
||||||
#pa_PK UTF-8
|
|
||||||
#pap_AW UTF-8
|
|
||||||
#pap_CW UTF-8
|
|
||||||
#pl_PL.UTF-8 UTF-8
|
|
||||||
#pl_PL ISO-8859-2
|
|
||||||
#ps_AF UTF-8
|
|
||||||
#pt_BR.UTF-8 UTF-8
|
|
||||||
#pt_BR ISO-8859-1
|
|
||||||
#pt_PT.UTF-8 UTF-8
|
|
||||||
#pt_PT ISO-8859-1
|
|
||||||
#pt_PT@euro ISO-8859-15
|
|
||||||
#quz_PE UTF-8
|
|
||||||
#raj_IN UTF-8
|
|
||||||
#rif_MA UTF-8
|
|
||||||
#ro_RO.UTF-8 UTF-8
|
|
||||||
#ro_RO ISO-8859-2
|
|
||||||
#ru_RU.KOI8-R KOI8-R
|
|
||||||
#ru_RU.UTF-8 UTF-8
|
|
||||||
#ru_RU ISO-8859-5
|
|
||||||
#ru_UA.UTF-8 UTF-8
|
|
||||||
#ru_UA KOI8-U
|
|
||||||
#rw_RW UTF-8
|
|
||||||
#sa_IN UTF-8
|
|
||||||
#sah_RU UTF-8
|
|
||||||
#sat_IN UTF-8
|
|
||||||
#sc_IT UTF-8
|
|
||||||
#sd_IN UTF-8
|
|
||||||
#sd_IN@devanagari UTF-8
|
|
||||||
#se_NO UTF-8
|
|
||||||
#sgs_LT UTF-8
|
|
||||||
#shn_MM UTF-8
|
|
||||||
#shs_CA UTF-8
|
|
||||||
#si_LK UTF-8
|
|
||||||
#sid_ET UTF-8
|
|
||||||
#sk_SK.UTF-8 UTF-8
|
|
||||||
#sk_SK ISO-8859-2
|
|
||||||
#sl_SI.UTF-8 UTF-8
|
|
||||||
#sl_SI ISO-8859-2
|
|
||||||
#sm_WS UTF-8
|
|
||||||
#so_DJ.UTF-8 UTF-8
|
|
||||||
#so_DJ ISO-8859-1
|
|
||||||
#so_ET UTF-8
|
|
||||||
#so_KE.UTF-8 UTF-8
|
|
||||||
#so_KE ISO-8859-1
|
|
||||||
#so_SO.UTF-8 UTF-8
|
|
||||||
#so_SO ISO-8859-1
|
|
||||||
#sq_AL.UTF-8 UTF-8
|
|
||||||
#sq_AL ISO-8859-1
|
|
||||||
#sq_MK UTF-8
|
|
||||||
#sr_ME UTF-8
|
|
||||||
#sr_RS UTF-8
|
|
||||||
#sr_RS@latin UTF-8
|
|
||||||
#ss_ZA UTF-8
|
|
||||||
#st_ZA.UTF-8 UTF-8
|
|
||||||
#st_ZA ISO-8859-1
|
|
||||||
#sv_FI.UTF-8 UTF-8
|
|
||||||
#sv_FI ISO-8859-1
|
|
||||||
#sv_FI@euro ISO-8859-15
|
|
||||||
#sv_SE.UTF-8 UTF-8
|
|
||||||
#sv_SE ISO-8859-1
|
|
||||||
#sw_KE UTF-8
|
|
||||||
#sw_TZ UTF-8
|
|
||||||
#syr UTF-8
|
|
||||||
#szl_PL UTF-8
|
|
||||||
#ta_IN UTF-8
|
|
||||||
#ta_LK UTF-8
|
|
||||||
#tcy_IN.UTF-8 UTF-8
|
|
||||||
#te_IN UTF-8
|
|
||||||
#tg_TJ.UTF-8 UTF-8
|
|
||||||
#tg_TJ KOI8-T
|
|
||||||
#th_TH.UTF-8 UTF-8
|
|
||||||
#th_TH TIS-620
|
|
||||||
#the_NP UTF-8
|
|
||||||
#ti_ER UTF-8
|
|
||||||
#ti_ET UTF-8
|
|
||||||
#tig_ER UTF-8
|
|
||||||
#tk_TM UTF-8
|
|
||||||
#tl_PH.UTF-8 UTF-8
|
|
||||||
#tl_PH ISO-8859-1
|
|
||||||
#tn_ZA UTF-8
|
|
||||||
#to_TO UTF-8
|
|
||||||
#tpi_PG UTF-8
|
|
||||||
#tr_CY.UTF-8 UTF-8
|
|
||||||
#tr_CY ISO-8859-9
|
|
||||||
#tr_TR.UTF-8 UTF-8
|
|
||||||
#tr_TR ISO-8859-9
|
|
||||||
#ts_ZA UTF-8
|
|
||||||
#tt_RU UTF-8
|
|
||||||
#tt_RU@iqtelif UTF-8
|
|
||||||
#ug_CN UTF-8
|
|
||||||
#uk_UA.UTF-8 UTF-8
|
|
||||||
#uk_UA KOI8-U
|
|
||||||
#unm_US UTF-8
|
|
||||||
#ur_IN UTF-8
|
|
||||||
#ur_PK UTF-8
|
|
||||||
#uz_UZ.UTF-8 UTF-8
|
|
||||||
#uz_UZ ISO-8859-1
|
|
||||||
#uz_UZ@cyrillic UTF-8
|
|
||||||
#ve_ZA UTF-8
|
|
||||||
#vi_VN UTF-8
|
|
||||||
#wa_BE ISO-8859-1
|
|
||||||
#wa_BE@euro ISO-8859-15
|
|
||||||
#wa_BE.UTF-8 UTF-8
|
|
||||||
#wae_CH UTF-8
|
|
||||||
#wal_ET UTF-8
|
|
||||||
#wo_SN UTF-8
|
|
||||||
#xh_ZA.UTF-8 UTF-8
|
|
||||||
#xh_ZA ISO-8859-1
|
|
||||||
#yi_US.UTF-8 UTF-8
|
|
||||||
#yi_US CP1255
|
|
||||||
#yo_NG UTF-8
|
|
||||||
#yue_HK UTF-8
|
|
||||||
#yuw_PG UTF-8
|
|
||||||
#zh_CN.GB18030 GB18030
|
|
||||||
#zh_CN.GBK GBK
|
|
||||||
#zh_CN.UTF-8 UTF-8
|
|
||||||
#zh_CN GB2312
|
|
||||||
#zh_HK.UTF-8 UTF-8
|
|
||||||
#zh_HK BIG5-HKSCS
|
|
||||||
#zh_SG.UTF-8 UTF-8
|
|
||||||
#zh_SG.GBK GBK
|
|
||||||
#zh_SG GB2312
|
|
||||||
#zh_TW.EUC-TW EUC-TW
|
|
||||||
#zh_TW.UTF-8 UTF-8
|
|
||||||
#zh_TW BIG5
|
|
||||||
#zu_ZA.UTF-8 UTF-8
|
|
||||||
#zu_ZA ISO-8859-1
|
|
||||||
|
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 3.9 KiB |
|
Before Width: | Height: | Size: 679 B After Width: | Height: | Size: 679 B |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user