From c4cb384bb70d22e0d9763f85532a68bb3b40e621 Mon Sep 17 00:00:00 2001 From: Irina Fediaeva Date: Tue, 24 Sep 2024 13:45:25 +0200 Subject: [PATCH] PY-75246: Fix quick nav info for file and directory refs GitOrigin-RevId: b2a6daaebf0f043f1bce2952637bf86c556e8646 --- .../resources/messages/PyPsiBundle.properties | 2 ++ .../documentation/PythonDocumentationProvider.java | 11 +++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/python/python-psi-impl/resources/messages/PyPsiBundle.properties b/python/python-psi-impl/resources/messages/PyPsiBundle.properties index 74b436b3e56d..38f8fa532027 100644 --- a/python/python-psi-impl/resources/messages/PyPsiBundle.properties +++ b/python/python-psi-impl/resources/messages/PyPsiBundle.properties @@ -186,6 +186,8 @@ QDOC.package.name=Package {0} QDOC.module.name=Module {0} QDOC.inferred.type.name=Inferred type: {0} QDOC.variable.name=Variable "{0}" +QDOC.file.name=File "{0}" +QDOC.directory.name=Directory "{0}" QDOC.parameter.of.function.name=Parameter "{0}" of function "{1}" QDOC.parameter.of.method.name=Parameter "{0}" of method "{1}" QDOC.parameter.name=Parameter "{0}" diff --git a/python/python-psi-impl/src/com/jetbrains/python/documentation/PythonDocumentationProvider.java b/python/python-psi-impl/src/com/jetbrains/python/documentation/PythonDocumentationProvider.java index 0d5436bca341..36865c40bde8 100644 --- a/python/python-psi-impl/src/com/jetbrains/python/documentation/PythonDocumentationProvider.java +++ b/python/python-psi-impl/src/com/jetbrains/python/documentation/PythonDocumentationProvider.java @@ -88,11 +88,17 @@ public class PythonDocumentationProvider implements DocumentationProvider { .append(describeClass(cls, context)) .toString(); } + else if (element instanceof PsiDirectory directory) { + return PyPsiBundle.message("QDOC.directory.name", directory.getName()); + } + else if (element instanceof PsiFile file) { + return PyPsiBundle.message("QDOC.file.name", file.getName()); + } else if (element instanceof PyExpression) { return describeExpression((PyExpression)element, referenceElement, context); } else if (element instanceof PyTypeParameter typeParameter) { - return PyPsiBundle.message("QDOC.type.parameter.name", describeTypeParameter(typeParameter, true, context)); + return PyPsiBundle.message("QDOC.type.parameter.name", describeTypeParameter(typeParameter, true, context)); } else if (element instanceof PyTypeAliasStatement typeAliasStatement) { return describeTypeAlias(typeAliasStatement, context).toString(); @@ -154,7 +160,8 @@ public class PythonDocumentationProvider implements DocumentationProvider { .append(", ") .append(PyPsiBundle.message("QDOC.type.parameter.kind")) .append(" ") - .append(styledSpan(formatTypeWithLinks(context.getType(typeParameter), typeParameter, typeParameter, context), PyHighlighter.PY_ANNOTATION)); + .append(styledSpan(formatTypeWithLinks(context.getType(typeParameter), typeParameter, typeParameter, context), + PyHighlighter.PY_ANNOTATION)); } return result.toFragment(); }