cmderdev / cmder

Lovely console emulator package for Windows

Home Page:https://cmder.app

Repository from Github https://github.comcmderdev/cmderRepository from Github https://github.comcmderdev/cmder

[Bug] cmder executes printf function very slow

jnambo opened this issue · comments

Version Information

Cmder version: Version 1.3.25.328
Operating system: 
Edition Windows 11 Pro
Version: 23H2
Processor: 13th Gen Intel(R) Core(TM) i9-13950HX   2.20 GHz
Installed RAM: 64.0 GB (63.7 GB usable)

Cmder Edition

Cmder Full (with Git)

Description of the issue

cmder take around 2 to 3 senconds to execute the printf command see the screenshot and the log file taken from debug feature:

Image

cmder debug.csv

How to reproduce

I have a batch script that prints valid custom "profiles" that I created for my work. It took a lot of time to print the whole table. I can share with you an example.

`@echo off
setlocal
call colors.bat

ECHO.
printf "%IPurple%Valid Profiles are:%Full_Color_Reset%"
ECHO.
printf "-----------------------------------------------\n"
printf "|     Profile     |          Proyect          |\n"
printf "-----------------------------------------------\n"
printf "|LRD ------------> L. & R. Distributors, Inc  |\n"
printf "|etrain ---------> Dematic's Etrain           |\n"
printf "|ELI-LILLY-CON---> Elli Lilly Concord         |\n"
printf "|Eli-Lilly-RTP --> Elli Lilly RTP             |\n"
printf "|Eli-Lilly-IDAP -> Elli Lilly Indianapolis    |\n"
printf "|ACE ------------> ACE Hardware               |\n"
printf "|GRI ------------> Groupe Robert Inc.         |\n"
printf "|loblaw ---------> Loblaw.                    |\n"
printf "|AMC ------------> Americold.                 |\n"
printf "|CE -------------> Cooper Electric.           |\n"
printf "|CEMD -----------> Capital Electric MD.       |\n"
printf "|NC -------------> North Coast.               |\n"
printf "|HH -------------> Home Hardware.             |\n"
printf "-----------------------------------------------\n"
ECHO.
printf "%IYellow%example:%Full_Color_Reset%"
ECHO.
rem // Store current code page in a variable for later restore (optional):
for /F "tokens=2 delims=:" %%C in ('chcp') do set /A "$CP=%%C"
rem // Change code page to UTF-8 Unicode:
chcp 65001 > nul
printf "%IWhite%λ%Full_Color_Reset% switchCmderProfile GRI"
rem // Restore original code page (optional):
chcp %$CP% > nul
ECHO.

endlocal`

Additional context

This started to happen suddenly, this problem started a couple of weeks ago, the terminal is executed with admin rights all the time

Checklist

  • I have read the documentation.
  • I have searched for similar issues and found none that describe my issue.
  • I have reproduced the issue on the latest version of Cmder.
  • I am certain my issues are not related to ConEmu, Clink, or other third-party tools that Cmder uses.

Whats wrong with echo?

This is not a Cmder bug.

@jnambo printf is some kind of external program.

The issue is either with printf or maybe with ConEmu, but the issue is not related to Cmder.

Most likely one of the following has happened, and these are things you could investigate:

  1. Maybe there's been a change in the printf program.
  2. Maybe an antivirus system is taking longer than usual to analyze whether printf is safe to run.