有没有办法从rpm包中提取spec文件(我只有RPM文件)
不是
rpm --scripts -qp my-great-app-1.1.2.rpm
Run Code Online (Sandbox Code Playgroud)
(这种语法只能从rpm获取spec脚本中的脚本)
与仅使用内置的“ 缩写 ”功能相反,为VIM 使用“ snippets”插件(例如snipmate,ultisnips)有什么优点和/或缺点?
是否存在特定的用例,其中的声明iabbr,cabbr等缺少代码片段插件提供的一些主要功能?我一直未能在这两个“功能”及其各自的实现之间找到全面的比较。
正如@ peter-rincker在评论中指出的那样:
应该注意的是,缩写词也可以执行代码。通常通过
<c-r>=或通过表达式缩写(<expr>)。将@@扩展到当前文件路径的示例::iabbrev @@ <c-r>=expand('%:p')<cr>
作为python的示例,让我们比较Vim中用于插入类声明的行的片段和缩写。
# New Class
snippet cl
class ${1:ClassName}(${2:object}):
"""${3:docstring for $1}"""
def __init__(self, ${4:arg}):
${5:super($1, self).__init__()}
self.$4 = $4
${6}
Run Code Online (Sandbox Code Playgroud)
au FileType python :iabbr cl class ClassName(object):<CR><Tab>"""docstring for ClassName"""<CR>def __init__(self, arg):<CR><Tab>super(ClassName, self).__init__()<CR>self.arg = arg
Run Code Online (Sandbox Code Playgroud)
我缺少的“片段”的一些基本功能还是我假设他们是矫枉过正大部分纠正,当Vim的abbr和:help template模板是能够做到的所有 大部分的东西片段吗?
我认为片段的实现比较容易,并且它们还提供了其他美学/视觉功能。例如,如果我abbr在Vim和其他插件中使用来运行/测试vim中的python代码(例如syntastic,pytest, …
我的问题非常短暂.我有一个基于LinearLayout的自定义控件.我从xml'膨胀它的视图,其中根被设置为元素.
现在,当我尝试通过"this.setPadding(x,x,x,x)"设置此自定义控件的填充时,它不会影响我稍后在几行代码中添加到此控件的TextView和ImageView.
目前我通过单独设置每个控件的边距来实现它,以实现整个自定义控件的全局填充,但是如果知道是否有使用setPadding dynamicaly,或者可能是我的错误,那将是很好的.
为了简化,我的案例看起来像这样:
setGravity(Gravity.CENTER_HORIZONTAL | Gravity.CENTER_VERTICAL);
LinearLayout.LayoutParams lp = new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.MATCH_PARENT); setLayoutParams(LP);setPadding(0,30,0,30); //我知道它在px中
之后我添加了一个大图像,由于它的大小而缩小,但LinearLayout的填充(我尝试设置dynamicaly)不会影响它,只有我直接设置它的边距.
任何提示都会受到极大的关注.