小编Lex*_*x R的帖子

用于将rst转换为html的单个py文件

我有一个用reStructuredText编写的博客,当我创建一个新帖子时,我当前必须手动转换为HTML.

我正在使用Google App Engine编写一个新的博客系统,需要一种简单的方法将rst转换为HTML.

我不想使用,docutils因为它太大而复杂.有没有更简单(理想的单一python文件)的方式我可以做到这一点?

python google-app-engine restructuredtext

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

为什么在调用open throw之前设置XMLHttpRequest responseType?

new XMLHttpRequest().responseType = "json"在控制台中运行会在Firefox 26和IE11中引发"InvalidStateError"异常,但在Chrome 31中不会引发异常.

为什么?

规范说明了这一点responseType

如果状态为LOADING或DONE,则抛出"InvalidStateError"异常.

但在这种情况下,州是UNSENT.

这是怎么回事?

javascript ajax w3c specifications xmlhttprequest

17
推荐指数
2
解决办法
9271
查看次数

混合C++ 11 std :: thread和C系统线程(即pthreads)

我正在编写一个多线程C++程序,并希望使用多线程C库.
这个库希望我使用本机系统方法创建一些工作线程,并使用如下代码将控制传递给它的run()函数:

void system_specific_thread_init();
#ifdef _WIN32
    DWORD WINAPI system_specific_thread_run( LPVOID unused )
    {
        library_run();
        return 0;
    }

    void system_specific_thread_init()
    {
        Createthread(NULL, 0, system_specific_thread_run, NULL, 0, NULL);
    }
#else
    void* system_specific_thread_run(void *unused)
    {
        library_run();
        return NULL;
    }

    void system_specific_thread_init()
    {
        pthread_t id;
        pthread_create(&id, NULL, system_specific_thread_run, NULL);
    }
#endif
system_specific_thread_init();
Run Code Online (Sandbox Code Playgroud)

之后,它将使用相关的本机系统互斥方法到其他本机系统线程来调用其函数,同时继续使用是自己的工作.

但是,我使用C++ 11 <thread>库来创建和管理我的所有线程.我希望创建工作线程,std::thread(library_run)并从其他此类线程调用库函数.

这样做是否安全,或者DS9K是否会导致恶魔飞出我的鼻子?

c c++ multithreading c++11

14
推荐指数
2
解决办法
2925
查看次数

根据与相机的距离调整点精灵的大小

我正在使用仅用于大学的核心OpenGL 3.3编写Wolfenstein 3D的克隆,我遇到了精灵的一些问题,即让它们根据距离正确缩放.

据我所知,以前版本的OGL实际上会为你做这件事,但是这个功能已被删除,而我所有重新实现它的尝试都导致完全失败.

我目前的实施方式是可以在距离上通过,在中距离时不是太破旧,而在近距离时也是如此.

主要问题(我认为)是我对我正在使用的数学没有理解.
精灵的目标大小略大于视口,因此当你接近它时它应该"走出画面",但事实并非如此.它变小了,这让我很困惑.
我录制了一个小视频,以防单词不够.(我在右边)

预期结果 实际结果

谁能指引我到我错的地方,并解释原因?

代码:
C++

// setup
glPointParameteri(GL_POINT_SPRITE_COORD_ORIGIN, GL_LOWER_LEFT);
glEnable(GL_PROGRAM_POINT_SIZE);

// Drawing
glUseProgram(StaticsProg);
glBindVertexArray(statixVAO);
glUniformMatrix4fv(uStatixMVP, 1, GL_FALSE, glm::value_ptr(MVP));
glDrawArrays(GL_POINTS, 0, iNumSprites);
Run Code Online (Sandbox Code Playgroud)

顶点着色器

#version 330 core

layout(location = 0) in vec2 pos;
layout(location = 1) in int spriteNum_;

flat out int spriteNum;

uniform mat4 MVP;

const float constAtten  = 0.9;
const float linearAtten = 0.6;
const float quadAtten   = 0.001;

void main() {
    spriteNum = spriteNum_;
    gl_Position = MVP * vec4(pos.x + 1, pos.y, 0.5, …
Run Code Online (Sandbox Code Playgroud)

c++ opengl glsl point-sprites opengl-3

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

Google Analytics中的_addDevId是什么?

我正在查看Google Analyticator生成的跟踪代码,我注意到了该行

_gaq.push(['_addDevId', 'i9k95']); // Google Analyticator App ID with Google
Run Code Online (Sandbox Code Playgroud)

但是,我无法_addDevId在Google官方文档中的任何地方找到任何引用,谷歌搜索它只返回随机代码snippits(其中大部分都带有Google Analyticator的ID.)

它是什么,是否有analytics.js等价?

这是完整生成的代码:

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXX-1']);
_gaq.push(['_addDevId', 'i9k95']); // Google Analyticator App ID with Google 

_gaq.push(['_trackPageview']);

(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
Run Code Online (Sandbox Code Playgroud)

google-analytics

3
推荐指数
1
解决办法
736
查看次数

检查所选文件是否与 &lt;input&gt; 标记上的接受属性匹配

我希望防止用户上传服务器会从包含最少 JavaScript 的页面拒绝的文件,理想情况下不要添加任何严重的依赖项(例如纯粹为了解决这一问题的 jQuery)。

\n\n

由于我不是针对旧用户,因此我使用浏览器的表单验证系统来检查用户是否选择了有效文件,但它似乎只关心用户是否选择了文件,而不管类型如何。

\n\n
> i = document.querySelector(\'input[type=file]\')\n<input type=\xe2\x80\x8b"file" accept=\xe2\x80\x8b"image/\xe2\x80\x8b*" name=\xe2\x80\x8b"attachment" required>\xe2\x80\x8b\n> i.accept\n"image/*"\n> i.files[0].type\n"application/x-zip-compressed"\n> i.checkValidity()\ntrue\n
Run Code Online (Sandbox Code Playgroud)\n\n

有没有一种简单的方法可以做到这一点?我发现唯一接近的是jQuery Validate,但它是一个重量级的解决方案。

\n

html javascript validation

3
推荐指数
1
解决办法
5239
查看次数

更新统一值是否会拖延整个渲染管道?

glBufferSubData手册页的笔记部分包含以下段落:

考虑使用多个缓冲区对象,以避免在数据存储更新期间停止渲染管道.如果管道中的任何渲染引用glBufferSubData正在更新的缓冲区对象中的数据,特别是来自正在更新的特定区域,则在更新数据存储之前,该渲染必须从管道中消失.

虽然glUniform*manpage根本没有提到管道.
但是,我会认为制服和缓冲区一样重要,因为它们应该在所有着色器调用中都是统一的.
因此,如果我执行绘制调用,更改一个统一值,然后在同一个着色器上执行另一个绘制调用,两个绘制调用将同时运行不同的统一值,或者第二个绘制调用必须等到每个阶段(vert/geom/frag)在第一个完成?

opengl opengl-3

2
推荐指数
1
解决办法
771
查看次数

确保 URI 有效

我试图确保传递给我的 go 程序的 URL 是有效的。但是,我似乎不知道该怎么做。我以为我可以直接喂它url.Parse,但这似乎不起作用。

package main

import (
    "fmt"
    "net/url"
)

func main() {
    url, err := url.Parse("http:::/not.valid/a//a??a?b=&&c#hi")
    if err != nil {
        panic(err)
    }
    fmt.Println("It's valid!", url.String())
}
Run Code Online (Sandbox Code Playgroud)

操场

我可以使用filter_var 的任何内容吗?

validation url go

2
推荐指数
1
解决办法
2050
查看次数