Skip to content

Commit 12bf347

Browse files
committed
Method reference generate link with scoll to text fragment
1 parent 11d9d81 commit 12bf347

File tree

3 files changed

+4
-3
lines changed

3 files changed

+4
-3
lines changed

src/Reference/MethodReference.php

+2-1
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,11 @@ public function resolve(Environment $environment, string $data): ResolvedReferen
3939

4040
$methodName = explode('::', $data)[1];
4141

42+
$scrollTextFragment = sprintf('#:~:text=%s', rawurlencode('function '.$methodName));
4243
return new ResolvedReference(
4344
$environment->getCurrentFileName(),
4445
$methodName.'()',
45-
sprintf('%s/%s.php#method_%s', $this->symfonyRepositoryUrl, str_replace('\\', '/', $className), $methodName),
46+
sprintf('%s/%s.php%s', $this->symfonyRepositoryUrl, str_replace('\\', '/', $className), $scrollTextFragment),
4647
[],
4748
[
4849
'title' => sprintf('%s::%s()', $className, $methodName),
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<p><a href="https://github.com/symfony/symfony/blob/4.0/src/Symfony/Component/HttpFoundation/RequestStack.php#method_getCurrentRequest" class="reference external" title="Symfony\Component\HttpFoundation\RequestStack::getCurrentRequest()" rel="external noopener noreferrer" target="_blank">getCurrentRequest()</a></p>
1+
<p><a href="https://github.com/symfony/symfony/blob/4.0/src/Symfony/Component/HttpFoundation/RequestStack.php#:~:text=function%20getCurrentRequest" class="reference external" title="Symfony\Component\HttpFoundation\RequestStack::getCurrentRequest()" rel="external noopener noreferrer" target="_blank">getCurrentRequest()</a></p>

tests/fixtures/expected/main/datetime.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ <h3 id="the-date-format-option">
7676
<span>Tip</span>
7777
</p>
7878
<p>This is a little tip about something! We an also talk about specific
79-
methods: <a href="https://github.com/symfony/symfony/blob/4.0/src/Symfony/Component/BrowserKit/Client.php#method_doRequest" class="reference external" title="Symfony\Component\BrowserKit\Client::doRequest()" rel="external noopener noreferrer" target="_blank">doRequest()</a>.
79+
methods: <a href="https://github.com/symfony/symfony/blob/4.0/src/Symfony/Component/BrowserKit/Client.php#:~:text=function%20doRequest" class="reference external" title="Symfony\Component\BrowserKit\Client::doRequest()" rel="external noopener noreferrer" target="_blank">doRequest()</a>.
8080
Or a namespace: <a href="https://github.com/symfony/symfony/blob/4.0/src/Symfony/Component/Validator/Constraints" class="reference external" title="Symfony\Component\Validator\Constraints" rel="external noopener noreferrer" target="_blank">Constraints</a>.
8181
Or a PHP function: <a href="https://secure.php.net/manual/en/function.parse-ini-file.php" class="reference external" title="parse_ini_file" rel="external noopener noreferrer" target="_blank">parse_ini_file</a>.
8282
Or a PHP method! <a href="https://secure.php.net/manual/en/locale.getdefault.php" class="reference external" title="Locale" rel="external noopener noreferrer" target="_blank">Locale::getDefault()</a>.</p>

0 commit comments

Comments
 (0)