From 22ef47161a0612a2d68f9af41ee6e8a6a3cf48b4 Mon Sep 17 00:00:00 2001 From: KyMAN <0kyman0@gmail.com> Date: Mon, 24 Mar 2025 17:53:28 +0100 Subject: [PATCH] #wip(py): Constants and References added in Python. More items in default dictionary. --- JSON/WMarkDown.py.settings.json | 2 +- Public/doc/es/bugs.w.md | 7 + Public/doc/es/targets.w.md | 35 +++- Public/json/WMarkDown.dict.es.kyman.json | 212 ++++++++++++++++++++++- Public/scss/WMarkDown.css | 2 +- Public/scss/WMarkDown.css.map | 2 +- Public/scss/WMarkDown.scss | 2 +- Public/scss/WMarkDown.web.css | 24 ++- Public/scss/WMarkDown.web.css.map | 2 +- Public/scss/WMarkDown.web.scss | 2 +- Python/WMarkDown.py | 33 ++-- version | 2 +- 12 files changed, 297 insertions(+), 28 deletions(-) diff --git a/JSON/WMarkDown.py.settings.json b/JSON/WMarkDown.py.settings.json index 1f875bf..3c77939 100644 --- a/JSON/WMarkDown.py.settings.json +++ b/JSON/WMarkDown.py.settings.json @@ -31,7 +31,7 @@ ], "licenses" : [ ["copyright", null, null, { - "year" : "2019-2025", + "year" : "2019-2026", "entity" : "Tarsier & KyMAN" }], ["cc_by_nc_sa_4"] diff --git a/Public/doc/es/bugs.w.md b/Public/doc/es/bugs.w.md index 07f9b6d..7bcf404 100644 --- a/Public/doc/es/bugs.w.md +++ b/Public/doc/es/bugs.w.md @@ -45,4 +45,11 @@ Esto es un ejemplo del error, donde el ***elemento1*** y el ***elemento2*** tend > [!Srx00] El problema radica, en el ejemplo aquí expuesto, en que la cursiva sólo afectaría por posición de los atributos de WMarkDown por defecto, al fragmento de texto " y el ", dejando el resto en negrilla y con dos asteriscos sin procesar. Para arreglar dicho error hay que crear un subelemento que monte negrilla y cursiva de golpe, aunque lo ideal es que lo procese directamente tal como está. Es un poco chapuzas el arreglo pero inicialmente, y en base a la filosofía de funcionamiento, esta es la solución más plausible. +### Valor en el CodeDoc + +Cuando se establece valor en el Code Doc, el igual que separa el valor o función del resultado por defecto, en el caso de las funciones, no está separado. + +* [ ] Localizar el error. +* [ ] Solventar el error. + \ No newline at end of file diff --git a/Public/doc/es/targets.w.md b/Public/doc/es/targets.w.md index 3007196..74a99ae 100644 --- a/Public/doc/es/targets.w.md +++ b/Public/doc/es/targets.w.md @@ -58,7 +58,9 @@ Los objetivos para poder llevar a cabo este proyecto son los siguientes: + [ ] Audio de Soundcloud. + [ ] Reproductor de múltiples audios. + [ ] Slider de imágenes y vídeos. - + [X] Módulo de bloques de código. + + [-] Módulo de bloques de código. + + [X] Implementar valores constantes y referencias en Python. + + [ ] Implementar valores constantes y referencias en C#. + [-] Quotes o comentarios. + [X] Bloques crudos. + [X] Bloques iconificados. @@ -79,4 +81,35 @@ Los objetivos para poder llevar a cabo este proyecto son los siguientes: + [ ] Implementar ejemplificación de uso del lenguaje WMarkDown "[[!wmd-examples]]". + [ ] Gestionar cacheados automáticos de los ficheros contra HTML para precompilaciones. +### Puntos del proyecto + +Los puntos a cubrir dentro del proyecto son los siguientes: + +[| +|= Objetivo | Py | C# | Go | PHP | JS | CSS | HTML +| Base HTML | | | | | [X] | [X] | [X] +| Checkboxes | [X] | [X] | [ ] | [ ] | | [X] | +| Párrafos | [X] | [X] | [ ] | [ ] | | [X] | +| Títulos y cabeceras | [X] | [X] | [ ] | [ ] | [X] | [X] | +| Formatos de texto | [X] | [X] | [ ] | [ ] | | [X] | +| Exclusor de marcas | [X] | [X] | [ ] | [ ] | [X] | | +| Include | [X] | [X] | [ ] | [ ] | | | +| Links | [X] | [X] | [ ] | [ ] | | [X] | +| Listas | [X] | [X] | [ ] | [ ] | [X] | [X] | +| Tablas | [X] | [X] | [ ] | [ ] | | [X] | +| Quotes | [X] | [X] | [ ] | [ ] | [X] | [X] | +| Diccionario | | | | | [X] | [X] | +| Sample de color | [X] | [X] | [ ] | [ ] | | [X] | +| Presentación de Links | [X] | [X] | [ ] | [ ] | [X] | [X] | +| Documento de código | [X] | [X] | [ ] | [ ] | [X] | [X] | +|] + +> [!#] Con respecto a Python y Go hablamos de compatibilidad local tanto servidor como WASM. + +> [!#] Cuando hablamos de JS, en este caso, hablamos de un Script propio para la autogestión sobre el entorno local del navegador, pero no cara el desarrollo de esta tecnología cara este entorno, forzando el uso de WASM para dicho fin. + +> [!#] CSS aquí incluye también SASS, siendo CSS para la iconificación y SASS para estilos. Sí es cierto que SASS admite la adjunción de caracteres Unicode escapados, sin embargo, para seguir la filosofía original de SASS, se separaron ambos conceptos. + +> [!#] El diccionario es un proceso que se hace en caliente. + \ No newline at end of file diff --git a/Public/json/WMarkDown.dict.es.kyman.json b/Public/json/WMarkDown.dict.es.kyman.json index b09e02e..f47e82f 100644 --- a/Public/json/WMarkDown.dict.es.kyman.json +++ b/Public/json/WMarkDown.dict.es.kyman.json @@ -104,8 +104,8 @@ ], [ ["/\\b(srx00|ky *man)\\b/ig", "KyMAN"], [ "KyMAN es el desarrollador de AnP y de los desarroladores originales de WMarkDown, ", - "entre otros. Sus lenguajes principales son JavaScript/ECMAScript, Python, PHP, Java, C#, ", - "MySQL, SQL Server, SQLite, HTML y SASS/CSS." + "entre otros. Sus lenguajes principales son Golang, JavaScript/ECMAScript, Python, PHP, ", + "Java, C#, C/C++, MySQL, SQL Server, SQLite, HTML y SASS/CSS." ], [ "https://kyman.k3y.pw/", "https://git.k3y.pw/KyMAN", @@ -271,6 +271,17 @@ "https://ellibrodepython.com/operadores-bitwise", "https://manual.gamemaker.io/monthly/es/Additional_Information/Bitwise_Operators.htm" ] +], [ + ["/\\b(? .description { font-family: "Roboto Mono"; } .wmarkdown-web [data-icon]::before { - font-family: "FA6FR"; } + margin-right: .4em; } .wmarkdown-web input, .wmarkdown-web button, .wmarkdown-web select, .wmarkdown-web textarea { font-size: 1em; } .wmarkdown-web [data-visible=false], .wmarkdown-web [data-hidden=true] { @@ -108,7 +108,7 @@ html, body { left: 0em; width: 100%; } .wmarkdown-web header, .wmarkdown-web footer { - overflow: hidden; + overflow: visible; display: flex; flex-direction: row; } .wmarkdown-web header > *, .wmarkdown-web footer > * { @@ -124,6 +124,7 @@ html, body { font-size: 1em; text-wrap: nowrap; } .wmarkdown-web header h1 .image { + margin-right: .5em; height: 3.6em; } .wmarkdown-web header h1 img { width: auto; @@ -171,21 +172,24 @@ html, body { font-size: .65em; box-sizing: border-box; } .wmarkdown-web .license { - display: flex; - flex-direction: row; align-self: center; margin: 0em .2em; text-align: center; box-sizing: border-box; } - .wmarkdown-web .license span { - flex: auto; - align-self: center; } + .wmarkdown-web .license:not(.license-copyright) { + display: flex; + flex-direction: row; } + .wmarkdown-web .license:not(.license-copyright) span { + flex: auto; + align-self: center; } .wmarkdown-web .license > * { vertical-align: middle; } .wmarkdown-web .license img { width: auto; height: 3em; margin: .2em .2em; } + .wmarkdown-web .license img + span { + display: none; } .wmarkdown-web .gui-controls { display: flex; flex-direction: row; @@ -207,9 +211,13 @@ html, body { border-radius: 0.3em 0em 0em 0.3em; } .wmarkdown-web .gui-controls > :last-child { border-radius: 0em 0.3em 0.3em 0em; } + .wmarkdown-web footer > .i18n { + align-self: flex-end; + position: relative; + bottom: .3em; } .wmarkdown-web main { overflow: auto; } .wmarkdown-web footer > .licenses { - font-size: .8em; } + font-size: .65em; } /*# sourceMappingURL=WMarkDown.web.css.map */ diff --git a/Public/scss/WMarkDown.web.css.map b/Public/scss/WMarkDown.web.css.map index 3771024..00ad1fd 100644 --- a/Public/scss/WMarkDown.web.css.map +++ b/Public/scss/WMarkDown.web.css.map @@ -1,6 +1,6 @@ { "version": 3, -"mappings": "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", +"mappings": "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", "sources": ["WMarkDown.web.scss","../../../AnP/Public/scss/AnP.common.scss","../../../AnP/Public/scss/AnP.settings.scss"], "names": [], "file": "WMarkDown.web.css" diff --git a/Public/scss/WMarkDown.web.scss b/Public/scss/WMarkDown.web.scss index cfabc1c..77bcaba 100644 --- a/Public/scss/WMarkDown.web.scss +++ b/Public/scss/WMarkDown.web.scss @@ -12,5 +12,5 @@ $color-secondary : #880044; .wmarkdown-web{ @include main_web(); main{overflow : auto;} - footer>.licenses{font-size : .8em;} + footer>.licenses{font-size : .65em;} } \ No newline at end of file diff --git a/Python/WMarkDown.py b/Python/WMarkDown.py index bf92666..872e622 100644 --- a/Python/WMarkDown.py +++ b/Python/WMarkDown.py @@ -56,8 +56,8 @@ class WMarkDown: re_white_spaces:REPattern = RECompile(r'[ \t]+') re_line_marks:REPattern = RECompile(r'[\*#~\-_]+|\[[ \-x]\]|\([ \-x]\)', RE_IGNORE_CASE) re_integer:REPattern = RECompile(r'^[0-9]+$') - re_code_doc:REPattern = RECompile(r'^(\[([^\]]+)\][ \t]+)?([\!\?])?(([^\(\[\]\?\!]+)([\:\.]))?([^\(\.\:\[\]\=]+)(\(((.+|[\r\n]+)*)\)|[ \t]*=[ \t]*((.+|[\r\n]+)*))?') - re_code_doc_arguments:REPattern = RECompile(r'([\!\?]{0,2})([^=]+)[ \t]+([^=]+)(=(.+))?') + re_code_doc:REPattern = RECompile(r'^(\[([^\]]+)\][ \t]+)?([\!\?=\&\*]{,3})(([^\(\[\]\?\!]+)([\:\.]))?([^\(\.\:\[\]\=]+)(\(((.+|[\r\n]+)*)\)|[ \t]*=[ \t]*((.+|[\r\n]+)*))?') + re_code_doc_arguments:REPattern = RECompile(r'([\!\?\&\*]{,2})([^=]+)[ \t]+([^=]+)(=(.+))?') re_code_doc_subarguments:REPattern = RECompile(r'<([^<>]+)>|("[^"]*"|\'[^\']*\')') re_start_with_white_spaces:REPattern = RECompile(r'^[ \t]', RE_MULTILINE) re_domain:REPattern = RECompile(r'^[^\:]+\:\/{2}[^\/]+') @@ -639,6 +639,13 @@ class WMarkDown: @classmethod def __doc_typed_format(self, typed:str) -> str: return WMarkDown.filter_html_special_characters(typed.replace(' ', "").replace(',', ", ")) + + @staticmethod + def is_reference(scope:str) -> str|None: + return ( + "reference" if '&' in scope else + "pointer" if '*' in scope else + None) def module_code_doc(self, matches:REMatch, language:Optional[int] = HTML, path:Optional[str] = None) -> str|None: if language & WMarkDown.HTML: @@ -649,6 +656,8 @@ class WMarkDown: base:REMatch = WMarkDown.re_code_doc.search(data) return_type:str = WMarkDown.__doc_typed_format(base.group(2) or "void") access:str = base.group(3) or "public" + constant:str = "constant" if '=' in access else "" + reference:str|None = WMarkDown.is_reference(access) name_space:str|None = base.group(5) environment:str = base.group(6) or "global" method:str = base.group(7) @@ -669,14 +678,14 @@ class WMarkDown: matches:REMatch arguments_l:int = 0 - if access == "?": - access = "protected" - elif access == "!": - access = "private" + access = ( + "protected" if '?' in access else + "private" if '!' in access else + "global") - if environment == ":": + if environment == ':': environment = "static" - elif environment == ".": + elif environment == '.': environment = "object" if parameters: @@ -698,8 +707,9 @@ class WMarkDown: if matches: scopes:str = matches.group(1) or "" - required:bool = "!" in scopes - nullish:bool = "?" in scopes + required:bool = '!' in scopes + nullish:bool = '?' in scopes + subreference:str|None = WMarkDown.is_reference(access) typed:str = WMarkDown.__doc_typed_format(WMarkDown.restore_marks(matches.group(2), fragments)) name:str = matches.group(3).strip() default_value:str = WMarkDown.filter_html_special_characters(WMarkDown.restore_marks((matches.group(5) or "").strip(), fragments)) @@ -707,6 +717,7 @@ class WMarkDown: arguments += ('' + ('Required' if required else '') + ('Nullish' if nullish else '') + + ('' + subreference + '' if subreference else '') + '' + typed + '' + '' + name + '' + ('' + default_value + '' if default_value else '') + @@ -723,7 +734,9 @@ class WMarkDown: return ('
' + '' + full_method + '' + '
' + + ('' + reference + '' if reference else '') + '' + return_type + '' + + ('' + constant + '' if constant else '') + '' + environment + '' + '' + access + '' + '' + full_method + '' + diff --git a/version b/version index 832691d..69a6625 100644 --- a/version +++ b/version @@ -1 +1 @@ -0.0.3.3 \ No newline at end of file +0.0.3.5 \ No newline at end of file