Giter Site home page Giter Site logo

custardkit's Introduction

Miwa / Ensan

  • 日本語話者 (Japanese Speaker)
  • 大学院修士1年 (M1)
  • Turingのエンジニア (Engineer at Turing.inc)
  • azooKeyの開発者 (Developer of azooKey)

Skills

  • Swift (★★★★☆)
  • Python (★★★☆☆)
  • C++ (★★☆☆☆)
  • JavaScript, TypeScript, C#, Kotlin, Java (★☆☆☆☆)

Interests

  • 自然言語処理
  • 言語学
  • 機械学習
  • 自動運転
  • 文字コード
  • フォント処理

Works

azooKey - 自由自在なキーボードアプリ

OSSのiOS向け日本語キーボードアプリをApp Storeで公開しています。

AzooKeyKanaKanjiConverter

AzooKeyKanaKanjiConverterはazooKeyの中核となる日本語入力エンジンをSwift Packageとして切り出したものです。

CustardKit

azooKeyのカスタムタブを作成するためのツールキットを配布しています。

KaomojiParser

Swift向け顔文字処理パッケージです。テキストから顔文字を抽出/除去できます。

発音しないチャレンジ

入力された単語をなるべく黙字で読むことで、発音せずに済ませるゲームです。GitHub Pagesで公開しています。

Presentations

Links

custardkit's People

Contributors

ensan-hcl avatar shundroid avatar

Stargazers

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

Watchers

 avatar  avatar

custardkit's Issues

fix path of result directory

Because now the path of result directory is relative, sometimes this works unexpectedly. use absolute path and fix this problem.

[Feature] Reconsider toggle... APIs

In CustardKit, some APIs have 'toggle...'. They are normally enough for typical use cases, but there are cases where key should always turn on the target, not toggle it.
In order to refine, I suggest changing API as follows;

  1. deprecate 'toggle...' API
  2. introduce 'set...' API, which takes one of those "turn_on", "turn_off", and "toggle".

Of course, environments should still support toggle... API for a while.

[Report from user] タイポの修正

以下不具合報告より引用


1.CustomKey.flickSimpleInputAndLabels ではなく,…AndLab( と記述されている例が見られる.
2.SmartMoveCursorAction のメンバー変数で target ではなくtargets
3.MoveTabAction の tab_type は TabType 型と書かれていますが型としては str で "custom" か "system" を指定できるというのが正しいかと
4.同じく MoveTabAction ですが,メンバー変数 identifier ではなく text
5.PasteKeyboardAction ではなく PasteAction

Adding utility that make it easy to create flick key only for input

It is nice to have function that make it easy to create flick key only for input. We'd like to specify only ("input", "label") for each direction.

def simple_input key(center: [str, str], left: [str, str] = None, top: [str, str] = None, right: [str, str] = None, bottom: [str, str] = None) -> KeyData

//example
key = simple_input key((".", ".,!?"), left = (",", ","), top = ("!", "!"), right = ("?", "?"))

It becomes more useful if we can omit label when input and label is the same value:

//example
key = simple_input key((".", ".,!?"), left = ",", top = "!", right = "?")

Consider to add this.

[Feature] Transparent color setting for "color".

Currently, "normal", "special", and "selected" are allowed as colors of keys.

I found that some iOS keyboard have "transparent" keys. They are typically used in number pads and they are relatively unimportant keys.

Considering current color declarations are based on semantics, adding "unimportant" key color which is treated as transparent key will make sense.

introduce Travis CI

I think it's about time we introduced some ci service to this project.
It's too tiring to run tests manually every time we write codes.

[Feature] Expose 'launch azooKey app' API

Currently, azooKey has 'launch azooKey' action internally, but it is not nice for mentainability. Since 'open azooKey' is not so much harmful, exposing this API for CustardKit will make sense.

make to_json_list in python

make a utility function like this:

def to_json_list(jsonable):
  return list(map(lambda item: item.json()))

We have to consider in which file to define this function.

Make internal utility-functions/lists/etc public for the convenience and reusability

In this repository, many reusable functions, lists, or keys are used in the examples, but they are all internal.
I think the users of this kit want to use them in their custards too.

i.e.

  • makeKey function in Japanese keyboard example
  • delete key seen in many examples, which has the variations of smartDeleteDefault, smartMoveCursor(backward) and smartMoveCursor(forward)
  • the targets of smartMoveCursor in the delete key above: ["、","。","!","?",".",",",".",",", "\n"]
  • the key of "空白"

I think that many custards made by users also have such functions, lists, or keys, so if you make them public, it will be beneficial.

Benefits:

  • Standardization: Slight differences between keyboards are likely to be reduced. i.e. the difference of the variation of delete key
  • Easier to write custard: They do not have to make delete button or あ,い,う button from scratch.
  • Make use of the toolkit: Now, your toolkit is just converting swift/python codes to json. By implementing this, your toolkit can perform better by providing utility library. It will make swift/python codes less redundant compared to raw json files.

stop using `zoom` in markdown files

zoom プロパティは非標準なので, width/height で指定するのが良いです。
もしくは, transform プロパティを使う手もありますが,ちょっと大げさな気がします。

Originally posted by @shundroid in #1 (comment)

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.