logseq2gemtext/src/GemlogParser.php

31 lines
622 B
PHP

<?php
declare(strict_types=1);
namespace LogseqGem;
use League\CommonMark\Node\Block\Document;
use League\CommonMark\Node\Inline\Text;
class GemlogParser extends Parser {
public function getTitles() {
$titles = [];
foreach ($this->document->iterator() as $node) {
if (!$node instanceof Text) {
continue;
}
$text = $node->getLiteral();
if (substr($text, 0, 2) !== '[[' && substr($text, -2) !== ']]') {
continue;
}
$titles[] = substr($text, 2, -2);
}
return $titles;
}
}