小编top*_*kip的帖子

golang:在本地目录中安装包

go get...在本地目录中安装软件包(带有软件包)的最佳做法是什么?

示例:我想试用Revel Web框架,但我不想把我的go安装混乱/usr/local/go.

通常我会说sudo go get github.com/robfig/revel在主页上写的,但是会把它安装在下面/usr/local/go/src/pkg/....

是否有一种简单的方法可以说(例如)go get --local ...并将包放在当前(子)目录中?

install local package go

13
推荐指数
3
解决办法
3万
查看次数

交叉编译:"用户:目前未在linux/amd64上实现"

我在linux/amd64盒子上编译了以下Go程序:

package main

import (
    "fmt"
    "os/user"
)

func main() {
    fmt.Println(user.Current())
}
Run Code Online (Sandbox Code Playgroud)

这很好用.但是当我从Mac框交叉编译它时,我在我的linux盒子上运行该程序时出现以下错误:

user: Current not implemented on linux/amd64

如何交叉编译使用包中的Current函数os/user


编辑1:我应该补充一点,这些是我用来在Mac机上设置交叉编译的说明:https://code.google.com/p/go-wiki/wiki/WindowsCrossCompiling


编辑2:交叉编译windows/386工作正常.

cross-compiling go

13
推荐指数
1
解决办法
3406
查看次数

golang:跨平台路径.Dir

我想path.Dir()在Unix和Windows上使用特定于平台的目录.请看一下代码:

package main

import (
    "fmt"
    "path"
)

func main() {
    fmt.Println(`path.Dir("a/b/c"): `, path.Dir("a/b/c"))
    fmt.Println(`path.Dir("c:\foo\bar.exe"): `, path.Dir(`c:\foo\bar.exe`))
}
Run Code Online (Sandbox Code Playgroud)

这输出

path.Dir("a/b/c"):  a/b
path.Dir("c:\foo\bar.exe"):  .
Run Code Online (Sandbox Code Playgroud)

我想第二次打电话给path.Dir()(windows)类似的东西

c:\foo
Run Code Online (Sandbox Code Playgroud)

是否可以告诉path.dir()我在Windows上运行的程序使用Windows分隔符?或者我应该始终将反斜杠转换\ 为正斜杠(/)?这里的首选策略是什么?

windows path go

9
推荐指数
1
解决办法
4467
查看次数

golang:在Windows上运行pdf文件的默认应用程序

我想在文件系统中使用默认应用程序打开PDF文件.我怎样才能做到这一点?从命令行我只需编写pdf文件的文件名,然后打开应用程序(带有请求的文件).当我尝试使用时,exec.Command()我得到一个错误(不足为奇)exec: "foo.pdf": executable file not found in %PATH%.

package main

import (
    "log"
    "os/exec"
)

func main() {
    cmd := exec.Command("foo.pdf")
    err := cmd.Start()
    if err != nil {
        log.Fatal(err)
    }
    err = cmd.Wait()
    if err != nil {
        log.Fatal(err)
    }

}
Run Code Online (Sandbox Code Playgroud)

windows go

7
推荐指数
2
解决办法
1854
查看次数

express.js/serve生成的图像

我正在使用快递,我想提供生成的图像.html源代码<img src="/generated/image">和路由设置所以当调用GETto 时/generated/image,会创建一个PNG(例如,放在公共目录中,但我想这不是绝对必要的).现在我想将该图像发回给用户.我应该res.send()用于此目的吗?如何将数据提供给用户?

node.js express

6
推荐指数
1
解决办法
7412
查看次数

redigo,SMEMBERS,如何获得字符串

我是redigo连接从Go到redis数据库.如何将一种类型转换[]interface {}{[]byte{} []byte{}}为一组字符串?在这种情况下,我想得到两个字符串HelloWorld.

package main

import (
    "fmt"
    "github.com/garyburd/redigo/redis"
)

