search
LoginSignup
0

More than 5 years have passed since last update.

posted at

updated at

Paper Plane xUI(PPx)のListFileについて

この記事では仮想ディレクトリとして取扱えるListFileを紹介します。

ListFileとは?

公式HELPからの引用です。

先頭に「;ListFile」の一行があるテキストファイルは、その中身を仮想ディレクトリとして取扱うことができます。
また、パスの末尾に「::listfile」が付いているときは、「;ListFile」が無くても仮想ディレクトリとして取扱うことができます。

中に「;」で始まるメタ情報が書かれたテキストファイルで、複数のエントリー情報をこのファイルにまとめる事が出来ます、ファイル/ディレクトリのブックマークという基本的な事や、findコマンドの標準出力をListFileとして吐き出し、エントリー1 として操作するpecoコマンドのような事も出来ます。
(peco代わりの活用法は改めて別記事として書きます)

また、ファイル/ディレクトリ以外にも文字列であれば良いので、スクリプトで拡張して様々な活用が出来る機能となっています。

ListFileのファイルフォーマット

フォーマットはシンプルです、テキストに幾つかのメタ情報が書かれているだけです。
以下のような内容が書かれたListFileの場合

;ListFile
;Base=C:\Users\taro\Desktop
;MyMetaData1=メメタァ
hoge.txt
foo.txt
hello world

開くとも、下記のようになります

listfile.png

「;ListFile」と「;Base」は公式のメタデータですが、独自メタデータも先頭に「;」を付ければ追加する事が出来ます、スクリプトなどで欲しいと思った時にこのメタデータを情報の仮置き場としても利用できます。

また、「hello world」のように単なる文字列もエントリーとして扱えますが、ファイルとして存在しないのでファイル操作系は失敗します、「hoge.txt」や「foo.txt」等の実際に存在するファイルはListFile上でもシームレスにファイルとして扱えます、ただし実際のファイルと内容の同期は自動でされないので、すでにListFile内のエントリーのファイルは存在してないって事もあります、その時はListFileを更新してあげましょう。

終わりに

ListFileは大変便利な機能です、PPxでもWhere is(組み込みの検索機能)でListFileが使われてたりします。
オーソドックスなブックマークとしてだけではなく、GitやLinuxコマンドとの連携にListFileを利用したりも出来ます、それらの例はこの記事以降で紹介したいと思います。


  1. PPx上で操作できファイル/ディレクトリ1つ1つをエントリーと呼びます。 

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
0