Code Monkey home page Code Monkey logo

keyholder's Introduction


CI Release version OpenCollective OpenCollective

Clipy is a Clipboard extension app for macOS.


Requirement: macOS 10.10 Yosemite or higher

Distribution Site : https://clipy-app.com

Development Environment

  • macOS 10.15 Catalina
  • Xcode 12.2
  • Swift 5.3

How to Build

  1. Move to the project root directory
  2. bundle install --path=vendor/bundle && bundle exec pod install
  3. Open Clipy.xcworkspace on Xcode.
  4. build.

Contributing

  1. Fork it ( https://github.com/Clipy/Clipy/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Localization Contributors

Clipy is looking for localization contributors.
If you can contribute, please see CONTRIBUTING.md

Distribution

If you distribute derived work, especially in the Mac App Store, I ask you to follow two rules:

  1. Don't use Clipy and ClipMenu as your product name.
  2. Follow the MIT license terms.

Thank you for your cooperation.

Backers

Support us with a monthly donation and help us continue our activities. [Become a backer]

Sponsors

Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]

Licence

Clipy is available under the MIT license. See the LICENSE file for more info.

Icons are copyrighted by their respective authors.

Special Thanks

Thank you for @naotaka who have published ClipMenu as OSS.

keyholder's People

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  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  avatar  avatar  avatar  avatar  avatar

keyholder's Issues

Custom varidator

Create a keycombo validator that can be used in the standard.

  • Shift + [A-Z] varidator
  • Global hotkey varidator

New release

Hey! I think you need to make a new release since the last on was made in 2020 and therefore it's package file points to some old dependency versions.

Support for Swift Package Manager

I would like to migrate my project to SPM, and this is the one project that has not yet added support for Swift Package Manager. Would be great if support for this could be added.

Failed to render instance of RecordView

Hi guys!

I have installed KeyHolder via CocoaPods:

...
pod 'Magnet'
pod 'KeyHolder'

But there are some weird errors in Xcode:
screen shot 2017-05-19 at 13 02 27
screen shot 2017-05-19 at 13 02 18
screen shot 2017-05-19 at 13 01 53

What's especially confusing is this line:
screen shot 2017-05-19 at 13 04 34

What have I done wrong? :)

ps. is there an easy way to change components font size?

Optionally allow recording of shortcuts without modifiers pressed

For some scenarios it would be nice to be able to record a shortcut for a key without the use of a modifier. This could be allowed by passing another parameter to the initializer which is then checked in the "validateModifiers" extension function, replacing
return KeyTransformer.carbonFlags(from: modifiers) != 0
...with...
return KeyTransformer.carbonFlags(from: modifiers) != 0 || isEmptyModiersAllowed

I can supply a pull-request if you think this is worthwhile.

Disable YouTube autoplaying

Hi, I use YouTube in my Slidepad but every time I open Slidepad YouTube automatically starts playing if I left a Slidepad window on a YouTube video, even if my current Slidepad window isn't YouTube.

Is there any chance of disabling auto-playing a YouTube video? It seems difficult but it's also pretty annoying so it would be much appreciated!

Carthage fails to build

When trying to checkout and build using Carthage, I get this error message

*** Building scheme "Magnet" in Magnet.xcworkspace
*** Building scheme "KeyHolder" in KeyHolder.xcworkspace
Build Failed
	Task failed with exit code 65:
	/usr/bin/xcrun xcodebuild -workspace ProjectName/Carthage/Checkouts/KeyHolder/KeyHolder.xcworkspace -scheme KeyHolder -configuration Release -derivedDataPath ~/Library/Caches/org.carthage.CarthageKit/DerivedData/KeyHolder/v2.0.1 ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES clean build

This usually indicates that project itself failed to compile.

I also tried manually checking out and opening up in Xcode, like it says in the build instructions, but it says it can't find the library Magnet to include in RecordView, even though the Magnet framework is included in the project

Search engine

Why is there no option to change the default search engine?

Callback for shortcut change

While the delegates give you a lot of power, it's also very verbose. Would be nice if it also provided a callback. I don't need most of the delegates. All I need is to know when the hotkey changes.

recordView.didChange { keyCombo in
	guard let keyCombo = keyCombo else {
		print("Key combo was cleared")
		return
	}

	print("Key combo changed")
}

The above would be an alternative to func recordViewDidClearShortcut and func recordView(_ recordView: RecordView, didChangeKeyCombo.

Function modifier

Hey 👋
Is it possible to enable fn + key support

Or at least does anyone know what fn will have modifier?
For example for option + key modifier would be 2048.

But what will it be in case of fn + key?

🙏

key events not accepted after setting the shortcut

Probably going to fix this myself, but to track the problem until then, here's what I mean:

  • click inside a RecordView: it obtains key view status and shows a focus ring
  • enter any shortcut: it shows the shortcut and the modifiers properly
  • try to enter another shortcut

I expected the shortcut to be overwritten, especially since the focus ring is still drawn.

But instead I hear NSBeep and the value remains the same until I click inside the view again.


The issue is in RecordView.endRecording():

 if window?.firstResponder == self && !canBecomeKeyView { window?.makeFirstResponder(nil) }

This properly emits an end editing event, but I think it should set the first responder back to self afterwards to remain consistent with the visual appearance (i.e. the focus ring that is still there).

Support Mojave dark mode

It currently doesn't adapt well to dark mode:

screen shot 2018-07-20 at 12 51 40

This is how the system inputs look like in dark mode:

screen shot 2018-07-20 at 12 56 38

screen shot 2018-07-20 at 12 56 50

Make RecordView characters more prominent

Hey! I've noticed that in dark mode it's hard to really see which characters are currently recorded. What do you think if we make "inactive" characters more transparent? I can contribute to that but would like to discuss the solution first :)

image

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.