dotties

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit b3003041ab5e170c8cc5e2e3678c48b7b9ecb9c8
parent d92564790ed14b92e9c8a5ee23bce97bad3cf65c
Author: Taco-C <perian.forod@gmail.com>
Date:   Sat,  7 Dec 2019 17:45:10 +0100

Updated files december 2019

Diffstat:
M.config/X11/xinitrc | 17++++++++++++++---
M.config/aliases | 26++++++++++++++++++++++----
A.config/backweb.conf | 16++++++++++++++++
A.config/i3blocks/config | 33+++++++++++++++++++++++++++++++++
R.config/keymaps/xkeymap -> .config/keymaps/NO.xkbmap | 0
A.config/keymaps/RU.xkbmap | 1939+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.config/keymaps/current-layout | 1+
A.config/termite/config | 18++++++++++++++++++
A.config/user-dirs.dirs | 15+++++++++++++++
A.local/bin/backweb | 34++++++++++++++++++++++++++++++++++
A.local/bin/backweb.1 | 28++++++++++++++++++++++++++++
A.local/bin/bookmarksurfing | 4++++
A.local/bin/bookmarksurfing.d/bookmarks | 13+++++++++++++
A.local/bin/brøkur | 32++++++++++++++++++++++++++++++++
A.local/bin/diskspace-usage | 2++
A.local/bin/dlmusic | 14++++++++++++++
A.local/bin/dmenurecord | 107+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.local/bin/dugrep | 13+++++++++++++
A.local/bin/dugrep-ms | 3+++
A.local/bin/dugrep-pdf | 3+++
A.local/bin/dwmbar | 24++++++++++++++++++++++++
A.local/bin/edit | 29+++++++++++++++++++++++++++++
A.local/bin/edit.d/filelist | 2++
A.local/bin/fix-wifi | 3+++
A.local/bin/i3-open-in-workspace | 10++++++++++
A.local/bin/lockscreen | 5+++++
A.local/bin/memory | 3+++
A.local/bin/minuttvarsel | 6++++++
A.local/bin/openstream | 10++++++++++
A.local/bin/openstream.d/streamers | 4++++
A.local/bin/ordur | 38++++++++++++++++++++++++++++++++++++++
A.local/bin/reloadwm | 12++++++++++++
A.local/bin/todo | 3+++
A.local/bin/unix | 26++++++++++++++++++++++++++
A.local/bin/volumkontroll | 31+++++++++++++++++++++++++++++++
A.local/bin/wiktionaire | 14++++++++++++++
A.local/bin/wiktionaire.d/history | 20++++++++++++++++++++
A.local/bin/xkbutil | 21+++++++++++++++++++++
M.profile | 23+++++++++++++++++------
A.zprofile | 2++
Minstalled-packs | 16++++++++++++++++
41 files changed, 2607 insertions(+), 13 deletions(-)

