{"id":81463,"date":"2020-05-13T13:42:49","date_gmt":"2020-05-13T11:42:49","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vyshla-notcurses-v1-4-1-biblioteka-dlya-sovremennyh-tekstovyh-interfejsov"},"modified":"2020-05-13T13:42:49","modified_gmt":"2020-05-13T11:42:49","slug":"vyshla-notcurses-v1-4-1-biblioteka-dlya-sovremennyh-tekstovyh-interfejsov","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/news\/vyshla-notcurses-v1-4-1-biblioteka-dlya-sovremennyh-tekstovyh-interfejsov","title":{"rendered":"Se lanz\u00f3 notcurses v1.4.1 \u2014 una biblioteca para interfaces de texto modernas","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/images\/19139\/original.jpg\" itemprop=\"contentURL\"><br \/>\n      <img decoding=\"async\" alt=\"Se lanz\u00f3 notcurses v1.4.1 \u2014 una biblioteca para interfaces de texto modernas\" src=\"\/wp-content\/uploads\/2020\/05\/973d5cc67751ccd145585d50ec2cba73.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>    <\/a><\/p>\n<p>Ha salido una nueva versi\u00f3n de la biblioteca notcurses v1.4.x \u00ab\u00a1la saga contin\u00faa! \u00a1wu-tang! \u00a1wu-tang!\u00bb<\/p>\n<p><noindex><noindex><\/p>\n<p>Notcurses es una biblioteca TUI para emuladores de terminal modernos. Traduciendo literalmente: no maldiciones (not curses). Est\u00e1 escrita en C, utilizando encabezados seguros de C++. Hay envolturas disponibles para <a rel=\"nofollow\" href=\"https:\/\/crates.io\/crates\/notcurses\">Rust<\/a>, <a rel=\"nofollow\" href=\"https:\/\/github.com\/dankamongmen\/notcurses\/issues\/212\">C++<\/a> y <a rel=\"nofollow\" href=\"https:\/\/pypi.org\/project\/notcurses\">Python<\/a>.<\/p>\n<p><\/noindex><\/noindex><\/p>\n<p>\u00bfQu\u00e9 es?: una biblioteca que simplifica TUI complejos en emuladores de terminal modernos, maximizando el soporte para colores brillantes y Unicode. Muchas tareas delegadas a curses se pueden realizar con notcurses (y viceversa).<\/p>\n<p>Lo que no es: una implementaci\u00f3n compatible de X\/Open curses o un reemplazo de ncurses en sistemas existentes.<\/p>\n<p>Notcurses renuncia a la API X\/Open Curses, que se entrega como parte de la Especificaci\u00f3n \u00danica de UNIX. Esta especificaci\u00f3n est\u00e1 obsoleta desde hace tiempo y, por ejemplo, no soporta funcionalidades de terminal como color de 24 bits no indexado. Como tal, notcurses no es un reemplazo de curses. Es menos port\u00e1til y ha sido probada en menos hardware.<br \/>\nCuando es posible, notcurses utiliza la biblioteca terminfo que se entrega con ncurses, aprovechando su portabilidad.<br \/>\nNotcurses abre capacidades avanzadas para la interacci\u00f3n con usuarios en estaciones de trabajo, tel\u00e9fonos, port\u00e1tiles y tabletas.<\/p>\n<p>\u00bfPor qu\u00e9 utilizar esta biblioteca no est\u00e1ndar?<\/p>\n<ul>\n<li>\n<p>La seguridad de los hilos y un uso eficiente en programas multihilo fueron consideraciones de dise\u00f1o desde el principio.<\/p>\n<\/li>\n<li>\n<p>Una API m\u00e1s correctamente estructurada en comparaci\u00f3n con X\/Open:<\/p>\n<ul>\n<li>\n<p>Los identificadores exportados tienen un prefijo para evitar colisiones en los espacios de nombres.<\/p>\n<\/li>\n<li>\n<p>El archivo objeto de la biblioteca exporta un conjunto m\u00ednimo de s\u00edmbolos. Donde es apropiado, se utiliza c\u00f3digo est\u00e1tico solo para encabezados de l\u00ednea. Esto facilita la optimizaci\u00f3n del compilador y reduce el tiempo de carga.<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<noindex><\/p>\n<p>Todas las API originalmente soportan un conjunto universal de s\u00edmbolos (Unicode). La API para celdas se basa en el concepto <a rel=\"nofollow\" href=\"https:\/\/unicode.org\/reports\/tr29\/\">el Cl\u00faster de Grapemas Ampliado de Unicode<\/a>.<\/p>\n<p><\/noindex>\n<\/li>\n<li>\n<p>Capacidades visuales, incluyendo im\u00e1genes, fuentes, videos, texto de alto contraste, sprites y \u00e1reas transparentes. Todas las API soportan de forma nativa color de 24 bits, cuantificado seg\u00fan sea necesario para el terminal.<\/p>\n<\/li>\n<li>\n<noindex><\/p>\n<p>Licencia Apache2, a diferencia de <a rel=\"nofollow\" href=\"https:\/\/invisible-island.net\/ncurses\/ncurses-license.html\">drama<\/a> en varios actos, cuya licencia es ncurses (la \u00faltima se resume como \u00abreformulaci\u00f3n MIT-X11\u00bb).<\/p>\n<p><\/noindex>\n<\/li>\n<\/ul>\n<p>Desde la \u00faltima versi\u00f3n significativa 1.1.0 se han agregado una enorme cantidad de funciones. Los cambios principales:<\/p>\n<ul>\n<li>\n<p>Widget de lectura para la entrada de cadenas de forma arbitraria con enlace a las cadenas de lectura.<\/p>\n<\/li>\n<li>\n<p>Widget subprocess para generar un subproceso, gestionarlo y transmitir sus resultados de vuelta.<\/p>\n<\/li>\n<li>\n<p>En Linux 5.3+ se utiliza un nuevo mecanismo clone3+pidfd para gestionar procesos sin condiciones de carrera.<\/p>\n<\/li>\n<li>\n<p>Widget Fdplane para transmitir un descriptor de archivo arbitrario a un plano (en el cual se basa el subproceso). Ambos permiten que los callbacks estilicen o procesen de otra manera el texto.<\/p>\n<\/li>\n<li>\n<p>Rotaci\u00f3n de planos y efectos visuales. Carga de visualizaciones desde la memoria. Blit arbitrario RGBA\/BGRx.<\/p>\n<\/li>\n<li>\n<p>El men\u00fa se puede colocar en cualquiera (o en ambas) de las superficies superiores e inferiores.<\/p>\n<\/li>\n<li>\n<p>Grandes mejoras en el modo Direct.<\/p>\n<\/li>\n<li>\n<p>Polyfills, degradados y texto de alto contraste.<\/p>\n<\/li>\n<li>\n<p>Se ha a\u00f1adido tetris como ejemplo.<\/p>\n<\/li>\n<li>\n<p>Los envoltorios en C++ de Marek Habersack ahora pueden lanzar excepciones (si es necesario).<\/p>\n<\/li>\n<li>\n<p>FFI de Python y Rust actualizados y probados.<\/p>\n<\/li>\n<\/ul>\n<p><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=TvWdUfIStDI\">Video demo con comentarios del autor.<\/a><br \/>\n<a rel=\"nofollow\" href=\"https:\/\/nick-black.com\/dankwiki\/index.php\/Hacking_The_Planet!_with_Notcurses\">El libro \u00abHacking The Planet! with Notcurses\u00bb del autor<\/a><\/p>\n<p>Fuente: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"http:\/\/www.linux.org.ru\/news\/opensource\/15699897\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u044b\u0448\u043b\u0430 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 notcurses v1.4.x &laquo;the saga continues! wu-tang! wu-tang!&raquo; Notcurses \u044d\u0442\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 TUI \u0434\u043b\u044f \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u043e\u0432. \u0411\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u044f &ndash; \u043d\u0435 \u043f\u0440\u043e\u043a\u043b\u044f\u0442\u0438\u044f (not curses). \u041e\u043d\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043d\u0430 \u0421, \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c C++-safe headers. \u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u043e\u0431\u0451\u0440\u0442\u043a\u0438 \u0434\u043b\u044f Rust, C++ \u0438 Python. \u0427\u0442\u043e \u044d\u0442\u043e \u0442\u0430\u043a\u043e\u0435: \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430, \u0443\u043f\u0440\u043e\u0449\u0430\u044e\u0449\u0430\u044f \u0441\u043b\u043e\u0436\u043d\u044b\u0435 TUI \u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u0445, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0430\u044f \u044f\u0440\u043a\u0438\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":81464,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-81463","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/news\/vyshla-notcurses-v1-4-1-biblioteka-dlya-sovremennyh-tekstovyh-interfejsov\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u0448\u043b\u0430 notcurses v1.4.1 \u2014 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0445 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/news\/vyshla-notcurses-v1-4-1-biblioteka-dlya-sovremennyh-tekstovyh-interfejsov\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-05-13T11:42:49+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-13T11:42:49+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Notcurses v1.4.1 ya est\u00e1 disponible \u2014 biblioteca para interfaces de texto modernas | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/vyshla-notcurses-v1-4-1-biblioteka-dlya-sovremennyh-tekstovyh-interfejsov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u0448\u043b\u0430 notcurses v1.4.1 \u2014 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0445 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 | ProHoster","og:url":"https:\/\/prohoster.info\/es\/blog\/news\/vyshla-notcurses-v1-4-1-biblioteka-dlya-sovremennyh-tekstovyh-interfejsov","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-05-13T11:42:49+00:00","article:modified_time":"2020-05-13T11:42:49+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"81463","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 15:57:25","updated":"2022-09-29 16:14:56","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/81463","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=81463"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/81463\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/81464"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=81463"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=81463"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=81463"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}