groffstudio

Diff
Login

Diff

Differences From Artifact [38c6a3be4b]:

To Artifact [0bdef3f198]:


1
2

3
4
5


6
7
8

9
10
11
12
13
14
15
16

17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

34
35
36

37
38
39
40
41
42
43
44
45

46
47
48
49
50
51



52
53
54
55
56
57
58


59
60
61

62
63
64
65
66
67
68
69

70
71

72
73
74
75
76
77
78
79
80
81
82
83
84
85

86
87
88
89
90
91
92
93
94

95
96

97
98
99
100
101
102
103
104

105
106

107
108
109
110
111
112
113
114

115
116
117
118
119
120
121
122
123

124
125

126
127
128
129
130
131
132

133
134

135
136
137
138
139
140
141

142
143

144
145
146
147
148
149
150

151
152

153
154
155
156
157
158
159

160
161

162
163
164
165
166
167
168

169
170

171
172
173
174
175
176
177

178
179
180
181
182
183
184
185
186

187
188

189
190
191
192
193
194
195
196

197
198

199
200
201
202
203
204
205
206
207
208
209

210
211
212
213
214



215
216
217
218
219
220

221
222

223
224
225
226
227
228
229
230
231
232

233
234

235
236
237
238
239
240
241
242
243
244

245
246

247
248
249
250
251
252
253
254
255
256
257

258
259

260
261
262
263
264
265
266
1

2
3


4
5
6
7

8
9
10
11
12
13
14
15

16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32

33
34
35

36
37
38
39
40
41
42
43
44

45
46
47
48



49
50
51
52
53
54
55
56


57
58
59
60

61
62
63
64
65
66
67
68

69
70

71
72
73
74
75
76
77
78
79
80
81
82
83
84

85
86
87
88
89
90
91
92
93

94
95

96
97
98
99
100
101
102
103

104
105

106
107
108
109
110
111
112
113

114
115
116
117
118
119
120
121
122

123
124

125
126
127
128
129
130
131

132
133

134
135
136
137
138
139
140

141
142

143
144
145
146
147
148
149

150
151

152
153
154
155
156
157
158

159
160

161
162
163
164
165
166
167

168
169

170
171
172
173
174
175
176

177
178
179
180
181
182
183
184
185

186
187

188
189
190
191
192
193
194
195

196
197

198
199
200
201
202
203
204
205
206
207
208

209
210
211



212
213
214
215
216
217
218
219

220
221

222
223
224
225
226
227
228
229
230
231

232
233

234
235
236
237
238
239
240
241
242
243

244
245

246
247
248
249
250
251
252
253
254
255
256

257
258

259
260
261
262
263
264
265
266

-
+

-
-
+
+


-
+







-
+
















-
+


-
+








-
+



-
-
-
+
+
+





-
-
+
+


-
+







-
+

-
+













-
+








-
+

-
+







-
+

-
+







-
+








-
+

-
+






-
+

-
+






-
+

-
+






-
+

-
+






-
+

-
+






-
+

-
+






-
+








-
+

-
+







-
+

-
+










-
+


-
-
-
+
+
+





-
+

-
+









-
+

-
+









-
+

-
+










-
+

-
+