diff --git a/.config/X11/xinitrc b/.config/X11/xinitrc @@ -1,5 +1,16 @@ -# .xinitrc +#!/bin/sh -[ -f "$XDG_CONFIG_HOME/keymaps/xkeymap" ] && xkbcomp "$XDG_CONFIG_HOME/keymaps/xkeymap" $DISPLAY +# Start programmer for graphische miljøer +#backweb & # Sett bakgrunnen +./.fehbg +unclutter & # Gøym musa etter ei stund +dunst & # Meldingsbokar +compton -bfc # Gennomsiktighet +sxhkd & # Enkel X Heiteknapper Demon +[ "$WM" = "dwm" ] dwmbar & # dwm bar +xkbutil set "$(cat $XDG_CONFIG_HOME/keymaps/current-layout)" & +#minuttvarsel & -exec i3 +#while :; do +"$WM" +#done diff --git a/.config/aliases b/.config/aliases @@ -1,13 +1,31 @@ +#!/bin/sh # Aliases # Dotfiles management -alias dotties="git --git-dir=$HOME/.dotties/ --work-tree=$HOME/" +#alias dotties="git --git-dir=$HOME/.dotties/ --work-tree=$HOME/" # General alias ls="ls -hN --color=auto --group-directories-first" -alias ll="ls -lA" +alias ll="ls -lAgG" alias grep="grep --color=auto" alias diff="diff --color=auto" -alias e="$EDITOR" -alias edit="$EDITOR" +#alias edit="$EDITOR" alias vim="nvim" +alias alert='notify-send --urgency=low "$([ $? = 0 ] && echo "Suksess" || echo "Feil")" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' + +# Snarvegar +alias cfi="$EDITOR $XDG_CONFIG_HOME/i3/config" +alias cfx="$EDITOR $XDG_CONFIG_HOME/X11/xinitrc" +alias cfa="$EDITOR $XDG_CONFIG_HOME/aliases" +alias cfs="$EDITOR $XDG_CONFIG_HOME/sxhkd/sxhkdrc" +alias cfp="$EDITOR $HOME/.profile" +alias cfz="$EDITOR $HOME/.zshrc" + +_fzf_edit() { + du -a "$1" | grep -vi "\.jpg$" | grep -vi "\.png$" | awk '{print $2}' | fzf --reverse --height=40% | xargs -r "$EDITOR" +} + +alias ce="_fzf_edit $XDG_CONFIG_HOME" +alias se="_fzf_edit $HOME_BIN" +alias ge="_fzf_edit $GOPATH" +alias pe="_fzf_edit $HOME/prosjekter" diff --git a/.config/backweb.conf b/.config/backweb.conf @@ -0,0 +1,16 @@ +#/bin/sh + +# Sourced by the backweb script + +# Larviker +#url="http://81.166.238.17/felleskjopet/Larvik2-fk.jpg"; convert_opt="-gravity SouthEast -crop 1920x1080-89-50 +repage"; minutes="30"; name="larvik" +#url="http://81.166.238.17/felleskjopet/Mariusbrygge-fk.jpg"; convert_opt="-gravity SouthEast -crop 1920x1080-89-50 +repage"; minutes="30"; name="larvik-stranda" + +# Radisson Blu Rīga <https://www.radissonblu.com/en/latvijahotel-riga/gallery#/webcam> +url="https://api.deckchair.com/v1/viewer/camera/589321cffe981d131a600419?width=1366&height=768&resizeMode=fill&gravity=Auto&quality=90&panelMode=true&format=jpg&download=false"; minutes="10"; name="radisson-riga" + +# LTV.LV <https://www.lsm.lv/tiesraides-kameras/ltv-riga/> webcam1-9, 9 er bier. +#url="https://e.replay.lv/webcam1.jpg"; name="ltv" + +# Hurtigruta +#url="https://hurtigruten.vossaskyen.no/hruten_msmidnatsol.jpg"; minutes="10"; name="hurtigruta" diff --git a/.config/i3blocks/config b/.config/i3blocks/config @@ -0,0 +1,33 @@ +separator_block_width=15 +markup=none + +[screencast] +command=cat /tmp/recordingicon +signal=11 + +[music] +command=cmus-remote -Q | grep "^file" | sed 's/^file\s\/.*\///' +interval=10 +#signal= + +[xkb-layout] +command=cat "$XDG_CONFIG_HOME/keymaps/current-layout" +interval=once +signal=9 + +[cpu-temp] +command=sensors | awk '/^CPU:/ {print $2}' | sed 's/+//' +interval=60 + +[wifi] +command=sed "s/down//;s/up/✴/" /sys/class/net/w*/operstate +interval=once + +[volume] +command=volumkontroll +interval=once +signal=10 + +[time] +command=printf "%s " "$(ordur)" +interval=25 diff --git a/.config/keymaps/xkeymap b/.config/keymaps/NO.xkbmap diff --git a/.config/keymaps/RU.xkbmap b/.config/keymaps/RU.xkbmap @@ -0,0 +1,1939 @@ +xkb_keymap { +xkb_keycodes "evdev+aliases(qwerty)" { + minimum = 8; + maximum = 255; + <ESC> = 9; + <AE01> = 10; + <AE02> = 11; + <AE03> = 12; + <AE04> = 13; + <AE05> = 14; + <AE06> = 15; + <AE07> = 16; + <AE08> = 17; + <AE09> = 18; + <AE10> = 19; + <AE11> = 20; + <AE12> = 21; + <BKSP> = 22; + <TAB> = 23; + <AD01> = 24; + <AD02> = 25; + <AD03> = 26; + <AD04> = 27; + <AD05> = 28; + <AD06> = 29; + <AD07> = 30; + <AD08> = 31; + <AD09> = 32; + <AD10> = 33; + <AD11> = 34; + <AD12> = 35; + <RTRN> = 36; + <LCTL> = 37; + <AC01> = 38; + <AC02> = 39; + <AC03> = 40; + <AC04> = 41; + <AC05> = 42; + <AC06> = 43; + <AC07> = 44; + <AC08> = 45; + <AC09> = 46; + <AC10> = 47; + <AC11> = 48; + <TLDE> = 49; + <LFSH> = 50; + <BKSL> = 51; + <AB01> = 52; + <AB02> = 53; + <AB03> = 54; + <AB04> = 55; + <AB05> = 56; + <AB06> = 57; + <AB07> = 58; + <AB08> = 59; + <AB09> = 60; + <AB10> = 61; + <RTSH> = 62; + <KPMU> = 63; + <LALT> = 64; + <SPCE> = 65; + <CAPS> = 66; + <FK01> = 67; + <FK02> = 68; + <FK03> = 69; + <FK04> = 70; + <FK05> = 71; + <FK06> = 72; + <FK07> = 73; + <FK08> = 74; + <FK09> = 75; + <FK10> = 76; + <NMLK> = 77; + <SCLK> = 78; + <KP7> = 79; + <KP8> = 80; + <KP9> = 81; + <KPSU> = 82; + <KP4> = 83; + <KP5> = 84; + <KP6> = 85; + <KPAD> = 86; + <KP1> = 87; + <KP2> = 88; + <KP3> = 89; + <KP0> = 90; + <KPDL> = 91; + <LVL3> = 92; + <LSGT> = 94; + <FK11> = 95; + <FK12> = 96; + <AB11> = 97; + <KATA> = 98; + <HIRA> = 99; + <HENK> = 100; + <HKTG> = 101; + <MUHE> = 102; + <JPCM> = 103; + <KPEN> = 104; + <RCTL> = 105; + <KPDV> = 106; + <PRSC> = 107; + <RALT> = 108; + <LNFD> = 109; + <HOME> = 110; + <UP> = 111; + <PGUP> = 112; + <LEFT> = 113; + <RGHT> = 114; + <END> = 115; + <DOWN> = 116; + <PGDN> = 117; + <INS> = 118; + <DELE> = 119; + <I120> = 120; + <MUTE> = 121; + <VOL-> = 122; + <VOL+> = 123; + <POWR> = 124; + <KPEQ> = 125; + <I126> = 126; + <PAUS> = 127; + <I128> = 128; + <I129> = 129; + <HNGL> = 130; + <HJCV> = 131; + <AE13> = 132; + <LWIN> = 133; + <RWIN> = 134; + <COMP> = 135; + <STOP> = 136; + <AGAI> = 137; + <PROP> = 138; + <UNDO> = 139; + <FRNT> = 140; + <COPY> = 141; + <OPEN> = 142; + <PAST> = 143; + <FIND> = 144; + <CUT> = 145; + <HELP> = 146; + <I147> = 147; + <I148> = 148; + <I149> = 149; + <I150> = 150; + <I151> = 151; + <I152> = 152; + <I153> = 153; + <I154> = 154; + <I155> = 155; + <I156> = 156; + <I157> = 157; + <I158> = 158; + <I159> = 159; + <I160> = 160; + <I161> = 161; + <I162> = 162; + <I163> = 163; + <I164> = 164; + <I165> = 165; + <I166> = 166; + <I167> = 167; + <I168> = 168; + <I169> = 169; + <I170> = 170; + <I171> = 171; + <I172> = 172; + <I173> = 173; + <I174> = 174; + <I175> = 175; + <I176> = 176; + <I177> = 177; + <I178> = 178; + <I179> = 179; + <I180> = 180; + <I181> = 181; + <I182> = 182; + <I183> = 183; + <I184> = 184; + <I185> = 185; + <I186> = 186; + <I187> = 187; + <I188> = 188; + <I189> = 189; + <I190> = 190; + <FK13> = 191; + <FK14> = 192; + <FK15> = 193; + <FK16> = 194; + <FK17> = 195; + <FK18> = 196; + <FK19> = 197; + <FK20> = 198; + <FK21> = 199; + <FK22> = 200; + <FK23> = 201; + <FK24> = 202; + <MDSW> = 203; + <ALT> = 204; + <META> = 205; + <SUPR> = 206; + <HYPR> = 207; + <I208> = 208; + <I209> = 209; + <I210> = 210; + <I211> = 211; + <I212> = 212; + <I213> = 213; + <I214> = 214; + <I215> = 215; + <I216> = 216; + <I217> = 217; + <I218> = 218; + <I219> = 219; + <I220> = 220; + <I221> = 221; + <I222> = 222; + <I223> = 223; + <I224> = 224; + <I225> = 225; + <I226> = 226; + <I227> = 227; + <I228> = 228; + <I229> = 229; + <I230> = 230; + <I231> = 231; + <I232> = 232; + <I233> = 233; + <I234> = 234; + <I235> = 235; + <I236> = 236; + <I237> = 237; + <I238> = 238; + <I239> = 239; + <I240> = 240; + <I241> = 241; + <I242> = 242; + <I243> = 243; + <I244> = 244; + <I245> = 245; + <I246> = 246; + <I247> = 247; + <I248> = 248; + <I249> = 249; + <I250> = 250; + <I251> = 251; + <I252> = 252; + <I253> = 253; + <I254> = 254; + <I255> = 255; + indicator 1 = "Caps Lock"; + indicator 2 = "Num Lock"; + indicator 3 = "Scroll Lock"; + indicator 4 = "Compose"; + indicator 5 = "Kana"; + indicator 6 = "Sleep"; + indicator 7 = "Suspend"; + indicator 8 = "Mute"; + indicator 9 = "Misc"; + indicator 10 = "Mail"; + indicator 11 = "Charging"; + virtual indicator 12 = "Shift Lock"; + virtual indicator 13 = "Group 2"; + virtual indicator 14 = "Mouse Keys"; + alias <AC12> = <BKSL>; + alias <MENU> = <COMP>; + alias <HZTG> = <TLDE>; + alias <LMTA> = <LWIN>; + alias <RMTA> = <RWIN>; + alias <ALGR> = <RALT>; + alias <KPPT> = <I129>; + alias <LatQ> = <AD01>; + alias <LatW> = <AD02>; + alias <LatE> = <AD03>; + alias <LatR> = <AD04>; + alias <LatT> = <AD05>; + alias <LatY> = <AD06>; + alias <LatU> = <AD07>; + alias <LatI> = <AD08>; + alias <LatO> = <AD09>; + alias <LatP> = <AD10>; + alias <LatA> = <AC01>; + alias <LatS> = <AC02>; + alias <LatD> = <AC03>; + alias <LatF> = <AC04>; + alias <LatG> = <AC05>; + alias <LatH> = <AC06>; + alias <LatJ> = <AC07>; + alias <LatK> = <AC08>; + alias <LatL> = <AC09>; + alias <LatZ> = <AB01>; + alias <LatX> = <AB02>; + alias <LatC> = <AB03>; + alias <LatV> = <AB04>; + alias <LatB> = <AB05>; + alias <LatN> = <AB06>; + alias <LatM> = <AB07>; +}; + +xkb_types "complete" { + + virtual_modifiers NumLock,Alt,LevelThree,LAlt,RAlt,RControl,LControl,ScrollLock,LevelFive,AltGr,Meta,Super,Hyper; + + type "ONE_LEVEL" { + modifiers= none; + level_name[Level1]= "Any"; + }; + type "TWO_LEVEL" { + modifiers= Shift; + map[Shift]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + }; + type "ALPHABETIC" { + modifiers= Shift+Lock; + map[Shift]= Level2; + map[Lock]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "Caps"; + }; + type "KEYPAD" { + modifiers= Shift+NumLock; + map[Shift]= Level2; + map[NumLock]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "Number"; + }; + type "SHIFT+ALT" { + modifiers= Shift+Alt; + map[Shift+Alt]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift+Alt"; + }; + type "PC_SUPER_LEVEL2" { + modifiers= Mod4; + map[Mod4]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "Super"; + }; + type "PC_CONTROL_LEVEL2" { + modifiers= Control; + map[Control]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "Control"; + }; + type "PC_LCONTROL_LEVEL2" { + modifiers= LControl; + map[LControl]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "LControl"; + }; + type "PC_RCONTROL_LEVEL2" { + modifiers= RControl; + map[RControl]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "RControl"; + }; + type "PC_ALT_LEVEL2" { + modifiers= Alt; + map[Alt]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "Alt"; + }; + type "PC_LALT_LEVEL2" { + modifiers= LAlt; + map[LAlt]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "LAlt"; + }; + type "PC_RALT_LEVEL2" { + modifiers= RAlt; + map[RAlt]= Level2; + level_name[Level1]= "Base"; + level_name[Level2]= "RAlt"; + }; + type "CTRL+ALT" { + modifiers= Shift+Control+Alt+LevelThree; + map[Shift]= Level2; + preserve[Shift]= Shift; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + preserve[Shift+LevelThree]= Shift; + map[Control+Alt]= Level5; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + level_name[Level5]= "Ctrl+Alt"; + }; + type "LOCAL_EIGHT_LEVEL" { + modifiers= Shift+Lock+Control+LevelThree; + map[Shift+Lock]= Level1; + map[Shift]= Level2; + map[Lock]= Level2; + map[LevelThree]= Level3; + map[Shift+Lock+LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[Lock+LevelThree]= Level4; + map[Control]= Level5; + map[Shift+Lock+Control]= Level5; + map[Shift+Control]= Level6; + map[Lock+Control]= Level6; + map[Control+LevelThree]= Level7; + map[Shift+Lock+Control+LevelThree]= Level7; + map[Shift+Control+LevelThree]= Level8; + map[Lock+Control+LevelThree]= Level8; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Level3"; + level_name[Level4]= "Shift Level3"; + level_name[Level5]= "Ctrl"; + level_name[Level6]= "Shift Ctrl"; + level_name[Level7]= "Level3 Ctrl"; + level_name[Level8]= "Shift Level3 Ctrl"; + }; + type "THREE_LEVEL" { + modifiers= Shift+LevelThree; + map[Shift]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level3; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Level3"; + }; + type "EIGHT_LEVEL" { + modifiers= Shift+LevelThree+LevelFive; + map[Shift]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[LevelFive]= Level5; + map[Shift+LevelFive]= Level6; + map[LevelThree+LevelFive]= Level7; + map[Shift+LevelThree+LevelFive]= Level8; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + level_name[Level5]= "X"; + level_name[Level6]= "X Shift"; + level_name[Level7]= "X Alt Base"; + level_name[Level8]= "X Shift Alt"; + }; + type "EIGHT_LEVEL_ALPHABETIC" { + modifiers= Shift+Lock+LevelThree+LevelFive; + map[Shift]= Level2; + map[Lock]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[Lock+LevelThree]= Level4; + map[Shift+Lock+LevelThree]= Level3; + map[LevelFive]= Level5; + map[Shift+LevelFive]= Level6; + map[Lock+LevelFive]= Level6; + map[LevelThree+LevelFive]= Level7; + map[Shift+LevelThree+LevelFive]= Level8; + map[Lock+LevelThree+LevelFive]= Level8; + map[Shift+Lock+LevelThree+LevelFive]= Level7; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + level_name[Level5]= "X"; + level_name[Level6]= "X Shift"; + level_name[Level7]= "X Alt Base"; + level_name[Level8]= "X Shift Alt"; + }; + type "EIGHT_LEVEL_LEVEL_FIVE_LOCK" { + modifiers= Shift+Lock+NumLock+LevelThree+LevelFive; + map[Shift]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[LevelFive]= Level5; + map[Shift+LevelFive]= Level6; + preserve[Shift+LevelFive]= Shift; + map[LevelThree+LevelFive]= Level7; + map[Shift+LevelThree+LevelFive]= Level8; + map[NumLock]= Level5; + map[Shift+NumLock]= Level6; + preserve[Shift+NumLock]= Shift; + map[NumLock+LevelThree]= Level7; + map[Shift+NumLock+LevelThree]= Level8; + map[Shift+NumLock+LevelFive]= Level2; + map[NumLock+LevelThree+LevelFive]= Level3; + map[Shift+NumLock+LevelThree+LevelFive]= Level4; + map[Shift+Lock]= Level2; + map[Lock+LevelThree]= Level3; + map[Shift+Lock+LevelThree]= Level4; + map[Lock+LevelFive]= Level5; + map[Shift+Lock+LevelFive]= Level6; + preserve[Shift+Lock+LevelFive]= Shift; + map[Lock+LevelThree+LevelFive]= Level7; + map[Shift+Lock+LevelThree+LevelFive]= Level8; + map[Lock+NumLock]= Level5; + map[Shift+Lock+NumLock]= Level6; + preserve[Shift+Lock+NumLock]= Shift; + map[Lock+NumLock+LevelThree]= Level7; + map[Shift+Lock+NumLock+LevelThree]= Level8; + map[Shift+Lock+NumLock+LevelFive]= Level2; + map[Lock+NumLock+LevelThree+LevelFive]= Level3; + map[Shift+Lock+NumLock+LevelThree+LevelFive]= Level4; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + level_name[Level5]= "X"; + level_name[Level6]= "X Shift"; + level_name[Level7]= "X Alt Base"; + level_name[Level8]= "X Shift Alt"; + }; + type "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK" { + modifiers= Shift+Lock+NumLock+LevelThree+LevelFive; + map[Shift]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[LevelFive]= Level5; + map[Shift+LevelFive]= Level6; + preserve[Shift+LevelFive]= Shift; + map[LevelThree+LevelFive]= Level7; + map[Shift+LevelThree+LevelFive]= Level8; + map[NumLock]= Level5; + map[Shift+NumLock]= Level6; + preserve[Shift+NumLock]= Shift; + map[NumLock+LevelThree]= Level7; + map[Shift+NumLock+LevelThree]= Level8; + map[Shift+NumLock+LevelFive]= Level2; + map[NumLock+LevelThree+LevelFive]= Level3; + map[Shift+NumLock+LevelThree+LevelFive]= Level4; + map[Lock]= Level2; + map[Lock+LevelThree]= Level3; + map[Shift+Lock+LevelThree]= Level4; + map[Lock+LevelFive]= Level5; + map[Shift+Lock+LevelFive]= Level6; + map[Lock+LevelThree+LevelFive]= Level7; + map[Shift+Lock+LevelThree+LevelFive]= Level8; + map[Lock+NumLock]= Level5; + map[Shift+Lock+NumLock]= Level6; + map[Lock+NumLock+LevelThree]= Level7; + map[Shift+Lock+NumLock+LevelThree]= Level8; + map[Lock+NumLock+LevelFive]= Level2; + map[Lock+NumLock+LevelThree+LevelFive]= Level4; + map[Shift+Lock+NumLock+LevelThree+LevelFive]= Level3; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + level_name[Level5]= "X"; + level_name[Level6]= "X Shift"; + level_name[Level7]= "X Alt Base"; + level_name[Level8]= "X Shift Alt"; + }; + type "EIGHT_LEVEL_SEMIALPHABETIC" { + modifiers= Shift+Lock+LevelThree+LevelFive; + map[Shift]= Level2; + map[Lock]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[Lock+LevelThree]= Level3; + preserve[Lock+LevelThree]= Lock; + map[Shift+Lock+LevelThree]= Level4; + preserve[Shift+Lock+LevelThree]= Lock; + map[LevelFive]= Level5; + map[Shift+LevelFive]= Level6; + map[Lock+LevelFive]= Level6; + preserve[Lock+LevelFive]= Lock; + map[Shift+Lock+LevelFive]= Level6; + preserve[Shift+Lock+LevelFive]= Lock; + map[LevelThree+LevelFive]= Level7; + map[Shift+LevelThree+LevelFive]= Level8; + map[Lock+LevelThree+LevelFive]= Level7; + preserve[Lock+LevelThree+LevelFive]= Lock; + map[Shift+Lock+LevelThree+LevelFive]= Level8; + preserve[Shift+Lock+LevelThree+LevelFive]= Lock; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + level_name[Level5]= "X"; + level_name[Level6]= "X Shift"; + level_name[Level7]= "X Alt Base"; + level_name[Level8]= "X Shift Alt"; + }; + type "FOUR_LEVEL" { + modifiers= Shift+LevelThree; + map[Shift]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + }; + type "FOUR_LEVEL_ALPHABETIC" { + modifiers= Shift+Lock+LevelThree; + map[Shift]= Level2; + map[Lock]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[Lock+LevelThree]= Level4; + map[Shift+Lock+LevelThree]= Level3; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + }; + type "FOUR_LEVEL_SEMIALPHABETIC" { + modifiers= Shift+Lock+LevelThree; + map[Shift]= Level2; + map[Lock]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[Lock+LevelThree]= Level3; + preserve[Lock+LevelThree]= Lock; + map[Shift+Lock+LevelThree]= Level4; + preserve[Shift+Lock+LevelThree]= Lock; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + }; + type "FOUR_LEVEL_MIXED_KEYPAD" { + modifiers= Shift+NumLock+LevelThree; + map[Shift+NumLock]= Level1; + map[NumLock]= Level2; + map[Shift]= Level2; + map[LevelThree]= Level3; + map[NumLock+LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[Shift+NumLock+LevelThree]= Level4; + level_name[Level1]= "Base"; + level_name[Level2]= "Number"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + }; + type "FOUR_LEVEL_X" { + modifiers= Shift+Control+Alt+LevelThree; + map[LevelThree]= Level2; + map[Shift+LevelThree]= Level3; + map[Control+Alt]= Level4; + level_name[Level1]= "Base"; + level_name[Level2]= "Alt Base"; + level_name[Level3]= "Shift Alt"; + level_name[Level4]= "Ctrl+Alt"; + }; + type "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC" { + modifiers= Shift+Lock+LevelThree; + map[Shift]= Level2; + map[Lock]= Level4; + preserve[Lock]= Lock; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[Lock+LevelThree]= Level3; + preserve[Lock+LevelThree]= Lock; + map[Shift+Lock+LevelThree]= Level3; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "AltGr Base"; + level_name[Level4]= "Shift AltGr"; + }; + type "FOUR_LEVEL_PLUS_LOCK" { + modifiers= Shift+Lock+LevelThree; + map[Shift]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[Lock]= Level5; + map[Shift+Lock]= Level2; + map[Lock+LevelThree]= Level3; + map[Shift+Lock+LevelThree]= Level4; + level_name[Level1]= "Base"; + level_name[Level2]= "Shift"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Shift Alt"; + level_name[Level5]= "Lock"; + }; + type "FOUR_LEVEL_KEYPAD" { + modifiers= Shift+NumLock+LevelThree; + map[Shift]= Level2; + map[NumLock]= Level2; + map[LevelThree]= Level3; + map[Shift+LevelThree]= Level4; + map[NumLock+LevelThree]= Level4; + map[Shift+NumLock+LevelThree]= Level3; + level_name[Level1]= "Base"; + level_name[Level2]= "Number"; + level_name[Level3]= "Alt Base"; + level_name[Level4]= "Alt Number"; + }; +}; + +xkb_compatibility "complete" { + + virtual_modifiers NumLock,Alt,LevelThree,LAlt,RAlt,RControl,LControl,ScrollLock,LevelFive,AltGr,Meta,Super,Hyper; + + interpret.useModMapMods= AnyLevel; + interpret.repeat= False; + interpret.locking= False; + interpret ISO_Level2_Latch+Exactly(Shift) { + useModMapMods=level1; + action= LatchMods(modifiers=Shift,clearLocks,latchToLock); + }; + interpret Shift_Lock+AnyOf(Shift+Lock) { + action= LockMods(modifiers=Shift); + }; + interpret Num_Lock+AnyOf(all) { + virtualModifier= NumLock; + action= LockMods(modifiers=NumLock); + }; + interpret ISO_Level3_Shift+AnyOf(all) { + virtualModifier= LevelThree; + useModMapMods=level1; + action= SetMods(modifiers=LevelThree,clearLocks); + }; + interpret ISO_Level3_Latch+AnyOf(all) { + virtualModifier= LevelThree; + useModMapMods=level1; + action= LatchMods(modifiers=LevelThree,clearLocks,latchToLock); + }; + interpret ISO_Level3_Lock+AnyOf(all) { + virtualModifier= LevelThree; + useModMapMods=level1; + action= LockMods(modifiers=LevelThree); + }; + interpret Alt_L+AnyOf(all) { + virtualModifier= Alt; + action= SetMods(modifiers=modMapMods,clearLocks); + }; + interpret Alt_R+AnyOf(all) { + virtualModifier= Alt; + action= SetMods(modifiers=modMapMods,clearLocks); + }; + interpret Meta_L+AnyOf(all) { + virtualModifier= Meta; + action= SetMods(modifiers=modMapMods,clearLocks); + }; + interpret Meta_R+AnyOf(all) { + virtualModifier= Meta; + action= SetMods(modifiers=modMapMods,clearLocks); + }; + interpret Super_L+AnyOf(all) { + virtualModifier= Super; + action= SetMods(modifiers=modMapMods,clearLocks); + }; + interpret Super_R+AnyOf(all) { + virtualModifier= Super; + action= SetMods(modifiers=modMapMods,clearLocks); + }; + interpret Hyper_L+AnyOf(all) { + virtualModifier= Hyper; + action= SetMods(modifiers=modMapMods,clearLocks); + }; + interpret Hyper_R+AnyOf(all) { + virtualModifier= Hyper; + action= SetMods(modifiers=modMapMods,clearLocks); + }; + interpret Scroll_Lock+AnyOf(all) { + virtualModifier= ScrollLock; + action= LockMods(modifiers=modMapMods); + }; + interpret ISO_Level5_Shift+AnyOf(all) { + virtualModifier= LevelFive; + useModMapMods=level1; + action= SetMods(modifiers=LevelFive,clearLocks); + }; + interpret ISO_Level5_Latch+AnyOf(all) { + virtualModifier= LevelFive; + useModMapMods=level1; + action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock); + }; + interpret ISO_Level5_Lock+AnyOf(all) { + virtualModifier= LevelFive; + useModMapMods=level1; + action= LockMods(modifiers=LevelFive); + }; + interpret Mode_switch+AnyOfOrNone(all) { + virtualModifier= AltGr; + useModMapMods=level1; + action= SetGroup(group=+1); + }; + interpret ISO_Level3_Shift+AnyOfOrNone(all) { + action= SetMods(modifiers=LevelThree,clearLocks); + }; + interpret ISO_Level3_Latch+AnyOfOrNone(all) { + action= LatchMods(modifiers=LevelThree,clearLocks,latchToLock); + }; + interpret ISO_Level3_Lock+AnyOfOrNone(all) { + action= LockMods(modifiers=LevelThree); + }; + interpret ISO_Group_Latch+AnyOfOrNone(all) { + virtualModifier= AltGr; + useModMapMods=level1; + action= LatchGroup(group=2); + }; + interpret ISO_Next_Group+AnyOfOrNone(all) { + virtualModifier= AltGr; + useModMapMods=level1; + action= LockGroup(group=+1); + }; + interpret ISO_Prev_Group+AnyOfOrNone(all) { + virtualModifier= AltGr; + useModMapMods=level1; + action= LockGroup(group=-1); + }; + interpret ISO_First_Group+AnyOfOrNone(all) { + action= LockGroup(group=1); + }; + interpret ISO_Last_Group+AnyOfOrNone(all) { + action= LockGroup(group=2); + }; + interpret KP_1+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=-1,y=+1); + }; + interpret KP_End+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=-1,y=+1); + }; + interpret KP_2+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+0,y=+1); + }; + interpret KP_Down+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+0,y=+1); + }; + interpret KP_3+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+1,y=+1); + }; + interpret KP_Next+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+1,y=+1); + }; + interpret KP_4+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=-1,y=+0); + }; + interpret KP_Left+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=-1,y=+0); + }; + interpret KP_6+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+1,y=+0); + }; + interpret KP_Right+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+1,y=+0); + }; + interpret KP_7+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=-1,y=-1); + }; + interpret KP_Home+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=-1,y=-1); + }; + interpret KP_8+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+0,y=-1); + }; + interpret KP_Up+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+0,y=-1); + }; + interpret KP_9+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+1,y=-1); + }; + interpret KP_Prior+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+1,y=-1); + }; + interpret KP_5+AnyOfOrNone(all) { + repeat= True; + action= PtrBtn(button=default); + }; + interpret KP_Begin+AnyOfOrNone(all) { + repeat= True; + action= PtrBtn(button=default); + }; + interpret KP_F2+AnyOfOrNone(all) { + repeat= True; + action= SetPtrDflt(affect=button,button=1); + }; + interpret KP_Divide+AnyOfOrNone(all) { + repeat= True; + action= SetPtrDflt(affect=button,button=1); + }; + interpret KP_F3+AnyOfOrNone(all) { + repeat= True; + action= SetPtrDflt(affect=button,button=2); + }; + interpret KP_Multiply+AnyOfOrNone(all) { + repeat= True; + action= SetPtrDflt(affect=button,button=2); + }; + interpret KP_F4+AnyOfOrNone(all) { + repeat= True; + action= SetPtrDflt(affect=button,button=3); + }; + interpret KP_Subtract+AnyOfOrNone(all) { + repeat= True; + action= SetPtrDflt(affect=button,button=3); + }; + interpret KP_Separator+AnyOfOrNone(all) { + repeat= True; + action= PtrBtn(button=default,count=2); + }; + interpret KP_Add+AnyOfOrNone(all) { + repeat= True; + action= PtrBtn(button=default,count=2); + }; + interpret KP_0+AnyOfOrNone(all) { + repeat= True; + action= LockPtrBtn(button=default,affect=lock); + }; + interpret KP_Insert+AnyOfOrNone(all) { + repeat= True; + action= LockPtrBtn(button=default,affect=lock); + }; + interpret KP_Decimal+AnyOfOrNone(all) { + repeat= True; + action= LockPtrBtn(button=default,affect=unlock); + }; + interpret KP_Delete+AnyOfOrNone(all) { + repeat= True; + action= LockPtrBtn(button=default,affect=unlock); + }; + interpret F25+AnyOfOrNone(all) { + repeat= True; + action= SetPtrDflt(affect=button,button=1); + }; + interpret F26+AnyOfOrNone(all) { + repeat= True; + action= SetPtrDflt(affect=button,button=2); + }; + interpret F27+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=-1,y=-1); + }; + interpret F29+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+1,y=-1); + }; + interpret F31+AnyOfOrNone(all) { + repeat= True; + action= PtrBtn(button=default); + }; + interpret F33+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=-1,y=+1); + }; + interpret F35+AnyOfOrNone(all) { + repeat= True; + action= MovePtr(x=+1,y=+1); + }; + interpret Pointer_Button_Dflt+AnyOfOrNone(all) { + action= PtrBtn(button=default); + }; + interpret Pointer_Button1+AnyOfOrNone(all) { + action= PtrBtn(button=1); + }; + interpret Pointer_Button2+AnyOfOrNone(all) { + action= PtrBtn(button=2); + }; + interpret Pointer_Button3+AnyOfOrNone(all) { + action= PtrBtn(button=3); + }; + interpret Pointer_DblClick_Dflt+AnyOfOrNone(all) { + action= PtrBtn(button=default,count=2); + }; + interpret Pointer_DblClick1+AnyOfOrNone(all) { + action= PtrBtn(button=1,count=2); + }; + interpret Pointer_DblClick2+AnyOfOrNone(all) { + action= PtrBtn(button=2,count=2); + }; + interpret Pointer_DblClick3+AnyOfOrNone(all) { + action= PtrBtn(button=3,count=2); + }; + interpret Pointer_Drag_Dflt+AnyOfOrNone(all) { + action= LockPtrBtn(button=default,affect=both); + }; + interpret Pointer_Drag1+AnyOfOrNone(all) { + action= LockPtrBtn(button=1,affect=both); + }; + interpret Pointer_Drag2+AnyOfOrNone(all) { + action= LockPtrBtn(button=2,affect=both); + }; + interpret Pointer_Drag3+AnyOfOrNone(all) { + action= LockPtrBtn(button=3,affect=both); + }; + interpret Pointer_EnableKeys+AnyOfOrNone(all) { + action= LockControls(controls=MouseKeys); + }; + interpret Pointer_Accelerate+AnyOfOrNone(all) { + action= LockControls(controls=MouseKeysAccel); + }; + interpret Pointer_DfltBtnNext+AnyOfOrNone(all) { + action= SetPtrDflt(affect=button,button=+1); + }; + interpret Pointer_DfltBtnPrev+AnyOfOrNone(all) { + action= SetPtrDflt(affect=button,button=-1); + }; + interpret AccessX_Enable+AnyOfOrNone(all) { + action= LockControls(controls=AccessXKeys); + }; + interpret AccessX_Feedback_Enable+AnyOfOrNone(all) { + action= LockControls(controls=AccessXFeedback); + }; + interpret RepeatKeys_Enable+AnyOfOrNone(all) { + action= LockControls(controls=RepeatKeys); + }; + interpret SlowKeys_Enable+AnyOfOrNone(all) { + action= LockControls(controls=SlowKeys); + }; + interpret BounceKeys_Enable+AnyOfOrNone(all) { + action= LockControls(controls=BounceKeys); + }; + interpret StickyKeys_Enable+AnyOfOrNone(all) { + action= LockControls(controls=StickyKeys); + }; + interpret MouseKeys_Enable+AnyOfOrNone(all) { + action= LockControls(controls=MouseKeys); + }; + interpret MouseKeys_Accel_Enable+AnyOfOrNone(all) { + action= LockControls(controls=MouseKeysAccel); + }; + interpret Overlay1_Enable+AnyOfOrNone(all) { + action= LockControls(controls=Overlay1); + }; + interpret Overlay2_Enable+AnyOfOrNone(all) { + action= LockControls(controls=Overlay2); + }; + interpret AudibleBell_Enable+AnyOfOrNone(all) { + action= LockControls(controls=AudibleBell); + }; + interpret Terminate_Server+AnyOfOrNone(all) { + action= Terminate(); + }; + interpret Alt_L+AnyOfOrNone(all) { + action= SetMods(modifiers=Alt,clearLocks); + }; + interpret Alt_R+AnyOfOrNone(all) { + action= SetMods(modifiers=Alt,clearLocks); + }; + interpret Meta_L+AnyOfOrNone(all) { + action= SetMods(modifiers=Meta,clearLocks); + }; + interpret Meta_R+AnyOfOrNone(all) { + action= SetMods(modifiers=Meta,clearLocks); + }; + interpret Super_L+AnyOfOrNone(all) { + action= SetMods(modifiers=Super,clearLocks); + }; + interpret Super_R+AnyOfOrNone(all) { + action= SetMods(modifiers=Super,clearLocks); + }; + interpret Hyper_L+AnyOfOrNone(all) { + action= SetMods(modifiers=Hyper,clearLocks); + }; + interpret Hyper_R+AnyOfOrNone(all) { + action= SetMods(modifiers=Hyper,clearLocks); + }; + interpret Shift_L+AnyOfOrNone(all) { + action= SetMods(modifiers=Shift,clearLocks); + }; + interpret XF86Switch_VT_1+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=1,!same); + }; + interpret XF86Switch_VT_2+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=2,!same); + }; + interpret XF86Switch_VT_3+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=3,!same); + }; + interpret XF86Switch_VT_4+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=4,!same); + }; + interpret XF86Switch_VT_5+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=5,!same); + }; + interpret XF86Switch_VT_6+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=6,!same); + }; + interpret XF86Switch_VT_7+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=7,!same); + }; + interpret XF86Switch_VT_8+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=8,!same); + }; + interpret XF86Switch_VT_9+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=9,!same); + }; + interpret XF86Switch_VT_10+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=10,!same); + }; + interpret XF86Switch_VT_11+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=11,!same); + }; + interpret XF86Switch_VT_12+AnyOfOrNone(all) { + repeat= True; + action= SwitchScreen(screen=12,!same); + }; + interpret XF86LogGrabInfo+AnyOfOrNone(all) { + repeat= True; + action= Private(type=0x86,data[0]=0x50,data[1]=0x72,data[2]=0x47,data[3]=0x72,data[4]=0x62,data[5]=0x73,data[6]=0x00); + }; + interpret XF86LogWindowTree+AnyOfOrNone(all) { + repeat= True; + action= Private(type=0x86,data[0]=0x50,data[1]=0x72,data[2]=0x57,data[3]=0x69,data[4]=0x6e,data[5]=0x73,data[6]=0x00); + }; + interpret XF86Next_VMode+AnyOfOrNone(all) { + repeat= True; + action= Private(type=0x86,data[0]=0x2b,data[1]=0x56,data[2]=0x4d,data[3]=0x6f,data[4]=0x64,data[5]=0x65,data[6]=0x00); + }; + interpret XF86Prev_VMode+AnyOfOrNone(all) { + repeat= True; + action= Private(type=0x86,data[0]=0x2d,data[1]=0x56,data[2]=0x4d,data[3]=0x6f,data[4]=0x64,data[5]=0x65,data[6]=0x00); + }; + interpret ISO_Level5_Shift+AnyOfOrNone(all) { + action= SetMods(modifiers=LevelFive,clearLocks); + }; + interpret ISO_Level5_Latch+AnyOfOrNone(all) { + action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock); + }; + interpret ISO_Level5_Lock+AnyOfOrNone(all) { + action= LockMods(modifiers=LevelFive); + }; + interpret Caps_Lock+AnyOfOrNone(all) { + action= LockMods(modifiers=Lock); + }; + interpret Any+Exactly(Lock) { + action= LockMods(modifiers=Lock); + }; + interpret Any+AnyOf(all) { + action= SetMods(modifiers=modMapMods,clearLocks); + }; + group 2 = AltGr; + group 3 = AltGr; + group 4 = AltGr; + indicator "Caps Lock" { + !allowExplicit; + whichModState= locked; + modifiers= Lock; + }; + indicator "Num Lock" { + !allowExplicit; + whichModState= locked; + modifiers= NumLock; + }; + indicator "Scroll Lock" { + whichModState= locked; + modifiers= ScrollLock; + }; + indicator "Shift Lock" { + !allowExplicit; + whichModState= locked; + modifiers= Shift; + }; + indicator "Group 2" { + !allowExplicit; + groups= 0xfe; + }; + indicator "Mouse Keys" { + indicatorDrivesKeyboard; + controls= mouseKeys; + }; +}; + +xkb_symbols "pc+ru+inet(evdev)+terminate(ctrl_alt_bksp)" { + + name[group1]="Russian"; + + key <ESC> { [ Escape ] }; + key <AE01> { [ 1, exclam ] }; + key <AE02> { [ 2, quotedbl ] }; + key <AE03> { [ 3, numerosign ] }; + key <AE04> { [ 4, semicolon ] }; + key <AE05> { [ 5, percent ] }; + key <AE06> { [ 6, colon ] }; + key <AE07> { [ 7, question ] }; + key <AE08> { + type= "FOUR_LEVEL", + symbols[Group1]= [ 8, asterisk, U20BD, NoSymbol ] + }; + key <AE09> { [ 9, parenleft ] }; + key <AE10> { [ 0, parenright ] }; + key <AE11> { [ minus, underscore ] }; + key <AE12> { [ equal, plus ] }; + key <BKSP> { + type= "CTRL+ALT", + symbols[Group1]= [ BackSpace, BackSpace, NoSymbol, NoSymbol, Terminate_Server ] + }; + key <TAB> { [ Tab, ISO_Left_Tab ] }; + key <AD01> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_shorti, Cyrillic_SHORTI ] + }; + key <AD02> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_tse, Cyrillic_TSE ] + }; + key <AD03> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_u, Cyrillic_U ] + }; + key <AD04> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_ka, Cyrillic_KA ] + }; + key <AD05> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_ie, Cyrillic_IE ] + }; + key <AD06> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_en, Cyrillic_EN ] + }; + key <AD07> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_ghe, Cyrillic_GHE ] + }; + key <AD08> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_sha, Cyrillic_SHA ] + }; + key <AD09> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_shcha, Cyrillic_SHCHA ] + }; + key <AD10> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_ze, Cyrillic_ZE ] + }; + key <AD11> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_ha, Cyrillic_HA ] + }; + key <AD12> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] + }; + key <RTRN> { [ Return ] }; + key <LCTL> { [ Control_L ] }; + key <AC01> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_ef, Cyrillic_EF ] + }; + key <AC02> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_yeru, Cyrillic_YERU ] + }; + key <AC03> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_ve, Cyrillic_VE ] + }; + key <AC04> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_a, Cyrillic_A ] + }; + key <AC05> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_pe, Cyrillic_PE ] + }; + key <AC06> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_er, Cyrillic_ER ] + }; + key <AC07> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_o, Cyrillic_O ] + }; + key <AC08> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_el, Cyrillic_EL ] + }; + key <AC09> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_de, Cyrillic_DE ] + }; + key <AC10> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_zhe, Cyrillic_ZHE ] + }; + key <AC11> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_e, Cyrillic_E ] + }; + key <TLDE> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_io, Cyrillic_IO ] + }; + key <LFSH> { [ Shift_L ] }; + key <BKSL> { [ backslash, slash ] }; + key <AB01> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_ya, Cyrillic_YA ] + }; + key <AB02> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_che, Cyrillic_CHE ] + }; + key <AB03> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_es, Cyrillic_ES ] + }; + key <AB04> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_em, Cyrillic_EM ] + }; + key <AB05> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_i, Cyrillic_I ] + }; + key <AB06> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_te, Cyrillic_TE ] + }; + key <AB07> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] + }; + key <AB08> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_be, Cyrillic_BE ] + }; + key <AB09> { + type= "ALPHABETIC", + symbols[Group1]= [ Cyrillic_yu, Cyrillic_YU ] + }; + key <AB10> { [ period, comma ] }; + key <RTSH> { [ Shift_R ] }; + key <KPMU> { + type= "CTRL+ALT", + symbols[Group1]= [ KP_Multiply, KP_Multiply, KP_Multiply, KP_Multiply, XF86ClearGrab ] + }; + key <LALT> { [ Alt_L, Meta_L ] }; + key <SPCE> { [ space ] }; + key <CAPS> { [ Caps_Lock ] }; + key <FK01> { + type= "CTRL+ALT", + symbols[Group1]= [ F1, F1, F1, F1, XF86Switch_VT_1 ] + }; + key <FK02> { + type= "CTRL+ALT", + symbols[Group1]= [ F2, F2, F2, F2, XF86Switch_VT_2 ] + }; + key <FK03> { + type= "CTRL+ALT", + symbols[Group1]= [ F3, F3, F3, F3, XF86Switch_VT_3 ] + }; + key <FK04> { + type= "CTRL+ALT", + symbols[Group1]= [ F4, F4, F4, F4, XF86Switch_VT_4 ] + }; + key <FK05> { + type= "CTRL+ALT", + symbols[Group1]= [ F5, F5, F5, F5, XF86Switch_VT_5 ] + }; + key <FK06> { + type= "CTRL+ALT", + symbols[Group1]= [ F6, F6, F6, F6, XF86Switch_VT_6 ] + }; + key <FK07> { + type= "CTRL+ALT", + symbols[Group1]= [ F7, F7, F7, F7, XF86Switch_VT_7 ] + }; + key <FK08> { + type= "CTRL+ALT", + symbols[Group1]= [ F8, F8, F8, F8, XF86Switch_VT_8 ] + }; + key <FK09> { + type= "CTRL+ALT", + symbols[Group1]= [ F9, F9, F9, F9, XF86Switch_VT_9 ] + }; + key <FK10> { + type= "CTRL+ALT", + symbols[Group1]= [ F10, F10, F10, F10, XF86Switch_VT_10 ] + }; + key <NMLK> { [ Num_Lock ] }; + key <SCLK> { [ Scroll_Lock ] }; + key <KP7> { [ KP_Home, KP_7 ] }; + key <KP8> { [ KP_Up, KP_8 ] }; + key <KP9> { [ KP_Prior, KP_9 ] }; + key <KPSU> { + type= "CTRL+ALT", + symbols[Group1]= [ KP_Subtract, KP_Subtract, KP_Subtract, KP_Subtract, XF86Prev_VMode ] + }; + key <KP4> { [ KP_Left, KP_4 ] }; + key <KP5> { [ KP_Begin, KP_5 ] }; + key <KP6> { [ KP_Right, KP_6 ] }; + key <KPAD> { + type= "CTRL+ALT", + symbols[Group1]= [ KP_Add, KP_Add, KP_Add, KP_Add, XF86Next_VMode ] + }; + key <KP1> { [ KP_End, KP_1 ] }; + key <KP2> { [ KP_Down, KP_2 ] }; + key <KP3> { [ KP_Next, KP_3 ] }; + key <KP0> { [ KP_Insert, KP_0 ] }; + key <KPDL> { + type= "KEYPAD", + symbols[Group1]= [ KP_Delete, KP_Separator ] + }; + key <LVL3> { [ ISO_Level3_Shift ] }; + key <LSGT> { + type= "FOUR_LEVEL", + symbols[Group1]= [ slash, bar, bar, brokenbar ] + }; + key <FK11> { + type= "CTRL+ALT", + symbols[Group1]= [ F11, F11, F11, F11, XF86Switch_VT_11 ] + }; + key <FK12> { + type= "CTRL+ALT", + symbols[Group1]= [ F12, F12, F12, F12, XF86Switch_VT_12 ] + }; + key <KATA> { [ Katakana ] }; + key <HIRA> { [ Hiragana ] }; + key <HENK> { [ Henkan_Mode ] }; + key <HKTG> { [ Hiragana_Katakana ] }; + key <MUHE> { [ Muhenkan ] }; + key <KPEN> { [ KP_Enter ] }; + key <RCTL> { [ Control_R ] }; + key <KPDV> { + type= "CTRL+ALT", + symbols[Group1]= [ KP_Divide, KP_Divide, KP_Divide, KP_Divide, XF86Ungrab ] + }; + key <PRSC> { + type= "PC_ALT_LEVEL2", + symbols[Group1]= [ Print, Sys_Req ] + }; + key <RALT> { + type= "TWO_LEVEL", + symbols[Group1]= [ Alt_R, Meta_R ] + }; + key <LNFD> { [ Linefeed ] }; + key <HOME> { [ Home ] }; + key <UP> { [ Up ] }; + key <PGUP> { [ Prior ] }; + key <LEFT> { [ Left ] }; + key <RGHT> { [ Right ] }; + key <END> { [ End ] }; + key <DOWN> { [ Down ] }; + key <PGDN> { [ Next ] }; + key <INS> { [ Insert ] }; + key <DELE> { [ Delete ] }; + key <MUTE> { [ XF86AudioMute ] }; + key <VOL-> { [ XF86AudioLowerVolume ] }; + key <VOL+> { [ XF86AudioRaiseVolume ] }; + key <POWR> { [ XF86PowerOff ] }; + key <KPEQ> { [ KP_Equal ] }; + key <I126> { [ plusminus ] }; + key <PAUS> { + type= "PC_CONTROL_LEVEL2", + symbols[Group1]= [ Pause, Break ] + }; + key <I128> { [ XF86LaunchA ] }; + key <I129> { [ KP_Decimal, KP_Decimal ] }; + key <HNGL> { [ Hangul ] }; + key <HJCV> { [ Hangul_Hanja ] }; + key <LWIN> { [ Super_L ] }; + key <RWIN> { [ Super_R ] }; + key <COMP> { [ Menu ] }; + key <STOP> { [ Cancel ] }; + key <AGAI> { [ Redo ] }; + key <PROP> { [ SunProps ] }; + key <UNDO> { [ Undo ] }; + key <FRNT> { [ SunFront ] }; + key <COPY> { [ XF86Copy ] }; + key <OPEN> { [ XF86Open ] }; + key <PAST> { [ XF86Paste ] }; + key <FIND> { [ Find ] }; + key <CUT> { [ XF86Cut ] }; + key <HELP> { [ Help ] }; + key <I147> { [ XF86MenuKB ] }; + key <I148> { [ XF86Calculator ] }; + key <I150> { [ XF86Sleep ] }; + key <I151> { [ XF86WakeUp ] }; + key <I152> { [ XF86Explorer ] }; + key <I153> { [ XF86Send ] }; + key <I155> { [ XF86Xfer ] }; + key <I156> { [ XF86Launch1 ] }; + key <I157> { [ XF86Launch2 ] }; + key <I158> { [ XF86WWW ] }; + key <I159> { [ XF86DOS ] }; + key <I160> { [ XF86ScreenSaver ] }; + key <I161> { [ XF86RotateWindows ] }; + key <I162> { [ XF86TaskPane ] }; + key <I163> { [ XF86Mail ] }; + key <I164> { [ XF86Favorites ] }; + key <I165> { [ XF86MyComputer ] }; + key <I166> { [ XF86Back ] }; + key <I167> { [ XF86Forward ] }; + key <I169> { [ XF86Eject ] }; + key <I170> { [ XF86Eject, XF86Eject ] }; + key <I171> { [ XF86AudioNext ] }; + key <I172> { [ XF86AudioPlay, XF86AudioPause ] }; + key <I173> { [ XF86AudioPrev ] }; + key <I174> { [ XF86AudioStop, XF86Eject ] }; + key <I175> { [ XF86AudioRecord ] }; + key <I176> { [ XF86AudioRewind ] }; + key <I177> { [ XF86Phone ] }; + key <I179> { [ XF86Tools ] }; + key <I180> { [ XF86HomePage ] }; + key <I181> { [ XF86Reload ] }; + key <I182> { [ XF86Close ] }; + key <I185> { [ XF86ScrollUp ] }; + key <I186> { [ XF86ScrollDown ] }; + key <I187> { [ parenleft ] }; + key <I188> { [ parenright ] }; + key <I189> { [ XF86New ] }; + key <I190> { [ Redo ] }; + key <FK13> { [ XF86Tools ] }; + key <FK14> { [ XF86Launch5 ] }; + key <FK15> { [ XF86Launch6 ] }; + key <FK16> { [ XF86Launch7 ] }; + key <FK17> { [ XF86Launch8 ] }; + key <FK18> { [ XF86Launch9 ] }; + key <FK20> { [ XF86AudioMicMute ] }; + key <FK21> { [ XF86TouchpadToggle ] }; + key <FK22> { [ XF86TouchpadOn ] }; + key <FK23> { [ XF86TouchpadOff ] }; + key <MDSW> { [ Mode_switch ] }; + key <ALT> { [ NoSymbol, Alt_L ] }; + key <META> { [ NoSymbol, Meta_L ] }; + key <SUPR> { [ NoSymbol, Super_L ] }; + key <HYPR> { [ NoSymbol, Hyper_L ] }; + key <I208> { [ XF86AudioPlay ] }; + key <I209> { [ XF86AudioPause ] }; + key <I210> { [ XF86Launch3 ] }; + key <I211> { [ XF86Launch4 ] }; + key <I212> { [ XF86LaunchB ] }; + key <I213> { [ XF86Suspend ] }; + key <I214> { [ XF86Close ] }; + key <I215> { [ XF86AudioPlay ] }; + key <I216> { [ XF86AudioForward ] }; + key <I218> { [ Print ] }; + key <I220> { [ XF86WebCam ] }; + key <I223> { [ XF86Mail ] }; + key <I224> { [ XF86Messenger ] }; + key <I225> { [ XF86Search ] }; + key <I226> { [ XF86Go ] }; + key <I227> { [ XF86Finance ] }; + key <I228> { [ XF86Game ] }; + key <I229> { [ XF86Shop ] }; + key <I231> { [ Cancel ] }; + key <I232> { [ XF86MonBrightnessDown ] }; + key <I233> { [ XF86MonBrightnessUp ] }; + key <I234> { [ XF86AudioMedia ] }; + key <I235> { [ XF86Display ] }; + key <I236> { [ XF86KbdLightOnOff ] }; + key <I237> { [ XF86KbdBrightnessDown ] }; + key <I238> { [ XF86KbdBrightnessUp ] }; + key <I239> { [ XF86Send ] }; + key <I240> { [ XF86Reply ] }; + key <I241> { [ XF86MailForward ] }; + key <I242> { [ XF86Save ] }; + key <I243> { [ XF86Documents ] }; + key <I244> { [ XF86Battery ] }; + key <I245> { [ XF86Bluetooth ] }; + key <I246> { [ XF86WLAN ] }; + key <I251> { [ NoSymbol ] }; + key <I254> { [ XF86WWAN ] }; + key <I255> { [ XF86RFKill ] }; + modifier_map Control { <LCTL> }; + modifier_map Shift { <LFSH> }; + modifier_map Shift { <RTSH> }; + modifier_map Mod1 { <LALT> }; + modifier_map Lock { <CAPS> }; + modifier_map Mod2 { <NMLK> }; + modifier_map Mod5 { <LVL3> }; + modifier_map Control { <RCTL> }; + modifier_map Mod1 { <RALT> }; + modifier_map Mod4 { <LWIN> }; + modifier_map Mod4 { <RWIN> }; + modifier_map Mod5 { <MDSW> }; + modifier_map Mod1 { <META> }; + modifier_map Mod4 { <SUPR> }; + modifier_map Mod4 { <HYPR> }; +}; + +xkb_geometry "pc(pc105)" { + + width= 470; + height= 180; + + alias <AC00> = <CAPS>; + alias <AA00> = <LCTL>; + + baseColor= "white"; + labelColor= "black"; + xfont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1"; + description= "Generic 105"; + + shape "NORM" { + corner= 1, + { [ 18, 18 ] }, + { [ 2, 1 ], [ 16, 16 ] } + }; + shape "BKSP" { + corner= 1, + { [ 38, 18 ] }, + { [ 2, 1 ], [ 36, 16 ] } + }; + shape "TABK" { + corner= 1, + { [ 28, 18 ] }, + { [ 2, 1 ], [ 26, 16 ] } + }; + shape "BKSL" { + corner= 1, + { [ 28, 18 ] }, + { [ 2, 1 ], [ 26, 16 ] } + }; + shape "RTRN" { + corner= 1, + { [ 0, 0 ], [ 28, 0 ], [ 28, 37 ], [ 5, 37 ], + [ 5, 18 ], [ 0, 18 ] }, + { [ 2, 1 ], [ 26, 1 ], [ 26, 35 ], [ 7, 35 ], + [ 7, 16 ], [ 2, 16 ] }, + approx= { [ 5, 0 ], [ 28, 37 ] } + }; + shape "CAPS" { + corner= 1, + { [ 33, 18 ] }, + { [ 2, 1 ], [ 31, 16 ] } + }; + shape "LFSH" { + corner= 1, + { [ 25, 18 ] }, + { [ 2, 1 ], [ 23, 16 ] } + }; + shape "RTSH" { + corner= 1, + { [ 50, 18 ] }, + { [ 2, 1 ], [ 48, 16 ] } + }; + shape "MODK" { + corner= 1, + { [ 27, 18 ] }, + { [ 2, 1 ], [ 25, 16 ] } + }; + shape "SMOD" { + corner= 1, + { [ 23, 18 ] }, + { [ 2, 1 ], [ 21, 16 ] } + }; + shape "SPCE" { + corner= 1, + { [ 113, 18 ] }, + { [ 2, 1 ], [ 111, 16 ] } + }; + shape "KP0" { + corner= 1, + { [ 37, 18 ] }, + { [ 2, 1 ], [ 35, 16 ] } + }; + shape "KPAD" { + corner= 1, + { [ 18, 37 ] }, + { [ 2, 1 ], [ 16, 35 ] } + }; + shape "LEDS" { { [ 75, 20 ] } }; + shape "LED" { { [ 5, 1 ] } }; + section "Function" { + key.color= "grey20"; + priority= 7; + top= 22; + left= 19; + width= 351; + height= 19; + row { + top= 1; + left= 1; + keys { + { <ESC>, "NORM", 1 }, + { <FK01>, "NORM", 20, color="white" }, + { <FK02>, "NORM", 1, color="white" }, + { <FK03>, "NORM", 1, color="white" }, + { <FK04>, "NORM", 1, color="white" }, + { <FK05>, "NORM", 11, color="white" }, + { <FK06>, "NORM", 1, color="white" }, + { <FK07>, "NORM", 1, color="white" }, + { <FK08>, "NORM", 1, color="white" }, + { <FK09>, "NORM", 11, color="white" }, + { <FK10>, "NORM", 1, color="white" }, + { <FK11>, "NORM", 1, color="white" }, + { <FK12>, "NORM", 1, color="white" }, + { <PRSC>, "NORM", 8, color="white" }, + { <SCLK>, "NORM", 1, color="white" }, + { <PAUS>, "NORM", 1, color="white" } + }; + }; + }; // End of "Function" section + + section "Alpha" { + key.color= "white"; + priority= 8; + top= 61; + left= 19; + width= 287; + height= 95; + row { + top= 1; + left= 1; + keys { + { <TLDE>, "NORM", 1 }, { <AE01>, "NORM", 1 }, + { <AE02>, "NORM", 1 }, { <AE03>, "NORM", 1 }, + { <AE04>, "NORM", 1 }, { <AE05>, "NORM", 1 }, + { <AE06>, "NORM", 1 }, { <AE07>, "NORM", 1 }, + { <AE08>, "NORM", 1 }, { <AE09>, "NORM", 1 }, + { <AE10>, "NORM", 1 }, { <AE11>, "NORM", 1 }, + { <AE12>, "NORM", 1 }, + { <BKSP>, "BKSP", 1, color="grey20" } + }; + }; + row { + top= 20; + left= 1; + keys { + { <TAB>, "TABK", 1, color="grey20" }, + { <AD01>, "NORM", 1 }, { <AD02>, "NORM", 1 }, + { <AD03>, "NORM", 1 }, { <AD04>, "NORM", 1 }, + { <AD05>, "NORM", 1 }, { <AD06>, "NORM", 1 }, + { <AD07>, "NORM", 1 }, { <AD08>, "NORM", 1 }, + { <AD09>, "NORM", 1 }, { <AD10>, "NORM", 1 }, + { <AD11>, "NORM", 1 }, { <AD12>, "NORM", 1 }, + { <RTRN>, "RTRN", 1, color="grey20" } + }; + }; + row { + top= 39; + left= 1; + keys { + { <CAPS>, "CAPS", 1, color="grey20" }, + { <AC01>, "NORM", 1 }, { <AC02>, "NORM", 1 }, + { <AC03>, "NORM", 1 }, { <AC04>, "NORM", 1 }, + { <AC05>, "NORM", 1 }, { <AC06>, "NORM", 1 }, + { <AC07>, "NORM", 1 }, { <AC08>, "NORM", 1 }, + { <AC09>, "NORM", 1 }, { <AC10>, "NORM", 1 }, + { <AC11>, "NORM", 1 }, { <BKSL>, "NORM", 1 } + }; + }; + row { + top= 58; + left= 1; + keys { + { <LFSH>, "LFSH", 1, color="grey20" }, + { <LSGT>, "NORM", 1 }, { <AB01>, "NORM", 1 }, + { <AB02>, "NORM", 1 }, { <AB03>, "NORM", 1 }, + { <AB04>, "NORM", 1 }, { <AB05>, "NORM", 1 }, + { <AB06>, "NORM", 1 }, { <AB07>, "NORM", 1 }, + { <AB08>, "NORM", 1 }, { <AB09>, "NORM", 1 }, + { <AB10>, "NORM", 1 }, + { <RTSH>, "RTSH", 1, color="grey20" } + }; + }; + row { + top= 77; + left= 1; + keys { + { <LCTL>, "MODK", 1, color="grey20" }, + { <LWIN>, "SMOD", 1, color="grey20" }, + { <LALT>, "SMOD", 1, color="grey20" }, + { <SPCE>, "SPCE", 1 }, + { <RALT>, "SMOD", 1, color="grey20" }, + { <RWIN>, "SMOD", 1, color="grey20" }, + { <MENU>, "SMOD", 1, color="grey20" }, + { <RCTL>, "SMOD", 1, color="grey20" } + }; + }; + }; // End of "Alpha" section + + section "Editing" { + key.color= "grey20"; + priority= 9; + top= 61; + left= 312; + width= 58; + height= 95; + row { + top= 1; + left= 1; + keys { + { <INS>, "NORM", 1 }, { <HOME>, "NORM", 1 }, + { <PGUP>, "NORM", 1 } + }; + }; + row { + top= 20; + left= 1; + keys { + { <DELE>, "NORM", 1 }, { <END>, "NORM", 1 }, + { <PGDN>, "NORM", 1 } + }; + }; + row { + top= 58; + left= 20; + keys { + { <UP>, "NORM", 1 } + }; + }; + row { + top= 77; + left= 1; + keys { + { <LEFT>, "NORM", 1 }, { <DOWN>, "NORM", 1 }, + { <RGHT>, "NORM", 1 } + }; + }; + }; // End of "Editing" section + + section "Keypad" { + key.color= "grey20"; + priority= 10; + top= 61; + left= 376; + width= 77; + height= 95; + row { + top= 1; + left= 1; + keys { + { <NMLK>, "NORM", 1 }, { <KPDV>, "NORM", 1 }, + { <KPMU>, "NORM", 1 }, { <KPSU>, "NORM", 1 } + }; + }; + row { + top= 20; + left= 1; + keys { + { <KP7>, "NORM", 1, color="white" }, + { <KP8>, "NORM", 1, color="white" }, + { <KP9>, "NORM", 1, color="white" }, + { <KPAD>, "KPAD", 1 } + }; + }; + row { + top= 39; + left= 1; + keys { + { <KP4>, "NORM", 1, color="white" }, + { <KP5>, "NORM", 1, color="white" }, + { <KP6>, "NORM", 1, color="white" } + }; + }; + row { + top= 58; + left= 1; + keys { + { <KP1>, "NORM", 1, color="white" }, + { <KP2>, "NORM", 1, color="white" }, + { <KP3>, "NORM", 1, color="white" }, + { <KPEN>, "KPAD", 1 } + }; + }; + row { + top= 77; + left= 1; + keys { + { <KP0>, "KP0", 1, color="white" }, + { <KPDL>, "NORM", 1, color="white" } + }; + }; + }; // End of "Keypad" section + + solid "LedPanel" { + top= 22; + left= 377; + priority= 0; + color= "grey10"; + shape= "LEDS"; + }; + indicator "Num Lock" { + top= 37; + left= 382; + priority= 1; + onColor= "green"; + offColor= "green30"; + shape= "LED"; + }; + indicator "Caps Lock" { + top= 37; + left= 407; + priority= 2; + onColor= "green"; + offColor= "green30"; + shape= "LED"; + }; + indicator "Scroll Lock" { + top= 37; + left= 433; + priority= 3; + onColor= "green"; + offColor= "green30"; + shape= "LED"; + }; + text "NumLockLabel" { + top= 25; + left= 378; + priority= 4; + width= 19.8; + height= 10; + XFont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1"; + text= "Num\nLock"; + }; + text "CapsLockLabel" { + top= 25; + left= 403; + priority= 5; + width= 26.4; + height= 10; + XFont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1"; + text= "Caps\nLock"; + }; + text "ScrollLockLabel" { + top= 25; + left= 428; + priority= 6; + width= 39.6; + height= 10; + XFont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1"; + text= "Scroll\nLock"; + }; +}; + +}; diff --git a/.config/keymaps/current-layout b/.config/keymaps/current-layout @@ -0,0 +1 @@ +NO diff --git a/.config/termite/config b/.config/termite/config @@ -0,0 +1,18 @@ +[options] +#font = UbuntuMono 12 +font = Inconsolata 12 +allow_bold = true +dynamic_title = true +cursor_blink = system + +[colors] +#foreground = #ffffff +#background = #333333 + +# Ubuntu colors +#background = #350101 +#background = #2C001E +background = rgba(44, 00, 30, 0.9) +foreground = #ffffff +cursor = #ffffff + diff --git a/.config/user-dirs.dirs b/.config/user-dirs.dirs @@ -0,0 +1,15 @@ +# This file is written by xdg-user-dirs-update +# If you want to change or add directories, just edit the line you're +# interested in. All local changes will be retained on the next run. +# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped +# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an +# absolute path. No other format is supported. +# +XDG_DESKTOP_DIR="$HOME/" +XDG_DOWNLOAD_DIR="$HOME/nedlastingar" +XDG_TEMPLATES_DIR="$HOME/" +XDG_PUBLICSHARE_DIR="$HOME/offentleg" +XDG_DOCUMENTS_DIR="$HOME/dokumenter" +XDG_MUSIC_DIR="$HOME/musikk" +XDG_PICTURES_DIR="$HOME/bilder" +XDG_VIDEOS_DIR="$HOME/" diff --git a/.local/bin/backweb b/.local/bin/backweb @@ -0,0 +1,34 @@ +#!/bin/sh + +# Backweb: Set the BACKground image from a WEBcam! + +# Defaults before reading from the config file. +url="" +name="" +blurlvl="2" +convert_opt="" +minutes="60" + +config_file="$XDG_CONFIG_HOME/backweb.conf" +dir="$XDG_DATA_HOME/backweb" +file_name="$dir/img-$name" + +[ -f "$config_file" ] && . "$config_file" || [ -f "$HOME/.config/backweb.conf" ] && . "$HOME/.config/backweb.conf" || exit +[ ! -d "$dir" ] && mkdir -p "$dir" + +convert_opt="$convert_opt -resize x768 -blur x$blurlvl -paint $blurlvl" + +update() { + [ -f "$file_name.png" ] && feh --bg-fill "$file_name.png" + [ "$INTERNET_IS_PRECIOUS" = "true" ] && [ "$1" != "force" ] && exit + curl -s "$url" > "$file_name.jpg" + [ "$?" = 0 ] && convert "$file_name.jpg" $convert_opt "$file_name.png" && feh --bg-fill "$file_name.png" + cp "$file_name.png" "$dir/img.png" +} + +while :; do + [ "$1" = "force" ] && update force && break + update + [ "$1" = "once" ] && break + sleep "${minutes}m" +done diff --git a/.local/bin/backweb.1 b/.local/bin/backweb.1 @@ -0,0 +1,28 @@ +.TH BACKWEB 1 1.0 backweb +.SH NAME +backweb \- set the background image from a webcam. +.SH SYNOPSIS +.B backweb +.RB [ once | force ] +.SH DESCRIPTION +.B backweb +downloads an image from a specified url at custom intervals. +.SH OPTIONS +.TP +.B once +Do the thing once, then quit. +.TP +.B force +Do the thing once, then quit, even if +.I $INTERNET_IS_PRECIOUS +is true. +.SH FILES +.B backweb +looks for the configuration file in the following places: +.I $XDG_CONFIG_HOME/backweb.conf, +.I $HOME/.config/backweb.conf. +It saves the downloaded images in +.I $XDG_DATA_HOME/backweb/. +The configuration file is a plain shell file that gets sources in its entirety by the main script. +.SH AUTHOR +R. Karlsen diff --git a/.local/bin/bookmarksurfing b/.local/bin/bookmarksurfing @@ -0,0 +1,4 @@ +#!/bin/sh + +www="$(cat $HOME_BIN/bookmarksurfing.d/bookmarks | dmenu -i -p "Gå til:")" +[ "$www" != "" ] && surf $www diff --git a/.local/bin/bookmarksurfing.d/bookmarks b/.local/bin/bookmarksurfing.d/bookmarks @@ -0,0 +1,13 @@ +duckduckgo.com/?q= +github.com/taco-c +nrk.no +youtube.com/search?q= +wiki.archlinux.org/index.php?search= +en.wikipedia.org/w/index.php?search= +en.wiktionary.org/w/index.php?search= +yr.no/place/Norway/Vestfold/Larvik/Larvik/hour_by_hour.html +timeanddate.com/sun/norway/larvik +lsm.lv +ltv.lsm.lv/lv/tieshraide/visiemltv.lv/live.1480 +gazeta.ru +live.russia.tv diff --git a/.local/bin/brøkur b/.local/bin/brøkur @@ -0,0 +1,32 @@ +#!/bin/sh + +m="$(date '+%_M' | tr -d ' ')" + +if [ $m -lt "5" ]; then + M="" +elif [ $m -lt "13" ]; then + M="⅙" +elif [ $m -lt "18" ]; then + M="¼" +elif [ $m -lt "25" ]; then + M="⅓" +elif [ $m -lt "35" ]; then + M="½" +elif [ $m -lt "43" ]; then + M="⅓" +elif [ $m -lt "48" ]; then + M="¼" +elif [ $m -lt "55" ]; then + M="⅙" +else + M="" +fi + +if [ $m -gt "24" ]; then + h="$(date -d "1 hour" '+%_I' | tr -d ' ')" + echo "$M$h" +else + h="$(date '+%_I' | tr -d ' ')" + echo "$h$M" +fi + diff --git a/.local/bin/diskspace-usage b/.local/bin/diskspace-usage @@ -0,0 +1,2 @@ +#! /bin/sh +du -hd1 -BM "$1" | sort -hr diff --git a/.local/bin/dlmusic b/.local/bin/dlmusic @@ -0,0 +1,14 @@ +#!/bin/sh + +[ "$2" = "" ] && dir="." || dir="$2" +[ ! -d "$dir" ] && mkdir -pv "$dir" + +cd "$dir" + +youtube-dl -ic -f mp3/bestaudio[ext=mp3]/bestaudio "$1" -o "%(title)s.%(ext)s" + +for i in *.webm; do + ffmpeg -i "$i" "${i%.*}.mp3" +done + +#rm "*.webm" diff --git a/.local/bin/dmenurecord b/.local/bin/dmenurecord @@ -0,0 +1,107 @@ +#!/bin/sh + +# Usage: +# `$0`: Ask for recording type via dmenu +# `$0 screencast`: Record both audio and screen +# `$0 video`: Record only screen +# `$0 audio`: Record only audio +# `$0 kill`: Kill existing recording +# +# If there is already a running instance, user will be prompted to end it. + +dir="$HOME/rec" + +updateicon() { \ + echo "$1" > /tmp/recordingicon + pkill -RTMIN+11 i3blocks + } + +killrecording() { + recpid="$(cat /tmp/recordingpid)" + # kill with SIGTERM, allowing finishing touches. + kill -15 "$recpid" + rm -f /tmp/recordingpid + updateicon "" + pkill -RTMIN+11 i3blocks + # even after SIGTERM, ffmpeg may still run, so SIGKILL it. + sleep 3 + kill -9 "$recpid" + exit + } + +screencast() { \ + ffmpeg -y \ + -f x11grab \ + -framerate 30 \ + -s $(xdpyinfo | grep dimensions | awk '{print $2;}') \ + -i $DISPLAY \ + -f alsa -i default \ + -r 30 \ + -c:v libx264rgb -crf 0 -preset ultrafast -c:a flac \ + "$dir/screencast-$(date '+%y%m%d-%H%M-%S').mkv" & + echo $! > /tmp/recordingpid + updateicon "⏺️🎙️" + } + +video() { ffmpeg \ + -f x11grab \ + -s $(xdpyinfo | grep dimensions | awk '{print $2;}') \ + -i $DISPLAY \ + -c:v libx264 -qp 0 -r 30 \ + "$dir/video-$(date '+%y%m%d-%H%M-%S').mkv" & + echo $! > /tmp/recordingpid + updateicon "⏺️" + } + +webcamhidef() { ffmpeg \ + -f v4l2 \ + -i /dev/video0 \ + -video_size 1920x1080 \ + "$dir/webcam-$(date '+%y%m%d-%H%M-%S').mkv" & + echo $! > /tmp/recordingpid + updateicon "🎥" + } + +webcam() { ffmpeg \ + -f v4l2 \ + -i /dev/video0 \ + -video_size 640x480 \ + "$dir/webcam-$(date '+%y%m%d-%H%M-%S').mkv" & + echo $! > /tmp/recordingpid + updateicon "🎥" + } + + +audio() { \ + ffmpeg \ + -f alsa -i default \ + -c:a flac \ + "$dir/audio-$(date '+%y%m%d-%H%M-%S').flac" & + echo $! > /tmp/recordingpid + updateicon "🎙️" + } + +askrecording() { \ + choice=$(printf "screencast\\nvideo\\naudio\\nwebcam\\nwebcam (hi-def)" | dmenu -i -p "Select recording style:") + case "$choice" in + screencast) screencast;; + audio) audio;; + video) video;; + webcam) webcam;; + "webcam (hi-def)") webcamhidef;; + esac + } + +asktoend() { \ + response=$(printf "No\\nYes" | dmenu -i -p "Recording still active. End recording?") && + [ "$response" = "Yes" ] && killrecording + } + + +case "$1" in + screencast) screencast;; + audio) audio;; + video) video;; + kill) killrecording;; + *) ([ -f /tmp/recordingpid ] && asktoend && exit) || askrecording;; +esac diff --git a/.local/bin/dugrep b/.local/bin/dugrep @@ -0,0 +1,13 @@ +#!/bin/sh + +# Find all files with the .$1 extention, lets you choose one, then exec with $2. + +file=`du -a $HOME --exclude=".*" 2>/dev/null | grep "\.$1$" | cut -f2 | rofi -dmenu -theme sidebar -p :` + +[ "$file" = "" ] && exit + +[ "$2" = "$EDITOR" ] && [ "$3" = "-" ] && $TERMINAL -e "$EDITOR \"$file\"" && exit + +"$2" "$file" + +#xargs -r -d "\n" "$2" diff --git a/.local/bin/dugrep-ms b/.local/bin/dugrep-ms @@ -0,0 +1,3 @@ +#!/bin/sh + +dugrep ms $EDITOR - diff --git a/.local/bin/dugrep-pdf b/.local/bin/dugrep-pdf @@ -0,0 +1,3 @@ +#!/bin/sh + +dugrep pdf $READER diff --git a/.local/bin/dwmbar b/.local/bin/dwmbar @@ -0,0 +1,24 @@ +#!/bin/sh + +delim="|" + +status() { + # Volum + vol=$(pulsemixer --get-volume | awk '{print $1}') + [ "$(pulsemixer --get-mute)" = "1" ] && vol="M" + printf " %s%%" "$vol" + + printf " $delim " + + # Klokke + #printf "$(brøkur)" + + #printf " $delim " + + printf "$(ordur) " +} + +while :; do + xsetroot -name "$(status | tr '\n' ' ')" + sleep 1m +done diff --git a/.local/bin/edit b/.local/bin/edit @@ -0,0 +1,29 @@ +#!/bin/sh + +# edit: edit files from everywhere. + +#filelist="$HOME_BIN/edit.d/filelist" +#dmenu_cmd="dmenu -i -l 10" +dmenu_cmd="rofi -dmenu -theme sidebar -p :" + +[ "$1" = "-h" ] && echo "Usage: edit [- | filename]\n\tIf filename is nothing, open dmenu to chose file.\n\tIf filename is -, same as above, but opens file in a new window." && exit + +if [ "$#" -lt 1 ] || [ "$1" = "-" ]; then + chosen=`du -a "$HOME" --exclude=".*" 2>/dev/null | grep -i "\.ms$" | cut -f2 | $dmenu_cmd` + #file=`awk '{print $1}' < $filelist | dmenu -i` + #chosen=`grep ^$file < $filelist | awk '{print $2}'` +else + dir=`pwd` + chosen="$dir/$1" +fi + +# Vask og rens +chosen=`echo $chosen | sed "s|~|$HOME|"` + +[ "$chosen" = "" ] && exit + +if [ "$1" = "-" ]; then + $TERMINAL -e "$EDITOR \"$chosen\"" +else + $EDITOR "$chosen" +fi diff --git a/.local/bin/edit.d/filelist b/.local/bin/edit.d/filelist @@ -0,0 +1,2 @@ +skildringar.ms ~/prosjekter/turlogg/skildringar.ms +opplevingar.ms ~/prosjekter/turlogg/opplevingar.ms diff --git a/.local/bin/fix-wifi b/.local/bin/fix-wifi @@ -0,0 +1,3 @@ +#! /bin/bash +sudo modprobe brcmsmac +sudo ip link set wlp18s0b1 up diff --git a/.local/bin/i3-open-in-workspace b/.local/bin/i3-open-in-workspace @@ -0,0 +1,10 @@ +#!/bin/sh + +[ "$1" = "" ] || [ "$2" = "" ] || [ "$3" = "" ] && echo "Usage: $0 <term|gui> <program> <workspace>" && exit + +if [ "$(pgrep -x $2)" ]; then + i3-msg workspace "$3" +else + [ "$1" = "term" ] && $TERMINAL -e $2 --title $2 || $2 +fi + diff --git a/.local/bin/lockscreen b/.local/bin/lockscreen @@ -0,0 +1,5 @@ +#!/bin/sh + +img="$XDG_DATA_HOME/backweb/img.png" + +[ -f "$img" ] && i3lock -ei "$img" diff --git a/.local/bin/memory b/.local/bin/memory @@ -0,0 +1,3 @@ +#!/bin/sh + +free -m | awk '/^Mem:/ {printf "MEM: %s/%sM (%.2f%%)\n",$3,$2,$3/$2*100}' diff --git a/.local/bin/minuttvarsel b/.local/bin/minuttvarsel @@ -0,0 +1,6 @@ +#!/bin/sh + +while :; do + sleep 1m + notify-send "Un minuto" +done diff --git a/.local/bin/openstream b/.local/bin/openstream @@ -0,0 +1,10 @@ +#!/bin/sh + +[ -f "$HOME_BIN/openstream.d/streamers" ] && channel=$(cat "$HOME_BIN/openstream.d/streamers" | rofi -theme sidebar -dmenu -p "Åpne strøm:") +[ "$channel" = "" ] && exit +echo "$channel" | sed 's/.*/https:\/\/www.twitch.tv\/\0/' | youtube-dl -a - -o - | mpv - +[ "$?" != 0 ] && notify-send "openstream" "Kunne ikke åpne direktestrømmen til $channel." && exit + +#ii -s irc.twitch.tv -n potatoandtaco -k TW_PASS & +#echo "/j #$channel" > "$HOME/irc/irc.twitch.tv/in" +#$TERMINAL -e diff --git a/.local/bin/openstream.d/streamers b/.local/bin/openstream.d/streamers @@ -0,0 +1,4 @@ +potatoandtaco +stine +inghelene +manouk93 diff --git a/.local/bin/ordur b/.local/bin/ordur @@ -0,0 +1,38 @@ +#!/bin/sh + +m="$(date '+%_M' | tr -d ' ' )" + +if [ $m = "0" ]; then + M="" +elif [ $m -lt "15" ]; then + M="$m over" +elif [ $m -eq "15" ]; then + M="kvart over" +elif [ $m -lt "30" ]; then + d="$(expr 30 - $m)" + M="$d på halv" +elif [ $m -eq "30" ]; then + M="halv" +elif [ $m -lt "45" ]; then + d="$(expr $m - 30)" + M="$d over halv" +elif [ $m -eq "45" ]; then + M="kvart på" +else + d="$(expr 60 - $m)" + M="$d på" +fi + +h="$(date '+%_I' | tr -d ' ')" +[ $m -gt "15" ] && h="$(date -d '1 hour' '+%_I' | tr -d ' ')" + +printf "$M $h" + +while getopts nd o; do + case $o in + n) printf " på $(date '+%A')";; + d) printf " den $(date '+%_d. %B')";; + esac +done + +printf "\n" diff --git a/.local/bin/reloadwm b/.local/bin/reloadwm @@ -0,0 +1,12 @@ +#!/bin/sh + +# WM +[ "$WM" = "bspwm" ] && bspc wm -r +[ "$WM" = "i3" ] && i3-msg restart + +# Backweb-skript +pkill -u riq backweb && backweb & + +# Sxhkd +pkill -USR1 -x sxhkd + diff --git a/.local/bin/todo b/.local/bin/todo @@ -0,0 +1,3 @@ +#!/bin/sh + +cat "$HOME/todolist" diff --git a/.local/bin/unix b/.local/bin/unix @@ -0,0 +1,25 @@ +#!/bin/sh +#original artwork by http://www.sanderfocus.nl/#/portfolio/tech-heroes +#converted to shell by #nixers @ irc.unix.chat + +cat << 'eof' + ,_ ,_==▄▂ + , ▂▃▄▄▅▅▅▂▅¾. / / + ▄▆<´ "»▓▓▓%\ / / / / + ,▅7" ´>▓▓▓% / / > / >/% + ▐¶▓ ,»▓▓¾´ /> %/%// / / + ▓▃▅▅▅▃,,▄▅▅▅Æ\// ///>// />/ / + V║«¼.;→ ║<«.,`=// />//%/% / / + //╠<´ -²,)(▓~"-╝/¾/ %/>/ /> + / / / ▐% -./▄▃▄▅▐, /7//;//% / / + / ////`▌▐ %zWv xX▓▇▌//&;% / / + / / / %//%/¾½´▌▃▄▄▄▄▃▃▐¶\/& / + </ /</%//`▓!%▓%╣[38;5;255;╣WY<Y)y&/`\ + / / %/%//</%//\i7; ╠N>)VY>7; \_ UNIX IS VERY SIMPLE IT JUST NEEDS A + / /</ //<///<_/%\▓ V%W%£)XY _/%‾\_, GENIUS TO UNDERSTAND ITS SIMPLICITY + / / //%/_,=--^/%/%%\¾%¶%%} /%%%%%%;\, + %/< /_/ %%%%%;X%%\%%;, _/%%%;, \ + / / %%%%%%;, \%%l%%;// _/%;, dmr + / %%%;, <;\-=-/ / + ;, l +eof+ \ No newline at end of file diff --git a/.local/bin/volumkontroll b/.local/bin/volumkontroll @@ -0,0 +1,31 @@ +#!/bin/sh + +_toggle() { + if [ "$(pulsemixer --get-mute)" = "1" ]; then + pulsemixer --unmute + else + pulsemixer --mute + fi +} + +_change() { + pulsemixer --change-volume "$1" +} + +_set() { + pulsemixer --set-volume "$1" +} + +_print() { + vol=$(pulsemixer --get-volume | awk '{print $1}') + [ "$(pulsemixer --get-mute)" = "1" ] && vol="M" + echo "$vol%" +} + +[ "$1" = "" ] && _print && exit +[ "$1" = "toggle" ] && _toggle +[ "$1" = "change" ] && [ "$2" != "" ] && _change "$2" +[ "$1" = "set" ] && [ "$2" != "" ] && _set "$2" + +[ "$WM" = "i3" ] && pkill -RTMIN+10 i3blocks + diff --git a/.local/bin/wiktionaire b/.local/bin/wiktionaire @@ -0,0 +1,14 @@ +#!/bin/sh + +wikt_hist="$HOME_BIN/wiktionaire.d/history" + +if [ "$1" = "uib" ]; then + word="$(tac $wikt_hist | uniq | rofi -dmenu -theme sidebar -p "Søk i ordbøkene:" | tee -a $wikt_hist)" +else + word="$(tac $wikt_hist | uniq | rofi -dmenu -theme sidebar -p "Søk på wiktionary:" | tee -a $wikt_hist)" +fi + +url="$(echo $word | sed 's/.*/https:\/\/en.wiktionary.org\/w\/index.php?search=\0/')" +[ "$1" = "uib" ] && url="$(echo $word | sed 's/.*/https:\/\/ordbok.uib.no\/perl\/ordbok.cgi?OPP=\0\&ant_bokmaal=5\&ant_nynorsk=5\&begge=+\&ordbok=begge/')" + +[ "$word" != "" ] && surf "$url" diff --git a/.local/bin/wiktionaire.d/history b/.local/bin/wiktionaire.d/history @@ -0,0 +1,20 @@ +hello +hello +hello +hello +hello +hello +hallelujah +fele +šovakar +šovakar +fele +fele +fele +fele +fele +šovakar +domus +pennus +займёмся +займёмся diff --git a/.local/bin/xkbutil b/.local/bin/xkbutil @@ -0,0 +1,21 @@ +#!/bin/sh + +dir=$XDG_CONFIG_HOME/keymaps + +_set () { + xkbcomp "$dir/$1.xkbmap" $DISPLAY && echo "$1" > "$dir/current-layout" +} + +_toggle() { + if [ -f "$dir/current-layout" ]; then + layout="$(cat $dir/current-layout)" + [ "$layout" = "NO" ] && _set "RU" + [ "$layout" = "RU" ] && _set "NO" + fi +} + +[ "$1" = "toggle" ] && _toggle +[ "$1" = "set" ] && [ "$2" = "NO" ] && _set "NO" +[ "$1" = "set" ] && [ "$2" = "RU" ] && _set "RU" + +[ "$WM" = "i3" ] && pkill -RTMIN+9 i3blocks diff --git a/.profile b/.profile @@ -1,9 +1,25 @@ # .profile +export TERMINAL="termite" export EDITOR="nvim" export BROWSER="palemoon" export READER="zathura" +export WM="bspwm" + +export INTERNET_IS_PRECIOUS="true" + +export HOME_BIN="$HOME/.local/bin" +export BIN_HOME="$HOME_BIN" +export PROSJEKTER="$HOME/prosjekter" + +# Golang +export GOPATH="$HOME/go" + +# Path +export PATH="$GOPATH/bin:$PATH" +export PATH="$(du "$BIN_HOME/" | cut -f2 | tr '\n' ':'):$PATH" + # XDG variables ## User directories export XDG_CONFIG_HOME="$HOME/.config" @@ -15,13 +31,8 @@ export XDG_CONFIG_DIRS="/etc/xdg" # Xorg export XINITRC="$XDG_CONFIG_HOME/X11/xinitrc" -export XAUTHORITY="$XDG_RUNTIME_DIR/Xauthority" - -#[ "$(tty)" = "/dev/tty1" ] && ! pgrep -x i3 >/dev/null && startx "$XINITRC" -if [[ ! $DISPLAY && $XDG_VTNR -eq 1 ]]; then - exec startx "$XINITRC" -fi +[ ! $DISPLAY ] && [ $XDG_VTNR -eq 1 ] && exec startx "$XINITRC" sudo -n loadkeys "$XDG_CONFIG_HOME/keymaps/ttymap.kmap" 2>/dev/null diff --git a/.zprofile b/.zprofile @@ -0,0 +1 @@ +.profile+ \ No newline at end of file diff --git a/installed-packs b/installed-packs @@ -10,3 +10,19 @@ i3-gaps xorg-server dmenu neocurses +bspwm +sxhkd +dialog +git +dosbox +unclutter +thunderbird +zathura +zathura-pdf-mupdf +go +rofi +gnome-twitch +neofetch +redshift +palemoon +micro