Git Product home page Git Product logo

fusuma-plugin-sendkey's Introduction

fusuma-plugin-sendkey's People

Contributors

hritwiksinghal avatar iberianpig avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

socioprophet

fusuma-plugin-sendkey's Issues

Missing instruction to install: plugin needs "build-essential" package

This is just an advice on what writing in the README.md: I tried installing the plugin and got the error make failed, exit code 127. A quick search on Stackoverflow tells you that "build-essential" package needs to be installed in order to build the gem native estension.
It would be useful to write it within "Install the dependencies".

Super is not supported

Unfortunately, I find that super is not supported. So the combo with super + s, super + d, and others are unavailable.
Can you please add it?

Or maybe I can do something instead of workspace and window managing here?

Keyboard name not working?

 : Fusuma: 1.11.1
  INFO -- : libinput: 1.15.5
  INFO -- : OS: Linux 5.4.0-52-generic #57-Ubuntu SMP Thu Oct 15 10:57:00 UTC 2020
  INFO -- : Distribution: Ubuntu 20.04.1 LTS \n \l
  INFO -- : Desktop session:
  INFO -- : -----------------------------------------

On Ubuntu I am trying to get the typical Mac expose swipping up with 3 fingers, I can emulate that with xdotool and xte but fusuma does nothing despite recognizing the command, I can see the gesture is recognized just fine on the log and the commands work on the terminal but nothing happens, some wire is disconnected after running the "command" part so trying with fusuma-send-key but I got

I am getting

sendkey: Keyboard: /keyboard|Keyboard|KEYBOARD/ is not found

As per
$ sudo libinput list-devices

Device:           AT Translated Set 2 keyboard
Kernel:           /dev/input/event3
Group:            9
Seat:             seat0, default
Capabilities:     keyboard

I guess AT Translated Set 2 keyboard is my keyboard name so I put it on config.yml

plugin:
  executors:
    sendkey_executor:
      device_name: 'AT Translated Set 2 keyboard'
      #device_name: '/sys/class/input/input3/name'

swipe:
  3:
    up:
      command: ' xte "keydown Super_L" "key space"'

It does not make any difference, what am I missing? I tried adding the device path but it doesn't work, sorry but I find this bit missing on the docs. Thanks in advance

I don't add the fusuma-sendkey equivalent cause It won't work

My sendkey dosenot work!

My sendkey dosenot work!

ubuntu 22.04 x11.

console has log, bug it dosenot work:
ๅ›พ็‰‡

My config :

pinch:
  2:  
    in: 
      #command: "xdotool keydown ctrl click 4 keyup ctrl" 
       #command: "ydotool key 29:1 12:1 12:0 29:0"
      sendkey: "LEFTCTRL+MINUS"
      threshold: 0.5 
      interval: 0.5 
    out:
      command: "xdotool keydown ctrl click 5 keyup ctrl" 
        #command: "ydotool key 29:1 13:1 13:0 29:0"
      sendkey: "LEFTCTRL+EQUAL"
      threshold: 0.5 
      interval: 0.5

sendkey doesn't work

there is a strange log before the log of my first gesture

