小编Dan*_*ter的帖子

jQueryUI:正确删除可拖动元素

我正在开发一个可视化编辑器,它需要用户可以随意添加,删除和拖动的元素.每个元素都是div用jQueryUI创建的.新元素将附加到div表示工作空间的父级.每个元素本身都有一个按钮可以将其删除.一切都很好.

我遇到的问题是当我删除一个不是最近创建的元素时,所有其他可拖动元素都会改变位置.这似乎是由使用relative定位的可拖动元素引起的.

目前,我的删除功能只是调用$('#item-x').remove().还有另一种方法我应该删除可拖动的元素吗?

jquery jquery-ui

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

中间命令行界面

我已经和C一起工作了一段时间,并且对简单的命令行界面非常熟练.我也玩过这个curses库,对于终端应用来说,不仅仅是写文本stdout.但是,我无法弄清楚中途点的位置 - 应用程序喜欢wgetmake拥有,例如,更新他们输出的文本的能力(如wget弹跳下载计量器和进度条),而不占用整个屏幕.

这种界面是我应该使用curses的,还是介于两者之间?优选地是跨平台的.

c io ncurses

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

HTML/JS作为本地SQLite数据库的接口

我正在编写一个非常简单的数据库应用程序,我想在本地存储(而不是查找远程数据库).我喜欢用于设计界面的HTML/Javascript,而且它们是跨平台的(每个人都有浏览器!),所以我真的想把网页写成前端.不应涉及客户端/服务器交互 - 我只希望用户能够使用浏览器而不是本机程序与数据库进行交互.

但是,我可以看到从浏览器访问数据库的唯一方法是使用WebSQL或IndexedDB之类的东西.但是,这两者都抽象出了管理数据库文件本身的过程,并将其存储在某个用户设置中.我想将数据库文件本身与应用程序一起分发.

简而言之:有没有办法使用HTML/Javascript来修改本地SQLite数据库文件?或者HTML不是我应该用于此类应用程序的工具?

编辑: 可能相关

html javascript sqlite web-sql

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

在两级树类型中使用Uniplate

我正处于在Haskell中为类C语言编写解析器的开始阶段.我已经得到了AST数据类型,并且在我深入研究解析器方面之前,我正在通过在AST本身上编写一些简单的查询来解决它.

我的AST围绕两种类型:语句(没有值,如if/ else)和表达式(有一个值,如文字或二进制操作).所以它看起来像这样(当然非常简化):

data Statement
    = Return Expession
    | If Expression Expression

data Expression
    = Literal Int
    | Variable String
    | Binary Expression Op Expression
Run Code Online (Sandbox Code Playgroud)

假设我想获取表达式中使用的所有变量的名称.使用uniplate,很容易:

varsInExpression exp = concat [s | Variable s <- universe exp]
Run Code Online (Sandbox Code Playgroud)

但是,如果我想在语句中找到变量列表呢?在每个构造函数中Statement,都有一个Expression我应该应用的嵌套varsInExpression.所以目前,看起来我必须对每个Statement构造函数进行模式匹配,这是uniplate要避免的.我只是没有充分了解文档,或者这是uniplate的限制(或者我做错了吗?)?

haskell parsec

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

STM是否为现有数据结构提供细粒度锁定?

阅读Bartosz Milewski 关于STM 的精彩博文,我很高兴看到以下内容:

但考虑到一个重要的事实:STM非常精细.例如,当您将项目插入树中时,STM事务将仅锁定您实际修改的节点.STM将轻松击败每个整棵树使用一个全局锁的解决方案.

但是,据我了解,这种行为不是自动的,是吗?如果我使用a TVar (Map k a),它不会在整个地图上作为单个全局锁吗?为了获得这种细粒度行为的好处,我(或某人)必须实现内部TMap包含的地图替换(例如)TVars,正确吗?

这似乎是一个显而易见的问题,但是阅读STM实现我在读取TVar内存位置和读取内存位置时感到困惑.我只是想确保我做对了!

巴托斯进一步说:

由于存在死锁风险,每节点手动锁定很难正确实现.

据我所知,与STM的不同之处在于,虽然STM实现实际上使用锁定手动锁定解决方案的方式,但锁的实际检查和释放是由运行时处理的,而不是程序员 - 正确吗?

haskell stm

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

SciPy阶跃响应图似乎打破了某些值

我在控制系统类中使用SciPy而不是MATLAB来绘制LTI系统的阶跃响应.它到目前为止工作得很好,但我遇到了一个非常具体的系统问题.使用此代码:

from numpy import min
from scipy import linspace
from scipy.signal import lti, step
from matplotlib import pyplot as p

# Create an LTI transfer function from coefficients
tf = lti([64], [1, 16, 64])
# Step response (redo it to get better resolution)
t, s = step(tf)
t, s = step(tf, T = linspace(min(t), t[-1], 200))
# Plotting stuff
p.plot(t, s)
p.xlabel('Time / s')
p.ylabel('Displacement / m')
p.show()
Run Code Online (Sandbox Code Playgroud)

