You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: editor_manual.go
    path of file: ./repos/jira-cli/pkg/surveyext
    
    the code of the file until where you have to start completion: package surveyext

import (
	"bytes"
	"io"
	"os"
	"os/exec"
	"runtime"

	"github.com/cli/safeexec"
	shellquote "github.com/kballard/go-shellquote"
)

type showable interface {
	Show
    
func needsBom() bool {
	// The reason why we do this is because notepad.exe on Windows determines the
	// encoding of an "empty" text file by the locale, for example, GBK in China,
	// while golang string only handles utf8 well. However, a text file with utf8
	// BOM header is not considered "empty" on Windows, and the encoding will then
	// be determined utf8 by notepad.exe, instead of GBK or other encodings.

	// This could be enhanced in the future by doing this only when a non-utf8
	// locale is in use, and possibly doing that for any OS, not just windows.

	return runtime.GOOS == "windows"
}