小编nir*_*235的帖子

Rank属性让我很困惑

边缘上的Rank属性具有五个值"same","min","source","max","sink".除了"相同",我不知道何时使用其他值.

min
\begin{dotpic}
  rankdir=LR;
  size="7,5";
  node[shape=circle];
  C->A;
  {rank=min;A;B}
  B->D
  A->B;
\end{dotpic}

max
\begin{dotpic}
  rankdir=LR;
  size="7,5";
  node[shape=circle];
  C->A;
  {rank=max;A;B}
  B->D
  A->B;
\end{dotpic}

source
\begin{dotpic}
  rankdir=LR;
  size="7,5";
  node[shape=circle];
  C->A;
  {rank=source;A;B}
  B->D
  A->B;
\end{dotpic}

sink
\begin{dotpic}
  rankdir=LR;
  size="7,5";
  node[shape=circle];
  C->A;
  {rank=sink;A;B}
  B->D
  A->B;
\end{dotpic}
Run Code Online (Sandbox Code Playgroud)

通过对我的vim环境的测试,我可以发现这些值存在一些差异.但不知道它们到底是什么.

dot graphviz

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

#ifdef上的cedet解析问题

我是emacs cedet用户.我得到了cedet的大力帮助.

但是,我在cedet中发现了一些错误#ifdef处理错误.不确定它是来自cedet内部还是我的错误配置.我引用了Curl中发生此问题的一些代码.

#ifdef CURL_DO_LINEEND_CONV
  if((data->set.crlf) || (data->set.prefer_ascii)) {
#else
  if(data->set.crlf) {
#endif /* CURL_DO_LINEEND_CONV */
    endofline_native  = "\n";
Run Code Online (Sandbox Code Playgroud)

使用此代码,必须存在一些错误括号匹配.因为我使用(eassist-list-methods)或其他cedet-semantic函数(跳转到定义)时出错.

我很容易猜到这可能来自#ifdef .. #endif block中的两个大括号.我承认这些是这样的.

#ifdef CURL_DO_LINEEND_CONV
  if((data->set.crlf) || (data->set.prefer_ascii)) 
#else
  if(data->set.crlf) 
#endif /* CURL_DO_LINEEND_CONV */
{
    endofline_native  = "\n";
Run Code Online (Sandbox Code Playgroud)

在此之后,cedet语义功能运行良好.

对此有何想法?它是否来自cedet解析器问题?

如果有一点我必须在cedet配置,你能给我一些见解吗?

谢谢

emacs cedet

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

标签 统计

cedet ×1

dot ×1

emacs ×1

graphviz ×1