mirror of
https://github.com/rbreaves/kinto.git
synced 2025-08-05 18:38:26 +02:00
Compare commits
62 Commits
chrome-fix
...
1.2-12
Author | SHA1 | Date | |
---|---|---|---|
![]() |
df43fb363d | ||
![]() |
0dd5baca34 | ||
![]() |
896ab30e57 | ||
![]() |
f9aaae3038 | ||
![]() |
94b018aa48 | ||
![]() |
6b3ea9afab | ||
![]() |
1ee92339c0 | ||
![]() |
4e1331f9bb | ||
![]() |
f44182cefd | ||
![]() |
d15972dcae | ||
![]() |
65f48ce2f1 | ||
![]() |
589807bad9 | ||
![]() |
55a6d132c7 | ||
![]() |
eebf4d61eb | ||
![]() |
b364902db0 | ||
![]() |
035b9e2d85 | ||
![]() |
db68031eb4 | ||
![]() |
30f4c1285b | ||
![]() |
f858ae9614 | ||
![]() |
75dbe611b3 | ||
![]() |
6cdedf41e3 | ||
![]() |
df8d46e1c1 | ||
![]() |
b9f15950b2 | ||
![]() |
2f8ae2380f | ||
![]() |
77d52ec176 | ||
![]() |
13a98ce8cc | ||
![]() |
8f333dec20 | ||
![]() |
f7ff8d1728 | ||
![]() |
5b2a2c88c2 | ||
![]() |
48b5699aed | ||
![]() |
eec325024d | ||
![]() |
a5087b0f95 | ||
![]() |
36f189e434 | ||
![]() |
50b31abba9 | ||
![]() |
aa53c83c61 | ||
![]() |
5f795328c9 | ||
![]() |
39ed3c83f9 | ||
![]() |
bf35285914 | ||
![]() |
7a3d9cbd7c | ||
![]() |
2a920d0622 | ||
![]() |
253b061b12 | ||
![]() |
c8a28fe3e0 | ||
![]() |
9f5ba6e14e | ||
![]() |
f855da301c | ||
![]() |
4e33e5516b | ||
![]() |
5c25cd15cb | ||
![]() |
af4b4ea08e | ||
![]() |
e69e529a18 | ||
![]() |
f717db9aaa | ||
![]() |
353c2c6bb4 | ||
![]() |
dcbf1e8382 | ||
![]() |
9a52bd864a | ||
![]() |
9b87fda382 | ||
![]() |
b3fc4c9202 | ||
![]() |
4858b9cf28 | ||
![]() |
45ad4f3f68 | ||
![]() |
e54dba20a1 | ||
![]() |
1f4b2bb451 | ||
![]() |
9a5b44661c | ||
![]() |
d19e5836a5 | ||
![]() |
5e28015a31 | ||
![]() |
3a59edb51e |
15
README.md
15
README.md
@@ -26,7 +26,9 @@ If you like or appreciate this project then please consider donating.
|
|||||||
|**Wishlists**|[Amazon](https://smile.amazon.com/hz/wishlist/ls/3EVXR21VFKD9Z?ref_=wl_share)|[Adafruit](https://www.adafruit.com/wishlists/515932)|[eBay](https://www.ebay.com/mye/myebay/WatchList?custom_list_id=636668138019)|
|
|**Wishlists**|[Amazon](https://smile.amazon.com/hz/wishlist/ls/3EVXR21VFKD9Z?ref_=wl_share)|[Adafruit](https://www.adafruit.com/wishlists/515932)|[eBay](https://www.ebay.com/mye/myebay/WatchList?custom_list_id=636668138019)|
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
|
|
||||||
If you would like to send me a keyboard directly then please reach out to me over [twitter](https://twitter.com/gbit86) and send me a DM.
|
I have received some really great letters with donations & email, so I plan to make some of them public while redacting last names or anything I feel should remain private, and will be posting them on the frontpage of kinto.sh as I really do appreciate all of the support!
|
||||||
|
|
||||||
|
Also if you would like to send me a keyboard directly then please reach out to me over [twitter](https://twitter.com/gbit86) and send me a DM.
|
||||||
|
|
||||||
## How to install (Linux)
|
## How to install (Linux)
|
||||||
|
|
||||||
@@ -84,9 +86,12 @@ sudo apt install xfce4-appmenu-plugin vala-panel-appmenu-common appmenu-gtk2-mod
|
|||||||
xfconf-query -c xsettings -p /Gtk/Modules -n -t string -s "appmenu-gtk-module"
|
xfconf-query -c xsettings -p /Gtk/Modules -n -t string -s "appmenu-gtk-module"
|
||||||
```
|
```
|
||||||
|
|
||||||
**Perfect HiDPI fractional scaling on Ubuntu Budgie 20.04 under x11**
|
**Fractional HiDPI Scaling for Gnome/Budgie w/ x11**
|
||||||
|
|
||||||
|
https://github.com/rbreaves/betterScale
|
||||||
|
|
||||||
|
Use this with autorandr to save your settings as a profile that will auto re-apply when needed.
|
||||||
|
|
||||||
https://discourse.ubuntubudgie.org/t/ubuntu-budgie-20-04-fractional-hidpi-for-x11/4777
|
|
||||||
|
|
||||||
## How to Install (Windows)
|
## How to Install (Windows)
|
||||||
|
|
||||||
@@ -157,6 +162,10 @@ RDP fully works as long as the entire keyboard input is being captured. RDP had
|
|||||||
|Royal TSX Client| 🍎macOS⇒| ❖Windows | ❌ No|Initial Cmd key press not being passed|
|
|Royal TSX Client| 🍎macOS⇒| ❖Windows | ❌ No|Initial Cmd key press not being passed|
|
||||||
|Official MS RDP| 🍎🤖iOS/Android⇒| ❖Windows | ❌ No|No workaround atm|
|
|Official MS RDP| 🍎🤖iOS/Android⇒| ❖Windows | ❌ No|No workaround atm|
|
||||||
|
|
||||||
|
## How to Remap Windows keyboards for remote access to macOS
|
||||||
|
Quick summary - Swap Alt & Win to conform with Apple keyboard layouts. Sharpkeys for Windows, Setkeycodes for Linux, then install Kinto.sh or change/update the Keyboard Type to Apple in the system tray.
|
||||||
|
https://benreaves.medium.com/macos-to-linux-back-again-c6151200f4dc
|
||||||
|
|
||||||
## FreeRDP for macOS
|
## FreeRDP for macOS
|
||||||
|
|
||||||
1. Install [brew.sh](https://brew.sh).
|
1. Install [brew.sh](https://brew.sh).
|
||||||
|
@@ -353,7 +353,7 @@ class MyWindow(Gtk.Window):
|
|||||||
self.queryConfig('cp '+os.environ['HOME']+'/.config/kinto/xkeysnail.desktop '+os.environ['HOME']+'/.config/autostart/xkeysnail.desktop')
|
self.queryConfig('cp '+os.environ['HOME']+'/.config/kinto/xkeysnail.desktop '+os.environ['HOME']+'/.config/autostart/xkeysnail.desktop')
|
||||||
if self.options["systray"]:
|
if self.options["systray"]:
|
||||||
self.queryConfig('cp '+os.environ['HOME']+'/.config/kinto/kintotray.desktop '+os.environ['HOME']+'/.config/autostart/kintotray.desktop')
|
self.queryConfig('cp '+os.environ['HOME']+'/.config/kinto/kintotray.desktop '+os.environ['HOME']+'/.config/autostart/kintotray.desktop')
|
||||||
self.queryConfig("nohup python3 ~/.config/kinto/kintotray.py >/dev/null 2>&1 &")
|
self.queryConfig("nohup /usr/bin/python3 ~/.config/kinto/kintotray.py >/dev/null 2>&1 &")
|
||||||
self.menuitem_systray.disconnect(self.menuitem_systray.signal_id)
|
self.menuitem_systray.disconnect(self.menuitem_systray.signal_id)
|
||||||
self.menuitem_systray.set_active(True)
|
self.menuitem_systray.set_active(True)
|
||||||
self.menuitem_systray.signal_id = self.menuitem_systray.connect('activate',self.checkTray,False)
|
self.menuitem_systray.signal_id = self.menuitem_systray.connect('activate',self.checkTray,False)
|
||||||
@@ -616,7 +616,7 @@ class MyWindow(Gtk.Window):
|
|||||||
if tray_bool:
|
if tray_bool:
|
||||||
Popen(['cp',os.environ['HOME']+'/.config/kinto/kintotray.desktop',os.environ['HOME']+'/.config/autostart/kintotray.desktop'])
|
Popen(['cp',os.environ['HOME']+'/.config/kinto/kintotray.desktop',os.environ['HOME']+'/.config/autostart/kintotray.desktop'])
|
||||||
if not kintotray:
|
if not kintotray:
|
||||||
Popen([os.environ['HOME']+'/.config/kinto/kintotray.py'])
|
Popen(['/usr/bin/python3',os.environ['HOME']+'/.config/kinto/kintotray.py'])
|
||||||
self.menuitem_systray.disconnect(self.menuitem_systray.signal_id)
|
self.menuitem_systray.disconnect(self.menuitem_systray.signal_id)
|
||||||
self.menuitem_systray.set_active(True)
|
self.menuitem_systray.set_active(True)
|
||||||
self.menuitem_systray.signal_id = self.menuitem_systray.connect('activate',self.checkTray,False)
|
self.menuitem_systray.signal_id = self.menuitem_systray.connect('activate',self.checkTray,False)
|
||||||
|
@@ -4,7 +4,7 @@ Name=Kinto.sh
|
|||||||
GenericName=Kinto.sh
|
GenericName=Kinto.sh
|
||||||
Categories=Utility;
|
Categories=Utility;
|
||||||
Type=Application
|
Type=Application
|
||||||
Exec={homedir}/.config/kinto/gui/kinto-gui.py
|
Exec=/usr/bin/python3 {homedir}/.config/kinto/gui/kinto-gui.py
|
||||||
Icon={homedir}/.config/kinto/kinto-color-48.svg
|
Icon={homedir}/.config/kinto/kinto-color-48.svg
|
||||||
# Icon=/usr/share/icons/Pocillo/kinto-color.svg
|
# Icon=/usr/share/icons/Pocillo/kinto-color.svg
|
||||||
Terminal=false
|
Terminal=false
|
||||||
|
194
linux/kinto.py
194
linux/kinto.py
@@ -9,6 +9,7 @@ from xkeysnail.transform import *
|
|||||||
# xbindkeys -mk
|
# xbindkeys -mk
|
||||||
terminals = [
|
terminals = [
|
||||||
"alacritty",
|
"alacritty",
|
||||||
|
"cutefish-terminal",
|
||||||
"deepin-terminal",
|
"deepin-terminal",
|
||||||
"eterm",
|
"eterm",
|
||||||
"gnome-terminal",
|
"gnome-terminal",
|
||||||
@@ -24,6 +25,7 @@ terminals = [
|
|||||||
"st",
|
"st",
|
||||||
"sakura",
|
"sakura",
|
||||||
"station",
|
"station",
|
||||||
|
"tabby",
|
||||||
"terminator",
|
"terminator",
|
||||||
"termite",
|
"termite",
|
||||||
"tilda",
|
"tilda",
|
||||||
@@ -44,7 +46,10 @@ codeStr = "|".join(str('^'+x+'$') for x in mscodes)
|
|||||||
remotes = [
|
remotes = [
|
||||||
"Gnome-boxes",
|
"Gnome-boxes",
|
||||||
"org.remmina.Remmina",
|
"org.remmina.Remmina",
|
||||||
|
"remmina",
|
||||||
"qemu-system-.*",
|
"qemu-system-.*",
|
||||||
|
"qemu",
|
||||||
|
"Spicy",
|
||||||
"Virt-manager",
|
"Virt-manager",
|
||||||
"VirtualBox",
|
"VirtualBox",
|
||||||
"VirtualBox Machine",
|
"VirtualBox Machine",
|
||||||
@@ -63,6 +68,8 @@ browsers = [
|
|||||||
"Discord",
|
"Discord",
|
||||||
"Epiphany",
|
"Epiphany",
|
||||||
"Firefox",
|
"Firefox",
|
||||||
|
"Firefox Developer Edition",
|
||||||
|
"Waterfox",
|
||||||
"Google-chrome",
|
"Google-chrome",
|
||||||
"microsoft-edge",
|
"microsoft-edge",
|
||||||
"microsoft-edge-dev",
|
"microsoft-edge-dev",
|
||||||
@@ -266,20 +273,26 @@ define_keymap(re.compile("^jetbrains-(?!.*toolbox).*$", re.IGNORECASE),{
|
|||||||
# (overrides some bindings from general file manager code block below)
|
# (overrides some bindings from general file manager code block below)
|
||||||
define_keymap(re.compile("caja", re.IGNORECASE),{
|
define_keymap(re.compile("caja", re.IGNORECASE),{
|
||||||
# K("RC-Super-o"): K("RC-Shift-Enter"), # Open in new tab
|
# K("RC-Super-o"): K("RC-Shift-Enter"), # Open in new tab
|
||||||
K("RC-Super-o"): K("RC-Shift-W"), # Open in new window
|
K("RC-Super-o"): K("RC-Shift-W"), # Open in new window
|
||||||
},"Overrides for Caja - Finder")
|
},"Overrides for Caja - Finder Mods")
|
||||||
|
|
||||||
# Keybindings overrides for DDE (Deepin) File Manager
|
# Keybindings overrides for DDE (Deepin) File Manager
|
||||||
# (overrides some bindings from general file manager code block below)
|
# (overrides some bindings from general file manager code block below)
|
||||||
define_keymap(re.compile("dde-file-manager", re.IGNORECASE),{
|
define_keymap(re.compile("dde-file-manager", re.IGNORECASE),{
|
||||||
K("RC-i"): K("RC-i"), # File properties dialog (Get Info)
|
K("RC-i"): K("RC-i"), # File properties dialog (Get Info)
|
||||||
K("RC-comma"): None, # Disable preferences shortcut (no shortcut available)
|
K("RC-comma"): None, # Disable preferences shortcut (no shortcut available)
|
||||||
K("RC-Up"): K("RC-Up"), # Go Up dir
|
K("RC-Up"): K("RC-Up"), # Go Up dir
|
||||||
},"Overrides for DDE File Manager - Finder")
|
K("RC-Shift-Left_Brace"): K("C-Shift-Tab"), # Go to prior tab
|
||||||
|
K("RC-Shift-Right_Brace"): K("C-Tab"), # Go to next tab
|
||||||
|
K("RC-Shift-Left"): K("C-Shift-Tab"), # Go to prior tab
|
||||||
|
K("RC-Shift-Right"): K("C-Tab"), # Go to next tab
|
||||||
|
},"Overrides for DDE File Manager - Finder Mods")
|
||||||
|
|
||||||
# Keybindings overrides for Dolphin
|
# Keybindings overrides for Dolphin
|
||||||
# (overrides some bindings from general file manager code block below)
|
# (overrides some bindings from general file manager code block below)
|
||||||
define_keymap(re.compile("dolphin", re.IGNORECASE),{
|
define_keymap(re.compile("dolphin", re.IGNORECASE),{
|
||||||
|
K("RC-KEY_2"): K("C-KEY_3"), # View as List (Detailed)
|
||||||
|
K("RC-KEY_3"): K("C-KEY_2"), # View as List (Compact)
|
||||||
##########################################################################################
|
##########################################################################################
|
||||||
### "Open in new window" requires manually setting custom shortcut of Ctrl+Shift+o
|
### "Open in new window" requires manually setting custom shortcut of Ctrl+Shift+o
|
||||||
### in Dolphin's keyboard shortcuts. There is no default shortcut set for this function.
|
### in Dolphin's keyboard shortcuts. There is no default shortcut set for this function.
|
||||||
@@ -287,51 +300,64 @@ define_keymap(re.compile("dolphin", re.IGNORECASE),{
|
|||||||
### "Open in new tab" requires manually setting custom shortcut of Ctrl+Shift+o in
|
### "Open in new tab" requires manually setting custom shortcut of Ctrl+Shift+o in
|
||||||
### Dolphin's keyboard shortcuts. There is no default shortcut set for this function.
|
### Dolphin's keyboard shortcuts. There is no default shortcut set for this function.
|
||||||
##########################################################################################
|
##########################################################################################
|
||||||
K("RC-Super-o"): K("RC-Shift-o"), # Open in new window (or new tab, user's choice, see above)
|
K("RC-Super-o"): K("RC-Shift-o"), # Open in new window (or new tab, user's choice, see above)
|
||||||
K("RC-Shift-N"): K("F10"), # Create new folder
|
K("RC-Shift-N"): K("F10"), # Create new folder
|
||||||
K("RC-comma"): K("RC-Shift-comma"), # Open preferences dialog
|
K("RC-comma"): K("RC-Shift-comma"), # Open preferences dialog
|
||||||
},"Overrides for Dolphin - Finder")
|
},"Overrides for Dolphin - Finder Mods")
|
||||||
|
|
||||||
# Keybindings overrides for elementary OS Files
|
# Keybindings overrides for elementary OS Files (Pantheon)
|
||||||
# (overrides some bindings from general file manager code block below)
|
# (overrides some bindings from general file manager code block below)
|
||||||
define_keymap(re.compile("io.elementary.files", re.IGNORECASE),{
|
define_keymap(re.compile("io.elementary.files", re.IGNORECASE),{
|
||||||
# K("RC-Super-o"): K("Shift-Enter"), # Open folder in new tab
|
# K("RC-Super-o"): K("Shift-Enter"), # Open folder in new tab
|
||||||
K("RC-Comma"): None, # Disable preferences shortcut since none available
|
K("RC-comma"): None, # Disable preferences shortcut since none available
|
||||||
},"Overrides for Pantheon - Finder")
|
},"Overrides for Pantheon - Finder Mods")
|
||||||
|
|
||||||
# Keybindings overrides for Nautilus
|
# Keybindings overrides for Nautilus
|
||||||
# (overrides some bindings from general file manager code block below)
|
# (overrides some bindings from general file manager code block below)
|
||||||
define_keymap(re.compile("org.gnome.nautilus|nautilus", re.IGNORECASE),{
|
define_keymap(re.compile("org.gnome.nautilus|nautilus", re.IGNORECASE),{
|
||||||
K("RC-Super-o"): K("Shift-Enter"), # Open in new window
|
# K("RC-N"): K("C-M-Space"), # macOS Finder search window shortcut Cmd+Option+Space
|
||||||
# K("RC-Super-o"): K("RC-Enter"), # Open in new tab
|
# For this ^^^^^^^^^^^ to work, a custom shortcut must be set up in the Settings app in GNOME
|
||||||
K("RC-comma"): K("RC-comma"), # Overrides "Open preferences dialog" shortcut below
|
# to run command: "nautilus --new-window /home/USER" [ replace "USER" ]
|
||||||
},"Overrides for Nautilus - Finder")
|
K("RC-KEY_1"): K("C-KEY_2"), # View as Icons
|
||||||
|
K("RC-KEY_2"): K("C-KEY_1"), # View as List (Detailed)
|
||||||
|
K("RC-Super-o"): K("Shift-Enter"), # Open in new window
|
||||||
|
# K("RC-Super-o"): K("RC-Enter"), # Open in new tab
|
||||||
|
K("RC-comma"): K("RC-comma"), # Overrides "Open preferences dialog" shortcut below
|
||||||
|
},"Overrides for Nautilus - Finder Mods")
|
||||||
|
|
||||||
# Keybindings overrides for PCManFM and PCManFM-Qt
|
# Keybindings overrides for PCManFM and PCManFM-Qt
|
||||||
# (overrides some bindings from general file manager code block below)
|
# (overrides some bindings from general file manager code block below)
|
||||||
define_keymap(re.compile("pcmanfm|pcmanfm-qt", re.IGNORECASE),{
|
define_keymap(re.compile("pcmanfm|pcmanfm-qt", re.IGNORECASE),{
|
||||||
K("RC-Backspace"): [K("Delete"),K("Enter")], # Move to Trash (delete, bypass dialog)
|
K("RC-KEY_2"): K("C-KEY_4"), # View as List (Detailed) [Not in PCManFM-Qt]
|
||||||
},"Overrides for PCManFM - Finder")
|
K("RC-Backspace"): [K("Delete"),K("Enter")], # Move to Trash (delete, bypass dialog)
|
||||||
|
},"Overrides for PCManFM - Finder Mods")
|
||||||
|
|
||||||
# Keybindings overrides for SpaceFM
|
# Keybindings overrides for SpaceFM
|
||||||
# (overrides some bindings from general file manager code block below)
|
# (overrides some bindings from general file manager code block below)
|
||||||
define_keymap(re.compile("spacefm", re.IGNORECASE),{
|
define_keymap(re.compile("spacefm", re.IGNORECASE),{
|
||||||
K("RC-Shift-N"): [K("RC-F")], # Create new folder is Ctrl+F by default
|
K("RC-Page_Up"): K("C-Shift-Tab"), # Go to prior tab
|
||||||
K("RC-Backspace"): [K("Delete"),K("Enter")], # Move to Trash (delete, bypass dialog)
|
K("RC-Page_Down"): K("C-Tab"), # Go to next tab
|
||||||
K("RC-comma"): [K("M-V"),K("p")], # Overrides "Open preferences dialog" shortcut below
|
K("RC-Shift-Left_Brace"): K("C-Shift-Tab"), # Go to prior tab
|
||||||
|
K("RC-Shift-Right_Brace"): K("C-Tab"), # Go to next tab
|
||||||
|
K("RC-Shift-Left"): K("C-Shift-Tab"), # Go to prior tab
|
||||||
|
K("RC-Shift-Right"): K("C-Tab"), # Go to next tab
|
||||||
|
K("RC-Shift-N"): K("RC-F"), # Create new folder is Ctrl+F by default
|
||||||
|
K("RC-Backspace"): [K("Delete"),K("Enter")], # Move to Trash (delete, bypass dialog)
|
||||||
|
K("RC-comma"): [K("M-V"),K("p")], # Overrides "Open preferences dialog" shortcut below
|
||||||
# This shortcut ^^^^^^^^^^^^^^^ is not fully working in SpaceFM. Opens "View" menu but not Preferences.
|
# This shortcut ^^^^^^^^^^^^^^^ is not fully working in SpaceFM. Opens "View" menu but not Preferences.
|
||||||
# SpaceFM seems to be doing some nasty binding that blocks things like Alt+Tab while the menu is open.
|
# SpaceFM seems to be doing some nasty binding that blocks things like Alt+Tab while the menu is open.
|
||||||
},"Overrides for SpaceFM - Finder")
|
},"Overrides for SpaceFM - Finder Mods")
|
||||||
|
|
||||||
# Keybindings overrides for Thunar
|
# Keybindings overrides for Thunar
|
||||||
# (overrides some bindings from general file manager code block below)
|
# (overrides some bindings from general file manager code block below)
|
||||||
define_keymap(re.compile("thunar", re.IGNORECASE),{
|
define_keymap(re.compile("thunar", re.IGNORECASE),{
|
||||||
K("RC-Super-o"): K("RC-Shift-P"), # Open in new tab
|
K("RC-Super-o"): K("RC-Shift-P"), # Open in new tab
|
||||||
K("RC-comma"): [K("M-E"),K("E")], # Overrides "Open preferences dialog" shortcut below
|
K("RC-comma"): [K("M-E"),K("E")], # Overrides "Open preferences dialog" shortcut below
|
||||||
},"Overrides for Thunar - Finder")
|
},"Overrides for Thunar - Finder Mods")
|
||||||
|
|
||||||
filemanagers = [
|
filemanagers = [
|
||||||
"caja",
|
"caja",
|
||||||
|
"cutefish-filemanager",
|
||||||
"dde-file-manager",
|
"dde-file-manager",
|
||||||
"dolphin",
|
"dolphin",
|
||||||
"io.elementary.files",
|
"io.elementary.files",
|
||||||
@@ -364,37 +390,58 @@ define_keymap(re.compile(filemanagerStr, re.IGNORECASE),{
|
|||||||
###########################################################################################################
|
###########################################################################################################
|
||||||
### Show Properties (Get Info) | Open Settings/Preferences | Show/Hide hidden files ###
|
### Show Properties (Get Info) | Open Settings/Preferences | Show/Hide hidden files ###
|
||||||
###########################################################################################################
|
###########################################################################################################
|
||||||
K("RC-i"): K("M-Enter"), # File properties dialog (Get Info)
|
K("RC-i"): K("M-Enter"), # File properties dialog (Get Info)
|
||||||
K("RC-comma"): [K("M-E"),K("N")], # Open preferences dialog
|
K("RC-comma"): [K("M-E"),K("N")], # Open preferences dialog
|
||||||
K("RC-Shift-dot"): K("RC-H"), # Show/hide hidden files ("dot" files)
|
K("RC-Shift-dot"): K("RC-H"), # Show/hide hidden files ("dot" files)
|
||||||
###########################################################################################################
|
###########################################################################################################
|
||||||
### Navigation ###
|
### Navigation ###
|
||||||
###########################################################################################################
|
###########################################################################################################
|
||||||
K("RC-Left"): K("M-Left"), # Go Back
|
K("RC-Left_Brace"): K("M-Left"), # Go Back
|
||||||
K("RC-Right"): K("M-Right"), # Go Forward
|
K("RC-Right_Brace"): K("M-Right"), # Go Forward
|
||||||
K("RC-Up"): K("M-Up"), # Go Up dir
|
K("RC-Left"): K("M-Left"), # Go Back
|
||||||
# K("RC-Down"): K("M-Down"), # Go Down dir (only works on folders) [not universal]
|
K("RC-Right"): K("M-Right"), # Go Forward
|
||||||
# K("RC-Down"): K("RC-O"), # Go Down dir (open folder/file) [not universal]
|
K("RC-Up"): K("M-Up"), # Go Up dir
|
||||||
K("RC-Down"): K("Enter"), # Go Down dir (open folder/file) [universal]
|
# K("RC-Down"): K("M-Down"), # Go Down dir (only works on folders) [not universal]
|
||||||
|
# K("RC-Down"): K("RC-O"), # Go Down dir (open folder/file) [not universal]
|
||||||
|
K("RC-Down"): K("Enter"), # Go Down dir (open folder/file) [universal]
|
||||||
|
K("RC-Shift-Left_Brace"): K("C-Page_Up"), # Go to prior tab
|
||||||
|
K("RC-Shift-Right_Brace"): K("C-Page_Down"), # Go to next tab
|
||||||
|
K("RC-Shift-Left"): K("C-Page_Up"), # Go to prior tab
|
||||||
|
K("RC-Shift-Right"): K("C-Page_Down"), # Go to next tab
|
||||||
###########################################################################################################
|
###########################################################################################################
|
||||||
### Open in New Window | Move to Trash | Duplicate file/folder ###
|
### Open in New Window | Move to Trash | Duplicate file/folder ###
|
||||||
###########################################################################################################
|
###########################################################################################################
|
||||||
K("RC-Super-o"): K("RC-Shift-o"), # Open in new window (or tab, depends on FM setup) [not universal]
|
K("RC-Super-o"): K("RC-Shift-o"), # Open in new window (or tab, depends on FM setup) [not universal]
|
||||||
K("RC-Backspace"): K("Delete"), # Move to Trash (delete)
|
K("RC-Backspace"): K("Delete"), # Move to Trash (delete)
|
||||||
K("RC-D"): [K("RC-C"),K("RC-V")], # Mimic Finder's Duplicate command (Copy, then Paste)
|
# K("RC-D"): [K("RC-C"),K("RC-V")], # Duplicate file/folder (Copy, then Paste) [conflicts with "Add Bookmark"]
|
||||||
###########################################################################################################
|
###########################################################################################################
|
||||||
### To enable renaming files with the Enter key, uncomment the two keymapping lines just below this. ###
|
### To enable renaming files with the Enter key, uncomment the two keymapping lines just below this. ###
|
||||||
### Use Ctrl+Shift+Enter to escape or activate text fields such as "[F]ind" and "[L]ocation" fields. ###
|
### Use Ctrl+Shift+Enter to escape or activate text fields such as "[F]ind" and "[L]ocation" fields. ###
|
||||||
###########################################################################################################
|
###########################################################################################################
|
||||||
# K("Enter"): K("F2"), # Rename with Enter key
|
# K("Enter"): K("F2"), # Rename with Enter key
|
||||||
# K("RC-Shift-Enter"): K("Enter"), # Remap alternative "Enter" key to easily activate/exit text fields
|
# K("RC-Shift-Enter"): K("Enter"), # Remap alternative "Enter" key to easily activate/exit text fields
|
||||||
},"File Managers - Finder")
|
# K("RC-Shift-Enter"): K("F2"), # Rename with Cmd+Shift+Enter
|
||||||
|
},"General File Managers - Finder Mods")
|
||||||
|
|
||||||
############################################
|
############################################
|
||||||
### END OF FILE MANAGER GROUP OF KEYMAPS ###
|
### END OF FILE MANAGER GROUP OF KEYMAPS ###
|
||||||
############################################
|
############################################
|
||||||
|
|
||||||
# Keybindings for Browsers
|
# Open preferences in browsers
|
||||||
|
define_keymap(re.compile("Firefox", re.IGNORECASE),{
|
||||||
|
K("C-comma"): [
|
||||||
|
K("C-T"),K("a"),K("b"),K("o"),K("u"),K("t"),
|
||||||
|
K("Shift-SEMICOLON"),K("p"),K("r"),K("e"),K("f"),
|
||||||
|
K("e"),K("r"),K("e"),K("n"),K("c"),K("e"),K("s"),K("Enter")
|
||||||
|
],
|
||||||
|
K("RC-Shift-N"): K("RC-Shift-P"), # Open private window with Ctrl+Shift+N like other browsers
|
||||||
|
})
|
||||||
|
define_keymap(re.compile(chromeStr, re.IGNORECASE),{
|
||||||
|
K("C-comma"): [K("M-e"), K("s"),K("Enter")],
|
||||||
|
}, "Browsers")
|
||||||
|
# Opera C-F12
|
||||||
|
|
||||||
|
# Keybindings for General Web Browsers
|
||||||
define_keymap(re.compile(browserStr, re.IGNORECASE),{
|
define_keymap(re.compile(browserStr, re.IGNORECASE),{
|
||||||
K("RC-Q"): K("RC-Q"), # Close all browsers Instances
|
K("RC-Q"): K("RC-Q"), # Close all browsers Instances
|
||||||
K("M-RC-I"): K("RC-Shift-I"), # Dev tools
|
K("M-RC-I"): K("RC-Shift-I"), # Dev tools
|
||||||
@@ -408,22 +455,40 @@ define_keymap(re.compile(browserStr, re.IGNORECASE),{
|
|||||||
K("RC-Key_7"): K("M-Key_7"),
|
K("RC-Key_7"): K("M-Key_7"),
|
||||||
K("RC-Key_8"): K("M-Key_8"),
|
K("RC-Key_8"): K("M-Key_8"),
|
||||||
K("RC-Key_9"): K("M-Key_9"), # Jump to last tab
|
K("RC-Key_9"): K("M-Key_9"), # Jump to last tab
|
||||||
K("C-Left_Brace"): K("C-Page_Up"),
|
# Enable Cmd+Shift+Braces for tab navigation
|
||||||
K("C-Right_Brace"): K("C-Page_Down"),
|
K("RC-Shift-Left_Brace"): K("C-Page_Up"), # Go to prior tab
|
||||||
})
|
K("RC-Shift-Right_Brace"): K("C-Page_Down"), # Go to next tab
|
||||||
|
# Enable Cmd+Option+Left/Right for tab navigation
|
||||||
|
K("RC-M-Left"): K("C-Page_Up"), # Go to prior tab
|
||||||
|
K("RC-M-Right"): K("C-Page_Down"), # Go to next tab
|
||||||
|
# Enable Ctrl+PgUp/PgDn for tab navigation
|
||||||
|
K("Super-Page_Up"): K("C-Page_Up"), # Go to prior tab
|
||||||
|
K("Super-Page_Down"): K("C-Page_Down"), # Go to next tab
|
||||||
|
# Use Cmd+Braces keys for tab navigation instead of page navigation
|
||||||
|
# K("C-Left_Brace"): K("C-Page_Up"),
|
||||||
|
# K("C-Right_Brace"): K("C-Page_Down"),
|
||||||
|
}, "General Web Browsers")
|
||||||
|
|
||||||
# Open preferences in browsers
|
define_keymap(re.compile("ulauncher", re.IGNORECASE),{
|
||||||
define_keymap(re.compile("Firefox", re.IGNORECASE),{
|
K("RC-Key_1"): K("M-Key_1"), # Remap Ctrl+[1-9] and Ctrl+[a-z] to Alt+[1-9] and Alt+[a-z]
|
||||||
K("C-comma"): [
|
K("RC-Key_2"): K("M-Key_2"),
|
||||||
K("C-T"),K("a"),K("b"),K("o"),K("u"),K("t"),
|
K("RC-Key_3"): K("M-Key_3"),
|
||||||
K("Shift-SEMICOLON"),K("p"),K("r"),K("e"),K("f"),
|
K("RC-Key_4"): K("M-Key_4"),
|
||||||
K("e"),K("r"),K("e"),K("n"),K("c"),K("e"),K("s"),K("Enter")
|
K("RC-Key_5"): K("M-Key_5"),
|
||||||
],
|
K("RC-Key_6"): K("M-Key_6"),
|
||||||
})
|
K("RC-Key_7"): K("M-Key_7"),
|
||||||
define_keymap(re.compile(chromeStr, re.IGNORECASE),{
|
K("RC-Key_8"): K("M-Key_8"),
|
||||||
K("C-comma"): [K("M-e"), K("s"),K("Enter")],
|
K("RC-Key_9"): K("M-Key_9"),
|
||||||
}, "Browsers")
|
K("RC-Key_0"): K("M-Key_0"),
|
||||||
# Opera C-F12
|
# K("RC-a"): K("M-a"),
|
||||||
|
K("RC-b"): K("M-b"),
|
||||||
|
# K("RC-c"): K("M-c"),
|
||||||
|
K("RC-d"): K("M-d"),
|
||||||
|
K("RC-e"): K("M-e"),
|
||||||
|
K("RC-f"): K("M-f"),
|
||||||
|
K("RC-g"): K("M-g"),
|
||||||
|
K("RC-h"): K("M-h"),
|
||||||
|
}, "Ulauncher")
|
||||||
|
|
||||||
# Note: terminals extends to remotes as well
|
# Note: terminals extends to remotes as well
|
||||||
define_keymap(lambda wm_class: wm_class.casefold() not in terminals,{
|
define_keymap(lambda wm_class: wm_class.casefold() not in terminals,{
|
||||||
@@ -437,6 +502,7 @@ define_keymap(lambda wm_class: wm_class.casefold() not in remotes,{
|
|||||||
K("RC-Space"): K("Alt-F1"), # Default SL - Launch Application Menu (gnome/kde)
|
K("RC-Space"): K("Alt-F1"), # Default SL - Launch Application Menu (gnome/kde)
|
||||||
K("RC-F3"):K("Super-d"), # Default SL - Show Desktop (gnome/kde,eos)
|
K("RC-F3"):K("Super-d"), # Default SL - Show Desktop (gnome/kde,eos)
|
||||||
K("RC-Super-f"):K("M-F10"), # Default SL - Maximize app (gnome/kde)
|
K("RC-Super-f"):K("M-F10"), # Default SL - Maximize app (gnome/kde)
|
||||||
|
# K("RC-Super-f"): K("Super-Page_Up"), # SL - Toggle maximized window state (kde_neon)
|
||||||
# K("Super-Right"):K("C-M-Right"), # Default SL - Change workspace (budgie)
|
# K("Super-Right"):K("C-M-Right"), # Default SL - Change workspace (budgie)
|
||||||
# K("Super-Left"):K("C-M-Left"), # Default SL - Change workspace (budgie)
|
# K("Super-Left"):K("C-M-Left"), # Default SL - Change workspace (budgie)
|
||||||
K("RC-Q"): K("M-F4"), # Default SL - not-popos
|
K("RC-Q"): K("M-F4"), # Default SL - not-popos
|
||||||
@@ -542,10 +608,12 @@ define_keymap(re.compile(codeStr, re.IGNORECASE),{
|
|||||||
K("M-Shift-Left"): [K("M-F19"),K("C-Shift-Left")], # Select Left of Word
|
K("M-Shift-Left"): [K("M-F19"),K("C-Shift-Left")], # Select Left of Word
|
||||||
K("M-Shift-Right"): [K("M-F19"),K("C-Shift-Right")], # Select Right of Word
|
K("M-Shift-Right"): [K("M-F19"),K("C-Shift-Right")], # Select Right of Word
|
||||||
|
|
||||||
# K("C-PAGE_DOWN"): pass_through_key, # cancel next_view
|
# K("C-PAGE_DOWN"): pass_through_key, # cancel next_view
|
||||||
# K("C-PAGE_UP"): pass_through_key, # cancel prev_view
|
# K("C-PAGE_UP"): pass_through_key, # cancel prev_view
|
||||||
K("C-M-Left"): K("C-PAGE_UP"), # next_view
|
K("C-M-Left"): K("C-PAGE_UP"), # next_view
|
||||||
K("C-M-Right"): K("C-PAGE_DOWN"), # prev_view
|
K("C-M-Right"): K("C-PAGE_DOWN"), # prev_view
|
||||||
|
K("RC-Shift-Left_Brace"): K("C-PAGE_UP"), # next_view
|
||||||
|
K("RC-Shift-Right_Brace"): K("C-PAGE_DOWN"), # prev_view
|
||||||
|
|
||||||
# VS Code Shortcuts
|
# VS Code Shortcuts
|
||||||
K("C-g"): pass_through_key, # cancel Go to Line...
|
K("C-g"): pass_through_key, # cancel Go to Line...
|
||||||
@@ -693,6 +761,8 @@ define_keymap(re.compile(termStr, re.IGNORECASE),{
|
|||||||
K("RC-P"): K("C-Shift-P"),
|
K("RC-P"): K("C-Shift-P"),
|
||||||
K("RC-LEFT_BRACE"): K("C-Shift-LEFT_BRACE"),
|
K("RC-LEFT_BRACE"): K("C-Shift-LEFT_BRACE"),
|
||||||
K("RC-RIGHT_BRACE"): K("C-Shift-RIGHT_BRACE"),
|
K("RC-RIGHT_BRACE"): K("C-Shift-RIGHT_BRACE"),
|
||||||
|
K("RC-Shift-Left_Brace"): K("C-Page_Up"), # Go to prior tab (Left)
|
||||||
|
K("RC-Shift-Right_Brace"): K("C-Page_Down"), # Go to next tab (Right)
|
||||||
K("RC-A"): K("C-Shift-A"),
|
K("RC-A"): K("C-Shift-A"),
|
||||||
K("RC-S"): K("C-Shift-S"),
|
K("RC-S"): K("C-Shift-S"),
|
||||||
K("RC-D"): K("C-Shift-D"),
|
K("RC-D"): K("C-Shift-D"),
|
||||||
|
@@ -11,3 +11,4 @@ Defaults!/etc/init.d/kinto setenv,env_reset,env_delete+=PATH,env_delete+=LD_PREL
|
|||||||
%{username} ALL=NOPASSWD: {pkill} -f bin/xkeysnail
|
%{username} ALL=NOPASSWD: {pkill} -f bin/xkeysnail
|
||||||
%{username} ALL=NOPASSWD: {xkeysnail} *
|
%{username} ALL=NOPASSWD: {xkeysnail} *
|
||||||
%{username} ALL=NOPASSWD: {systemctl} is-active --quiet xkeysnail
|
%{username} ALL=NOPASSWD: {systemctl} is-active --quiet xkeysnail
|
||||||
|
%{username} ALL=NOPASSWD: /usr/lib/systemd/system/xkeysnail.service
|
||||||
|
@@ -116,6 +116,8 @@ class Indicator():
|
|||||||
with open(self.kconfig) as configfile:
|
with open(self.kconfig) as configfile:
|
||||||
autostart_line = configfile.read().split('\n')[1]
|
autostart_line = configfile.read().split('\n')[1]
|
||||||
|
|
||||||
|
autostart_bool = False
|
||||||
|
|
||||||
# Autostart
|
# Autostart
|
||||||
if "autostart = true" in autostart_line.casefold():
|
if "autostart = true" in autostart_line.casefold():
|
||||||
autostart_bool = True
|
autostart_bool = True
|
||||||
@@ -619,9 +621,9 @@ class Indicator():
|
|||||||
def runDebug(self,button,opendebug):
|
def runDebug(self,button,opendebug):
|
||||||
try:
|
try:
|
||||||
if opendebug:
|
if opendebug:
|
||||||
Popen([os.environ['HOME']+'/.config/kinto/gui/kinto-gui.py','-d'])
|
Popen(['/usr/bin/python3',os.environ['HOME']+'/.config/kinto/gui/kinto-gui.py','-d'])
|
||||||
else:
|
else:
|
||||||
Popen([os.environ['HOME']+'/.config/kinto/gui/kinto-gui.py'])
|
Popen(['/usr/bin/python3',os.environ['HOME']+'/.config/kinto/gui/kinto-gui.py'])
|
||||||
except:
|
except:
|
||||||
Popen(['notify-send','Kinto: Error opening Kinto!'])
|
Popen(['notify-send','Kinto: Error opening Kinto!'])
|
||||||
|
|
||||||
|
@@ -4,8 +4,8 @@ Description=xkeysnail
|
|||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
KillMode=process
|
KillMode=process
|
||||||
ExecStart=/usr/bin/sudo /bin/bash -c '/usr/bin/xhost +SI:localuser:root && {homedir}/.config/kinto/killdups.sh && {xkeysnail} --quiet --watch {homedir}/.config/kinto/kinto.py'
|
ExecStart={sudo}/bin/bash -c '/usr/bin/xhost +SI:localuser:root && {homedir}/.config/kinto/killdups.sh && {xkeysnail} --quiet --watch {homedir}/.config/kinto/kinto.py'
|
||||||
ExecStop=/usr/bin/sudo /bin/bash -c '/usr/bin/sudo pkill -f bin/xkeysnail && exit 0'
|
ExecStop={sudo}/bin/bash -c '{sudo}pkill -f bin/xkeysnail && exit 0'
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
RestartSec=3
|
RestartSec=3
|
||||||
Environment=DISPLAY={displayid}
|
Environment=DISPLAY={displayid}
|
||||||
|
BIN
windows/WinToMac_AltWin_swap.skl
Normal file
BIN
windows/WinToMac_AltWin_swap.skl
Normal file
Binary file not shown.
@@ -176,6 +176,7 @@ GroupAdd, remotes, ahk_exe VirtualBoxVM.exe
|
|||||||
GroupAdd, remotes, ahk_exe mstsc.exe
|
GroupAdd, remotes, ahk_exe mstsc.exe
|
||||||
GroupAdd, remotes, ahk_exe msrdc.exe
|
GroupAdd, remotes, ahk_exe msrdc.exe
|
||||||
GroupAdd, remotes, ahk_exe nxplayer.bin
|
GroupAdd, remotes, ahk_exe nxplayer.bin
|
||||||
|
GroupAdd, remotes, ahk_exe vmconnect.exe
|
||||||
|
|
||||||
; Disabled Edge for now - no ability to close all instances
|
; Disabled Edge for now - no ability to close all instances
|
||||||
; GroupAdd, browsers, Microsoft Edge ahk_class ApplicationFrameWindow
|
; GroupAdd, browsers, Microsoft Edge ahk_class ApplicationFrameWindow
|
||||||
@@ -202,6 +203,35 @@ GroupAdd, intellij, ahk_exe idea64.exe
|
|||||||
; End::Send {Media_Play_Pause} ; Pause/Play
|
; End::Send {Media_Play_Pause} ; Pause/Play
|
||||||
; PgDn::Send {Media_Next} ; Next
|
; PgDn::Send {Media_Next} ; Next
|
||||||
|
|
||||||
|
; Virtual Desktop Hack via TotalSpaces2 - macOS Remote Desktop
|
||||||
|
; Custom Bind Gestures in Windows
|
||||||
|
; Shift-F8 on Left Swipe
|
||||||
|
; Shift-F9 on Right Swipe
|
||||||
|
#IfWinActive ahk_exe nxplayer.bin
|
||||||
|
+F8::Send !+- ; macOS TotalSpaces2 - Space Left
|
||||||
|
+F6::Send !+= ; macOS TotalSpaces2 - Space Right
|
||||||
|
#If
|
||||||
|
; +F8::Send {LCtrl down}{LWin down}{left}{LCtrl up}{LWin up} ; Comment out on host machine
|
||||||
|
; +F6::Send {LCtrl down}{LWin down}{right}{LCtrl up}{LWin up} ; Comment out on host machine
|
||||||
|
|
||||||
|
#IfWinNotActive ahk_group remotes
|
||||||
|
; wordwise support
|
||||||
|
^Up::Send ^{Home}
|
||||||
|
^+Up::Send ^+{Home}
|
||||||
|
^Down::Send ^{End}
|
||||||
|
^+Down::Send ^+{End}
|
||||||
|
$^Backspace::Send +{Home}{Delete}
|
||||||
|
!Backspace::Send ^{Backspace}
|
||||||
|
!Left::Send ^{Left}
|
||||||
|
!+Left::Send ^+{Left}
|
||||||
|
!Right::Send ^{Right}
|
||||||
|
!+Right::Send ^+{Right}
|
||||||
|
$^Left::Send {Home}
|
||||||
|
$^+Left::Send +{Home}
|
||||||
|
$^Right::Send {End}
|
||||||
|
$^+Right::Send +{End}
|
||||||
|
#If
|
||||||
|
|
||||||
#IfWinNotActive ahk_group remotes
|
#IfWinNotActive ahk_group remotes
|
||||||
|
|
||||||
; New AltTab and CtrlTab fix
|
; New AltTab and CtrlTab fix
|
||||||
@@ -308,8 +338,10 @@ GroupAdd, intellij, ahk_exe idea64.exe
|
|||||||
!Esc::SendInput, {Pause}
|
!Esc::SendInput, {Pause}
|
||||||
|
|
||||||
; Go up or down a page
|
; Go up or down a page
|
||||||
$!Down::Send {PgDn};
|
#IfWinNotActive ahk_group editors
|
||||||
$!Up::Send {PgUp};
|
$!Down::Send {PgDn}
|
||||||
|
$!Up::Send {PgUp}
|
||||||
|
#If
|
||||||
|
|
||||||
; Close Apps
|
; Close Apps
|
||||||
^q::Send !{F4}
|
^q::Send !{F4}
|
||||||
@@ -366,22 +398,6 @@ GroupAdd, intellij, ahk_exe idea64.exe
|
|||||||
; !^space::Send #e ; Default
|
; !^space::Send #e ; Default
|
||||||
; #^space::Send #e ; CB/IBM
|
; #^space::Send #e ; CB/IBM
|
||||||
|
|
||||||
; wordwise support
|
|
||||||
^Up::Send ^{Home}
|
|
||||||
^+Up::Send ^+{Home}
|
|
||||||
^Down::Send ^{End}
|
|
||||||
^+Down::Send ^+{End}
|
|
||||||
$^Backspace::Send +{Home}{Delete}
|
|
||||||
!Backspace::Send ^{Backspace}
|
|
||||||
!Left::Send ^{Left}
|
|
||||||
!+Left::Send ^+{Left}
|
|
||||||
!Right::Send ^{Right}
|
|
||||||
!+Right::Send ^+{Right}
|
|
||||||
$^Left::Send {Home}
|
|
||||||
$^+Left::Send +{Home}
|
|
||||||
$^Right::Send {End}
|
|
||||||
$^+Right::Send +{End}
|
|
||||||
|
|
||||||
; #if GetKeyState("LWin", "P") || GetKeyState("RAlt", "P") ; Chromebook
|
; #if GetKeyState("LWin", "P") || GetKeyState("RAlt", "P") ; Chromebook
|
||||||
; Space::Send ^{Esc} ; Chromebook
|
; Space::Send ^{Esc} ; Chromebook
|
||||||
; 0::Send #0 ; Chromebook
|
; 0::Send #0 ; Chromebook
|
||||||
@@ -536,6 +552,13 @@ GroupAdd, intellij, ahk_exe idea64.exe
|
|||||||
|
|
||||||
; Close all browsers
|
; Close all browsers
|
||||||
#IfWinActive ahk_group browsers
|
#IfWinActive ahk_group browsers
|
||||||
|
;Tab Navigation
|
||||||
|
^+[::send ^{PgUp}
|
||||||
|
^+]::send ^{PgDn}
|
||||||
|
^!Left::send ^{PgUp}
|
||||||
|
^!Right::send ^{PgDn}
|
||||||
|
#Left::send ^{PgUp}
|
||||||
|
#Right::send ^{PgDn}
|
||||||
^q::send {Alt Down}f{Alt Up}x ; exit all windows
|
^q::send {Alt Down}f{Alt Up}x ; exit all windows
|
||||||
; Dev Tools
|
; Dev Tools
|
||||||
!^i::send {Ctrl Down}{Shift Down}i{Shift Up}{Ctrl Up}
|
!^i::send {Ctrl Down}{Shift Down}i{Shift Up}{Ctrl Up}
|
||||||
@@ -543,6 +566,7 @@ GroupAdd, intellij, ahk_exe idea64.exe
|
|||||||
; Open preferences
|
; Open preferences
|
||||||
#IfWinActive ahk_exe firefox.exe
|
#IfWinActive ahk_exe firefox.exe
|
||||||
^,::send, {Ctrl Down}t{Ctrl Up}about:preferences{Enter}
|
^,::send, {Ctrl Down}t{Ctrl Up}about:preferences{Enter}
|
||||||
|
^+n::send ^+p
|
||||||
#If
|
#If
|
||||||
#IfWinActive ahk_exe chrome.exe
|
#IfWinActive ahk_exe chrome.exe
|
||||||
^,::send {Alt Down}e{Alt Up}s{Enter}
|
^,::send {Alt Down}e{Alt Up}s{Enter}
|
||||||
@@ -833,4 +857,4 @@ Send {RWin up}
|
|||||||
Send {LWin up}
|
Send {LWin up}
|
||||||
Send {RShift up}
|
Send {RShift up}
|
||||||
Send {LShift up}
|
Send {LShift up}
|
||||||
return
|
return
|
||||||
|
@@ -305,6 +305,7 @@ fi
|
|||||||
|
|
||||||
if [[ $distro == "elementaryos" ]]; then
|
if [[ $distro == "elementaryos" ]]; then
|
||||||
gsettings set io.elementary.terminal.settings natural-copy-paste false
|
gsettings set io.elementary.terminal.settings natural-copy-paste false
|
||||||
|
sudo ./linux/system-config/unipkg.sh libvte-2.91-dev
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! [ -x "$(command -v xhost)" ] || ! [ -x "$(command -v gcc)" ]; then
|
if ! [ -x "$(command -v xhost)" ] || ! [ -x "$(command -v gcc)" ]; then
|
||||||
@@ -329,25 +330,6 @@ if [[ $distro == 'kdeneon' ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $distro == 'fedora' ]]; then
|
if [[ $distro == 'fedora' ]]; then
|
||||||
echo "Checking SELinux status..."
|
|
||||||
if [[ $(perl -ne 'print if /^SELINUX=enforcing/' /etc/selinux/config | wc -l) != 0 ]]; then
|
|
||||||
while true; do
|
|
||||||
read -rep $'\nWould you like to update your SELinux state from enforcing to permissive? (y/n)\n' yn
|
|
||||||
case $yn in
|
|
||||||
[Yy]* ) setSE='yes'; break;;
|
|
||||||
[Nn]* ) exp='no'; expsh=" " break;;
|
|
||||||
# * ) echo "Please answer yes or no.";;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if [[ $yn == "yes" ]]; then
|
|
||||||
sed -i "s/SELINUX=enforcing/SELINUX=permissive/g" /etc/selinux/config
|
|
||||||
echo "/etc/selinux/config has been updated. Please reboot your computer before continuing."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "SELinux state should be ok for Kinto to install"
|
|
||||||
fi
|
|
||||||
if [[ $(gsettings get org.gnome.desktop.wm.keybindings show-desktop | grep "\[\]" | wc -l) == 1 ]];then
|
if [[ $(gsettings get org.gnome.desktop.wm.keybindings show-desktop | grep "\[\]" | wc -l) == 1 ]];then
|
||||||
gsettings set org.gnome.desktop.wm.keybindings show-desktop "['<Super>d']"
|
gsettings set org.gnome.desktop.wm.keybindings show-desktop "['<Super>d']"
|
||||||
else
|
else
|
||||||
@@ -520,6 +502,11 @@ fi
|
|||||||
|
|
||||||
if [[ $distro == "fedora" ]]; then
|
if [[ $distro == "fedora" ]]; then
|
||||||
perl -pi -e "\s{4}(# )(K.*)(# SL - .*fedora.*)/ \$2\$3/g" ./linux/kinto.py.new >/dev/null 2>&1
|
perl -pi -e "\s{4}(# )(K.*)(# SL - .*fedora.*)/ \$2\$3/g" ./linux/kinto.py.new >/dev/null 2>&1
|
||||||
|
sed -i "s#{sudo}##g" ./linux/xkeysnail.service.new
|
||||||
|
selinuxuser=system_u
|
||||||
|
selinuxtype=systemd_unit_file_t
|
||||||
|
else
|
||||||
|
sed -i "s#{sudo}#`\\which sudo` #g" ./linux/xkeysnail.service.new
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $distro == "elementaryos" ]]; then
|
if [[ $distro == "elementaryos" ]]; then
|
||||||
@@ -568,17 +555,15 @@ if ! [[ $1 == "5" || $1 == "uninstall" || $1 == "Uninstall" ]]; then
|
|||||||
xkeypath="/lib/systemd/system/"
|
xkeypath="/lib/systemd/system/"
|
||||||
fi
|
fi
|
||||||
xhost +SI:localuser:root
|
xhost +SI:localuser:root
|
||||||
git clone --depth 10 https://github.com/rbreaves/xkeysnail.git
|
git clone -b kinto --depth 10 https://github.com/rbreaves/xkeysnail.git
|
||||||
cd xkeysnail
|
cd xkeysnail
|
||||||
git checkout kinto
|
|
||||||
giturl=$(git ls-remote --get-url)
|
giturl=$(git ls-remote --get-url)
|
||||||
if [ "$giturl" != "https://github.com/rbreaves/xkeysnail.git" ];then
|
if [ "$giturl" != "https://github.com/rbreaves/xkeysnail.git" ];then
|
||||||
echo -e "\nreplacing xkeysnail with fork...\n"
|
echo -e "\nreplacing xkeysnail with fork...\n"
|
||||||
cd ..
|
cd ..
|
||||||
rm -rf ./xkeysnail
|
rm -rf ./xkeysnail
|
||||||
git clone --depth 10 https://github.com/rbreaves/xkeysnail.git
|
git clone -b kinto --depth 10 https://github.com/rbreaves/xkeysnail.git
|
||||||
cd xkeysnail
|
cd xkeysnail
|
||||||
git checkout kinto
|
|
||||||
fi
|
fi
|
||||||
sudo pip3 install --upgrade .
|
sudo pip3 install --upgrade .
|
||||||
cd ..
|
cd ..
|
||||||
@@ -590,6 +575,10 @@ if ! [[ $1 == "5" || $1 == "uninstall" || $1 == "Uninstall" ]]; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
sed -i "s#{xkeysnail}#`which xkeysnail`#g" ./linux/limitedadmins.new
|
sed -i "s#{xkeysnail}#`which xkeysnail`#g" ./linux/limitedadmins.new
|
||||||
|
if [[ $distro == "fedora" ]]; then
|
||||||
|
echo "Changing SELinux context"
|
||||||
|
sudo chcon -v --user=$selinuxuser --type=$selinuxtype "$xkeypath"xkeysnail.service
|
||||||
|
fi
|
||||||
sudo chown root:root ./linux/limitedadmins.new
|
sudo chown root:root ./linux/limitedadmins.new
|
||||||
# Add a check here for xkeysnail path resolving
|
# Add a check here for xkeysnail path resolving
|
||||||
sudo mv ./linux/limitedadmins.new /etc/sudoers.d/limitedadmins
|
sudo mv ./linux/limitedadmins.new /etc/sudoers.d/limitedadmins
|
||||||
@@ -598,10 +587,19 @@ if ! [[ $1 == "5" || $1 == "uninstall" || $1 == "Uninstall" ]]; then
|
|||||||
sed -i "s#{xkeysnail}#`which xkeysnail`#g" ./linux/xkeysnail.service.new
|
sed -i "s#{xkeysnail}#`which xkeysnail`#g" ./linux/xkeysnail.service.new
|
||||||
sudo mv ./linux/xkeysnail.service.new "$xkeypath"xkeysnail.service && echo "Service file added to "$xkeypath"xkeysnail.service"
|
sudo mv ./linux/xkeysnail.service.new "$xkeypath"xkeysnail.service && echo "Service file added to "$xkeypath"xkeysnail.service"
|
||||||
|
|
||||||
sudo chown -R root:root "$xkeypath"xkeysnail.service && echo "Ownership set for root..." || echo "Failed to set ownership..."
|
if [[ $distro == "fedora" ]]; then
|
||||||
sudo chmod 644 "$xkeypath"xkeysnail.service && echo "Permissions set to 644..." || echo "Failed to set permissions..."
|
sudo cp "$xkeypath"xkeysnail.service /etc/systemd/system/xkeysnail.service && echo "Copied service file to system..." || echo "Failed to create copy..."
|
||||||
sudo ln -s "$xkeypath"xkeysnail.service /etc/systemd/system/xkeysnail.service && echo "Created soft symlink..." || echo "Failed to create soft symlink..."
|
sudo cp "$xkeypath"xkeysnail.service /etc/systemd/system/graphical.target.wants/xkeysnail.service && echo "Copied service file to system for graphical target..." || echo "Failed to create copy for graphical target..."
|
||||||
sudo ln -s "$xkeypath"xkeysnail.service /etc/systemd/system/graphical.target.wants/xkeysnail.service && echo "Created soft symlink for graphical target..." || echo "Failed to create soft symlink for graphical target..."
|
sudo chown -R root:root /etc/systemd/system/xkeysnail.service && echo "Ownership set for root..." || echo "Failed to set ownership..."
|
||||||
|
sudo chown -R root:root /etc/systemd/system/graphical.target.wants/xkeysnail.service && echo "Ownership set for root..." || echo "Failed to set ownership..."
|
||||||
|
sudo chmod 644 /etc/systemd/system/xkeysnail.service && echo "Permissions set to 644..." || echo "Failed to set permissions..."
|
||||||
|
sudo chmod 644 /etc/systemd/system/graphical.target.wants/xkeysnail.service && echo "Permissions set to 644..." || echo "Failed to set permissions..."
|
||||||
|
else
|
||||||
|
sudo chown -R root:root "$xkeypath"xkeysnail.service && echo "Ownership set for root..." || echo "Failed to set ownership..."
|
||||||
|
sudo chmod 644 "$xkeypath"xkeysnail.service && echo "Permissions set to 644..." || echo "Failed to set permissions..."
|
||||||
|
sudo ln -s "$xkeypath"xkeysnail.service /etc/systemd/system/xkeysnail.service && echo "Created soft symlink..." || echo "Failed to create soft symlink..."
|
||||||
|
sudo ln -s "$xkeypath"xkeysnail.service /etc/systemd/system/graphical.target.wants/xkeysnail.service && echo "Created soft symlink for graphical target..." || echo "Failed to create soft symlink for graphical target..."
|
||||||
|
fi
|
||||||
sudo systemctl daemon-reload
|
sudo systemctl daemon-reload
|
||||||
sudo systemctl disable xkeysnail
|
sudo systemctl disable xkeysnail
|
||||||
sudo systemctl stop xkeysnail
|
sudo systemctl stop xkeysnail
|
||||||
|
Reference in New Issue
Block a user