标签: whitespace

Phpstorm - 即使在线完成后我也可以点击空格,我不想这样做

道歉,因为我意识到这不应该是在stackoverflow和他的一个姐妹脱离的.

但它让我疯狂,但当我点击一条线的白色空间时,它会走到一条线的尽头.

我在另一台机器上进行了全新安装但它没有这样做,所以我知道它的版本.

我点击设置中的小'重置'没有运气.

whitespace phpstorm

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

在PHP 5.2中修剪unicode空格

如何修剪a string(6) " page",第一个空格是0xc2a0不间断空格?

我试过trim()preg_match('/^\s*(.*)\s*$/u', $key, $m);.

另一个问题:我怎样才能可靠地复制这些字符?它们似乎被转换为"普通"空间,这使得调试变得困难.

php unicode whitespace utf-8 character-properties

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

Python解析器如何处理缩进?

在解析像C这样的自由格式语言时,解析器很容易通过查看解析器发出的符号来确定几个表达式何时彼此相关.例如,在代码中

if (x == 5) {
    a = b;
    c = d;
}
Run Code Online (Sandbox Code Playgroud)

解析器可以告诉它a = b;并且c = d;是单个表达式的一部分,因为块周围有一组明确的大括号.此外,解析器知道块中的两个语句是相关的,因为它们之间有分号.这可以使用以下内容轻松编码为CFG:

STMT        ::=  IF_STMT | EXPR; | BLOCK_STMT | STMT STMT
IF_STMT     ::=  if ( EXPR ) STMT
BLOCK_STMT  ::=  { STMT }
Run Code Online (Sandbox Code Playgroud)

但是,在Python和其他对空格敏感的语言中,这样做并不容易,因为语句的结构只能从它们的绝对位置推断出来,我认为不能很容易地将它编码成CFG.例如,Python中的上述代码如下所示:

if x == 5:
    a = b
    c = d
Run Code Online (Sandbox Code Playgroud)

尽我所能,我看不到写一个接受这个的CFG的方法,因为我无法弄清楚如何将"嵌套的两个语句"编码成CFG.

Python解析器如何对语句进行分组?他们是否依赖于扫描仪自动插入表示语句开头和结尾的额外标记?他们是否为程序产生了一个粗略的AST,然后有一个额外的传递,根据它们的缩进汇总语句?我是否缺少一个聪明的CFG来解决这个问题?或者他们使用比标准LL(1)或LALR(1)解析器更强大的解析器,它能够考虑空白级别?

python whitespace parsing

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

如何在PHP中使用正则表达式匹配空格,回车和换行?

我正在使用PHP中的正则表达式.我有以下字符串:

<img 
src="/files/admin/hotel_website.gif" alt="Go To The Hotel's Web 
Site" align="absmiddle" border="0" class="hotel_icon" />
Run Code Online (Sandbox Code Playgroud)

此字符串包含回车符和换行符.

我希望我的正则表达式用IMG替换html img标签,但这不适用于上述文本.