func main() {
    c, err := redis.Dial("tcp", ":6379")
    defer c.Close()
    if err != nil {
        fmt.Println(err)
    }
    c.Send("SADD", "myset", "Hello")
    c.Send("SADD", "myset", "World")
    c.Flush()
    c.Receive()
    c.Receive()

    err = c.Send("SMEMBERS", "myset")
    if err != nil {
        fmt.Println(err)
    }
    c.Flush()
    // both give the same return value!?!?
    // reply, err := c.Receive()
    reply, err := redis.MultiBulk(c.Receive())
    if err != nil {
        fmt.Println(err) …
Run Code Online (Sandbox Code Playgroud)

go redis

6
推荐指数
2
解决办法
5545
查看次数

git + go - 如何使用go get处理子项目

git为我的软件使用版本控制系统.在"源代码"中,我go get用来自动从github获取软件.我该如何处理"双git"情况?

当我git add在目录上运行时src/github.com/somename/someproject,这本身就是一个git存储库,这会添加什么吗?(我跑的时候看起来不像这样git status)

我应该git submodule用于git get添加的子目录吗?

在这种情况下,最佳做法是什么?


编辑:$GOPATH我的软件项目有一个自定义环境.这就是src/github.com/somename/someproject在我的软件目录层次结构中找到该目录的原因.

git go git-submodules

6
推荐指数
1
解决办法
2620
查看次数

调用windows函数(获取字体目录)

我试图找到Windows安装上的字体文件夹.AFAICS所提出的方法是调用SHGetKnownFolderPathShell32.dllKNOWNFOLDERID设置为FOLDERID_Fonts.

我不知道Call在下面的代码中传递给函数的是什么:

package main

import (
    "syscall"
)

func main() {
    // HRESULT SHGetKnownFolderPath(
    //   _In_      REFKNOWNFOLDERID rfid,
    //   _In_      DWORD dwFlags,
    //   _In_opt_  HANDLE hToken,
    //   _Out_     PWSTR *ppszPath
    // );

    var (
        shell32             = syscall.NewLazyDLL("Shell32.dll")
        shGetKnowFolderPath = shell32.NewProc("SHGetKnownFolderPath")

        // Doesn't work, of course:
        folderId int
        flags    int
        handle   int
        retval   int
    )

    shGetKnowFolderPath.Call(uintptr(folderId), uintptr(flags), uintptr(handle), uintptr(retval))
}
Run Code Online (Sandbox Code Playgroud)

任何的想法?(我想现在的解决方法是坚持%windir%\Fonts,但我想得到一个合适的解决方案).

参考文献:

winapi go

6
推荐指数
2
解决办法
753
查看次数

如何在ios中设置返回键的操作

有2个UITextField和登录按钮的视图.当用户处于密码文本框键盘时,返回键设置为"Go".如何设置返回键以从"登录"按钮进行操作,以便用户无需关闭键盘并触摸"登录"按钮?

Thanx提前回复.

textfield uitextfield ios

6
推荐指数
1
解决办法
7513
查看次数

使用XSLT转换XML文件

我想通过XSLT将给定的XML文件(它是一个RelaxNG语法)翻译成其他语言.假设XML文件是:

<?xml version="1.0" encoding="UTF-8"?>
<grammar>
  <element name="table" />
  <element name="chair" />
</grammar>
Run Code Online (Sandbox Code Playgroud)

现在我正在考虑使用带有类似信息的XSLT样式表

en=table, de=Tisch, fr=table
en=chair, de=Stuhl, fr=chaise
...  (there will be many, many more entries)
Run Code Online (Sandbox Code Playgroud)

但我也可以把这些信息放到外部文件中(我从头开始).你能给我一些如何制定XSLT的建议吗?我正在考虑使用<xsl:key>这个,但我从来没有在XSLT中获得密钥.当我创建德语翻译时,结果应如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<grammar lang="de">
  <element name="Tisch" />
  <element name="Stuhl" />
</grammar>
Run Code Online (Sandbox Code Playgroud)

xslt dictionary xslt-2.0

5
推荐指数
1
解决办法
3028
查看次数