代码按原样显示扁平线.如果我将分母的最终系数修改为64.00000001(即tf = lti([64], [1, 16, 64.0000001])),那么它将按预期工作,显示欠阻尼阶跃响应.设置系数63.9999999也有效.将所有系数更改为具有显式小数位(即 …

python matplotlib scipy

4
推荐指数
1
解决办法
4521
查看次数

Haskell:映射函数应用程序

我在Haskell中进行的一些计算的一部分导致映射Float到的函数列表Float.我想对所有这些函数应用一个参数,如下所示:

-- x :: Float
-- functions :: [Float -> Float]
map (\f -> f x) functions
Run Code Online (Sandbox Code Playgroud)

有没有办法在不使用丢弃lambda函数的情况下做到这一点?我已经搜索了Hoogle,我认为签名应该是([a -> b] -> a -> [b])没有运气.

lambda haskell pointfree

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

在if中执行readLine

我正在Haskell中编写一个小命令行实用程序,该实用程序应接受带有可选命令行参数的命令 - 但如果该参数不存在,则应提示用户输入*.例如:

$ my_prog add item_name
Adding... done

$ my_prog add
Enter item name: item_name
Adding... done
Run Code Online (Sandbox Code Playgroud)

我最初的尝试看起来像这样:

add args = do
    let id = if length args > 0
        then head args
        else input where
            input <- readLine
    -- Do stuff with id
    putStrLn id
Run Code Online (Sandbox Code Playgroud)

哪个无法解析<-.

*我已经决定这是一个愚蠢的想法,但我想我还是会问这个问题.

io haskell

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

读取浮点数的最小缓冲区长度

我正在编写一个小命令行程序,它从stdin中读取两个浮点数,一个int和一个小字符串(最多4个字符串).我试图找出我应该创建的缓冲区大小并传递给fgets.我想我可以基于有多少个数字中应包括的最大值计算这个floatint分别,就像这样:

#include <float.h>
#include <limits.h>

...

int fmax = log10(FLOAT_MAX) + 2;     // Digits plus - and .
int imax = log10(INT_MAX) + 1;       // Digits plus -
int buflen = 4 + 2*fmax + imax + 4;  // 4 chars, 2 floats, 1 int, 3 spaces and \n

...

fgets(inbuf, buflen + 1, stdin);
Run Code Online (Sandbox Code Playgroud)

但是我发现这可能实际上并不正确.imax最终在我的系统上是10,这似乎有点低,而fmax如果是40.(我认为有点高,因为更长的值可以用e表示法表示.)

所以我的问题是:这是解决这个问题的最好方法吗?这甚至是必要的吗?它只是感觉比分配一个256的缓冲区更优雅,并假设它足够了.称之为骄傲; P.

c buffer fgets

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

为什么在C++ 11中nullptr是小写的?

简单地说:为什么nullptrC++ 0X/C++ 11标准中的关键字是小写的,而它的紧密伴侣NULL是大写的?我确实意识到这两者遵循不同的标准; nullptr是一个关键字,而是NULL一个宏.但是,由于它们将在类似的情况下使用,如果新用户遵循相同的约定,它会不会更清楚?

(并不是说要记住这么多麻烦 - 我只是对设计决定感到好奇.)

c++ c++11

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

添加遥控器会影响Git存储库的大小吗?

在Github上有一个大型项目的分支,并且希望从其他人的分支中获取更改,并建议他们可以提取我的更改.

为我想从这个问题中推荐的代码提取代码的用户添加新命名的远程控制听起来像是一个很好的解决方案,但是这样做会显着影响我本地存储库的大小吗?

(我将继续尝试,但我找不到任何关于此的信息,所以我想我会要求后代.)

git github

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

使用可选查询参数格式化外部链接

我正在开发一个Angular应用程序,需要链接到固定(外部)路由,并在Angular页面本身设置一些查询参数.我想在我的Angular HTML中提供一些很好的数据绑定,比如:

<a href="http://www.api.com/query?param={{value}}&flag={{check}}">Link</a>
Run Code Online (Sandbox Code Playgroud)

但是,我的所有查询参数都是可选的.这可以在Angular应用程序本身中轻松处理,使用类似的东西

$location.path('/query').search({param: value, flag: check});
Run Code Online (Sandbox Code Playgroud)

当我只想格式化文本链接时,有什么方法可以获得这种声明式样式的好处吗?

angularjs

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

Laravel开发服务器无法在Vagrant外部访问

我正在尝试在Vagrant(VirtualBox)VM中运行一个简单的Laravel项目。来宾是Ubuntu 14.04 x64,主机是Windows 7 x64。我已经设置了端口转发(8000从主机到8000来宾),但是在运行时php artisan serve,尽管收到一条消息,指出服务器在port上运行,但是8000当我localhost:8000在主机上访问时,Chrome告诉我“此网页不是可用”。有两个并发症:

首先,如果我curl从VM内部使用,我会收到正确的页面内容-这样看来服务器可以正常工作。

其次,如果我python -m SimpleHTTPServer在同一VM上运行Python Web服务器,则可以在主机OS上正常访问它。访问localhost:8000,我看到列出的目录内容。因此看来端口转发工作正常。

我试图删除public/.htaccessLaravel项目中的文件,但无济于事。我不是PHP专家,这个问题对Google来说很难!任何指针将不胜感激。

php vagrant laravel

0
推荐指数
1
解决办法
3128
查看次数