gL i 8dZddlmZddlmZddZd dZd dZy) z+ Internal module for console introspection ) annotations)get_terminal_sizecddlm}|d}|d}tr/trddlm}|d}|d}nt \}}nd\}}|xs||xs|fS)zn Return console size as tuple = (width, height). Returns (None,None) in non-interactive session. r get_optionz display.widthzdisplay.max_rows)get_default_val)NN)pandasrin_interactive_sessionin_ipython_frontendpandas._config.configrr)r display_widthdisplay_heightrterminal_widthterminal_heights _/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/pandas/io/formats/console.pyget_console_sizer su "/M 23N   >,_=N-.@AO/@.A +NO*4'  *NN,Mo MMcfddlmfd} txs|S#t$r |cYSwxYw)z Check if we're running in an interactive shell. Returns ------- bool True if running under python/ipython interactive shell. rrcj ddl}t|d xsdS#t$r dcYSwxYw)Nrzmode.sim_interactive__file__)__main__ModuleNotFoundErrorhasattr)mainrs r check_mainz*in_interactive_session..check_mainAsE 6 #4,,R ;Q0RR# 645 5 6s 22)r r __IPYTHON__ NameError)rrs @rr r 6s7"S*jl* |s 00c~ t}dtt|jvS#t$rYywxYw)zZ Check if we're inside an IPython zmq frontend. Returns ------- bool zmqF) get_ipythonstrtypelowerr)ips rr r Os? ]DH ++---    s -0 <<N)returnztuple[int | None, int | None])r%bool)__doc__ __future__rshutilrrr r rrr+s##$&NZ2r