各位老铁们好,相信很多人对yy电影网站源码分享程序影视网站都不是特别的了解,因此呢,今天就来为大家分享下关于yy电影网站源码分享程序影视网站以及yycms影视源码的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
罗马三巨头
公元前62年,凯撒组建了一个包含了他自己,政治家克拉苏,以及军事领袖庞培三人的政治联盟。这三个人一起组成了一个秘密政治小组,称为Triumvirate(三巨头),来统治罗马共和国。而文本三巨头则是zsh、vim和tmux。这三个令人尊敬的工具本身已经非常强大,然而它们的组合却更加所向披靡,把其他文本编辑组合甩开了N条街。本文旨在向刚接触各类工具的新手们简述如何建立一个既强大又容易配置的文本三巨头。我想把主要的篇幅放在如何将zsh、vim和tmux整合起来,并主要讲述了我如何解决两个常见的问题——复制/粘贴功能和颜色配置。
(题图来自:deviantart.net)
我的愚见
跟Rands一样,我对工具非常痴狂。我认为文本三巨头是最强大的文本编辑的工具链。如果你不使用这个工具链,那么我会建议你先干了这杯酒,然后尝试使用文本三巨头。如果你每天花费大量的时间在文本中纠缠,那么你更应该接受我的建议。一开始换工具或许会有些不习惯,但是你的努力会得到回报的。使用zsh、vim和tmux的好处就在于免费使用,速度快,可任意定制,在任何操作系统上都能使用,可在远程环境中使用,还在于可以实现远程结对编程,以及互相之间,和与Unix之间深度的整合。最终纯文本编辑的效率和组织性将会得到很大提升。该工具链可以完全由git管理,并且可以再几秒钟的时间内克隆到一台远程服务器或是一台新的机器上。总的来说,它们的这些优点让使我在写作和编程上变得更快,更有效率。
文本三巨头的一个巨大的优势在于对用于管理工作环境的分屏模型的普遍使用。分屏模型管理允许tmux像粘合剂一样组织工作流。通常在一天的结尾,我会发现我留下了一些shell窗口和一大堆的临时文件,数据文件,源代码文件,文档文件,还有打开的数据库。把这些窗口一个个关掉然后第二天再把它们打开是非常痛苦的一件事。tmux和vim支持对一个特定的项目打开大量的窗格和窗口,如果你希望转换到另一个完全不同的项目,你可以从这些窗口分离出来转向另外一个项目,然后再按原样返回这些窗口。在一时间段内,我通常同时在多个工作和个人的项目上进行工作。在多个工作环境中来回切换的能力对我来说非常重要。(Thoughtbotblog中有对tmux中窗口和窗格的使用的讲解)
下面是——包装在tmux中的zsh和vim:
该tmux会话中有三个分别命名为demo、docs和scatch的窗口,然而在截图中只有最上面的窗口是可见的。在这个窗口中有四个分区。左上角的分区是一个zsh窗口,左下角的分区是一个交互的python会话,右上角的窗格是用vim打开的python代码,然后右下角是包含markdown文档的窗格。
外观设置
我建议给文本三巨头设置两种颜色主题——一个主题给工作上的项目而另外一个给个人项目。我是情景依赖记忆的重度使用者,因此使用两个主题在认识和区分工作项目和个人项目上给予我很大的帮助。如图,下面是我的个人主题(左),以及工作主题(右)。两个主题都是EthanSchoonover的solarized项目中的版本。我在玩的时候使用暗调主题,是因为我通常在清晨或傍晚天空还处在黑暗中时搞自己的项目。暗调主题可以在这些时候让我的眼睛得到舒缓。关于字体,我用的是14point的Inconsolata。
安装
首先要做的事将大写锁定键(CapsLock)重映射到Control键上。大写锁定键是个历史遗留问题,这个在键盘上的黄金位置的键需要被更好的利用。在tmux中对Control键的使用非常频繁,因此将Control键重映射到一个符合人体工程学的位置对我们很有帮助。
想要给三巨头创建一个强大的工作环境,我们可以下载iTerm2终端模拟器。iTerm2比普通的终端应用具有更强的性能,更多的特性和更灵活的定制化。当你开始使用iTerm2时,请回头阅读全部文档看看它能为你做什么。其中一个特性是Command-?,显示出一个视窗帮助你快速地找到你当前的光标位置。大部分iTerm2非常酷炫的功能本文都没有提及。请确保你了解了iTerm2的即时回放,正则查询,点击打开URL,以及标记跳转的功能。
当iTerm2安装完成,即可添加亮调和暗调主题。solarized库中含有iTerm2调色板和配置iTerm2主题的说明,所以它的安装简洁明了。另一项对使用iTerm2有用的配置是启用系统级别的绑定键,通过该键可以让iTerm2转为最前面的窗口。我发觉设置一个具体的绑定比使用应用切换器(Command-Tab)要快的多。该设置在Preferences>Keys中,而我使用的绑定键是Option-t。关于自定义,我还有一个建议,那就是在Profiles>Terminal>Notifications中撤销选中iTerm2的响铃声。
由于文本三巨头的操作高度集中在键盘上,因此,在你配置和形成自己的肌肉记忆之前,将iTerm,zsh,vim,tmux,和其他任何你之前使用的工具之间的快捷键冲突消除是非常明智的选择。做窗口移动时,我使用Option键。Option-t将iTerm2移到屏幕前,而Option-i将Twitter移到屏幕前,等等。我还使用Moom作为我在OSX上的平铺式窗口管理器,并将所有的快捷键配置为使用Option键将窗口移至屏幕上特定的展示窗口或位置上。
接下来,安装Homebrew然后使用它去安装git,MacVim,tmux和reattach-to-user-namespace(返回用户命名空间)。安装MacVim有两个原因。第一,默认的OSX自带的vim似乎对很多人来说很慢。我发现使用MacVim中的vim比OSX版本的vim要快很多。另外一个安装MacVim的好处是你的系统将得到一个更新版本的vim。第二个原因则是复制/粘贴的使用在OSX版本的vim中并没有得到优化。
安装完git,就可以新建一个存储库来放置文本三巨头的设置文件。我的存储库命名为dotfiles并存储了我的所有zsh,vim,andtmux配置文件。如果你不知道怎么为你的文件设置版本控制,请阅读ProGit或者GitImmersion。
ZSH
已经有很多文章写到了如何使用zsh以及为什么zsh比bash强大。基本上,bash有的功能zsh都有,而且zsh的一些特性bash是没有的。我使用zsh而不是bash是因为它有扩展的globbing(通配符),更好用的tab补全,内建的拼写纠正,一个更好的计算器(zcalc),以及一个内建的批重命名文件工具(zmv)。zsh的另外一个杀手级特色是oh-my-zsh——一个zsh的社区驱动的框架。oh-my-zsh预先打包好了很不错的主题,插件,以及让zsh极度强大的配置。如果你想学习本文的话,请安装iTerm2并将zsh作为你的默认shell。
我将我的.zshrc、.vimrc和.tmux.conf配置文件保存在dotfiles目录中,并用symlink在home目录下创建链接。这样我就能只在一个目录里做zsh、vim和tmux的配置的版本控制了。文本三巨头使用了vim,那么我们应该让zsh和tmux也使用vim以及它的绑定键并将vim设置为默认编辑器。将下面的文本加到.zshrc文件中,让zsh支持vim:
exportEDITOR=”vim”\r\nbindkey-v\r\n\r\n$HOME/~}%{$reset_color%}$(git_prompt_info)\r\n$(virtualenv_info)%(?,,%{${fg_bold[blue]}%}[%?]%{$reset_color%})$’\r\n\r\nZSH_THEME_GIT_PROMPT_PREFIX=”on%{$fg[magenta]%}”\r\nZSH_THEME_GIT_PROMPT_SUFFIX=”%{$reset_color%}”\r\nZSH_THEME_GIT_PROMPT_DIRTY=”%{$fg[green]%}!”\r\nZSH_THEME_GIT_PROMPT_UNTRACKED=”%{$fg[green]%}?”\r\nZSH_THEME_GIT_PROMPT_CLEAN=””\r\n\r\nlocalreturn_status=”%{$fg[red]%}%(?..?)%{$reset_color%}”\r\nRPROMPT=’${return_status}%{$reset_color%}’
VIM
下面我会将注意力放在vim与文本三巨头的整合而不是vim本身。为了将solarized整合到vim中,你需要安装vimsolarizedplugin然后将下面的内容放到你的vimrc里:
syntaxenable\r\nletg:solarized_termtrans=1\r\ncolorschemesolarized\r\ntogglebgCopymode\r\nsetw-gmode-keysvi\r\nbind`copy-mode\r\nunbind[\r\nunbindp\r\nbindppaste-buffer\r\nbind-tvi-copyvbegin-selection\r\nbind-tvi-copyycopy-selection\r\nbind-tvi-copyEscapecancel\r\nbindyrun”tmuxsave-buffer-|reattach-to-user-namespacepbcopy”
第一行设置令tmux使用wrapper程序给每个新打开的tmux窗口去启动zsh。接下来的三行是我个人对tmux里鼠标操作的设置。你可以保留或删掉这三行,这取决于你自己的需求。真正的干货在接下来的十行,它们用于处理复制模式。
除了vim和OSX的复制/粘贴缓存外,tmux有它自己的复制/粘贴缓存。为了高效地使用tmux缓存,可以点击`键来进入复制模式。我已经将默认的复制绑定重映射为跟vi类似的绑定。为了将文本放入tmux的复制/粘贴缓存中,可以点击v去做出文本的选定然后点击y复制选中项。此时,所选的文本就被放在tmux复制/粘贴缓存中。输入<prefix>p可以粘贴该文本。不过,如果你想将文本放入OSX的复制/粘贴缓存里,你需要输入<prefix>y。
插件
要是我没提及一些非常棒的特别与文本三巨头融合的很好的开源项目,就是我的不对了。我就不深入地一个一个说这些工具了,下面是一些我最喜欢的项目的链接以及简介:
更新
一些朋友问我如何像上面的截屏里一样在tmux中设置漂亮的状态栏。我是从wemuxproject中学到的。如果你已经安装了vim-powerline并且正在使用补充的字体,你只需要向你的tmux.conf中加入下面的内容去得到我的状态栏样式。感谢MattFurden!
set-gstatus-left-length52\r\nset-gstatus-right-length451\r\nset-gstatus-fgwhite\r\nset-gstatus-bgcolour234\r\nset-gwindow-status-activity-attrbold\r\nset-gpane-border-fgcolour245\r\nset-gpane-active-border-fgcolour39\r\nset-gmessage-fgcolour16\r\nset-gmessage-bgcolour221\r\nset-gmessage-attrbold\r\nset-gstatus-left’S\r\n[fg=colour245,bg=colour238,bold][fg=colour238,bg=colour234,nobold]?’\r\nset-gwindow-status-format”I[fg=colour234,bg=colour39]?I?[fg=colour39,bg=colour234,nobold]?”
译文:http://blog.jobbole.com/86571/译者:鸭梨山大
本文为转载,如需再次转载,请查看源站“blog.jobbole.com”的要求。如果我们的工作有侵犯到您的权益,请及时联系我们。
文章仅代表作者的知识和看法,如有不同观点,请楼下排队吐槽:D
文章分享结束,yy电影网站源码分享程序影视网站和yycms影视源码的答案你都知道了吗?欢迎再次光临本站哦!
