mirror of
https://github.com/rbreaves/kinto.git
synced 2025-08-03 17:46:39 +02:00
- Additional updates that give Firefox and Chrome separate keymap files due to shortcut differences
This commit is contained in:
@@ -14,7 +14,9 @@ cp ./kintox11/binary/kintox11 ~/.config/kinto/kintox11
|
|||||||
cp ./system-config/xactive.sh ~/.config/kinto/xactive.sh
|
cp ./system-config/xactive.sh ~/.config/kinto/xactive.sh
|
||||||
cp ./system-config/caret_status.sh ~/.config/kinto/caret_status.sh
|
cp ./system-config/caret_status.sh ~/.config/kinto/caret_status.sh
|
||||||
cp ./system-config/cleanup.sh ~/.config/kinto/cleanup.sh
|
cp ./system-config/cleanup.sh ~/.config/kinto/cleanup.sh
|
||||||
cp ./system-config/.browsers ~/.config/kinto/.browsers
|
cp ./system-config/.firefox ~/.config/kinto/.firefox
|
||||||
|
cp ./system-config/.chrome-ww ~/.config/kinto/.chrome-ww
|
||||||
|
cp ./system-config/.chrome-nw ~/.config/kinto/.chrome-nw
|
||||||
sed -i "s/{username}/`whoami`/g" ~/.config/systemd/user/keyswap.service
|
sed -i "s/{username}/`whoami`/g" ~/.config/systemd/user/keyswap.service
|
||||||
systemctl --user daemon-reload
|
systemctl --user daemon-reload
|
||||||
systemctl --user enable keyswap
|
systemctl --user enable keyswap
|
||||||
|
Binary file not shown.
@@ -99,6 +99,7 @@ char *trimwhitespace(char *str)
|
|||||||
|
|
||||||
int check_caret()
|
int check_caret()
|
||||||
{
|
{
|
||||||
|
int caretint;
|
||||||
char * fpname;
|
char * fpname;
|
||||||
fpname = malloc(sizeof(char)*20);
|
fpname = malloc(sizeof(char)*20);
|
||||||
strcpy(fpname,"/tmp/kinto/caret");
|
strcpy(fpname,"/tmp/kinto/caret");
|
||||||
@@ -113,10 +114,12 @@ int check_caret()
|
|||||||
fread(buffer, size, 1, fp);
|
fread(buffer, size, 1, fp);
|
||||||
buffer[size] = '\0';
|
buffer[size] = '\0';
|
||||||
trimwhitespace(buffer);
|
trimwhitespace(buffer);
|
||||||
if(strncmp(buffer,"1",1) == 0){
|
caretint = atoi(buffer);
|
||||||
|
if(caretint == 1){
|
||||||
// printf("caret: %s\n", buffer);
|
// printf("caret: %s\n", buffer);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
// printf("found nothing\n");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
@@ -528,13 +531,13 @@ int main(void){
|
|||||||
XEvent e;
|
XEvent e;
|
||||||
if(strlen(run_onInput) > 0){
|
if(strlen(run_onInput) > 0){
|
||||||
while(XNextEventTimeout(d, &e, .5, event_ts, last_event, &event_ts, &last_event)){
|
while(XNextEventTimeout(d, &e, .5, event_ts, last_event, &event_ts, &last_event)){
|
||||||
if(check_caret(run_onInput) && ran_onInput == 0){
|
if(check_caret() && ran_onInput == 0){
|
||||||
// printf("run_onInput: %s\n",run_onInput);
|
// printf("run_onInput: %s\n",run_onInput);
|
||||||
system(run_onInput);
|
system(run_onInput);
|
||||||
ran_onInput = 1;
|
ran_onInput = 1;
|
||||||
}
|
}
|
||||||
else if(!check_caret(run_onInput) && ran_onInput == 1){
|
else if(!check_caret() && ran_onInput == 1){
|
||||||
// printf("run_normal: %s\n",run_normal);
|
// printf("run_offInput: %s\n",run_offInput);
|
||||||
system(run_offInput);
|
system(run_offInput);
|
||||||
ran_onInput = 0;
|
ran_onInput = 0;
|
||||||
}
|
}
|
||||||
|
30
setup.py
30
setup.py
@@ -25,17 +25,20 @@ def requirements():
|
|||||||
|
|
||||||
check_xbind = symbols_gui_line = cmdline("which xbindkeys").strip()
|
check_xbind = symbols_gui_line = cmdline("which xbindkeys").strip()
|
||||||
check_xte = symbols_gui_line = cmdline("which xte").strip()
|
check_xte = symbols_gui_line = cmdline("which xte").strip()
|
||||||
|
check_xdotool = symbols_gui_line = cmdline("which xdotool").strip()
|
||||||
|
|
||||||
if len(check_xbind) > 0 and len(check_xte) > 0:
|
runpkg = 0
|
||||||
print("Xbindkeys and xte requirement is installed.")
|
|
||||||
elif len(check_xbind) == 0 and len(check_xbind) == 0:
|
if len(check_xbind) > 0 and len(check_xte) > 0 and len(check_xdotool) > 0:
|
||||||
run_pkg = "xbindkeys xautomation"
|
print("Xbindkeys, xdotool and xte requirement is installed.")
|
||||||
requirements()
|
if len(check_xbind) == 0:
|
||||||
elif len(check_xbind) == 0:
|
|
||||||
run_pkg = "xbindkeys"
|
run_pkg = "xbindkeys"
|
||||||
requirements()
|
if len(check_xte) == 0:
|
||||||
elif len(check_xte) == 0:
|
run_pkg += " xautomation"
|
||||||
run_pkg = "xautomation"
|
if len(check_xdotool) == 0:
|
||||||
|
run_pkg += " xdotool"
|
||||||
|
|
||||||
|
if runpkg != 0:
|
||||||
requirements()
|
requirements()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@@ -119,6 +122,7 @@ if os.path.isdir(homedir + "/.xkb/keymap") == False:
|
|||||||
time.sleep(0.5)
|
time.sleep(0.5)
|
||||||
os.system('setxkbmap -option')
|
os.system('setxkbmap -option')
|
||||||
os.system('setxkbmap -print > ~/.xkb/keymap/kbd.mac.gui')
|
os.system('setxkbmap -print > ~/.xkb/keymap/kbd.mac.gui')
|
||||||
|
os.system('setxkbmap -print > ~/.xkb/keymap/kbd.mac.gui.nw')
|
||||||
os.system('setxkbmap -print > ~/.xkb/keymap/kbd.mac.term')
|
os.system('setxkbmap -print > ~/.xkb/keymap/kbd.mac.term')
|
||||||
time.sleep(0.5)
|
time.sleep(0.5)
|
||||||
|
|
||||||
@@ -130,6 +134,9 @@ cmdline('sed -i '' -e "' + symbols_gui_line + 's/\\"/' + keyboardconfigs[default
|
|||||||
cmdline('sed -i '' -e "' + types_gui_line + 's/\\"/' + keyboardconfigs[defaultkb-1]['xkb_types_gui'] + '\\"/2" ~/.xkb/keymap/kbd.mac.gui')
|
cmdline('sed -i '' -e "' + types_gui_line + 's/\\"/' + keyboardconfigs[defaultkb-1]['xkb_types_gui'] + '\\"/2" ~/.xkb/keymap/kbd.mac.gui')
|
||||||
cmdline('sed -i '' -e "' + symbols_term_line + 's/\\"/' + keyboardconfigs[defaultkb-1]['xkb_symbols_term'] + '\\"/2" ~/.xkb/keymap/kbd.mac.term')
|
cmdline('sed -i '' -e "' + symbols_term_line + 's/\\"/' + keyboardconfigs[defaultkb-1]['xkb_symbols_term'] + '\\"/2" ~/.xkb/keymap/kbd.mac.term')
|
||||||
|
|
||||||
|
cmdline('sed -i '' -e "' + symbols_gui_line + 's/\\"/' + keyboardconfigs[defaultkb-1]['xkb_symbols_gui'].replace("+mac_gui(mac_levelssym)","") + '\\"/2" ~/.xkb/keymap/kbd.mac.gui.nw')
|
||||||
|
cmdline('sed -i '' -e "' + types_gui_line + 's/\\"/' + keyboardconfigs[defaultkb-1]['xkb_types_gui'] + '\\"/2" ~/.xkb/keymap/kbd.mac.gui.nw')
|
||||||
|
|
||||||
|
|
||||||
user_file = homedir + '/.config/kinto/user_config.json'
|
user_file = homedir + '/.config/kinto/user_config.json'
|
||||||
with open(user_file, 'r') as f:
|
with open(user_file, 'r') as f:
|
||||||
@@ -175,12 +182,15 @@ if len(defaultde) != 0:
|
|||||||
user_config['config'][0]['de'] = tweaks_selected
|
user_config['config'][0]['de'] = tweaks_selected
|
||||||
# term
|
# term
|
||||||
user_config['config'][1]['de'] = tweaks_selected
|
user_config['config'][1]['de'] = tweaks_selected
|
||||||
# browsers
|
# firefox
|
||||||
user_config['config'][2]['de'] = tweaks_selected
|
user_config['config'][2]['de'] = tweaks_selected
|
||||||
|
# chrome
|
||||||
|
user_config['config'][3]['de'] = tweaks_selected
|
||||||
|
|
||||||
user_config['config'][0]['run'] = keyboardconfigs[defaultkb-1]['gui']
|
user_config['config'][0]['run'] = keyboardconfigs[defaultkb-1]['gui']
|
||||||
user_config['config'][1]['run'] = keyboardconfigs[defaultkb-1]['term']
|
user_config['config'][1]['run'] = keyboardconfigs[defaultkb-1]['term']
|
||||||
user_config['config'][2]['run'] = keyboardconfigs[defaultkb-1]['gui']
|
user_config['config'][2]['run'] = keyboardconfigs[defaultkb-1]['gui']
|
||||||
|
user_config['config'][3]['run'] = keyboardconfigs[defaultkb-1]['gui'].replace("kbd.mac.gui","kbd.mac.gui.nw")
|
||||||
|
|
||||||
os.remove(user_file)
|
os.remove(user_file)
|
||||||
with open(user_file, 'w') as f:
|
with open(user_file, 'w') as f:
|
||||||
|
7
system-config/.chrome-nw
Normal file
7
system-config/.chrome-nw
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
"xdotool key --delay 0 --clearmodifiers Alt+Left"
|
||||||
|
Control + Left + Release
|
||||||
|
#Home + release
|
||||||
|
|
||||||
|
"xdotool key --delay 0 --clearmodifiers Alt+Right"
|
||||||
|
Control + Right + Release
|
||||||
|
#End + release
|
5
system-config/.chrome-ww
Normal file
5
system-config/.chrome-ww
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
"xdotool key --delay 0 --clearmodifiers Home"
|
||||||
|
Control + Left + Release
|
||||||
|
|
||||||
|
"xdotool key --delay 0 --clearmodifiers End"
|
||||||
|
Control + Right + Release
|
@@ -1,5 +1,5 @@
|
|||||||
"xte 'keydown Control_L' 'key bracketleft' 'keyup Control_L'"
|
"xte 'keydown Control_L' 'key bracketleft' 'keyup Control_L'"
|
||||||
Home + release
|
Home + release
|
||||||
|
|
||||||
"xte 'keydown Control_L' 'key bracketright' 'keyup Control_L'"
|
"xte 'keydown Control_R' 'key bracketright' 'keyup Control_R'"
|
||||||
End + release
|
End + release
|
@@ -19,14 +19,24 @@
|
|||||||
"appnames":[ "Gnome-terminal","konsole","io.elementary.terminal","terminator","sakura","guake","tilda","xterm","eterm" ]
|
"appnames":[ "Gnome-terminal","konsole","io.elementary.terminal","terminator","sakura","guake","tilda","xterm","eterm" ]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "browsers",
|
"name": "firefox",
|
||||||
"run": "",
|
"run": "",
|
||||||
"run_onInput": "killall xbindkeys > /dev/null 2>&1",
|
"run_onInput": "killall xbindkeys > /dev/null 2>&1",
|
||||||
"run_offInput": "xbindkeys -f $HOME/.config/kinto/.browsers",
|
"run_offInput": "killall xbindkeys > /dev/null 2>&1;xbindkeys -f $HOME/.config/kinto/.firefox",
|
||||||
"symbols": "",
|
"symbols": "",
|
||||||
"types": "",
|
"types": "",
|
||||||
"de": [],
|
"de": [],
|
||||||
"appnames":[ "Chromium","Firefox" ]
|
"appnames": [ "Firefox" ]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "chrome",
|
||||||
|
"run": "",
|
||||||
|
"run_onInput": "killall xbindkeys > /dev/null 2>&1;xbindkeys -f $HOME/.config/kinto/.chrome-ww",
|
||||||
|
"run_offInput": "killall xbindkeys > /dev/null 2>&1;xbindkeys -f $HOME/.config/kinto/.chrome-nw",
|
||||||
|
"symbols": "",
|
||||||
|
"types": "",
|
||||||
|
"de": [],
|
||||||
|
"appnames": [ "Chromium" ]
|
||||||
}],
|
}],
|
||||||
"init": [],
|
"init": [],
|
||||||
"detypes":["gnome2","gnome3","kde4","kde5","xfce","i3wm"],
|
"detypes":["gnome2","gnome3","kde4","kde5","xfce","i3wm"],
|
||||||
|
Reference in New Issue
Block a user