zoukankan      html  css  js  c++  java
  • mac工作软件推荐-iterm + zsh + tmux

    原文链接: http://ju.outofmemory.cn/entry/57244

    tmux安装https://blog.csdn.net/nmgzywd/article/details/50915772

    mac上的Terminal + bash + screen组合现在已经非常好用了,但是还是经不起iterm+zsh+tmux的冲击。在同事的强烈推荐下,趁着升级mac系统的机会,顺便也切换到iterm+zsh+tmux的环境下了。

    我为什么要要iterm2

    切换过来也是脑袋一热的冲动,我也调查过一些资料,看了下iterm的一些优点:

    * 兼容性好,远程服务器 vi 什么的低版本能很好兼容,Terminal 则会出问题  (我是长时间在服务器上混的人,但其实并没有这种感觉~~) 
    * 支持 xterm-256 色,方便在终端中配置 vim/emacs 代码配色  (其实Terminal现在已经支持256色了) 
    * 快捷键丰富,自带/自己定义都很方便      (这个是关键,快捷键都我非常重要) 
    * 分屏简单方便,可以根据自己需要同时搭配上 tmux,大屏用起来爽到爆  (分屏只需要 command +(shift)+ d)

    个人常用的快捷键和功能:

    1. ⌘ + 数字         : 各 tab 标签切换 
    2. ⌘ + f              : 查找 ,所查找的内容会被自动复制 ,输入查找的部分字符,找到匹配的值按tab,即可复制 
    3. ⌘ + d             : 横着分屏 
    4. ⌘ + shift + d  : 竖着分屏 
    5. ⌘ + r = clear  : 换到新一屏,而不是 类似clear ,会创建一个空屏 
    6. ctrl + u            :清空当前行,无论光标在什么位置 
    7. (**) + ⌘ + ;     : [(**) 输入的命令开头字符],会自动列出输入过的命令 
    8. ⌘ + shift + h  : 会列出剪切板历史 
    9. ⌘← / ⌘→       :   到一行命令最左边/最右边 
    10. ⌘ + enter        :   全屏

    为什么要选择zsh?

    至少在我看来,zsh是兼容bash,对现有的操作是没有任何的影响。而且还带来来不少新的特性来减少我们的输入:

    1. 连续tab,给出所有的补全列表并直接进入到选择列表   cd <tab><tab> 
    2. 不记得命令的参数?没关系,输入命令直接tab给出就能给出参数说明,zsh后还用得着man函数吗??? tar – <tab> 
    3. kill进程,还需要先查进程吗?用zsh,只需tab就能把所有进程展示给你,很强大的一个功能。 kill  <tab> 
    4. 智能查找历史命令,在用<ctrl-p>或者方向上键查找历史命令时,zsh支持限制查找。比如,输入ls 然后再按方向上键,则只会查找用过的ls命令。 
    5. 多个终端会话共享历史记录。多个窗口,tab,tmux。所有的命令历史都可以共享。 
    6. zsh还支持后缀alias,即以什么命令打开特定的后缀名文件。例如alias -s js=mvim,输入hello.js,会以vim打开该文件,而不在需要vim hello.js。 
    7. 递归搜索,ll  **/*.log,find命令大部分场景被取代了。

    至于安装和配置zsh,得感谢robbyrussell开发得oh-my-zsh,这玩意就是一个开源的zsh配置管理框架,提供了大量实用的功能,主题等。

    使用brew来安装zsh

    brew install zsh

    设置zsh为默认,在/etc/shells文件末尾添加

    /usr/local/bin/zsh

    执行:

    chsh -s /usr/local/bin/zsh

    最后记得将~/.bash_prorile或者~/.profile等配置拷贝到~/.zshrc中。

    安装oh-my-zsh

    自动安装:

    curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh

    可以选择自己喜欢的主题。只需要修改~/.zshrc文件中的ZSH_THEME即可。

    为什么要选择tmux

    1. 掉线仍然能保证工作现场

    2.  tmux完全使用键盘控制窗口,实现窗口的切换

    当然还有其它很多得优点,暂时我没还用上,对我而已,跟风了解下而已。安装也非常得简单:

    brew install tmux

    搜集到得一些快捷键:

    Ctrl+b  // 激活控制台;此时以下按键生效 
    系统操作 
    ?   // 列出所有快捷键;按q返回 
    d   // 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话 
    D   // 选择要脱离的会话;在同时开启了多个会话时使用 
    Ctrl+z  // 挂起当前会话 
    r   // 强制重绘未脱离的会话 
    s   // 选择并切换会话;在同时开启了多个会话时使用 
    :   // 进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器 
    [   // 进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出 
    ~   // 列出提示信息缓存;其中包含了之前tmux返回的各种提示信息 
    窗口操作 
    c   // 创建新窗口 
    &   // 关闭当前窗口 
    数字键 // 切换至指定窗口 
    p   // 切换至上一窗口 
    n   // 切换至下一窗口 
    l   // 在前后两个窗口间互相切换 
    w   // 通过窗口列表切换窗口 
    ,   // 重命名当前窗口;这样便于识别 
    .   // 修改当前窗口编号;相当于窗口重新排序 
    f   // 在所有窗口中查找指定文本 
    面板操作 
    ”   // 将当前面板平分为上下两块 
    %   // 将当前面板平分为左右两块 
    x   // 关闭当前面板 
    !   // 将当前面板置于新窗口;即新建一个窗口,其中仅包含当前面板 
    Ctrl+方向键    // 以1个单元格为单位移动边缘以调整当前面板大小 
    Alt+方向键 // 以5个单元格为单位移动边缘以调整当前面板大小 
    Space   // 在预置的面板布局中循环切换;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled 
    q   // 显示面板编号 
    o   // 在当前窗口中选择下一面板 
    方向键 // 移动光标以选择面板 
    {   // 向前置换当前面板 
    }   // 向后置换当前面板 
    Alt+o   // 逆时针旋转当前窗口的面板 
    Ctrl+o  // 顺时针旋转当前窗口的面板

  • 相关阅读:
    CSS3—— 2D转换 3D转换 过渡 动画
    CSS3——边框 圆角 背景 渐变 文本效果
    CSS3——表单 计数器 网页布局 应用实例
    CSS3——提示工具 图片廓 图像透明 图像拼接技术 媒体类型 属性选择器
    CSS3——对齐 组合选择符 伪类 伪元素 导航栏 下拉菜单
    CSS3——分组和嵌套 尺寸 display显示 position定位 overflow float浮动
    CSS3——盒子模型 border(边框) 轮廓(outline)属性 margin外边距 padding填充
    Eclipse连接数据库报错Local variable passwd defined in an enclosing scope must be final or effectively final
    数据库——单表查询
    数据库——添加,修改,删除
  • 原文地址:https://www.cnblogs.com/dfyg-xiaoxiao/p/10844353.html
Copyright © 2011-2022 走看看