I, [2023-09-25T20:30:55.156555 #6967]  INFO -- : reload config: /home/harry/.config/fusuma/config.yml
I, [2023-09-25T20:30:55.156653 #6967]  INFO -- : ---------------------------------------------
I, [2023-09-25T20:30:55.156977 #6967]  INFO -- : Fusuma: 3.1.0
I, [2023-09-25T20:30:55.158419 #6967]  INFO -- : libinput: 1.20.0
I, [2023-09-25T20:30:55.158488 #6967]  INFO -- : ruby 3.0.2p107
I, [2023-09-25T20:30:55.159362 #6967]  INFO -- : OS: Linux 6.2.0-33-generic #33~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Sep  7 10:33:52 UTC 2
I, [2023-09-25T20:30:55.160828 #6967]  INFO -- : Distribution: Ubuntu 22.04.3 LTS \n \l
I, [2023-09-25T20:30:55.161909 #6967]  INFO -- : Desktop session: ubuntu wayland
I, [2023-09-25T20:30:55.161958 #6967]  INFO -- : ---------------------------------------------
I, [2023-09-25T20:30:55.161992 #6967]  INFO -- : Enabled Plugins: 
I, [2023-09-25T20:30:55.162120 #6967]  INFO -- :   Fusuma::Plugin::Buffers::GestureBuffer
I, [2023-09-25T20:30:55.162148 #6967]  INFO -- :   Fusuma::Plugin::Buffers::TimerBuffer
I, [2023-09-25T20:30:55.162171 #6967]  INFO -- :   Fusuma::Plugin::Detectors::HoldDetector
I, [2023-09-25T20:30:55.162198 #6967]  INFO -- :   Fusuma::Plugin::Detectors::PinchDetector
I, [2023-09-25T20:30:55.162219 #6967]  INFO -- :   Fusuma::Plugin::Detectors::RotateDetector
I, [2023-09-25T20:30:55.162252 #6967]  INFO -- :   Fusuma::Plugin::Detectors::SwipeDetector
I, [2023-09-25T20:30:55.162273 #6967]  INFO -- :   Fusuma::Plugin::Events::Records::ContextRecord
I, [2023-09-25T20:30:55.162295 #6967]  INFO -- :   Fusuma::Plugin::Events::Records::GestureRecord
I, [2023-09-25T20:30:55.162325 #6967]  INFO -- :   Fusuma::Plugin::Events::Records::IndexRecord
I, [2023-09-25T20:30:55.162345 #6967]  INFO -- :   Fusuma::Plugin::Events::Records::TextRecord
I, [2023-09-25T20:30:55.162368 #6967]  INFO -- :   Fusuma::Plugin::Executors::CommandExecutor
I, [2023-09-25T20:30:55.162393 #6967]  INFO -- :   Fusuma::Plugin::Executors::SendkeyExecutor
I, [2023-09-25T20:30:55.162416 #6967]  INFO -- :   Fusuma::Plugin::Filters::LibinputDeviceFilter
I, [2023-09-25T20:30:55.162431 #6967]  INFO -- :   Fusuma::Plugin::Inputs::LibinputCommandInput
I, [2023-09-25T20:30:55.162456 #6967]  INFO -- :   Fusuma::Plugin::Inputs::TimerInput
I, [2023-09-25T20:30:55.162477 #6967]  INFO -- :   Fusuma::Plugin::Parsers::LibinputGestureParser
I, [2023-09-25T20:30:55.162500 #6967]  INFO -- : ---------------------------------------------
I, [2023-09-25T20:31:41.270846 #6967]  INFO -- : sendkey: Keyboard: Power Button
I, [2023-09-25T20:31:41.273312 #6967]  INFO -- : {:sendkey=>"LEFTMETA"}
I, [2023-09-25T20:31:42.229731 #6967]  INFO -- : {:sendkey=>"LEFTMETA"}

neither gestures nor typing cmds in shell don't work

Allow sending a key multiple times

For example, my VolumeUP and VolumeDown keys have a very small step, so it would be great if I could just write something like sendkey: VOLUMEUP * 5 to send 5 keystrokes at back to back.

Can not use the plugin.

Hello, can u help me, please? I installed your plugin for Fusuma, but I can not run it.
Log:

$ sudo gem install fusuma-plugin-sendkey
Successfully installed fusuma-plugin-sendkey-0.2.1
Parsing documentation for fusuma-plugin-sendkey-0.2.1
Done installing documentation for fusuma-plugin-sendkey after 0 seconds
1 gem installed

$ fusuma-sendkey -l
Traceback (most recent call last):
	14: from /usr/local/bin/fusuma-sendkey:23:in `<main>'
	13: from /usr/local/bin/fusuma-sendkey:23:in `load'
	12: from /var/lib/gems/2.5.0/gems/fusuma-plugin-sendkey-0.2.1/exe/fusuma-sendkey:5:in `<top (required)>'
	11: from /var/lib/gems/2.5.0/gems/fusuma-plugin-sendkey-0.2.1/exe/fusuma-sendkey:5:in `require_relative'
	10: from /var/lib/gems/2.5.0/gems/fusuma-plugin-sendkey-0.2.1/lib/fusuma/plugin/sendkey/keyboard.rb:3:in `<top (required)>'
	 9: from /var/lib/gems/2.5.0/gems/fusuma-plugin-sendkey-0.2.1/lib/fusuma/plugin/sendkey/keyboard.rb:3:in `require_relative'
	 8: from /var/lib/gems/2.5.0/gems/fusuma-plugin-sendkey-0.2.1/lib/fusuma/plugin/sendkey/device.rb:3:in `<top (required)>'
	 7: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
	 6: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
	 5: from /var/lib/gems/2.5.0/gems/evdev-1.0.0/lib/evdev.rb:2:in `<top (required)>'
	 4: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
	 3: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
	 2: from /var/lib/gems/2.5.0/gems/libevdev-1.0.0/lib/libevdev.rb:1:in `<top (required)>'
	 1: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
/usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require': cannot load such file -- bundler/setup (LoadError)

What am I doing wrong?

PLUS key unsupported

The PLUS key is unsupported, making it hard to configure pinch to zoom (etc).

fusuma-sendkey LEFTCTRL+PLUS Did you mean? KPPLUS / KPPLUSMINUS sendkey: PLUS is unsupported.

KPPLUS and KPPLUSMINUS do not zoom.

My current workaround is to use xdotool for pinch to zoom, however I'd like to be able to replace all command: with sendkey: so that my config is consistent (and I can hopefully remove xdotool from my system).

What is 'plus' called?

Trying to add a zoom in and out gesture by using left ctrl & + and left ctrl & - but am unable to find the normal '+' key, however I found '-' easily. There is KPPLUS but that's it.
Also I know that you can also use left ctrl & scrollup and left ctrl & scrolldown but this is mostly application based, whereas the other gesture works pretty much every where I want it to work :)
image

Key combinations sometimes do not work in Ubuntu 21.04

Hi. I have successfully installed fusuma along with fusuma-plugin-sendkey on my Ubuntu 21.04 by following the instruction in the documentation. They work pretty well on some applications, however, when I tried with the Terminal, the key combinations seem not to work. I have tried executing this command in my Terminal

$ fusuma-sendkey 'LEFTCTRL+T'

and was expecting that a new tab was opened, but I only received the letter t printed out:

$ t

Can you please tell me what should I do to work around this? Thanks a lot.

PS: I have configured the Terminal's shortcuts like this so I can open a new tab with Ctrl+T, not Ctrl+Shift+T as default.
image

fusuma-plugin-sendkey causes error

here is my error when running fusuma. I followed all steps in the readme only. This is on manjaro 21.0 (see last output)

 ๏Œ’ ๎‚ฐ ๏€• ~ ๎‚ฐ fusuma                                                                                                                                        ๎‚ฒ โœ” ๎‚ฒ 3s ๏‰’ 
I, [2021-03-21T04:23:54.665735 #11757]  INFO -- : reload config: /home/hritwik/.config/fusuma/config.yml
Traceback (most recent call last):
	33: from /usr/bin/fusuma:23:in `<main>'
	32: from /usr/bin/fusuma:23:in `load'
	31: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/exe/fusuma:41:in `<top (required)>'
	30: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma.rb:17:in `run'
	29: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma.rb:34:in `read_options'
	28: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:68:in `require_base_plugins'
	27: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:68:in `require_relative'
	26: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/executor.rb:5:in `<top (required)>'
	25: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/executor.rb:6:in `<module:Fusuma>'
	24: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/executor.rb:8:in `<module:Plugin>'
	23: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/executor.rb:13:in `<module:Executors>'
	22: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/base.rb:13:in `inherited'
	21: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:56:in `add'
	20: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:16:in `require_siblings_from_plugin_dir'
	19: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:16:in `each'
	18: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:17:in `block in require_siblings_from_plugin_dir'
	17: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
	16: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
	15: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/command_executor.rb:5:in `<top (required)>'
	14: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/command_executor.rb:6:in `<module:Fusuma>'
	13: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/command_executor.rb:7:in `<module:Plugin>'
	12: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/command_executor.rb:9:in `<module:Executors>'
	11: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/base.rb:13:in `inherited'
	10: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:57:in `add'
	 9: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:23:in `require_siblings_from_gems'
	 8: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:23:in `each'
	 7: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:25:in `block in require_siblings_from_gems'
	 6: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
	 5: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
	 4: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-plugin-sendkey-0.5.1/lib/fusuma/plugin/executors/sendkey_executor.rb:3:in `<top (required)>'
	 3: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-plugin-sendkey-0.5.1/lib/fusuma/plugin/executors/sendkey_executor.rb:3:in `require_relative'
	 2: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-plugin-sendkey-0.5.1/lib/fusuma/plugin/sendkey/keyboard.rb:3:in `<top (required)>'
	 1: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
/usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require': cannot load such file -- revdev (LoadError)
 ๏Œ’ ๎‚ฐ ๏€• ~ ๎‚ฐ which fusuma                                                                                                                                         ๎‚ฒ โœ” 

/usr/bin/fusuma
 ๏Œ’ ๎‚ฐ ๏€• ~ ๎‚ฐ sudo which fusuma                                                                                                                                    ๎‚ฒ โœ” 

/usr/bin/fusuma

 ๏Œ’ ๎‚ฐ ๏€• ~ ๎‚ฐ fusuma --version                                                                                                                                     ๎‚ฒ โœ” 
I, [2021-03-21T04:37:05.072509 #25204]  INFO -- : reload config: /home/hritwik/.config/fusuma/config.yml
Traceback (most recent call last):
	33: from /usr/bin/fusuma:23:in `<main>'
	32: from /usr/bin/fusuma:23:in `load'
	31: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/exe/fusuma:41:in `<top (required)>'
	30: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma.rb:17:in `run'
	29: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma.rb:34:in `read_options'
	28: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:68:in `require_base_plugins'
	27: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:68:in `require_relative'
	26: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/executor.rb:5:in `<top (required)>'
	25: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/executor.rb:6:in `<module:Fusuma>'
	24: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/executor.rb:8:in `<module:Plugin>'
	23: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/executor.rb:13:in `<module:Executors>'
	22: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/base.rb:13:in `inherited'
	21: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:56:in `add'
	20: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:16:in `require_siblings_from_plugin_dir'
	19: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:16:in `each'
	18: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:17:in `block in require_siblings_from_plugin_dir'
	17: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
	16: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
	15: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/command_executor.rb:5:in `<top (required)>'
	14: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/command_executor.rb:6:in `<module:Fusuma>'
	13: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/command_executor.rb:7:in `<module:Plugin>'
	12: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/executors/command_executor.rb:9:in `<module:Executors>'
	11: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/base.rb:13:in `inherited'
	10: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:57:in `add'
	 9: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:23:in `require_siblings_from_gems'
	 8: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:23:in `each'
	 7: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-1.11.1/lib/fusuma/plugin/manager.rb:25:in `block in require_siblings_from_gems'
	 6: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
	 5: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
	 4: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-plugin-sendkey-0.5.1/lib/fusuma/plugin/executors/sendkey_executor.rb:3:in `<top (required)>'
	 3: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-plugin-sendkey-0.5.1/lib/fusuma/plugin/executors/sendkey_executor.rb:3:in `require_relative'
	 2: from /usr/lib/ruby/gems/2.7.0/gems/fusuma-plugin-sendkey-0.5.1/lib/fusuma/plugin/sendkey/keyboard.rb:3:in `<top (required)>'
	 1: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require'
/usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:85:in `require': cannot load such file -- revdev (LoadError)



after removing fusuma-plugin-keypress, it works.

sudo gem uninstall fusuma-plugin-keypress

Now it shows

 ๏Œ’ ๎‚ฐ ๏€• ~ ๎‚ฐ fusuma                                                                                                                                               ๎‚ฒ โœ” 
I, [2021-03-21T04:44:45.160428 #30230]  INFO -- : reload config: /home/hritwik/.config/fusuma/config.yml
I, [2021-03-21T04:44:45.199568 #30230]  INFO -- : ---------------------------------------------
I, [2021-03-21T04:44:45.199606 #30230]  INFO -- : Fusuma: 1.11.1
I, [2021-03-21T04:44:45.201205 #30230]  INFO -- : libinput: 1.17.0
I, [2021-03-21T04:44:45.201740 #30230]  INFO -- : OS: Linux 5.11.6-1-MANJARO #1 SMP PREEMPT Thu Mar 11 19:05:51 UTC 2021
I, [2021-03-21T04:44:45.202344 #30230]  INFO -- : Distribution: Manjaro Linux \r  (\n) (\l)
I, [2021-03-21T04:44:45.204922 #30230]  INFO -- : Desktop session: gnome wayland
I, [2021-03-21T04:44:45.204954 #30230]  INFO -- : ---------------------------------------------
I, [2021-03-21T04:44:45.204966 #30230]  INFO -- : Enabled Plugins: 
I, [2021-03-21T04:44:45.205034 #30230]  INFO -- :   Fusuma::Plugin::Buffers::GestureBuffer
I, [2021-03-21T04:44:45.205052 #30230]  INFO -- :   Fusuma::Plugin::Buffers::KeypressBuffer
I, [2021-03-21T04:44:45.205062 #30230]  INFO -- :   Fusuma::Plugin::Buffers::TapBuffer
I, [2021-03-21T04:44:45.205071 #30230]  INFO -- :   Fusuma::Plugin::Detectors::KeypressDetector
I, [2021-03-21T04:44:45.205079 #30230]  INFO -- :   Fusuma::Plugin::Detectors::PinchDetector
I, [2021-03-21T04:44:45.205087 #30230]  INFO -- :   Fusuma::Plugin::Detectors::RotateDetector
I, [2021-03-21T04:44:45.205101 #30230]  INFO -- :   Fusuma::Plugin::Detectors::SwipeDetector
I, [2021-03-21T04:44:45.205116 #30230]  INFO -- :   Fusuma::Plugin::Detectors::TapDetector
I, [2021-03-21T04:44:45.205129 #30230]  INFO -- :   Fusuma::Plugin::Events::Records::GestureRecord
I, [2021-03-21T04:44:45.205141 #30230]  INFO -- :   Fusuma::Plugin::Events::Records::IndexRecord
I, [2021-03-21T04:44:45.205150 #30230]  INFO -- :   Fusuma::Plugin::Events::Records::KeypressRecord
I, [2021-03-21T04:44:45.205165 #30230]  INFO -- :   Fusuma::Plugin::Events::Records::TextRecord
I, [2021-03-21T04:44:45.205181 #30230]  INFO -- :   Fusuma::Plugin::Executors::CommandExecutor
I, [2021-03-21T04:44:45.205193 #30230]  INFO -- :   Fusuma::Plugin::Executors::WmctrlExecutor
I, [2021-03-21T04:44:45.205201 #30230]  INFO -- :   Fusuma::Plugin::Filters::KeypressFilter
I, [2021-03-21T04:44:45.205209 #30230]  INFO -- :   Fusuma::Plugin::Filters::LibinputDeviceFilter
I, [2021-03-21T04:44:45.205218 #30230]  INFO -- :   Fusuma::Plugin::Filters::LibinputTimeoutFilter
I, [2021-03-21T04:44:45.205240 #30230]  INFO -- :   Fusuma::Plugin::Inputs::LibinputCommandInput
I, [2021-03-21T04:44:45.205251 #30230]  INFO -- :   Fusuma::Plugin::Parsers::KeypressParser
I, [2021-03-21T04:44:45.205259 #30230]  INFO -- :   Fusuma::Plugin::Parsers::LibinputGestureParser
I, [2021-03-21T04:44:45.205266 #30230]  INFO -- :   Fusuma::Plugin::Parsers::TapParser
I, [2021-03-21T04:44:45.205278 #30230]  INFO -- : ---------------------------------------------

1 second delay before keys are fired

Trying out pinch-to-zoom gestures with Fusuma on Fedora 32 (Gnome 3.36.5, Wayland)

Logs appear to show up pretty fast right after I do the gesture, but the actual input happens after almost a second of delay.

I, [2020-12-27T16:38:29.123489 #423575]  INFO -- : {:command=>"fusuma-sendkey LEFTCTRL+KPMINUS"}
I, [2020-12-27T16:38:29.224947 #423575]  INFO -- : {:command=>"fusuma-sendkey LEFTCTRL+KPMINUS"}
I, [2020-12-27T16:38:29.325804 #423575]  INFO -- : {:command=>"fusuma-sendkey LEFTCTRL+KPMINUS"}
I, [2020-12-27T16:38:34.230984 #423575]  INFO -- : {:command=>"fusuma-sendkey LEFTCTRL+KPPLUS"}
I, [2020-12-27T16:38:34.332306 #423575]  INFO -- : {:command=>"fusuma-sendkey LEFTCTRL+KPPLUS"}

~/.config/fusuma/config.yml :

  in:
    command: "fusuma-sendkey LEFTCTRL+KPPLUS" # Zoom in
    threshold: 0.1
  out:
    command: "fusuma-sendkey LEFTCTRL+KPMINUS" # Zoom out
    threshold: 0.1

pinch to zoom

Hi, I have some problems making zoom in/out using the sendkey plugin, using LEFTCTRL+KPPLUS and LEFTCTRL+KPMINUS is working but if I insert the command in the pinch section in the config.yml is not working. I'm using KDE Plasma. Could you help me understand ho to make it work? I not instakked xdotools, I must install it?

Thanks in advance

sendkey combine with keypress

swipe:
  3: 
    left: 
      command: 'xdotool key ctrl+Page_Up'  
      keypress:
        LEFTSHIFT:
          command: 'xdotool key alt+right' # forth          
    right: 
      command: 'xdotool key ctrl+Page_Down'
      keypress:
        LEFTSHIFT:
          command: 'xdotool key alt+left' # back       

At first, I use sendkey: "LEFTALT+LEFT" at the line now is "command: 'xdotool key alt+left' # back " ,
sendkey: "LEFTALT+RIGHT" at the line now is "command: 'xdotool key alt+right' # forth " . However, both of them can't work on Firefox to get page back or forth. Is there any solution to that ? my system is Ubuntu 20.04 LTS, in an macbook air 2015. Thanks!

sendkey: Keyboard /keyboard/ is not found

Hi, I managed to get fusuma working with xdotools, but didnt like the delay between gesture and output; just trying out fusuma-plugin-sendkey. However, I am getting this error message when trying to list keymaps:

fusuma-sendkey -l
sendkey: Keyboard /keyboard/ is not found

I'm on ubuntu 20.04 LTS. Do i need to install some additional package?

SUPER key

I'm unable to find the the SUPER key in the list of keys. I cannot find the underscore key as well, perhaps it has a different name?

You can see the output for the fusuma-sendkey -l here: https://pastebin.com/9E4L9Qjf

Implement --clearmodifiers

Describe the bug

Currently, the following trigger does not work with fusuma-plugin-keypress.

hold:
  3:
    keypress:
      LEFTALT:
        sendkey: "LEFTALT+F7"  # OK
      LEFTMETA:
        sendkey: "LEFTALT+F7" # NG

Expected behavior

fusuma-plugin-sendkey should have an option like --clearmodifier of xdotool.

it should work following ~/.config/fusuma/config.yml

hold:
  3:
    keypress:
      LEFTMETA:
        sendkey: "--clearmodifier LEFTALT+F7"

CLI

$ fusuma-sendkey --clearmodifier LEFTALT+F7

Fusuma works, Fusuma-Plugin-Sendkey works, But nothing happens

I've installed Fusuma and XDOTools and managed to get the multi-touch system working just fine. So I thought I'd try your send key plugin instead of the XDOTools. This raised lead to the Keyboard update from last night.
Now your SendKey plugin works for me, however nothing actually happens in Ubuntu. I must also comment that the keystrokes do actually perform the indicated actions, it's just nothing happens when using the trackpad.

Here is a grab of the terminal output:

titaniumjones@Foxy:~$ fusuma
I, [2020-07-14T09:14:39.052636 #14763]  INFO -- : ---------------------------------------------
I, [2020-07-14T09:14:39.052683 #14763]  INFO -- : Fusuma: 1.10.1
I, [2020-07-14T09:14:39.055202 #14763]  INFO -- : libinput: 1.15.5
I, [2020-07-14T09:14:39.056358 #14763]  INFO -- : OS: Linux 5.4.0-40-generic #44-Ubuntu SMP Tue Jun 23 00:01:04 UTC 2020
I, [2020-07-14T09:14:39.057399 #14763]  INFO -- : Distribution: Ubuntu 20.04 LTS \n \l
I, [2020-07-14T09:14:39.058366 #14763]  INFO -- : Desktop session: ubuntu x11
I, [2020-07-14T09:14:39.058395 #14763]  INFO -- : ---------------------------------------------
I, [2020-07-14T09:14:39.058687 #14763]  INFO -- : Enabled Plugins: 
I, [2020-07-14T09:14:39.058756 #14763]  INFO -- :   Fusuma::Plugin::Buffers::GestureBuffer
I, [2020-07-14T09:14:39.058781 #14763]  INFO -- :   Fusuma::Plugin::Detectors::PinchDetector
I, [2020-07-14T09:14:39.058795 #14763]  INFO -- :   Fusuma::Plugin::Detectors::RotateDetector
I, [2020-07-14T09:14:39.058818 #14763]  INFO -- :   Fusuma::Plugin::Detectors::SwipeDetector
I, [2020-07-14T09:14:39.058852 #14763]  INFO -- :   Fusuma::Plugin::Events::Records::GestureRecord
I, [2020-07-14T09:14:39.058870 #14763]  INFO -- :   Fusuma::Plugin::Events::Records::IndexRecord
I, [2020-07-14T09:14:39.058891 #14763]  INFO -- :   Fusuma::Plugin::Events::Records::TextRecord
I, [2020-07-14T09:14:39.058908 #14763]  INFO -- :   Fusuma::Plugin::Executors::CommandExecutor
I, [2020-07-14T09:14:39.058929 #14763]  INFO -- :   Fusuma::Plugin::Executors::SendkeyExecutor
I, [2020-07-14T09:14:39.058946 #14763]  INFO -- :   Fusuma::Plugin::Filters::LibinputDeviceFilter
I, [2020-07-14T09:14:39.058966 #14763]  INFO -- :   Fusuma::Plugin::Filters::LibinputTimeoutFilter
I, [2020-07-14T09:14:39.058981 #14763]  INFO -- :   Fusuma::Plugin::Inputs::LibinputCommandInput
I, [2020-07-14T09:14:39.058998 #14763]  INFO -- :   Fusuma::Plugin::Parsers::LibinputGestureParser
I, [2020-07-14T09:14:39.059022 #14763]  INFO -- : ---------------------------------------------
I, [2020-07-14T09:14:39.059615 #14763]  INFO -- : reload config : /home/titaniumjones/.config/fusuma/config.yml
I, [2020-07-14T09:14:40.662291 #14763]  INFO -- : {:sendkey=>"LEFTMETA"}
I, [2020-07-14T09:14:41.727131 #14763]  INFO -- : {:sendkey=>"LEFTALT+LEFT"}
I, [2020-07-14T09:14:44.264867 #14763]  INFO -- : {:sendkey=>"LEFTMETA"}
I, [2020-07-14T09:14:47.127935 #14763]  INFO -- : {:sendkey=>"LEFTMETA"}
I, [2020-07-14T09:14:50.048448 #14763]  INFO -- : {:sendkey=>"LEFTALT+RIGHT"}
I, [2020-07-14T09:14:56.729506 #14763]  INFO -- : {:sendkey=>"LEFTCTRL+LEFTALT+UP"}
I, [2020-07-14T09:14:57.946522 #14763]  INFO -- : {:sendkey=>"LEFTCTRL+LEFTALT+DOWN"}
I, [2020-07-14T09:14:58.889035 #14763]  INFO -- : {:sendkey=>"LEFTCTRL+LEFTALT+DOWN"}
I, [2020-07-14T09:14:59.903501 #14763]  INFO -- : {:sendkey=>"LEFTCTRL+LEFTALT+UP"}

Here is a grab of the config file:

swipe:
  3:
    left:
      sendkey: "LEFTALT+RIGHT" # History forward 
    right:
      sendkey: "LEFTALT+LEFT" # History back
    up:
      sendkey: "LEFTMETA" # Activity
    down:
      sendkey: "LEFTMETA" # Activity
  4:
    left:
      sendkey: "LEFTCTRL+LEFTALT+DOWN" # Switch to next workspace
    right:
      sendkey: "LEFTCTRL+LEFTALT+UP" # Switch to previous workspace
    up:
      sendkey: "LEFTCTRL+LEFTALT+UP" # Switch to next workspace
    down:
      sendkey: "LEFTCTRL+LEFTALT+DOWN" # Switch to previous workspace

threshold:
  swipe: 1
  pinch: 1

interval:
  swipe: 1
  pinch: 1

send mouse click button

I'm trying to swich from xdotool to fusuma-plugin-sendkey but I can't find a fusuma-sendkey command to work like xdotool click 4. Could this plugin send mouse click button event?

sendkey: Keyboard: /keyboard|Keyboard|KEYBOARD/ is not found

I've been using fusuma for a few months now with no issues. But about a week ago, I had a crash related to baloo_file_extractor and ever since then, fusuma has been hit or miss. I normally have it start on login with an autostart script. But sometimes it just doesn't work. Running fusuma manually at the command line returns:

I, [2021-02-10T20:25:29.245877 #3605]  INFO -- : reload config: /home/mike/.config/fusuma/config.yml
I, [2021-02-10T20:25:29.280140 #3605]  INFO -- : ---------------------------------------------
I, [2021-02-10T20:25:29.280165 #3605]  INFO -- : Fusuma: 1.11.1
I, [2021-02-10T20:25:29.280557 #3605]  INFO -- : libinput: 1.16.4
I, [2021-02-10T20:25:29.280892 #3605]  INFO -- : OS: Linux 5.10.13-2-MANJARO #1 SMP PREEMPT Sat Feb 6 10:28:21 UTC 2021
I, [2021-02-10T20:25:29.281208 #3605]  INFO -- : Distribution: Manjaro Linux \r  (\n) (\l)
I, [2021-02-10T20:25:29.282854 #3605]  INFO -- : Desktop session: /usr/share/xsessions/plasma x11
I, [2021-02-10T20:25:29.282866 #3605]  INFO -- : ---------------------------------------------
I, [2021-02-10T20:25:29.282873 #3605]  INFO -- : Enabled Plugins: 
I, [2021-02-10T20:25:29.282926 #3605]  INFO -- :   Fusuma::Plugin::Buffers::GestureBuffer
I, [2021-02-10T20:25:29.282948 #3605]  INFO -- :   Fusuma::Plugin::Buffers::KeypressBuffer
I, [2021-02-10T20:25:29.282953 #3605]  INFO -- :   Fusuma::Plugin::Detectors::KeypressDetector
I, [2021-02-10T20:25:29.282957 #3605]  INFO -- :   Fusuma::Plugin::Detectors::PinchDetector
I, [2021-02-10T20:25:29.282961 #3605]  INFO -- :   Fusuma::Plugin::Detectors::RotateDetector
I, [2021-02-10T20:25:29.282965 #3605]  INFO -- :   Fusuma::Plugin::Detectors::SwipeDetector
I, [2021-02-10T20:25:29.282969 #3605]  INFO -- :   Fusuma::Plugin::Events::Records::GestureRecord
I, [2021-02-10T20:25:29.282976 #3605]  INFO -- :   Fusuma::Plugin::Events::Records::IndexRecord
I, [2021-02-10T20:25:29.283002 #3605]  INFO -- :   Fusuma::Plugin::Events::Records::KeypressRecord
I, [2021-02-10T20:25:29.283007 #3605]  INFO -- :   Fusuma::Plugin::Events::Records::TextRecord
I, [2021-02-10T20:25:29.283029 #3605]  INFO -- :   Fusuma::Plugin::Executors::CommandExecutor
I, [2021-02-10T20:25:29.283057 #3605]  INFO -- :   Fusuma::Plugin::Executors::SendkeyExecutor
I, [2021-02-10T20:25:29.283062 #3605]  INFO -- :   Fusuma::Plugin::Filters::KeypressFilter
I, [2021-02-10T20:25:29.283068 #3605]  INFO -- :   Fusuma::Plugin::Filters::LibinputDeviceFilter
I, [2021-02-10T20:25:29.283072 #3605]  INFO -- :   Fusuma::Plugin::Filters::LibinputTimeoutFilter
I, [2021-02-10T20:25:29.283092 #3605]  INFO -- :   Fusuma::Plugin::Inputs::LibinputCommandInput
I, [2021-02-10T20:25:29.283096 #3605]  INFO -- :   Fusuma::Plugin::Parsers::KeypressParser
I, [2021-02-10T20:25:29.283101 #3605]  INFO -- :   Fusuma::Plugin::Parsers::LibinputGestureParser
I, [2021-02-10T20:25:29.283106 #3605]  INFO -- : ---------------------------------------------

After doing a three finger swipe I get:

sendkey: Keyboard: /keyboard|Keyboard|KEYBOARD/ is not found

and the program terminates.

Other times, however, fusuma seems to run normally and I can't quite figure out what the cause is. In fact, I just tried it again right now and it works. But other times, I get nothing.

One thing I noticed is that libinput seems to think I have a bluetooth keyboard connected (M720 Triathalon Keyboard) but I only have a bluetooth mouse connected.

$ libinput list-devices

Device:           Power Button
Kernel:           /dev/input/event2
Group:            1
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Video Bus
Kernel:           /dev/input/event4
Group:            2
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Video Bus
Kernel:           /dev/input/event5
Group:            2
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Lid Switch
Kernel:           /dev/input/event0
Group:            3
Seat:             seat0, default
Capabilities:     switch
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Power Button
Kernel:           /dev/input/event1
Group:            4
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Integrated Camera: Integrated C
Kernel:           /dev/input/event16
Group:            5
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Integrated Camera: Integrated I
Kernel:           /dev/input/event18
Group:            5
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Razer Razer Blade
Kernel:           /dev/input/event15
Group:            6
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Razer Razer Blade
Kernel:           /dev/input/event17
Group:            6
Seat:             seat0, default
Capabilities:     keyboard pointer 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    disabled
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Razer Razer Blade
Kernel:           /dev/input/event19
Group:            6
Seat:             seat0, default
Capabilities:     pointer 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   button
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   flat *adaptive
Rotation:         n/a

Device:           ELAN0406:00 04F3:30A6 Touchpad
Kernel:           /dev/input/event7
Group:            7
Seat:             seat0, default
Size:             125x77mm
Capabilities:     pointer gesture
Tap-to-click:     disabled
Tap-and-drag:     enabled
Tap drag lock:    disabled
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   *two-finger edge 
Click methods:    *button-areas clickfinger 
Disable-w-typing: enabled
Accel profiles:   flat *adaptive
Rotation:         n/a

Device:           ELAN0406:00 04F3:30A6 Mouse
Kernel:           /dev/input/event6
Group:            7
Seat:             seat0, default
Capabilities:     pointer 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   *button
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   flat *adaptive
Rotation:         n/a

Device:           M720 Triathlon Keyboard
Kernel:           /dev/input/event20
Group:            8
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           M720 Triathlon Mouse
Kernel:           /dev/input/event21
Group:            8
Seat:             seat0, default
Capabilities:     pointer 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   button
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   flat *adaptive
Rotation:         n/a

Sending multiple keys

I see from another Issue that the recommendation here would likely be to use:

command: 'fusuma-sendkey ctrl+a && fusuma-send-key up'

I've tried this, and it's surprisingly slow. Strangely using xdotool is a lot faster:

command: 'xdotool key ctrl+a Up'

which is zippy, and more than good enough if you've got xdotool installed. Obviously there's a whole nother process to exec when running two fusuma-sendkeys, but it's a lot slower.

I was trying to just use SendKeys for efficiency and would prefer to drop the xdotool dependency if possible.

plugin seems to not be working

Using awesome WM, the sendkey plugin seems to be doing nothing.

Here is the ~/.config/fusuma/config.yml:

plugin:
  executors:
    wmctrl_executor:
      wrap-navigation: true

swipe:
  3:
    left:
      workspace: "next"
    right:
      workspace: "prev"
    up:
      sendkey: "LEFTCTRL+T"

threshold: 
  swipe: 0.4 
  pinch: 0.2 

interval: 
  swipe: 1.0 
  pinch: 0.2

The logging does show e.g. I, [2022-05-30T14:59:57.270877 #30258] INFO -- : {:sendkey=>"LEFTCTRL+T"}, however e.g. firefox does not open a new tab.

The output of fusuma -l is:

I, [2022-05-30T15:00:26.293697 #30289]  INFO -- : reload config: /home/sorunome/.config/fusuma/config.yml
I, [2022-05-30T15:00:26.319017 #30289]  INFO -- : ---------------------------------------------
I, [2022-05-30T15:00:26.319152 #30289]  INFO -- : Fusuma: 2.3.0
I, [2022-05-30T15:00:26.319916 #30289]  INFO -- : libinput: 1.20.1
I, [2022-05-30T15:00:26.319932 #30289]  INFO -- : ruby 3.0.4p208
I, [2022-05-30T15:00:26.320132 #30289]  INFO -- : OS: Linux 5.17.0-rc7-asahi-next-20220310-5-2-ARCH #2 SMP PREEMPT Tue, 22 Mar 2022 14:28:10 +0000
I, [2022-05-30T15:00:26.320336 #30289]  INFO -- : Distribution: Arch Linux \r (\l)
I, [2022-05-30T15:00:26.321496 #30289]  INFO -- : Desktop session: awesome x11
I, [2022-05-30T15:00:26.321503 #30289]  INFO -- : ---------------------------------------------
I, [2022-05-30T15:00:26.321508 #30289]  INFO -- : Enabled Plugins: 
I, [2022-05-30T15:00:26.321545 #30289]  INFO -- :   Fusuma::Plugin::Buffers::GestureBuffer
I, [2022-05-30T15:00:26.321549 #30289]  INFO -- :   Fusuma::Plugin::Buffers::TimerBuffer
I, [2022-05-30T15:00:26.321554 #30289]  INFO -- :   Fusuma::Plugin::Detectors::HoldDetector
I, [2022-05-30T15:00:26.321557 #30289]  INFO -- :   Fusuma::Plugin::Detectors::PinchDetector
I, [2022-05-30T15:00:26.321561 #30289]  INFO -- :   Fusuma::Plugin::Detectors::RotateDetector
I, [2022-05-30T15:00:26.321565 #30289]  INFO -- :   Fusuma::Plugin::Detectors::SwipeDetector
I, [2022-05-30T15:00:26.321569 #30289]  INFO -- :   Fusuma::Plugin::Events::Records::ContextRecord
I, [2022-05-30T15:00:26.321572 #30289]  INFO -- :   Fusuma::Plugin::Events::Records::GestureRecord
I, [2022-05-30T15:00:26.321576 #30289]  INFO -- :   Fusuma::Plugin::Events::Records::IndexRecord
I, [2022-05-30T15:00:26.321580 #30289]  INFO -- :   Fusuma::Plugin::Events::Records::TextRecord
I, [2022-05-30T15:00:26.321583 #30289]  INFO -- :   Fusuma::Plugin::Executors::CommandExecutor
I, [2022-05-30T15:00:26.321587 #30289]  INFO -- :   Fusuma::Plugin::Executors::SendkeyExecutor
I, [2022-05-30T15:00:26.321591 #30289]  INFO -- :   Fusuma::Plugin::Executors::WmctrlExecutor
I, [2022-05-30T15:00:26.321595 #30289]  INFO -- :   Fusuma::Plugin::Filters::LibinputDeviceFilter
I, [2022-05-30T15:00:26.321598 #30289]  INFO -- :   Fusuma::Plugin::Inputs::LibinputCommandInput
I, [2022-05-30T15:00:26.321602 #30289]  INFO -- :   Fusuma::Plugin::Inputs::TimerInput
I, [2022-05-30T15:00:26.321606 #30289]  INFO -- :   Fusuma::Plugin::Parsers::LibinputGestureParser
I, [2022-05-30T15:00:26.321609 #30289]  INFO -- : ---------------------------------------------
Apple Internal Keyboard / Trackpad

Any help or advice would be greatly appreciated

Exclude modifier keys used in Sendkey from clear_modifiers

ref: iberianpig/fusuma#232

There is a problem when using it with fusuma-plugin-keypress.
The problem is that the modifier keys specified in keypress's property are still pressed when sendkey is executed.

For example, keypress: { LEFTALT: { sendkey: BRIGHTNESSDOWN }.
With this specification, sendkey will send as LEFTALT (pressed by the user) + BRIGHTNESSDOWN (pressed by fusuma).
=> Since LEFTALT+BRIGHTNESSDOWN is an invalid shortcut key, and it will make no brightness change.

  • If the modifier key specified in keypress is also included in the parameters of sendkey, the current behavior is OK.
  • However, if the modifier key used in keypress is not used as a parameter of sendkey, sendkey should be executed after releasing the modifier key that is not used.
  • Ultimately, modifier keys used as a Sendkey parameter, regardless of whether they are keypress parameters or not, should be exclude from Keyboard#clear_modifiers

mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

When trying to install this gem as instructed in README.md, I get the following error:

Building native extensions. This could take a while...
ERROR:  Error installing fusuma-plugin-sendkey:
	ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.5.0/gems/revdev-0.2.1/ext/revdev
/usr/bin/ruby2.5 -r ./siteconf20200326-10985-1m7ckai.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.5.0/gems/revdev-0.2.1 for inspection.
Results logged to /var/lib/gems/2.5.0/extensions/x86_64-linux/2.5.0/revdev-0.2.1/gem_make.out

Is there some dependencies that is required in the Ruby installation?

some key combinations dont work

I tried to set swipe-3-down for LEFTCTRL+LEFTMETA+D to show desktop, but it seems not to work on my ubuntu 22.04. Usually only the first try works and everything else fails :(

For the unsuccessful cases, I saw a quick flash that the thumbnail of the current application is located in the upper left corner of the screen and occupies about 1/4 of the screen size.

My logs and config.yml are as follows, there should not be anything wrong I suppose.

$ fusuma
I, [2023-01-08T17:47:29.996291 #17014]  INFO -- : reload config: /home/harry/.config/fusuma/config.yml
I, [2023-01-08T17:47:30.030369 #17014]  INFO -- : ---------------------------------------------
I, [2023-01-08T17:47:30.030766 #17014]  INFO -- : Fusuma: 2.5.1
I, [2023-01-08T17:47:30.031809 #17014]  INFO -- : libinput: 1.20.0
I, [2023-01-08T17:47:30.031839 #17014]  INFO -- : ruby 3.0.2p107
I, [2023-01-08T17:47:30.032918 #17014]  INFO -- : OS: Linux 5.15.0-57-generic #63-Ubuntu SMP Thu Nov 24 13:43:17 UTC 2022
I, [2023-01-08T17:47:30.033784 #17014]  INFO -- : Distribution: Ubuntu 22.04.1 LTS \n \l
I, [2023-01-08T17:47:30.034763 #17014]  INFO -- : Desktop session: ubuntu wayland
I, [2023-01-08T17:47:30.034786 #17014]  INFO -- : ---------------------------------------------
I, [2023-01-08T17:47:30.034804 #17014]  INFO -- : Enabled Plugins: 
I, [2023-01-08T17:47:30.034928 #17014]  INFO -- :   Fusuma::Plugin::Buffers::GestureBuffer
I, [2023-01-08T17:47:30.034941 #17014]  INFO -- :   Fusuma::Plugin::Buffers::TimerBuffer
I, [2023-01-08T17:47:30.034953 #17014]  INFO -- :   Fusuma::Plugin::Detectors::HoldDetector
I, [2023-01-08T17:47:30.034964 #17014]  INFO -- :   Fusuma::Plugin::Detectors::PinchDetector
I, [2023-01-08T17:47:30.034977 #17014]  INFO -- :   Fusuma::Plugin::Detectors::RotateDetector
I, [2023-01-08T17:47:30.034988 #17014]  INFO -- :   Fusuma::Plugin::Detectors::SwipeDetector
I, [2023-01-08T17:47:30.034998 #17014]  INFO -- :   Fusuma::Plugin::Events::Records::ContextRecord
I, [2023-01-08T17:47:30.035008 #17014]  INFO -- :   Fusuma::Plugin::Events::Records::GestureRecord
I, [2023-01-08T17:47:30.035021 #17014]  INFO -- :   Fusuma::Plugin::Events::Records::IndexRecord
I, [2023-01-08T17:47:30.035031 #17014]  INFO -- :   Fusuma::Plugin::Events::Records::TextRecord
I, [2023-01-08T17:47:30.035040 #17014]  INFO -- :   Fusuma::Plugin::Executors::CommandExecutor
I, [2023-01-08T17:47:30.035052 #17014]  INFO -- :   Fusuma::Plugin::Executors::SendkeyExecutor
I, [2023-01-08T17:47:30.035062 #17014]  INFO -- :   Fusuma::Plugin::Filters::LibinputDeviceFilter
I, [2023-01-08T17:47:30.035075 #17014]  INFO -- :   Fusuma::Plugin::Inputs::LibinputCommandInput
I, [2023-01-08T17:47:30.035086 #17014]  INFO -- :   Fusuma::Plugin::Inputs::TimerInput
I, [2023-01-08T17:47:30.035094 #17014]  INFO -- :   Fusuma::Plugin::Parsers::LibinputGestureParser
I, [2023-01-08T17:47:30.035107 #17014]  INFO -- : ---------------------------------------------
I, [2023-01-08T17:47:30.905049 #17014]  INFO -- : {:sendkey=>"LEFTCTRL+LEFTMETA+D"}
I, [2023-01-08T17:47:39.514939 #17014]  INFO -- : {:sendkey=>"LEFTCTRL+LEFTMETA+D"}
I, [2023-01-08T17:47:40.581447 #17014]  INFO -- : {:sendkey=>"LEFTCTRL+LEFTMETA+D"}
swipe:
  4:
    up:
      sendkey: "LEFTMETA+A"
  3:
    down:
      sendkey: "LEFTCTRL+LEFTMETA+D" # Desktop

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.