Coverage for sources/ictr/standard/__.py: 96%

23 statements  

« prev     ^ index     » next       coverage.py v7.16.1, created at 2026-09-26 12:43 +0000

1# vim: set filetype=python fileencoding=utf-8: 

2# -*- coding: utf-8 -*- 

3 

4#============================================================================# 

5# # 

6# Licensed under the Apache License, Version 2.0 (the "License"); # 

7# you may not use this file except in compliance with the License. # 

8# You may obtain a copy of the License at # 

9# # 

10# http://www.apache.org/licenses/LICENSE-2.0 # 

11# # 

12# Unless required by applicable law or agreed to in writing, software # 

13# distributed under the License is distributed on an "AS IS" BASIS, # 

14# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # 

15# See the License for the specific language governing permissions and # 

16# limitations under the License. # 

17# # 

18#============================================================================# 

19 

20 

21''' Internal imports for textualizers and their attendants. ''' 

22 

23 

24# ruff: noqa: F401, F403, F405 

25 

26 

27from ..__ import * 

28from ..configuration import * 

29from ..exceptions import * 

30from ..flavors import * 

31from ..printers import * 

32from ..records import * 

33from ..renderables import * 

34from ..textualizers import * 

35 

36ENRICH = False 

37try: 

38 

39 import rich.console as rich_console 

40 import rich.markdown as rich_markdown 

41 import rich.style as rich_style 

42 import rich.text as rich_text 

43 import rich.traceback as rich_traceback 

44 

45 ENRICH = True # pyright: ignore[reportConstantRedefinition] 

46 

47 def produce_rich_console( 

48 control: TextualizationControl, 

49 capture: typx.IO[ str ], 

50 columns_max: Absential[ int ] = absent, 

51 ) -> rich_console.Console: 

52 charset = control.charset or '' 

53 colorize = control.colorize 

54 columns_max_nullable = ( 

55 None if is_absent( columns_max ) else columns_max ) 

56 safe = charset.startswith( 'utf-' ) 

57 return rich_console.Console( 

58 file = capture, 

59 force_terminal = colorize, 

60 no_color = not colorize, 

61 safe_box = safe, 

62 width = columns_max_nullable ) 

63 

64except ImportError: pass