object MainForm: TMainForm
  Left = 976
  Left = 2381
  Height = 692
  Top = 91
  Width = 857
  Top = 99
  Width = 981
  Caption = 'groffstudio'
  ClientHeight = 692
  ClientWidth = 857
  ClientWidth = 981
  OnClose = FormClose
  OnCreate = FormCreate
  LCLVersion = '2.3.0.0'
  object MainStatusBar: TStatusBar
    Left = 0
    Height = 23
    Top = 669
    Width = 857
    Width = 981
    Panels = <    
      item
        Text = 'file name with save status'
        Width = 200
      end    
      item
        Text = 'build successful?'
        Width = 120
      end    
      item
        Text = 'update available'
        Width = 120
      end>
    SimplePanel = False
  end
  object ExtendedNotebook1: TExtendedNotebook
    Left = 10
    Left = 8
    Height = 662
    Top = 8
    Width = 837
    Width = 961
    ActivePage = tsEdit
    Anchors = [akTop, akLeft, akRight, akBottom]
    Style = tsFlatButtons
    TabIndex = 0
    TabOrder = 1
    object tsEdit: TTabSheet
      Caption = 'edit a groff document'
      ClientHeight = 631
      ClientWidth = 829
      ClientWidth = 953
      ParentFont = False
      object GroupBox1: TGroupBox
        Left = 10
        Height = 74
        Top = 552
        Width = 809
        Height = 66
        Top = 560
        Width = 933
        Align = alBottom
        BorderSpacing.Left = 10
        BorderSpacing.Right = 10
        BorderSpacing.Bottom = 5
        Caption = 'build'
        ClientHeight = 54
        ClientWidth = 805
        ClientHeight = 46
        ClientWidth = 929
        TabOrder = 0
        object Label1: TLabel
          Left = 112
          Left = 184
          Height = 15
          Top = -4
          Width = 72
          Caption = 'macro to use:'
          ParentColor = False
        end
        object cmbMacro: TComboBox
          Left = 112
          Left = 184
          Height = 23
          Top = 20
          Top = 16
          Width = 100
          ItemHeight = 15
          Items.Strings = (
            'man'
            'me'
            'mm'
            'mom'
            'ms'
          )
          TabOrder = 0
          Text = '[ select ]'
        end
        object Label2: TLabel
          Left = 682
          Left = 806
          Height = 15
          Top = -4
          Width = 78
          Anchors = [akTop, akRight]
          Caption = 'output format:'
          ParentColor = False
        end
        object rdPs: TRadioButton
          Left = 684
          Left = 807
          Height = 19
          Top = 24
          Top = 16
          Width = 71
          Anchors = [akTop, akRight]
          Caption = 'PostScript'
          OnChange = rdPsChange
          TabOrder = 1
        end
        object rdPdf: TRadioButton
          Left = 764
          Left = 887
          Height = 19
          Top = 24
          Top = 16
          Width = 39
          Anchors = [akTop, akRight]
          Caption = 'PDF'
          OnChange = rdPdfChange
          TabOrder = 2
        end
        object Label3: TLabel
          Left = 300
          Left = 424
          Height = 15
          Top = -4
          Width = 76
          Anchors = [akTop, akRight]
          Caption = 'preprocessors:'
          ParentColor = False
        end
        object chkEqn: TCheckBox
          Left = 358
          Left = 480
          Height = 19
          Top = 24
          Top = 16
          Width = 38
          Anchors = [akTop, akRight]
          Caption = 'eqn'
          TabOrder = 3
        end
        object chkPic: TCheckBox
          Left = 444
          Left = 566
          Height = 19
          Top = 24
          Top = 16
          Width = 34
          Anchors = [akTop, akRight]
          Caption = 'pic'
          TabOrder = 4
        end
        object chkTbl: TCheckBox
          Left = 532
          Left = 654
          Height = 19
          Top = 24
          Top = 16
          Width = 32
          Anchors = [akTop, akRight]
          Caption = 'tbl'
          TabOrder = 5
        end
        object chkGrn: TCheckBox
          Left = 402
          Left = 524
          Height = 19
          Top = 24
          Top = 16
          Width = 36
          Anchors = [akTop, akRight]
          Caption = 'grn'
          TabOrder = 6
        end
        object chkChem: TCheckBox
          Left = 302
          Left = 424
          Height = 19
          Top = 24
          Top = 16
          Width = 48
          Anchors = [akTop, akRight]
          Caption = 'chem'
          TabOrder = 7
        end
        object chkRefer: TCheckBox
          Left = 484
          Left = 606
          Height = 19
          Top = 24
          Top = 16
          Width = 42
          Anchors = [akTop, akRight]
          Caption = 'refer'
          TabOrder = 8
        end
        object Label4: TLabel
          Left = 583
          Left = 707
          Height = 15
          Top = -4
          Width = 34
          Anchors = [akTop, akRight]
          Caption = 'extras:'
          ParentColor = False
        end
        object chkPdfMark: TCheckBox
          Left = 585
          Left = 708
          Height = 19
          Top = 24
          Top = 16
          Width = 63
          Anchors = [akTop, akRight]
          Caption = 'Pdfmark'
          Enabled = False
          TabOrder = 9
        end
        object btnBuild: TButton
          Left = 1
          Left = 0
          Height = 29
          Top = 0
          Top = 10
          Width = 75
          Caption = 'build'
          Color = clLime
          Enabled = False
          Font.Style = [fsBold, fsItalic]
          OnClick = btnBuildClick
          ParentFont = False
          TabOrder = 10
        end
        object chkLogFile: TCheckBox
          Left = 8
          Left = 80
          Height = 19
          Hint = 'If enabled, a log file containing the groff output will be placed alongside the source document.'
          Top = 32
          Width = 80
          Caption = 'with log file'
          Top = 16
          Width = 68
          Caption = 'log to file'
          Enabled = False
          TabOrder = 11
        end
      end
      object btnSaveGroff: TButton
        Left = 744
        Left = 868
        Height = 28
        Top = 512
        Top = 528
        Width = 75
        Anchors = [akRight, akBottom]
        Caption = 'save'
        Font.Style = [fsBold]
        OnClick = btnSaveGroffClick
        ParentFont = False
        TabOrder = 1
      end
      object btnLoadGroff: TButton
        Left = 663
        Left = 787
        Height = 28
        Top = 512
        Top = 528
        Width = 75
        Anchors = [akRight, akBottom]
        Caption = 'load'
        Font.Style = [fsBold]
        OnClick = btnLoadGroffClick
        ParentFont = False
        TabOrder = 2
      end
      object Label5: TLabel
        Left = 207
        Left = 331
        Height = 15
        Top = 525
        Top = 541
        Width = 438
        Anchors = [akRight, akBottom]
        Caption = 'note that everything build-related will be stored in the document''s storage directory'
        Font.Color = clBlue
        Font.Style = [fsItalic]
        ParentColor = False
        ParentFont = False
      end
      inline SynEdit1: TSynEdit
        Left = 10
        Height = 507
        Height = 523
        Top = 0
        Width = 809
        Width = 933
        Anchors = [akTop, akLeft, akRight, akBottom]
        Font.CharSet = 4
        Font.Height = -13
        Font.Name = 'Consolas'
        Font.Pitch = fpFixed
        Font.Quality = fqCleartypeNatural
        ParentColor = False
