Code Monkey home page Code Monkey logo

clix's Introduction

PyPI license

clix

An easy to use clipboard manager made using Tkinter.

Note: Currently, clix works only on Linux systems.

Installation

  • To install clix, simply,

    $ pip install clix
    
  • If you get ImportError for Xlib module, install it using this command:

    $ sudo apt-get install python-xlib
    

Usage

  • To run clix, open terminal and run this command:

    $ clix
    

    if error shown try:

    $ sudo clix
    

    On Mac OSX, one of the following must be true:

      -The process must run as root.
      -Your application must be whitelisted under Enable access for assistive devices. Note that this might require that you package your application, since otherwise, the entire Python installation must be whitelisted.
    

    Note: Leave this terminal open as long as you want to use clix.

    Another alternative is to use this command:

    $ nohup clix &
    

    Now, you can close the terminal but clix will keep running.

    To close clix, open a terminal and simply run:

    $ pkill clix
    
  • Press Ctrl + space keys to open clix GUI. And Ctrl + space again to close it. Initially, all clip frames are empty.

  • Now, as you copy any text, (using Ctrl + c keys), the text is saved to the topmost frame of clix clipboard.

  • Whenever you want to paste any clip, just open clix GUI (using Ctrl + space keys) and click on clip it button to copy clip text to the main clipboard.

    Now, simply pressing Ctrl + v keys will paste the desired clip text!

  • CLI usage to configure keys

    $ clix [-h] [-s SET_KEYBINDING] [-a] [-c]
    

    You can always use $ clix -h command to open this help message:

    optional arguments:
      -h, --help            show this help message and exit
      -s SET_KEYBINDING, --set-keybinding SET_KEYBINDING
                            Set alternate key binding. Default is LCTRL+SPACE
                            Format :- <KEY1>+<KEY2>. Ex:- RCTRL+RALT. To see
                            availble key bindings use 'clix -a' option
      -a, --available-keybindings
                            Show available key bindings
      -c, --show-current-keybinding
    

TODO

  • Add support for user configurable keys.

  • Add support for Windows and MacOS.

  • Create a file system to log the clipboard.

  • Improve UI.

  • Add more functionalities.

Want to contribute?

  • Clone the repository

    $ git clone http://github.com/nikhilkumarsingh/clix
    
  • Install dependencies

    $ pip install -r requirements.txt
    
  • Remove the . prefix from .pyxhook and .gui for the following imports in clix.py, so it changes from:

    from .pyxhook import HookManager
    from .gui import clipboard

    to:

    from pyxhook import HookManager
    from gui import clipboard
  • To test local version of clix:

    $ pip install -U .
    

    OR :

    $ pip install -e <project dir.> .
    

Finally, do report bugs and help us make clix more and more productive!

clix's People

Contributors

akansh97531 avatar nikhilkumarsingh avatar dibyadas avatar animeshsrivastava24 avatar

Watchers

James Cloos avatar

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.