Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestion: Selecting modules that required import #667

Open
4 of 29 tasks
tsuyoshicho opened this issue Jun 30, 2019 · 13 comments
Open
4 of 29 tasks

Suggestion: Selecting modules that required import #667

tsuyoshicho opened this issue Jun 30, 2019 · 13 comments

Comments

@tsuyoshicho
Copy link
Contributor

tsuyoshicho commented Jun 30, 2019

自前開発している tsuyoshicho/vital-codec: vital module for Encode/Decode logics から、持ち込みがあったら嬉しい、というものはあるか、確認していただけると嬉しいです。

@tyru
Copy link
Member

tyru commented Jun 30, 2019

MD5, SHA1 は既存の物とどう違うんでしょうか?


個人的には基本的に外部のリポジトリでやってもらうのはご自由にという感じなので、取り込んでもらいたいという事だったら一つずつ(あるいは関連するもの)送ってもらえればと(この issue は俯瞰するために良いと思うので 👌)
ただライセンスが NYSL (あるいは著作権すら放棄する様な扱い (日本では無理そうですが)) になってしまうので、そこが大丈夫かは気になります。
PR やパッチを送るという事は一般的に暗黙の了解として送った先のリポジトリのライセンスに従う、という事だとは思いますが、vital のライセンスは珍しいので。

あとそれぞれのモジュールに一行紹介みたいなのあると便利さが分かって良さそうです。

@tsuyoshicho
Copy link
Contributor Author

tsuyoshicho commented Jun 30, 2019

了解です。

ライセンス

いまはCC0としているので、NYSLになっても問題ありません。

ハッシュ関数の差

MD5,SHA1ですが、

  • HMAC-SHA1とかの文字列を動的に構築可能なように、ハッシュ名定義
  • 同様に動的に利用しやすいようにハッシュサイズ情報定義

を追加しています。

function! s:_vital_created(module) abort
  let a:module.name = 'MD5'
  let a:module.hash_length = 128
endfunction

とかですね。

全般

コメントを入れるようにします。

あと、全般的に Data.List.Byte を利用するように切り替えてるところはあるので、これが移動に含まれない時はそこは別途対応が必要になったりはします(が難しいものではないです)

@tsuyoshicho
Copy link
Contributor Author

あと

取り込んでもらいたいという事だったら一つずつ(あるいは関連するもの)送ってもらえればと

なんですが、量がでたことと、本家の品質維持を考えると、「送りたい」よりは「必要とされるのはContribは喜んでしたいが、必要性がないなら無理はしない」のほうがいいかな、くらいの理由です

@skanehira
Copy link
Contributor

UUID あったら便利そうと思いました!

@nekowasabi
Copy link

nekowasabi commented Jul 1, 2019

ビジュアルモードで選択したテキストを取得できれば便利そうです!

@tsuyoshicho
Copy link
Contributor Author

@nekowasabi いまのところはないですし、ちょっと作るかは分らないですが、たしかに便利そうですね

@tyru
Copy link
Member

tyru commented Jul 1, 2019

@nekowasabi normal! gv"zy ではダメですか? (@z に文字列が入ります)

@tsuyoshicho
Copy link
Contributor Author

とりあえずですが、ID.UUIDとその関連をcontribするに向けて動いてみます。

@nekowasabi
Copy link

@tyru
紹介いただいた方法でもできるのですが、
今までは、以下のメソッドをスクリプトごとにコピペして使い回していたのが面倒と感じていました。
共通ライブラリとしてのvitalにあると、便利かなと思った次第です。
泥臭くやればなんとでもなる部分なので、あまり需要はなさそうですが…

function! s:get_visual_text()
  try
    let pos = getpos('')
    normal `<
    let start_line = line('.')
    let start_col = col('.')
    normal `>
    let end_line = line('.')
    let end_col = col('.')
    call setpos('.', pos)

    let tmp = @@
    silent normal gvy
    let selected = @@
    let @@ = tmp
    return selected
  catch
    return ''
  endtry
endfunction

@tsuyoshicho
Copy link
Contributor Author

@nekowasabi さん

そいういう方向性だったら、自分でライブラリ化にチャレンジしてもいいかと思いますw

@nekowasabi
Copy link

@tsuyoshicho
まさにそれですね。
コピペで乗り切ってきましたが、そろそろ観念のしどきかなぁという感じですw

@tsuyoshicho
Copy link
Contributor Author

Vim.Type.Blob from mattnさんからそれとなく

@tsuyoshicho
Copy link
Contributor Author

ID.UUID
 Data.List.Byte
  Vim.Type.Number

の依存関係

を反映

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants