@@ -30,38 +30,96 @@ def construct(self):
3030 print (f"{ settings .INFO_STRING } { self .cmd } " )
3131
3232 self .show_intro ()
33- # self.recenter_frame()
34- # self.scale_frame()
35- # self.add_details(repo_name)
36- self .show_command_as_title ()
33+ self .add_details ()
34+ self .recenter_frame ()
35+ self .scale_frame ()
3736 self .fadeout ()
3837 self .show_outro ()
3938
40- def add_details (self , repo_name ):
41- text1 = m .Text (
42- f"Successfully cloned from { self .url } into ./{ repo_name } " ,
39+ def add_details (self ):
40+ self .camera .frame .scale_to_fit_width (18 * 1.1 )
41+ project_root = m .Rectangle (
42+ height = 9.0 ,
43+ width = 18.0 ,
44+ color = self .fontColor ,
45+ )
46+
47+ cmd_text = m .Text (
48+ self .cmd ,
49+ font = self .font ,
50+ font_size = 36 ,
51+ color = self .fontColor ,
52+ )
53+ cmd_text .align_to (project_root , m .UP ).shift (m .UP * 0.25 + cmd_text .height )
54+
55+ project_root_text = m .Text (
56+ os .path .basename (os .getcwd ()) + "/" ,
4357 font = self .font ,
4458 font_size = 20 ,
4559 color = self .fontColor ,
46- weight = m .BOLD ,
4760 )
48- text1 . move_to ([ self . camera . frame . get_center ()[ 0 ], 4 , 0 ] )
61+ project_root_text . align_to ( project_root , m . LEFT ). align_to ( project_root , m . UP ). shift ( m . RIGHT * 0.25 ). shift ( m . DOWN * 0.25 )
4962
50- text2 = m .Text (
51- f"Cloned repo log: " ,
63+ dot_git_text = m .Text (
64+ ".git/ " ,
5265 font = self .font ,
5366 font_size = 20 ,
5467 color = self .fontColor ,
55- weight = m .BOLD ,
5668 )
57- text2 . move_to ( text1 . get_center () ).shift (m .DOWN / 2 )
69+ dot_git_text . align_to ( project_root_text , m . UP ). shift ( m . DOWN ). align_to ( project_root_text , m . LEFT ).shift (m .RIGHT * 0.5 )
5870
59- self .toFadeOut .add (text1 )
60- self .toFadeOut .add (text2 )
61- self .recenter_frame ()
62- self .scale_frame ()
71+ head_text = m .Text ("HEAD" , font = self .font , color = self .fontColor , font_size = 20 ).align_to (dot_git_text , m .UP ).shift (m .DOWN ).align_to (dot_git_text , m .LEFT ).shift (m .RIGHT * 0.5 )
72+
73+ down_shift = m .DOWN
74+ config_text = m .Text ("config" , font = self .font , color = self .fontColor , font_size = 20 ).align_to (head_text , m .UP ).shift (down_shift ).align_to (dot_git_text , m .LEFT ).shift (m .RIGHT * 0.5 )
75+ description_text = m .Text ("description" , font = self .font , color = self .fontColor , font_size = 20 ).align_to (config_text , m .UP ).shift (down_shift ).align_to (dot_git_text , m .LEFT ).shift (m .RIGHT * 0.5 )
76+ hooks_text = m .Text ("hooks/" , font = self .font , color = self .fontColor , font_size = 20 ).align_to (description_text , m .UP ).shift (down_shift ).align_to (dot_git_text , m .LEFT ).shift (m .RIGHT * 0.5 )
77+ info_text = m .Text ("info/" , font = self .font , color = self .fontColor , font_size = 20 ).align_to (hooks_text , m .UP ).shift (down_shift ).align_to (dot_git_text , m .LEFT ).shift (m .RIGHT * 0.5 )
78+ objects_text = m .Text ("objects/" , font = self .font , color = self .fontColor , font_size = 20 ).align_to (info_text , m .UP ).shift (down_shift ).align_to (dot_git_text , m .LEFT ).shift (m .RIGHT * 0.5 )
79+ refs_text = m .Text ("refs/" , font = self .font , color = self .fontColor , font_size = 20 ).align_to (objects_text , m .UP ).shift (down_shift ).align_to (dot_git_text , m .LEFT ).shift (m .RIGHT * 0.5 )
80+
81+ dot_git_text_arrow = m .Arrow (start = dot_git_text .get_right (), end = dot_git_text .get_right () + m .RIGHT * 3.5 , color = self .fontColor )
82+ head_text_arrow = m .Arrow (start = head_text .get_right (), end = (dot_git_text_arrow .end [0 ], head_text .get_right ()[1 ], 0 ), color = self .fontColor )
83+ config_text_arrow = m .Arrow (start = config_text .get_right (), end = (dot_git_text_arrow .end [0 ], config_text .get_right ()[1 ], 0 ), color = self .fontColor )
84+ description_text_arrow = m .Arrow (start = description_text .get_right (), end = (dot_git_text_arrow .end [0 ], description_text .get_right ()[1 ], 0 ), color = self .fontColor )
85+ hooks_text_arrow = m .Arrow (start = hooks_text .get_right (), end = (dot_git_text_arrow .end [0 ], hooks_text .get_right ()[1 ], 0 ), color = self .fontColor )
86+ info_text_arrow = m .Arrow (start = info_text .get_right (), end = (dot_git_text_arrow .end [0 ], info_text .get_right ()[1 ], 0 ), color = self .fontColor )
87+ objects_text_arrow = m .Arrow (start = objects_text .get_right (), end = (dot_git_text_arrow .end [0 ], objects_text .get_right ()[1 ], 0 ), color = self .fontColor )
88+ refs_text_arrow = m .Arrow (start = refs_text .get_right (), end = (dot_git_text_arrow .end [0 ], refs_text .get_right ()[1 ], 0 ), color = self .fontColor )
89+
90+ dot_git_desc = m .Text ("The hidden .git/ folder is created after running the 'git init' command." , font = self .font , font_size = 18 , color = self .fontColor ).next_to (dot_git_text_arrow , m .RIGHT )
91+ head_desc = m .Text ("A label (ref) that points to the currently checked-out commit." , font = self .font , font_size = 18 , color = self .fontColor ).next_to (head_text_arrow , m .RIGHT )
92+ config_desc = m .Text ("A file containing Git configuration settings for the local repo." , font = self .font , font_size = 18 , color = self .fontColor ).next_to (config_text_arrow , m .RIGHT )
93+ description_desc = m .Text ("A file containing an optional description for your Git repo." , font = self .font , font_size = 18 , color = self .fontColor ).next_to (description_text_arrow , m .RIGHT )
94+ hooks_desc = m .Text ("A folder containing 'hooks' which allow triggering custom\n scripts after running Git actions." , font = self .font , font_size = 18 , color = self .fontColor ).next_to (hooks_text_arrow , m .RIGHT )
95+ info_desc = m .Text ("A folder containing the 'exclude' file, tells Git to ignore\n specific file patterns on your system." , font = self .font , font_size = 18 , color = self .fontColor ).next_to (info_text_arrow , m .RIGHT )
96+ objects_desc = m .Text ("A folder containing Git's object database, which stores the\n objects representing code files, changes and commits tracked by Git." , font = self .font , font_size = 18 , color = self .fontColor ).next_to (objects_text_arrow , m .RIGHT )
97+ refs_desc = m .Text ("A folder holding the refs (labels) Git uses to represent branches & tags." , font = self .font , font_size = 18 , color = self .fontColor ).next_to (refs_text_arrow , m .RIGHT )
6398
6499 if settings .animate :
65- self .play (m .AddTextLetterByLetter (text1 ), m .AddTextLetterByLetter (text2 ))
100+ self .play (m .AddTextLetterByLetter (cmd_text ))
101+ self .play (m .Create (project_root ))
102+ self .play (m .AddTextLetterByLetter (project_root_text ))
103+ self .play (m .AddTextLetterByLetter (dot_git_text ), m .Create (dot_git_text_arrow ), m .AddTextLetterByLetter (dot_git_desc ))
104+ self .play (m .AddTextLetterByLetter (head_text ), m .Create (head_text_arrow ), m .AddTextLetterByLetter (head_desc ))
105+ self .play (m .AddTextLetterByLetter (config_text ), m .Create (config_text_arrow ), m .AddTextLetterByLetter (config_desc ))
106+ self .play (m .AddTextLetterByLetter (description_text ), m .Create (description_text_arrow ), m .AddTextLetterByLetter (description_desc ))
107+ self .play (m .AddTextLetterByLetter (hooks_text ), m .Create (hooks_text_arrow ), m .AddTextLetterByLetter (hooks_desc ))
108+ self .play (m .AddTextLetterByLetter (info_text ), m .Create (info_text_arrow ), m .AddTextLetterByLetter (info_desc ))
109+ self .play (m .AddTextLetterByLetter (objects_text ), m .Create (objects_text_arrow ), m .AddTextLetterByLetter (objects_desc ))
110+ self .play (m .AddTextLetterByLetter (refs_text ), m .Create (refs_text_arrow ), m .AddTextLetterByLetter (refs_desc ))
66111 else :
67- self .add (text1 , text2 )
112+ self .add (cmd_text )
113+ self .add (project_root )
114+ self .add (project_root_text )
115+ self .add (dot_git_text )
116+ self .add (head_text , config_text , description_text , hooks_text , info_text , objects_text , refs_text )
117+ self .add (dot_git_text_arrow , head_text_arrow , config_text_arrow , description_text_arrow , hooks_text_arrow , info_text_arrow , objects_text_arrow , refs_text_arrow )
118+ self .add (dot_git_desc , head_desc , config_desc , description_desc , hooks_desc , info_desc , objects_desc , refs_desc )
119+
120+ self .toFadeOut .add (cmd_text )
121+ self .toFadeOut .add (project_root )
122+ self .toFadeOut .add (project_root_text )
123+ self .toFadeOut .add (head_text , config_text , description_text , hooks_text , info_text , objects_text , refs_text )
124+ self .toFadeOut .add (dot_git_text_arrow , head_text_arrow , config_text_arrow , description_text_arrow , hooks_text_arrow , info_text_arrow , objects_text_arrow , refs_text_arrow )
125+ self .toFadeOut .add (dot_git_desc , head_desc )
0 commit comments