我有一个TODO项目列表,我试图在同一个文件中有2个TODO列表,但似乎无法结束第一个.
FIRST LIST: TODAY
* TODO Item 1
Description
* TODO Item 2
Description
SECOND LIST: TOMORROW
* TODO Item 3
Description
* TODO Item 4
Description
Run Code Online (Sandbox Code Playgroud)
不幸的是,SECOND LIST: TOMORROW现在是描述的一部分TODO Item 2.通过这个,我的意思是当我点击shift-tab时,我不再看到文本,SECOND LIST: TOMORROW因为它折叠了TODO Item 2.我看到的是......
FIRST LIST: TODAY
* TODO Item 1
* TODO Item 2
* TODO Item 3
* TODO Item 4
Run Code Online (Sandbox Code Playgroud)
虽然我想看到的是......
FIRST LIST: TODAY
* TODO Item 1
* TODO Item 2
SECOND LIST: TOMORROW
* TODO …Run Code Online (Sandbox Code Playgroud) 我有一个输出TRUE或FALSE的R脚本.在R中,它使用了真正的T/F数据类型,但当我将其返回值回显为bash时,它似乎是一个字符串,说:
"[1] TRUE"
要么
"[1] FALSE"
它们都先于[1].也不是[0],这不是拼写错误.无论如何,这样做的结果是什么,当我尝试测试这个RSCRIPT的输出运行的后续脚本,我要做的字符串比较"[1] TRUE",如下图,而不是比较"真"或者" 1"感觉更干净,更好.
A=$(Rscript ~/MyR.r)
echo $A
if [ "$A" == "[1] TRUE" ]; then
bash SecondScript.sh
fi
Run Code Online (Sandbox Code Playgroud)
如何让R输出一个真正的布尔值,或者Bash接受输出字符串并将其转换为0/1进行比较?也就是说,我宁愿测试......
if [ $A == TRUE ];
Run Code Online (Sandbox Code Playgroud)
比
if [ "$A" == "[1] TRUE" ];
Run Code Online (Sandbox Code Playgroud)
这是可能的,或者我应该对此感到满意,它是如何的,哪个有效?
*更新*
这是产生这个的Rscript的最小化版本......
myinput <- TRUE #or FALSE
FunctionName <- function(test){
if (test == TRUE){
val <- TRUE
} else {
val <- FALSE
}
return(val)
}
FunctionName(myinput)
Run Code Online (Sandbox Code Playgroud) 我有一个烧瓶应用程序,使用neo4j的一些数据.当我使用python服务器时,一切都在本地运行良好,但是当我在nginx + uwsgi上部署时,我无法再在py2neo中执行cypher查询.我无法判断错误传达是在py2neo级别,还是nginx权限或类似的东西.(我在与烧瓶相同的盒子上运行neo4j,开始.)
奇怪的是,查询否则有效,并且它所说的索引不存在("组织"),实际上在我使用neo4j控制台时确实存在.这是错误:
File "/var/www/newproj/newproj/view_helpers.py", line 333, in tile_portfolios
X = cypher.execute(cdb,query)[0]
File "/usr/local/lib/python2.7/dist-packages/py2neo/cypher.py", line 261, in execute
params, row_handler=row_handler, metadata_handler=metadata_handler, error_handler=error_handler
File "/usr/local/lib/python2.7/dist-packages/py2neo/cypher.py", line 118, in execute
stacktrace=err.stacktrace,
CypherError: (u'Index `organization` does not exist', u'MissingIndexException', [u'org.neo4j.cypher.internal.executionplan.builders.IndexQueryBuilder$.checkNodeIndex(IndexQueryBuilder.scala:120)', u'org.neo4j.cypher.internal.executionplan.builders.IndexQueryBuilder$.getNodeGetter(IndexQueryBuilder.scala:87)', u'org.neo4j.cypher.internal.executionplan.builders.IndexQueryBuilder.createStartPipe(IndexQueryBuilder.scala:62)', u'org.neo4j.cypher.internal.executionplan.builders.IndexQueryBuilder.apply(IndexQueryBuilder.scala:38)', u'org.neo4j.cypher.internal.executionplan.ExecutionPlanImpl.prepareExecutionPlan(ExecutionPlanImpl.scala:45)', u'org.neo4j.cypher.internal.executionplan.ExecutionPlanImpl.<init>(ExecutionPlanImpl.scala:31)', u'org.neo4j.cypher.ExecutionEngine$$anonfun$prepare$1.apply(ExecutionEngine.scala:67)', u'org.neo4j.cypher.ExecutionEngine$$anonfun$prepare$1.apply(ExecutionEngine.scala:67)', u'org.neo4j.cypher.internal.LRUCache$LazyValue.value(LRUCache.scala:27)', u'org.neo4j.cypher.internal.LRUCache.getOrElseUpdate(LRUCache.scala:39)', u'org.neo4j.cypher.ExecutionEngine.prepare(ExecutionEngine.scala:67)', u'org.neo4j.cypher.ExecutionEngine.execute(ExecutionEngine.scala:59)', u'org.neo4j.cypher.ExecutionEngine.execute(ExecutionEngine.scala:63)', u'org.neo4j.cypher.javacompat.ExecutionEngine.execute(ExecutionEngine.java:79)', u'org.neo4j.server.rest.web.CypherService.cypher(CypherService.java:64)', u'java.lang.reflect.Method.invoke(Method.java:616)'])
Run Code Online (Sandbox Code Playgroud)
这就是我确定它所说的不存在的索引确实存在的原因:
neo4j-sh (?)$ index --indexes
Node indexes:
vertex
organization
Relationship indexes:
edge
neo4j-sh (?)$ index --get-config organization
{
"provider": "lucene",
"type": "exact"
}
Run Code Online (Sandbox Code Playgroud)
那么,这是我应该在cypher.py文件中查看的内容吗?或者这看起来像权限问题,也许nginx无法读取来自locahost的响应:7474什么时候它不是由python服务器运行的?奇怪的是,py2neo的其他方面在服务器上可以正常工作,例如neo4j.GraphDatabaseService("http://localhost:7474/db/data/").get_or_create_indexed_node()
任何帮助调试(或向任何这些优秀项目提交错误报告是合适的吗?)非常感谢.
I'm using emacs and anaconda.
I have this in my init.el:
(setenv "WORKON_HOME" "/home/user/anaconda3/envs/")
Run Code Online (Sandbox Code Playgroud)
And conda on my path:
# added by Anaconda3 installer
export PATH="/home/user/anaconda3/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)
but emacs can't find my conda environments, which I understand it is supposed to be able to do..
So, when I run C-c C-p to start a new session, and C-c C-c, it fails to import my packages which are installed in a conda environment, with ModuleNotFoundError.
Since I have added this …
我开始尝试设置本地rails安装进行开发.apt-get然而,在我安装使用之后,我了解了RVM,因此我删除了之前的RVM,并从RVM重新安装.不过,看起来我有遗留问题.具体来说,当我尝试安装rails时,我得到...
$ gem install rails
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /var/lib/gems/1.9.1 directory.
Run Code Online (Sandbox Code Playgroud)
这已经看起来像一个问题,因为我不希望它在/ var /目录中,我希望它在用户目录中.所以,我检查以下内容......
$ gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.8.11
- RUBY VERSION: 1.9.3 (2011-10-30 patchlevel 0) [x86_64-linux]
- INSTALLATION DIRECTORY: /var/lib/gems/1.9.1
- RUBY EXECUTABLE: /usr/bin/ruby1.9.1
- EXECUTABLE DIRECTORY: /usr/local/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /var/lib/gems/1.9.1
- /home/myusername/.gem/ruby/1.9.1
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- …Run Code Online (Sandbox Code Playgroud) 我理解SelectFieldWTForms中的方法采用choices具有形式的can参数...
choices=[("value1", "display of value 1"), ("value2", "display of value 2")]
Run Code Online (Sandbox Code Playgroud)
我需要根据对数据库的调用来填充我的选择.我使用neo4j作为我的后端,所以我不能使用modelforms或其他内置解决方案来填充表单中的数据.
def get_list_of_things():
query = 'start n = node:things("*:*") return ID(n), n.display_name;'
t = cypher.execute(cdb, query)[0]
for x in t:
x[0] = str(x[0])
x[1] = str(x[1])
things = list(tuple(x) for x in t)
return things
class SelectAThing(Form):
thingID = SelectField('Thing name', choices=get_list_of_things())
Run Code Online (Sandbox Code Playgroud)
运行选项= get_list_of_things()确实产生了一个有效的选择列表,很棒,这基本上有效.
但是,即使数据库存在,也似乎永远不会更新事物列表,我稍后会返回该表单.如果我向db添加内容并返回,我仍然会看到第一个列表.
我有一堆保存在orgmode文件中的链接,比如...
http://www.stackoverflow.com
http://www.google.com
http://www.github.com
Run Code Online (Sandbox Code Playgroud)
我可以通过将光标放在链接上并打开它来打开每一个C-c C-o,它可以方便地弹出我的默认浏览器并在选项卡中打开该链接.
现在假设我有20个这样的链接.是否有方便的方法将这样的函数应用于选定区域内的每一行,而不记录显式宏?
我想它看起来像......
Select region
M-x foreach-in-region
Keystrokes to apply to each line: C-c C-o
Run Code Online (Sandbox Code Playgroud)
这仅适用于已定义的功能.我想象没有的方式会像......
with cursor on first line of link
F3 # to start record macro
C-c C-o
down arrow
F4
Select region (omitting the first line, since that's now already opened in my browser)
C-x C-k r
Run Code Online (Sandbox Code Playgroud)
这存在吗?如果没有,我会怎么做?
我正在尝试将对象序列化为JSON字符串并将其写入文件.
在python中,我会做类似的事情:
>>> meowmers = {"name" : "meowmers", "age" : 1}
>>> import json
>>> with open("myfile.json","wb") as f
json.dump(meowmers, f)
$ cat myfile.json
{"age": 1, "name": "meowmers"}
Run Code Online (Sandbox Code Playgroud)
我在Haskell看这个
$ stack ghci
{-# LANGUAGE OverloadedStrings #-}
:set -XOverloadedStrings
import GHC.Generics
import Data.Aeson as A
import Data.Text.Lazy as T
import Data.Text.Lazy.IO as I
:{
data Cat = Cat {
name :: Text
, age :: Int
} deriving Show
:}
let meowmers = Cat {name = "meowmers", age = 1}
writeFile …Run Code Online (Sandbox Code Playgroud) 我看到一些类似的问题:
给定元素:
elems = [1,2,3,4] # dimensions 1x4
Run Code Online (Sandbox Code Playgroud)
如果我有一个向量:
M = [4,2,3,1] # dimensions 1x4
Run Code Online (Sandbox Code Playgroud)
我知道有一些排列矩阵p可以相乘elems * p = M,在这种情况下是:
p =
[
0 0 0 1
0 1 0 0
0 0 1 0
1 0 0 0
] # dimensions 4x4
# eg:
# elems * P = M
1x4 4x4 = 1x4
Run Code Online (Sandbox Code Playgroud)
现在,对于我的问题,我感兴趣的是当 M 是非向量、非方阵时它会是什么样子,例如:
M' = [
4 2 3 1
4 3 2 1
1 2 3 4
] …Run Code Online (Sandbox Code Playgroud) 我知道我可以使用如下语法导出 conda 环境:
conda env export -n my_env -f /somewhere/environment.yml
Run Code Online (Sandbox Code Playgroud)
并使用以下命令导入它们:
conda env create -f /somewhere/environment.yml -p /somewhere/else/
Run Code Online (Sandbox Code Playgroud)
但是,如果我从我的私人 github 安装了一个包,使用如下语法:
(my_env) ~/ $ pip install git+https://github.com/user/my_package.git@master#egg=my_package
Run Code Online (Sandbox Code Playgroud)
或者将其放入我的 中requirements.txt,如下所示:
aiofiles==0.4.0
git+https://github.com/user/my_package.git@master#egg=my_package
chardet==3.0.4
Run Code Online (Sandbox Code Playgroud)
当我导出时,我看到这个:
name: my_env
channels:
- defaults
dependencies:
- ca-certificates=2019.5.15=0
...
- pip:
- aiofiles==0.4.0
- my_package # UH OH, NO github INSTRUCTION OR VERSION
- chardet==3.0.4
Run Code Online (Sandbox Code Playgroud)
这是一个问题,因为当我尝试运行时:
conda env create -f /somewhere/environment.yml -p /somewhere/else/
Run Code Online (Sandbox Code Playgroud)
我收到一条错误,指出 conda 无法安装,因为找不到my_package. 这是有道理的,环境并没有告诉它去 github 中查找。
我怎样才能要求conda …