<commit_before>TouchUI.prototype.components.keyboard = {

	isActive: ko.observable(false),
	config: {

		default: {

			display: {
				'accept' :  "Save",
				'bksp'   :  " ",
				'default': 'ABC',
				'meta1'  : '.?123',
				'meta2'  : '#+='
			},

			layout: 'custom',
			customLayout: {
				'default': [
					'q w e r t y u i o p',
					'a s d f g h j k l',
					'{bksp} {s} z x c v b n m',
					'{accept} {c} {left} {right} {meta1} {space}'
				],
				'shift': [
					'Q W E R T Y U I O P',
					'A S D F G H J K L',
					'{bksp} {s} Z X C V B N M',
					'{accept} {c} {left} {right} {meta1} {space}'
				],
				'meta1': [
					'1 2 3 4 5 6 7 8 9 0',
					'- / : ; ( ) \u20ac & @',
					'{bksp} {meta2} . , ? ! \' "',
					'{accept} {c} {left} {right} {default} {space}'
				],
				'meta2': [
					'[ ] { } # % ^ * + =',
					'_ \\ | ~ < > $ \u00a3 \u00a5',
					'{bksp} {meta1} . , ? ! \' "',
					'{accept} {c} {left} {right} {default} {space}'
				]
			}

		},
		terminal: {
			display: {
				'bksp'   :  " ",
				'accept' : 'Save',
				'default': 'ABC',
				'meta1'  : '.?123',
				'meta2'  : '#+='
			},

			layout: 'custom',
			customLayout: {
				'default': [
					'Q W E R T Y U I O P',
					'A S D F G H J K L',
					'{bksp} {s} Z X C V B N M',
					'{accept} {c} {left} {right} {meta1} {space}'
				],
				'meta1': [
					'1 2 3 4 5 6 7 8 9 0',
					'- / : ; ( ) \u20ac & @',
					'{bksp} {meta2} . , ? ! \' "',
					'{accept} {c} {left} {right} {default} {space}'
				],
				'meta2': [
					'[ ] { } # % ^ * + =',
					'_ \\ | ~ < > $ \u00a3 \u00a5',
					'{bksp} {meta1} . , ? ! \' "',
					'{accept} {c} {left} {right} {default} {space}'
				]
			}

		},
		number: {
			display: {
				'bksp'   :  " ",
				'a'      :  "Save",
				'c'      :  "Cancel"
			},

			layout: 'custom',<commit_msg>:art: Add translation strings to keyboard<commit_after>TouchUI.prototype.components.keyboard = {

	isActive: ko.observable(false),
	config: {

		default: {

			display: {
				'accept' :  'Save',
				'bksp'   :  ' ',
				'default': gettext('ABC'),
				'meta1'  : '.?123',
				'meta2'  : '#+='
			},

			layout: 'custom',
			customLayout: {
				'default': [
					gettext('q w e r t y u i o p'),
					gettext('a s d f g h j k l'),
					'{bksp} {s} ' + gettext('z x c v b n m'),
					'{accept} {c} {left} {right} {meta1} {space}'
				],
				'shift': [
					gettext(('Q W E R T Y U I O P'),
					gettext('A S D F G H J K L'),
					'{bksp} {s} ' + gettext('Z X C V B N M'),
					'{accept} {c} {left} {right} {meta1} {space}'
				],
				'meta1': [
					gettext('1 2 3 4 5 6 7 8 9 0'),
					gettext('- / : ; ( ) \u20ac & @'),
					'{bksp} {meta2} ' + gettext('. , ? ! \' "'),
					'{accept} {c} {left} {right} {default} {space}'
				],
				'meta2': [
					gettext('[ ] { } # % ^ * + ='),
					gettext('_ \\ | ~ < > $ \u00a3 \u00a5'),
					'{bksp} {meta1} ' + gettext('. , ? ! \' "'),
					'{accept} {c} {left} {right} {default} {space}'
				]
			}

		},
		terminal: {
			display: {
				'bksp'   :  ' ',
				'accept' : 'Save',
				'default': gettext('ABC'),
				'meta1'  : '.?123',
				'meta2'  : '#+='
			},

			layout: 'custom',
			customLayout: {
				'default': [
					gettext(('Q W E R T Y U I O P'),
					gettext('A S D F G H J K L'),
					'{bksp} {s} ' + gettext('Z X C V B N M'),
					'{accept} {c} {left} {right} {meta1} {space}'
				],
				'meta1': [
					gettext('1 2 3 4 5 6 7 8 9 0'),
					gettext('- / : ; ( ) \u20ac & @'),
					'{bksp} {meta2} ' + gettext('. , ? ! \' "'),
					'{accept} {c} {left} {right} {default} {space}'
				],
				'meta2': [
					gettext('[ ] { } # % ^ * + ='),
					gettext('_ \\ | ~ < > $ \u00a3 \u00a5'),
					'{bksp} {meta1} ' + gettext('. , ? ! \' "'),
					'{accept} {c} {left} {right} {default} {space}'
				]
			}

		},
		number: {
			display: {
				'bksp'   :  ' ',
				'a'      :  'Save',
				'c'      :  'Cancel'
			},

			layout: 'custom',
{'fraction_non_alphanumeric': 0.25141533710756564, 'fraction_numerical': 0.029336078229541946, 'mean_word_length': 1.7724679029957204, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 14, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5694848', 'n_tokens_mistral': 2244, 'n_tokens_neox': 1715, 'n_words': 426}