754
755
756
757
758
759
760
761

762
763
764
765
766
767
768
769
770
771

772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792

793
794
795
796
797

798
799
800
801
802
803
804

805
806
807
808
809
810
811
812
813
814
815
816
817
818

819
820
821
822
823
824
825
826

827
828
829
830
831
832
833
834
835
836
837
838

839
840

841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859

860
861
862
863
864
865
866
867
868
869

870
871
872
873
874
875
876
877
878
879
880
881
882

883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900

901
902
903
904
905
906
907
754
755
756
757
758
759
760

761
762
763
764
765
766
767
768
769
770

771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791

792
793
794
795
796

797
798
799
800
801
802
803

804
805
806
807
808
809
810
811
812
813
814
815
816
817

818
819
820
821
822
823
824
825

826
827
828
829
830
831
832
833
834
835
836
837

838
839

840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858

859
860
861
862
863
864
865
866
867
868

869
870
871
872
873
874
875
876
877
878
879
880
881

882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899

900
901
902
903
904
905
906
907







-
+









-
+




















-
+




-
+






-
+













-
+







-
+











-
+

-
+


















-
+









-
+












-
+

















-
+







          end
        end
      end
    end
    object tsSettings: TTabSheet
      Caption = 'groffstudio settings'
      ClientHeight = 631
      ClientWidth = 829
      ClientWidth = 953
      object chkAutoSaveBuildSettings: TCheckBox
        Left = 0
        Height = 19
        Top = 16
        Width = 310
        Caption = 'Save and restore the chosen build settings for next time'
        TabOrder = 0
      end
      object btnSaveSettings: TButton
        Left = 740
        Left = 864
        Height = 25
        Top = 600
        Width = 91
        Anchors = [akRight, akBottom]
        Caption = 'save settings'
        OnClick = btnSaveSettingsClick
        TabOrder = 1
      end
      object Label14: TLabel
        Left = 0
        Height = 15
        Top = 48
        Width = 129
        Caption = 'Yes, that''s all for now. :-)'
        ParentColor = False
      end
    end
    object tsGroff: TTabSheet
      Caption = 'groff version'
      ClientHeight = 631
      ClientWidth = 829
      ClientWidth = 953
      object GroupBox2: TGroupBox
        Left = 20
        Height = 57
        Top = 566
        Width = 789
        Width = 913
        Align = alBottom
        BorderSpacing.Left = 20
        BorderSpacing.Right = 20
        BorderSpacing.Bottom = 8
        Caption = 'groff for Windows'
        ClientHeight = 37
        ClientWidth = 785
        ClientWidth = 909
        TabOrder = 0
        object Label6: TLabel
          Left = 8
          Height = 15
          Top = 8
          Width = 108
          Caption = 'latest version online:'
          ParentColor = False
        end
        object edtOnlineGroffVersionWindows: TEdit
          Left = 136
          Height = 15
          Top = 8
          Width = 552
          Width = 676
          Anchors = [akTop, akLeft, akRight]
          BorderStyle = bsNone
          Enabled = False
          TabOrder = 0
          Text = 'fetching ...'
        end
        object btnDownloadGroffWindows: TButton
          Left = 696
          Left = 820
          Height = 25
          Top = 5
          Width = 80
          Anchors = [akTop, akRight]
          Caption = 'download it'
          OnClick = btnDownloadGroffWindowsClick
          TabOrder = 1
        end
      end
      object Label7: TLabel
        Left = 8
        Height = 30
        Height = 15
        Top = 8
        Width = 817
        Width = 941
        Anchors = [akTop, akLeft, akRight]
        Caption = 'as you might guess, groffstudio requires a working installation of groff. this page performs the basic checks for you. note that on windows, everything is harder than it should. :-)'
        Constraints.MaxHeight = 582
        ParentColor = False
        WordWrap = True
      end
      object Label9: TLabel
        Left = 8
        Height = 15
        Top = 56
        Width = 70
        Caption = 'groff version:'
        ParentColor = False
      end
      object edtGroffInstalledVersion: TEdit
        Left = 144
        Height = 15
        Top = 56
        Width = 681
        Width = 805
        Anchors = [akTop, akLeft, akRight]
        BorderStyle = bsNone
        Enabled = False
        TabOrder = 1
      end
      object lblTroffCommandNotFound: TLabel
        Left = 8
        Height = 45
        Top = 112
        Width = 816
        Width = 940
        Anchors = [akTop, akLeft, akRight]
        Caption = 'groff was not found. in order to use groffstudio, you absolutely need groff in your PATH variable. on unix and unix-like systems, you''ll need to edit the $PATH variable. on windows, i warmly recommend the Rapid Environment Editor for that.'#13#10'please exit groffstudio at your nearest convenience and adjust your PATH variables. then try again.'
        Font.Color = clRed
        ParentColor = False
        ParentFont = False
        Visible = False
        WordWrap = True
      end
      object edtGroffstudioInstalledVersion: TEdit
        Left = 144
        Height = 15
        Top = 77
        Width = 681
        Width = 805
        Anchors = [akTop, akLeft, akRight]
        BorderStyle = bsNone
        Enabled = False
        TabOrder = 2
      end
      object Label10: TLabel
        Left = 8
        Height = 15
        Top = 77
        Width = 103
        Caption = 'groffstudio version:'
        ParentColor = False
      end
    end
    object tsAbout: TTabSheet
      Caption = 'about groffstudio'
      ClientHeight = 631
      ClientWidth = 829
      ClientWidth = 953
      object lblAboutProductName: TLabel
        Left = 0
        Height = 61
        Top = 16
        Width = 315
        Caption = 'groffstudio x.y.z'
        Font.Color = clBlue
947
948
949
950
951
952
953
954

955
956
957
958
959
960
961
947
948
949
950
951
952
953

954
955
956
957
958
959
960
961







-
+







        ParentColor = False
        ParentFont = False
      end
      object mLicense: TMemo
        Left = 0
        Height = 418
        Top = 216
        Width = 836
        Width = 960
        Anchors = [akTop, akLeft, akRight]
        ScrollBars = ssAutoBoth
        TabOrder = 0
      end
      object lblWebsite: TLabel
        Cursor = crHandPoint
        Left = 120