Markdown Literary programming that don't break the syntax of any programming language









  • @linpengcheng ,

    Did you notice you were downvoted a couple times on your first post? It’s because these message all appear to be spam. When you post a link, with no explanation, and phrases that look like search-engine-optimization / keyword splatter rather than meaningful content, it sets off most people’s “it’s dangerous spam” warning flags.

    Looking at the links (since they were github links, I am willing to look, but not download unless I understand/trust), I can see that there might be applicability to Notepad++ users. But I don’t immediately get the point, even when I follow your three links.

    If you really want to get your ideas across, you might try explaining what it is that your software is for, and why it’s useful to Notepad++ users. And then participate in the discussion. Don’t just post repeated links.0

    Continuing to post more links to the same stuff won’t really increase people’s receptivity. Re-posting of the same link to the same forum, without adding anything new to the discussion, is another common sign of spam – just trying to “bump” the thread, which in general is just trying get more views and more clicks – rather than a sincere desire to participate in and help the Notepad++ Community.



  • @PeterJones
    Thanks for your suggestions.

    I repeat the reason for posting the link:

    • The first time is just an idea.
    • The second add a bat solution.
    • The third is an upgrade to an PythonScript solution. This PythonScript code is also a Markdown Literary Programming example.

    About file Security:

    • My solution provides a mlp_common_head.md and markdown_literary_programming_viewer.py, both text files that are easy to censor.
    • PythonScript calls open source tools: mermaidjs, Prismjs, github-markdown-css, Multimarkdown (Optional), cutemarked (Optional), Chromeportable (Optional), MarkdownViewer++ plugin (Optional) are famous open source projects, and I have their official homepage in the linked blog, You can download it yourself and provide path in the Py configuration area.

    Finally, add a description of the project.

    Comment Area Markup Method

    Literary Programming, Programming was the first, Literary was the second.

    the main purpose of the Code comment area markup method is to live Preview directly in the Code Editor Preview panel without exporting or any preprocessing.

    Just add a line comment character of the programming language before each line of Markdown.

    In the comments of code, you can draw flowcharts, tasklist, display data visualizations, etc.

    The method is to add extension instructions in any programming language comment area:

    • markdown
    • manual eval code, live eval code, print result, display data visualization and other directives

    When previewing or converting a format, you only need to simply preprocess: delete line comment characters with regular expressions, example: sed ‘s/^;//’ x.clj

    Note:

    • line comment character of Clojure(Lisp) is ;
    • line comment characters of the current file type can be obtained from the editor’s API.
    • when we edit the code, we can preview the effect in real time. Editing literary code has a live preview panel like most markdown editors.

    Advantages

    • fast, live, simple, no interference.

    • It don’t break the syntax of any programming language, you can compile directly. comment area markup method can be applied to any programming language and any markup (including Org,rst, asciidoc, etc.), which is the greatest advantage.

    • you only need a single line code to delete line comment characters using regular expressions, then you can use any Markdown parse or converter.

    • Support any code editor that supports Markdwon Live preview, allowing the source code of any programming language to become rich text in real time. In the code’s comment area, You can use the markdown to draw flowcharts, tables, task lists, and display images on the live preview panel, enhance the readability of your code.

    • If you extend the Markdwon tag, you can implement the eval code, print result, display data visualization and other instruction tags, to achieve live programming, live test.

    • When writing (reading or refactoring) code files, It can modify and live preview directly in the editor without exporting or any preprocessing.

    • Reliable. Maximum code accuracy is guaranteed, and markup language errors do not affect the code.

    • It hasn’t interfere anyone to read the code. Markdown is simple, so if it doesn’t have syntax highlighting, it doesn’t have much effect on writing and reading. And having a gray comment area doesn’t affect reading code, especially for people who don’t understand the markup language. Strict distinction between markdown and code, and gray comment area can reduce the amount of information in the source code file, conducive to reading code.

    Disadvantages of traditional literary programming

    • because traditional literary programming users are mainly technical writers, speakers, technical document Maintainers, Style is the document priority, greatly increase the amount of information in the code, interfere with the code reading, especially for non-literary programming programmers are unfriendly, or even unreadable, so there are very few applications in the field of programming.

    • not universal, specific programming languages and markup languages.

    • Requires a complex pre-compiler.

    • Complex to use and high learning costs.

    • Not intuitive.

    Therefore, the method described in this paper, in addition to the document-first genre of traditional literary programming, has innovated a new genre ---- code-first genre, so that literary programming in the field of programming Widely used as possible.

    Live Preview Effects

    the NPP community can not show the pictures on GitHub.



  • @linpengcheng

    thank you for your clarification.

    however, we stick to a codex not to post, without an entity or person being in direct need of any specific information.
    if a necessity is given, the information will also be broken down to the needs and comprehension of the current solicitor.

    note: reading some of your publications shows, that you are presumably highly skilled, but if you don’t mind a little empathic analysation:
    it seems that you are a bit detached from social surroundings from time to time.
    this is quite common and nothing to worry about, it came to pass for others as well.



  • @linpengcheng ,

    Thanks for the clarification and details. If you’d included the reason for each time you posted the link – probably with more context than a single sentence – in each posting, it would not have looked as much like spam. As you make updates, feel free to continue to post in this thread, with things like “Community, I just updated my project, so now it has additional features XXX, YYY, and ZZZ, and does WWW better.”

    @Meta-Chuh said:

    however, we stick to a codex not to post, without an entity or person being in direct need of any specific information.

    I’m not sure I fully agree with that. I don’t have a problem with people posting in the Community when they’ve got a newly-created plugin or helper tool or script that enhances Notepad++. (It would be pretty hypocritical of me to say that others cannot announce their Notepad+±related tools here.)

    I just think that if you are going to announce such a tool to the Community, it needs to come with a description, not just a standalone link, so that we know what the tool is, why the link was put here, and how it might help Notepad++ users.



  • @PeterJones

    I’m not sure I fully agree with that. I don’t have a problem with people posting in the Community when they’ve got a newly-created plugin or helper tool or script that enhances Notepad++. (It would be pretty hypocritical of me to say that others cannot announce their Notepad+±related tools here.)

    I just think that if you are going to announce such a tool to the Community, it needs to come with a description, not just a standalone link, so that we know what the tool is, why the link was put here, and how it might help Notepad++ users.

    i agree to that, my apologies.



  • @PeterJones
    Thanks.


Log in to reply