Debian の apt ツールの出力結果は、均一な幅の列になります。たとえば、「aptitude search svn」を実行すると、すべての名前が同じ幅の最初の列に表示されます。
端末のサイズを変更すると、それに応じて列幅が調整されます。
これを可能にする Python ライブラリはありますか? ライブラリは端末の幅を認識し、テーブルを入力として受け取る必要があることに注意してください。これは、たとえば[('rapidsvn', 'A GUI client for subversion'), ...]
.. であり、最初の列 (または任意の列) の最大幅を指定することもできます。また、端末の幅を超える場合、下の 2 列目の文字列がどのようにトリミングされるかにも注意してください。したがって、望ましくない 2 行目が導入されません。
$ aptitude search svn
[...]
p python-svn-dbg - A(nother) Python interface to Subversion (d
v python2.5-svn -
v python2.6-svn -
p rapidsvn - A GUI client for subversion
p statsvn - SVN repository statistics
p svn-arch-mirror - one-way mirroring from Subversion to Arch r
p svn-autoreleasedeb - Automatically release/upload debian package
p svn-buildpackage - helper programs to maintain Debian packages
p svn-load - An enhanced import facility for Subversion
p svn-workbench - A Workbench for Subversion
p svnmailer - extensible Subversion commit notification t
p websvn - interface for subversion repositories writt
$
編集:(以下のアレックスの回答に応じて)...出力は、1)最後の列(行で最も長い文字列を持つ唯一の列)のみがトリミングされるという点で「適性検索」に似ています。 2) 通常は 2 ~ 4 列しかありませんが、最後の列 (「説明」) は端末幅の少なくとも半分を占めると予想されます。3) すべての行に同じ数の列が含まれている、4) すべてのエントリが文字列のみである