Есть ли способ передать HTML, чтобы Gedit без потери пробела.
Я пытаюсь с: echo "'+html5template+'" | gedit
Вывод выглядит так:
<!DOCTYPE html><html><head><title></title></head><body></body></html>
Но мне нужно, чтобы это было так:
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
</body>
</html>
Сценарий выглядит так:
doctype='<!DOCTYPE html>'
html_start='<html>'
header_start='<head>'
header_end='</head>'
body='<body></body>'
html_end='</html>'
meta_data=''
#get page title
meta_data += '<title>'+self.builder.get_object("page_title_entry").get_text()+'</title>'
#build the html template
html5template=doctype+html_start+header_start+meta_data+header_end+body+html_end
#open template with gedit
Popen('echo "'+html5template+'" | gedit', shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=False)
Вы не создаете интервалы в своем коде Python, ваш вывод - именно то, что создает ваш код Python.
Чтобы получить необходимый интервал, вы можете, например, заменить
html5template=doctype+html_start+header_start+meta_data+header_end+body+html_end
на
indent=' '
html5template='\n'.join((doctype,
html_start,
indent + header_start,
indent + indent + meta_data,
indent + header_end,
indent + body,
html_end
))