0

私が望むのは、実行時に TM_FILEPATH 出力を取得するスニペットです スラッシュで展開します / 次に、各部分をその部分とアンダースコアを含むプレースホルダーとして分割します (最後の部分 (ファイル名) を除く) 例: for取得するディレクトリ パス /Path/To/Original/file 内のファイル

class ${1:Path_}${2:To_}${3:Original_}${4:File} {
    // code here
}

次に、標準の PHP オートローダーに適合する className で終わってほしくない部分をステップ実行して削除できます。

これは可能ですか?

乾杯、クリス

4

1 に答える 1

0

コード表示を有効にするには、この最終結果を回答として追加する必要があります。
「スニペットとして出力」を設定していることを確認してください

#!/usr/bin/php
<?php
$path = $_ENV['TM_FILEPATH'];
$path = trim($path, '/');
$path = trim($path, '.php');
$parts = explode('/', $path);
$lastPart = end($parts);
echo 'class ';
foreach ($parts as $id => $part) {
    // textmate placeholders start at 1
    $id = $id+1;
    if ($lastPart == $part) {
        echo '${'.$id.':'.$part.'}';
    } else {
        echo '${'.$id.':'.$part.'_}';
    }
}
?>
于 2010-06-30T18:10:52.010 に答える