HidemaruOwO / pummit

Create good commit message in CLI
MIT License
20 stars 1 forks source link

:1st_place_medal: カスタムエイリアスを実装する #1

Closed HidemaruOwO closed 1 year ago

HidemaruOwO commented 1 year ago

新機能及び改善など

サブコマンドとしてaliasコマンドを実装する

# Add cmd
pummit alias add 's' 'sparkles'
# Delete cmd
pummit alias delete 's'
# Delete --all cmd
pummit alias delete --all
# List cmd
pummit alias list
# Stdout
# There is aliases
# s : sparkles : ✨ 
# t : tada : 🎉 
# Init cmd
pummit alias init

Pull request / Issue 割振番号

第一引数がaliasのときだけ処理を分岐

詳細

No response

HidemaruOwO commented 1 year ago

エイリアス機能ってなに?

例えばwastebasketを入力するのは少し大変ですが、エイリアス機能を使うとwbで簡単に入力できるようになります。

pummit wb モジュールの削除
# Result: :wastebasket: モジュールの削除 (path/to/added/file)

なおこのエイリアスはカスタム可能にする予定です。

Add command

このコマンドはエイリアスを追加することが出来ます。

pummit alias add 's' 'sparkles'

この場合ではsというエイリアスを入力するだけでコミットメッセージのEmoji prefixにsparklesを代入できるようになります。

pummit s 新機能の追加
# Run: git commit -m ':sparkles: 新機能の追加 (path/to/added/file)'

Delete command

このコマンドはエイリアスを削除することが出来ます。

pummit alias delete 's'

この場合では、s=spaklesというエイリアスが登録されている前提でこのコマンドを実行した場合ssparklesの関連付けがなくなるため、以下のコマンドを実行してもEmoji prefixにはsしか代入されません。

pummit s 新機能の追加
# Run: git commmit -m ':s: 新機能の追加 (path/to/added/file)'

Delete --all command

このコマンドは登録されているエイリアスを全て削除します。

pummit alias delete --all

List command

このコマンドは登録されているエイリアスを全て表示します。

pummit alias list

もし、エイリアスにs=sparklest=tadaが登録されている場合は以下のように出力されます。

📎 There is aliases
Alias : Prefix : Emoji
  s : sparkles : ✨ 
  t : tada : 🎉 

Reset command

config.jsonを初期化するためのコマンドです。

pummit alias reset
> would like to reset the aliases, is that ok? (Y/n): 

aliasが壊れたときに実行します。

HidemaruOwO commented 1 year ago

Addコマンドの実装について

データの形としてはJSONで以下のような形になる。

{
    "alias": [
        ["s", "sparkles", "✨"],
        ["t", "tada", "🎉"]
    ]
}

これはgitmojiのデータベースが必要である。 データベースはこれを引用する。 またgitmojis.jsonは.config/pummit/gitmoji.jsonに配置する。 https://github.com/carloscuesta/gitmoji/blob/master/packages/gitmojis/src/gitmojis.json https://raw.githubusercontent.com/carloscuesta/gitmoji/master/packages/gitmojis/src/gitmojis.json

HidemaruOwO commented 1 year ago

リストコマンドの実装は終わった

HidemaruOwO commented 1 year ago

Addコマンドの実装が終了

HidemaruOwO commented 1 year ago

Addコマンドでエイリアスがかぶせられないようにしよう