我怀疑我的问题的答案是相当简单的,但我是一个git新手,我的头脑在阅读所有类似的SoF问题的答案时感到困惑,这些问题似乎并不是我的问题.
这是我的问题:
我在github有一个回购,有一个分支('master'),我一直在我的本地仓库工作.在某些时候,我停止将提交重新提交给github上的主人,因为我担心他们会破坏事情.所以现在我在本地仓库中有很多提交,我想要回到github.
然而,我宁愿在github('development')上创建一个新的分支,而不是推回到master,我将所有本地提交推回到该分支(只有在它们更好之后我才会合并回master.测试).
这样做的简单方法是什么?
我发现自己想要使用Emacs,主要是因为org-mode,但是我在习惯滚动的滚动行为时遇到了很多麻烦.我知道这是Emacs的一个众所周知的问题/怪癖,并且在滚动时有各种方法可以减少急动.但到目前为止我没有尝试过任何事情.
我见过的主要建议是(setq scroll-conservatively 10000)或者使用smooth-scrolling.el中提供的更全面的修复.我认为这些对我来说都可以正常工作,但是当我按住向上箭头和向下箭头键重复向上或向下滚动时,两者都会失败.当我这样做时屏幕冻结,我看到滚动边距中的滚动指示条向上或向下移动.在我停止按住向上箭头或向下箭头键之前,屏幕不会刷新.
如果我反复按向上箭头或向下箭头,那么我的行为接近我想要的行为,即屏幕平滑滚动,光标键不会重置到屏幕中间.但这是不可取的,因为(1)它需要重复的按键和(2)我认为滚动速度比我应该能够获得更好的解决方案的速度慢.
按住光标键的问题在我看来是向上箭头或向下箭头的重复速度是如此之快以至于它触发emacs以停止屏幕刷新直到释放按键.我想知道对我来说可能的解决方法是在密钥重复率或在emacs中调用下一个/上一个行函数的速率中添加一些延迟.
我没有看到其他人报告这个问题,我想知道其他人是否经历过同样的行为.什么是解决问题的最佳方法,这样我可以按住向上/向下箭头键,并且重复速率足够慢,以便屏幕不会冻结?
更新:以上行为是我在Win7/64上运行emacs时得到的.在同一台机器上,当我在运行Ubuntu 10.04的VirtualBox VM中运行emacs时,即使按住光标键,滚动也没有问题.
我最近做了一些工作修改使用wxPython小部件的Python gui应用程序.我已经在过去的六七年中尝试过Python,但这是我第一次使用gui进行任何工作.我对使用Python的gui编程的当前状态感到非常失望.我非常喜欢Python语言本身,这是我习惯的Delphi/ObjectPascal编程的一个有趣变化,对于通用编程任务来说肯定是一个很大的生产力提升.我想转向Python以获取一切.
但是wxPython是Delphi的VCL或.NET的WinForms之后的一大步.虽然Python本身通过编程更高级别的抽象提供了良好的生产力增益,但wxPython的使用方式比VCL更低的抽象级别.例如,我浪费了很多时间试图让wxPython列表对象按照我想要的方式运行.只是添加可排序的列涉及几个代码密集的步骤,一个用于创建和维护提供实际排序顺序的阴影数据结构,另一个用于在列标题中显示图形排序方向三角形,以及还有一些我不记得了.所有这些容易出错的步骤都可以通过使用我的Delphi网格组件设置属性值来完成.
我的结论是:虽然Python通过提高许多通用编码的抽象级别来提高生产率,但wxPython的几个抽象级别比Delphi的gui工具要低.最终结果:使用Delphi进行gui编程比使用Python进行gui编程要快得多,而得到的带有Delphi的ui仍然更加精致和功能齐全.对我来说,似乎并不夸张地认为Delphi gui编程在1995年比使用wxPython的python gui编程更加先进.
我做了一些其他python gui框架的调查,看起来没有任何比wxPython好得多.我也对wxPython的gui formbuilders进行了一些简单的调查,这会让事情变得更好一些.但是大多数报道这些解决方案都是错误的,甚至一个伟大的formbuilder都无法解决我对wxPython的主要抱怨,这只是因为它具有较少的功能,并且通常要求你以比我低得多的抽象级别进行gui编程.以前用于Delphi的VCL.一些快速调查建议的python gui-dev解决方案(http://wiki.python.org/moin/GuiProgramming)对于习惯使用Delphi或.NET的人来说实在有些令人沮丧.
最后,我有几个问题.
首先,我错过了什么吗?是否有一些Python的gui开发解决方案可以与VCL或WinForms编程进行比较?我不一定关心它是否与Delphi的VCL不相符.我只是在找同一个联盟的东西.
第二,IronPython可以成为前进的方向吗?我大多试图避免喝.NET koolaid,但也许IronPython让我有理由最终放弃.即便如此,IronPython是否与WinForms完全集成,或者我需要让表单本身由c#或vb支持.净?在我看来,SharpDevelop和MonoDevelop就是这种情况(即,IronPython不能用于设计时间的gui构建).VS.NET是否将IronPython与gui-building完全集成?
在我看来,像Python一样可以"接管世界"的方式类似于Visual Basic在1990年代早期的方式,如果有一些精彩的新gui构建解决方案出现在Python中.只有这次使用Python,我们才能拥有全新的快速,跨平台和开源 gui编程范例 .企业不会吃掉它吗?是的,我知道,网络应用程序是当今最重要的事情,所以一个伟大的Python-gui解决方案不会创造VB曾经做过的同样的革命.但是我没有看到gui编程消失,我想要一个很好的现代,开源,高级解决方案.
我有Vim文档,其中包含使用"语法包含"区域的代码块区域,以便从主文档中突出显示不同的语法.例如,我在输入Python代码时使用了一个名为'pyregion'的语法区域.然后使用Python的语法文件中的设置突出显示文档的pyregion区域,而区域外的区域使用主文档的语法文件.
我想让Python区域中的整个背景以不同的颜色着色,以区别于文档的非Python区域.我可以通过输入整个python区域的背景来获得部分路径:
:highlight pyregion guibg=#555555
Run Code Online (Sandbox Code Playgroud)
但是上面的命令只更改了背景上有文本字符的区域的背景,而不是区域的整个背景,这似乎仍然像"正常"组定义的背景颜色一样被控制为文档的其余部分.这没关系 - 它确实引起了对该区域的注意,但它有一个斑点的外观,因为只有代码字符本身具有不同的背景,而不是整个屏幕区域的整个区域.
有没有办法在整个区域内获得不同背景颜色的统一乐队,而不仅仅是有角色的区域的一部分?
在以下链接中有相关的问题和答案,但据我所知,答案也只在有文本的地方改变背景: 用Vim突出显示代码块背景
谢谢你的帮助.
我使用像eclipse,xcode和netbeans这样的文本编辑器,我很高兴看到开发人员使用emacs或vi的效率有多高.
因此,我想知道您是否知道任何以最高生产率展示实验性vi或emacs开发人员的视频.
注意:我不打算开始编辑器战争,我只是想看看超级程序员是如何工作的,他们使用的编辑器是什么.
我有vim插件可以在不同的机器上运行,有时需要根据它是Windows,Linux,Mac来做不同的事情.
测试操作系统最简单的方法是什么?我知道我可以解析:version命令的输出.是否有更简单的东西可以揭示操作系统?
我正在使用LaTeX,我希望在页面的左侧有一个垂直规则,topmargin到bottommargin,距离页面的左边缘0.5in.我想在每个页面上都这样,所以我认为这意味着它必须以某种方式绑定到页眉或页脚?
我根本没有取得任何进展,所以我需要帮助(1)制作全长规则本身,(2)在文档的每一页上自动发生.
有人能告诉我该怎么做吗?
我正在编写一个脚本,我想以编程方式控制搜索,并突出显示它们.search()函数结果没有突出显示(我认为),所以使用该函数对我没用.
我想要做的是使用'normal /'命令来搜索变量,但这似乎并不简单.我可以编写命令脚本:
execute 'normal /' . my_variable . '\<CR>'
Run Code Online (Sandbox Code Playgroud)
(或vim提示中建议的其他变体:http: //vim.wikia.com/wiki/Using_normal_command_in_a_script_for_searching)
但它没有做任何事情.执行脚本行后,我可以在命令行中看到正确的搜索项,但焦点位于文档中,搜索寄存器未被更改,并且光标未进行任何搜索.(似乎<CR>没有进入,虽然没有抛出错误 - 是的,我也试过使用文字^ M.)
我这样做至少可以控制搜索寄存器:
execute 'let @/ ="' . a:term .'"'
Run Code Online (Sandbox Code Playgroud)
然后显而易见的事情似乎是:
normal n
Run Code Online (Sandbox Code Playgroud)
但是,如果我在脚本中运行它,那么'正常n'不会做任何事情.设置搜索寄存器确实有效,如果我在脚本终止后手动按'n'进行搜索(并且显示突出显示,因为hlsearch已启用).我甚至不关心光标是否定位,我只想突出显示寄存器模式.但是脚本中'set hlsearch'的各种组合也不起作用.
我知道我可以使用'match()',但我想让它与常规搜索突出显示,我想知道我做错了什么.它必须是简单的东西,但我没有看到它.谢谢你的帮助.
我一直在研究一些算法编程问题并且有一个问题.问题与此问题中引用的问题相同:USACO:子集(低效)
我能够编写一些(非动态)解决方案,这些解决方案对于高N来说太慢了.不得不作弊并在线查找一些解决方案.事实证明,快速算法很简单,但即使知道答案,我仍然无法看到如何从问题到答案.我可以看到相等和的子集形式的模式,但我没有看到这些模式和算法解决方案之间的联系.
问题(上面的链接)是:
给定一组从1到N的连续整数(1 <= N <= 39),可以将该组划分为两个总和相同的子集的方式有多少?例如,{1,2,3}可以单向划分:{1,2} {3}.
对于较大的集合,答案为0(当N*(N + 1)/ 2为奇数时)或由此简单算法给出:
arr = array of int with (N*(N+1)/4)+1 elements
arr[0]=1 // all other elements initialized to 0
for i = 1 to N
for j = N*(N+1) / 4 downto i
add arr[j-i] to arr[j]
subsetpaircount = arr[N*(N+1)/4] / 2
Run Code Online (Sandbox Code Playgroud)
再次,我可以看到算法如何工作,我甚至插入了打印语句,所以我可以"观察"它是如何工作的.我只是看不出算法的操作如何链接到生成两组分区的不同方式的模式.
链接问题中的响应可能是相关的,但我也无法联系它是如何工作的:"这与在多项式中找到系数x ^ 0项(x ^ 1 + 1/x)(x)相同^ 2 + 1/x ^ 2)...(x ^ n + 1/x ^ n)......"
任何人都可以为我澄清这种联系,或者指出一些解释这个具体问题的参考资料?谢谢.
我试图找出 Vim 中得到的一些正则表达式比较结果背后的原因。我正在尝试匹配以一个或多个星号开头的字符串。以下是各种正则表达式如何匹配字符串:
echo '* text is here' =~ '\^*\*\s' prints 1 (i.e., MATCH)
echo '* text is here' =~ '^*\*\s' prints 0 (NO MATCH)
echo '** text is here' =~ '\^*\*\s' (MATCH)
echo '** text is here' =~ '^*\*\s' (MATCH)
echo '*** text is here' =~ '\^*\*\s' (MATCH)
echo '*** text is here' =~ '^*\*\s' (NO MATCH)
echo 'text is here' =~ '\^*\*\s' (NO MATCH)
echo 'text is here' =~ '^*\*\s' (NO MATCH)
echo '*text is here' =~ '\^*\*\s' …Run Code Online (Sandbox Code Playgroud)