Giter VIP home page Giter VIP logo

vimouse's Introduction

Let's do some tries to dump traditional mouse. Inspired by Vim & Vimium.

viMouse

Use keyboard to click anywhere of screen. OpenCV based screenshot visual recognition.

The vi in the name here can mean "Vim", "Vision-recognition" or whatever

screenshot

Dependencies:

  • python3 and: opencv , qt5 , numpy , pynput

Theoretically works cross-platform. Tested on Linux X11 and Windows. Welcome feedback the result on your machine.

This is still very simple and in alpha preview stage currently. Anything could change.

Usage

cd into folder and run python3 main.py to start.

  1. Hit ctrl + meta to find clickable objects on screen and show keys

    meta key = win key = super key

    During keys shown, any key events are blocked from being sent to any other apps

    To cancel, press ESC or ,(comma). To return to last step, press backspace

  2. Press keys to move mouse to that position

  3. It triggers click (if autoClick=True. Otherwise hit meta + ctrl to trigger click)

Edit file g.py and configure for your need: screenshotDelay, whole screen, autoClick ...

Algorithm (filtering, recognizing, parameters... ) can be improved. If you don't have a high contrast GUI, or some icons or buttons don't have clear contour, or two objects too close, it may fail to recognize.

We're expecting experts comming !

Other vi / keybinding projects

Keyboard clicking:

  • hunt-and-peck Simple vimium/vimperator style navigation for Windows applications based on the UI Automation framework.

  • warpd A modal keyboard driven interface for mouse manipulation.

  • vimac keyboard-driven navigation and control of the macOS Graphical User Interface (GUI)

  • vimium-everywhere OS-wide Keyboard navigation for Linux and Windows

  • keynav Control the mouse with the keyboard. only works on X11

  • Vimperator (discontinued) Make Firefox/Thunderbird look and behave like Vim

  • vimkey Browser extension. Use the keyboard trigger click button or open a link

  • Vimium browser extension that provides keyboard-based navigation and control of the web in the spirit of the Vim editor.

  • Vimium C A Customized Vimium having contextual mapping, global shortcuts, command sequences

  • vimb Vim-like web browser. The goal of Vimb is to build a completely keyboard-driven, efficient and pleasurable browsing-experience with low memory and CPU usage that is intuitive to use for Vim users.

  • Big Search A multiple-search-engine browser extension that has keyboard clicking feature on its UI

Edit text using vi-like keybinding on non-vi app:

  • gtk-vikb (discontinued) add vi keybindings to gtk (2/3) text areas
  • Firenvim Turn browser <textarea> into a Neovim client
  • wasavi Transforms browser <textarea> into a VI editor
  • emacs-anywhere
  • Emacs Everywhere
  • vime Using Vim as an input method editor for X11 applications
  • vim_ahk Based on AutoHotKey
  • tsf-vim (discontinued) Windows IME to edit text like vim editor

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.