我发现它包含这些字符,循环遍历字符串中的每个字符并打印出十六进制表示,可以在这里找到(http://pastebin.com/ViNdBsRV).

这是我的正则表达式:

strip_tags(preg_replace('/^\s*<img\s*.*\/?>\s*$/i', '[IMG]', $test));
Run Code Online (Sandbox Code Playgroud)

感谢帮助.

html php regex whitespace carriage-return

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

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

如何在Org-mode中创建可以正确导出到LaTeX的不间断空格(tie)

在(La)TeX中,不间断的空间称为连接,它们是由~.例如,在缩写之后使用关系,以便在它们之后不直接断行,并且使得结束缩写的点不被视为结束语句.后者的使用很重要,因为标准的LaTeX在点之后比在单词之间留出更长的空间.

从Org-mode导出到LaTeX时~,将其视为显式字符,而不是平局字符.忽略使用不间断空格不是一种替代方法,因为它会导致错误的间距(参见上例中的第二句).另一种方法是强制Org-mode ~作为LaTeX处理,#+BEGIN_LaTeX ~ #+END_LaTeX但它很冗长并导出到其他格式的中断.最后,如http://comments.gmane.org/gmane.emacs.orgmode/24716所述,使用UTF-8不间断空格不起作用,因为LaTeX不会将其视为空格.那么,如何在Org-mode中使用正确导出到LaTeX的非中断空格?

这是一个澄清的例子.第一句失败,因为~被视为显式字符.显然,第二句失败了,因为最后一个点被视为LaTeX的一个句子.第三句出口得当,但是很冗长,并且会导致出口到其他格式.第四行(由插入的UTF-8非破坏空格分隔C-x 8 Space)失败,因为LaTeX不将其视为空格:

#+title:Title

e.g.~example

e.g. example

#+BEGIN_LaTeX
e.g.~example
#+END_LaTeX

e.g. example
Run Code Online (Sandbox Code Playgroud)

这导出(C-x C-e L)到以下LaTeX代码:

e.g.\~{}example

e.g. example

e.g.~example

e.g. example
Run Code Online (Sandbox Code Playgroud)

其呈现为:

LaTeX呈现

我在Emacs 23.3.1中运行Org-mode 7.6.

emacs whitespace latex org-mode

22
推荐指数
4
解决办法
6021
查看次数

可以将CVS和Subversion设置为忽略合并中的空格吗?

CVS和Subversion都有一个方便的合并功能,因此当您更新已修改的源文件时,它会合并其他人在同一文件上所做的更改.

但是,如果您的更改与其他更改不兼容 - 通常如果您同时更改了代码的相同部分 - 则会产生冲突.两段源代码都将包含在合并文件中,您需要手动排序要保留的更改.到目前为止都很好.

我的问题是我们中的一些人使用不同的开发环境(Netbeans与vi,如果你必须知道),Netbeans有一个自动缩进功能,可以重新缩进代码.因此,当我们合并更改时,我们有时会遇到巨大的冲突,这些冲突主要是由缩进的简单更改引起的,并不是对代码的真正更改.通常这些会产生数百行明显的冲突,这些冲突必须手动解决,但通常它们只归结为几行真正的变化.当某人的编辑器将unix更改为Windows换行符或反之亦然时,会出现类似的情况.

那么 - 在比较两个版本时,我可以设置合并以忽略这些"冲突"吗?Diff有--ignore-space-change或-b选项,我想在cvs或svn中提供基本相同的功能.我们在不同的项目中使用每个工具,所以我很乐意为其中一个或两个得到答案.

最后两个笔记:

  • 显然,合并过程必须随意选择在合并文件中使用哪个版本的空白.我很好 - 我们总是可以在以后重新格式化它.
  • 我可以通过更多的纪律和更频繁的检查来避免这一点 - 承认和理解.但我并不完美.

svn cvs version-control whitespace

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

从字符串的开头和结尾删除空格

我对正则表达式很新.我需要在开头和结尾清空空格中的搜索字符串.示例:"搜索字符串"结果:"搜索字符串"

我有一个模式,作为一个JavaScript解决方案,但我不能让它使用preg_replace在PHP上工作:

有效的Javascript模式:

/^[\s]*(.*?)[\s]*$/ig
Run Code Online (Sandbox Code Playgroud)

我的例子:

$string = preg_replace( '/^[\s]*(.*?)[\s]*$/si', '', " search string " );
print $string; //returns nothing
Run Code Online (Sandbox Code Playgroud)

在解析它告诉我g不被识别所以我不得不删除它并将ig更改为si.

php regex whitespace preg-replace

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

(bootstrap)包裹时在元素之间保持一点垂直空间?

使用Bootstrap,当我将一堆元素(例如按钮)放在一行并缩小窗口时,元素会回绕.

但是当窗口足够宽以包含彼此旁边的所有内容时,元素之间存在一些水平空间,垂直所有内容都会粘在一起,其间的空白空间为零像素.

实例(缩小或加宽输出窗口以查看效果)

屏幕截图示例:
1.足够宽,注意按钮之间的空间
2. 环绕,注意彼此顶部堆叠的按钮之间没有空间

我想我可以搞乱一些自定义CSS,添加垂直边距或诸如此类的东西,但为了尽可能保持兼容和标准,我想知道是否有更好或更多的本机方法来修复Bootstrap布局?

html css whitespace button twitter-bootstrap

21
推荐指数
3
解决办法
4万
查看次数

如何在git diff中更改标签宽度?

选项卡的标准间距为8个字符.

我更喜欢在编辑器和控制台中查看4个字符.我可以使用以下tabs命令在控制台上轻松更改此默认行为:

tabs -4
Run Code Online (Sandbox Code Playgroud)

但是,在使用时git diffgit show它显示在默认的8个字符选项卡空格中.

如何git diff将标签渲染为4个字符空格?

git whitespace git-diff

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