tools

package
v0.9.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 13, 2024 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const CDR_FILE_NAME = "clipboard-data-receiver"
View Source
const CDR_FILE_NAME_FOR_WINDOWS = "clipboard-data-receiver.exe"
View Source
const DEVCONTAINER_FILE_NAME = "devcontainer"
View Source
const DOWNLOAD_URL_CDR_PATTERN = "https://github.com/mikoto2000/clipboard-data-receiver/releases/download/{{ .TagName }}/clipboard-data-receiver.linux-amd64"

clipboard-data-receiver のダウンロード URL

View Source
const DOWNLOAD_URL_CDR_PATTERN_FOR_WINDOWS = "" /* 128-byte string literal not displayed */
View Source
const DOWNLOAD_URL_DEVCONTAINERS_CLI_PATTERN = "https://github.com/mikoto2000/devcontainers-cli/releases/download/{{ .TagName }}/devcontainer-linux-x64-{{ .TagName }}"

devcontainer-cli のダウンロード URL

View Source
const VIM_DOWNLOAD_URL_PATTERN = "https://github.com/vim/vim-appimage/releases/download/{{ .TagName }}/Vim-{{ .TagName }}.glibc2.29-x86_64.AppImage"

Vim のダウンロード URL

View Source
const VIM_SCRIPT_TEMPLATE_SEND_TO_CDR = `` /* 239-byte string literal not displayed */

Variables

This section is empty.

Functions

func CreateSendToTcp added in v0.8.0

func CreateSendToTcp(configDir string, port int) (string, error)

func GetProcessInfo added in v0.8.0

func GetProcessInfo(cdrOutput string) (int, string, int, error)

func InstallDevcontainerTools added in v0.8.0

func InstallDevcontainerTools(installDir string) (string, error)

devcontainer サブコマンド用のツールインストール

func InstallDownTools added in v0.8.0

func InstallDownTools(installDir string) (string, error)

Down サブコマンド用のツールインストール

func InstallRunTools added in v0.8.0

func InstallRunTools(installDir string) (string, string, error)

run サブコマンド用のツールインストール

func InstallStartTools added in v0.8.0

func InstallStartTools(installDir string) (string, string, string, error)

start サブコマンド用のツールインストール 戻り値は、 vimPath, devcontainerPath, cdrPath, error

func InstallTemplatesTools added in v0.8.0

func InstallTemplatesTools(installDir string) (string, error)

Templates サブコマンド用のツールインストール

func KillCdr added in v0.8.0

func KillCdr(pid int)

func RunCdr added in v0.8.0

func RunCdr(cdrPath string, configFileDir string) (int, int, error)

clipboard-data-receiver を起動 pid ファイル、 port ファイルを configFileDir へ保存する。

Types

type CdrOutput added in v0.8.0

type CdrOutput struct {
	Pid     int    `json:"pid"`
	Address string `json:"address"`
	Port    int    `json:"port"`
}

`clipboard-data-receiver` コマンドの標準出力スキーマ

Example:

{
  "pid": 1234,
  "address": "0.0.0.0",
  "port": 5678
}

func UnmarshalCdrOutput added in v0.8.0

func UnmarshalCdrOutput(data []byte) (CdrOutput, error)

type Tool

type Tool struct {
	FileName             string
	CalculateDownloadUrl func() string
	// contains filtered or unexported fields
}

ツール情報

var CDR Tool = func() Tool {

	// WSL 上で実行されているかを判定し、
	// WSL 上で実行されているなら `.exe` をダウンロード
	var cdrFileName string
	var tmpl *template.Template
	var err error
	if util.IsWsl() {
		cdrFileName = CDR_FILE_NAME_FOR_WINDOWS
		tmpl, err = template.New("ducp").Parse(DOWNLOAD_URL_CDR_PATTERN_FOR_WINDOWS)
	} else {
		cdrFileName = CDR_FILE_NAME
		tmpl, err = template.New("ducp").Parse(DOWNLOAD_URL_CDR_PATTERN)
	}
	if err != nil {
		panic(err)
	}

	return Tool{
		FileName: cdrFileName,
		CalculateDownloadUrl: func() string {
			latestTagName, err := util.GetLatestReleaseFromGitHub("mikoto2000", "clipboard-data-receiver")
			if err != nil {
				panic(err)
			}

			tmplParams := map[string]string{"TagName": latestTagName}
			var downloadUrl strings.Builder
			err = tmpl.Execute(&downloadUrl, tmplParams)
			if err != nil {
				panic(err)
			}
			return downloadUrl.String()
		},
		installFunc: func(downloadUrl string, filePath string) (string, error) {
			return simpleInstall(downloadUrl, filePath)
		},
	}
}()

clipboard-data-receiver のツール情報

var DEVCONTAINER Tool = Tool{
	FileName: DEVCONTAINER_FILE_NAME,
	CalculateDownloadUrl: func() string {
		latestTagName, err := util.GetLatestReleaseFromGitHub("mikoto2000", "devcontainers-cli")
		if err != nil {
			panic(err)
		}

		pattern := "pattern"
		tmpl, err := template.New(pattern).Parse(VIM_DOWNLOAD_URL_PATTERN)
		if err != nil {
			panic(err)
		}

		tmplParams := map[string]string{"TagName": latestTagName}
		var downloadUrl strings.Builder
		err = tmpl.Execute(&downloadUrl, tmplParams)
		if err != nil {
			panic(err)
		}
		return downloadUrl.String()
	},
	// contains filtered or unexported fields
}

devcontainer/cli のツール情報

var VIM Tool = Tool{
	FileName: "vim",
	CalculateDownloadUrl: func() string {
		latestTagName, err := util.GetLatestReleaseFromGitHub("vim", "vim-appimage")
		if err != nil {
			panic(err)
		}

		pattern := "pattern"
		tmpl, err := template.New(pattern).Parse(VIM_DOWNLOAD_URL_PATTERN)
		if err != nil {
			panic(err)
		}

		tmplParams := map[string]string{"TagName": latestTagName}
		var downloadUrl strings.Builder
		err = tmpl.Execute(&downloadUrl, tmplParams)
		if err != nil {
			panic(err)
		}
		return downloadUrl.String()
	},
	// contains filtered or unexported fields
}

Vim のツール情報

func (Tool) Install

func (t Tool) Install(installDir string, override bool) (string, error)

ツールのインストールを実行

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL