shift + tab python function signature
- 主要言語
- Julia
- スター
- 1.5k
- フォーク
- 186
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
This was something I was missing when working with my python code, specifically interactively in the Jupyter notebook.
I don't know how to implement this in a safe way so I'll propose it here as an enhancement. Basically, on shift + tab we should grab the python function signature like IPython does in the Jupyter Notebook.
```julia
@pyimport IPython.core.oinspect as oinspect
function pyobjsignature(o::PyObject)
s = oinspect.signature(o)[:__str__]()
if haskey(o, "__name__")
s = string(o["__name__"][:__str__](), s)
else
s = string("function_call -> ", s)
end
if haskey(o, "__doc__")
d = o[:__doc__]
end
if typeof(d) <: AbstractString
return Base.Docs.Text(join([s, convert(AbstractString, d)], "\n"))
else
return Base.Docs.Text(join([s, "No Python Docstring"], "\n"))
end
end
Base.Docs.getdoc(o::PyObject) = pyobjsignature(o)
```
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
この issue では PyCall.jl、IPython.core.oinspect、Jupyter Notebook が挙げられていますが、リポジトリのファイルやテストは挙げられていません。まず PyObject のドキュメントとシグネチャの処理を見つけ、次にそれを提案されている pyobjsignature の動作と比較してください。完了条件は、インタラクティブなワークフローで Shift+Tab により Python のシグネチャと docstring が安全に表示されることです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- julia, jupyter-notebook, python
- 領域
- developer-experience, tooling
- issue の種類
- 機能追加
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 30/100