Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Doc comments in view.tree #442

Open
nin-jin opened this issue Feb 27, 2021 · 4 comments
Open

Doc comments in view.tree #442

nin-jin opened this issue Feb 27, 2021 · 4 comments

Comments

@nin-jin
Copy link
Member

nin-jin commented Feb 27, 2021

Возможно было бы не плохо иметь возможность добавлять человекопонятные аннотации к методам прямо во view.tree. Выглядеть это может, например, так:

$my_app $mol_book
    
    title
        # \Text that displayed in window title. Should be non empty.
        \Hello World

    books /
        
        <= Greetings
            # \Page with greetings of current user. Displayed only at first start.
            $mol_page
        
                body /
                    <= greetings
                        # \Greetings texts. Markdown supported.
                        \Hello, {username}!

Хотя, уже не так лаконично получается.

@nin-jin
Copy link
Member Author

nin-jin commented Jul 22, 2021

Или такой вариант:

$my_app $mol_book

    title \Hello World
        # \Text that displayed in window title. Should be non empty.

    books /
        
        <= Greetings $mol_page
            # \Page with greetings of current user. Displayed only at first start.
            
            body /
                <= greetings \Hello, {username}!
                    # \Greetings texts. Markdown supported.

@osv
Copy link
Contributor

osv commented Dec 10, 2021

Аннотации должни стимулировать их делать и бить понятные при скрининге текста. Древовидность проще реализовать но делает нагрузку на восприятие. Плюс в примере вводить специальный символ #

Что если сделать соглашение для коментариев. Как пример, если начинаеться из названия метода, то он и будет аннотацией.

$my_app $mol_book
	- title - Text that displayed in window title. Should be non empty.
	title \Hello World
	books /
		- Greetings - Page with greetings of current user. Displayed only at first start
		<= Greetings $mol_page
			body /
				- greetings - Greetings texts. Markdown supported.
				<= greetings \Hello, {username}!

$my_app $mol_book
	- title - Text that displayed in window title. Should be non empty.
	- Greetings - Page with greetings of current user. Displayed only at first start
	- greetings - Greetings texts. Markdown supported.
	title \Hello World
	books /
		<= Greetings $mol_page
			body /
				<= greetings \Hello, {username}!

При этом игнорируеться местоположние комментария в дереве.
Что позволяет также отделить документацию от реализации.

	- foo - describtion for propery foo
	- a1 - method a1
	- a2 - method a2
	- a3 - method a3
		more describtion for a3 
	foo <= a1 <= a2 <= a3 \3333

@nin-jin
Copy link
Member Author

nin-jin commented Dec 10, 2021

Документация и комментарии - это всё же разные вещи. Во многих языках документацию вставляют в комментарии лишь от безысходности. В Python, например, есть специальный синтаксис для документации.

Если сильно разносить, то проще прямо в readme и писать.

@osv
Copy link
Contributor

osv commented Dec 10, 2021

Да, не документация, а аннотации которые могли б быть в одном месте и отделены от реализации, покрайней мере мне это видеться удобным.

Аннотации в view.tree могли б

  • перекочевать в сгенерированый ts файл.
  • если будет language server то ему проще брать из исходника, но не с readme.

Идея выше, слегка похоже на jsdoc. Только максимально простая, в примере паттерн для выявления аннотации (?<methodName>\w+) - , но может быть и другой

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants