css - 在哪里可以找到 Neo4j GRASS 语言的语法概述?

标签 css syntax neo4j code-documentation grass-file

Neo4j 的浏览器允许它显示的图形使用 GRASS 语言(GRaph 样式表)中的类 CSS 样式文件进行样式设置。但是,我一直没能找到这种语言的语法。有没有,如果有,在哪里可以找到?

最佳答案

据我所知,它并没有真正的记录,但我会分享我所知道的,因为我认为没有那么多要涵盖的内容。

首先,您可以使用浏览器命令 :style 下载您的 Neo4j .grass 文件(您需要将结果复制到一个文本文件,并制作扩展名 .grass 以重新导入它)

接下来,需要注意的是,.grass 文件实际上是 CSS,但 Neo4j 似乎更喜欢 JSON 格式。 (两种格式都是有效的 .grass 内容)

结果应该是这样的

{
    "node": {
        "diameter": "100px",
        "color": "#FFD86E",
        "border-color": "#EDBA39",
        "border-width": "2px",
        "text-color-internal": "#604A0E",
        "font-size": "16px"
    },
    "relationship": {
        "color": "#68BDF6",
        "shaft-width": "13px",
        "font-size": "14px",
        "padding": "3px",
        "text-color-external": "#000000",
        "text-color-internal": "#FFFFFF",
        "caption": "<type>"
    },
    "node.MyFirstLabel": {
        "color": "#68BDF6",
        "border-color": "#5CA8DB",
        "text-color-internal": "#FFFFFF"
    },
    "node.MySecondLabel": {
        "color": "#6DCE9E",
        "border-color": "#60B58B",
        "text-color-internal": "#FFFFFF"            
    },
    "relationship.IS_RELATED_TO": {
        "color": "#A5ABB6",
        "shaft-width": "1px",
        "font-size": "8px",
        "padding": "3px",
        "text-color-external": "#000000",
        "text-color-internal": "#FFFFFF"
    },
    /*This is a comment, the rest is added by hand*/
    "node.EXPERIMENTAL": {
        "color": "#DE9BF9",
        "border-color": "#BF85D6",
        "text-color-internal": "#FFFFFF",
        /*You can use {<prop_name>} for dynamic values. can be mixed with literals*/
        "caption": "Hello, my name is {name}",
        /*You can't use <>, the HTML will eat it, so use the HTML escaped version for the string literal <id>*/
        /* <id> and <type> will actually use the internal value for nodes and relationships respectively */
        "defaultCaption": "&lt;id&gt;"
    }
}

请注意,如果一个节点有 2 个样式标签,则只会应用第一个(最靠近顶部的)样式。如果节点没有 GRASS 中的标签,则“节点”用作默认值(关系相同)。我相信大多数 CSS 样式都受支持,但您可以随时尝试。如果不支持,它将被忽略。

所以我将尝试涵盖非标准属性

  • caption:显示的文本(通常绑定(bind)到属性)
  • defaultCaption:未设置标题时使用的标题(据我所知)
  • 直径:仅节点。圈子大小
  • 轴宽:仅限关系。尺寸
  • color:圆形颜色(在标准 css 中,这是文本颜色)
  • text-color-internal: 文字颜色

(这是一个社区维基,请更新有关 GRASS 文件的任何其他详细信息)

在大多数情况下,在官方文档发布之前,只对微小的更改进行试验可能会更容易。如果你想进入兔子洞,grass parser是开源的。请注意,在发布官方文档之前,行为可能会发生变化。

关于css - 在哪里可以找到 Neo4j GRASS 语言的语法概述?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39101466/

相关文章:

html - CSS - 为什么有这么多定位方式,哪种方式是正确的?

php - 使用 Laravel bootstrap css 仅对页面的一部分进行样式设置

pointers - 参数/模式中 '&variable' 的含义

java - 将节点转换为对象

neo4j - 从 xml 文件初始加载 Neo4j 数据库

javascript - Neo4j 和 Neovis.js

html - 将鼠标悬停在整个 div 上

CSS 颜色 anchor ,但不是 A :hover

syntax - coffeescript语法错误 “unexpected REGEX”

arrays - 用于在数组中追加值的下标语法