[hyper] 윈도우에서도 예쁜 터미널 쓸 수 있어! (최종 설정 파일 공유)

sujipark-fe·2024년 11월 12일
0

settings

목록 보기
5/6
post-thumbnail

hyper

https://hyper.is

요즘 편리한 배포 툴로 핫한 Vercel에서 만든 터미널 입니다!

브라우저 처럼 탭 추가도 되고, 단축키도 먹습니다!


개발자 도구도 볼 수 있네요..!

플러그인

여러가지 플러그인이 있는데 Newest 보면 더 볼 수 있어요!

hypercwd

hypercwd은 새로운 탭을 열때 현재 하이퍼의 디렉토리 경로로 열게 해줍니다.
디폴트 시작 경로도 지정할 수 있어요.

module.exports = {
  config: {
    // default font size for all tabs
    fontSize: 14,

    // ... other config options

    // 설정
    hypercwd: {
      // 시작 디렉토리 
      initialWorkingDirectory: 'D:\\',
    }
  },
  plugins: [
    'hypercwd'
  ]
}

hyper-search 는 하이퍼 내에서 검색을 가능하게 해주는 기능입니다.


hyper i hyper-search 로 설치합니다.

제거할때는 설정파일에 플러그인 목록에서 삭제하면 돼요.

plugins: ["hyperpower", "hyper-opacity", "hyper-search", "hypercwd"],

수동 설정

메뉴 > Edit > Preferences 를 들어가면 설정파일이 열리는데 여기서 설정을 할 수 있습니다.

  • 또는 이 위치에서 직접 설정파일을 열 수 있습니다.

macOS: ~/Library/Application Support/Hyper/.hyper.js
Windows: $Env:AppData/Hyper/.hyper.js
Linux: ~/.config/Hyper/.hyper.js

저는 윈도우 창 크기 설정, 폰트 사이즈, 폰트 패밀리 수정 등을 해줬습니다.

윈도우 git bash 설정도 할 수 있어요.

// 윈도우 깃 배쉬 설정
shell: 'C:\\Program Files\\Git\\git-cmd.exe',

// for setting shell arguments (i.e. for using interactive shellArgs: `['-i']`)
// by default `['--login']` will be used
shellArgs: ['--command=usr/bin/bash.exe', '-l', '-i'],

단축키

저는 하이퍼에서 복사 붙여넣기 안되서 단축키를 보니까 shift 를 같이 누르게 되어있더라구요
넘 불편해서 바아로 제거 해줬습니다.
"editor:copy": "ctrl+shift+c", -> "editor:copy": "ctrl+c",

저는 os 단축키와 동일하게 사용하고 싶어서 모두 바꿨습니다. 단축키에 대부분 shift가 들어가있더라구요. (윈도우 사용중)

기본으로 설정된 키바인딩을 여기서 확인할 수 있습니다.


후기

개인컴으로 맥쓰다가 회사에서 윈도우 쓸려니까 힘들었는데
드디어 나름 예쁘고 확장성 좋은 터미널 맨둘어주셔서 감사합니다..!


(하이퍼 깃헙에 이런 이슈가 올라왔네,,, 나빠 너무해.. 하지만 공감해.. 곧 누군가 만들어주실거야..!)

.hyper.js 최종 설정

// Future versions of Hyper may add additional config options,
// which will not automatically be merged into this file.
// See https://hyper.is#cfg for all currently supported options.

module.exports = {
  config: {
    // choose either `'stable'` for receiving highly polished,
    // or `'canary'` for less polished but more frequent updates
    updateChannel: 'stable',

    // 폰트 사이즈
    fontSize: 14,

    // 폰트패밀리
    fontFamily: '"D2Coding", "CodeNewRoman Nerd Font", "Fira Code", Consolas,"Liberation Mono",Menlo,Courier,monospace',

    // default font weight: 'normal' or 'bold'
    fontWeight: 'normal',

    // font weight for bold characters: 'normal' or 'bold'
    fontWeightBold: 'bold',

    // 글자 사이 간격
    letterSpacing: 2,

    // terminal cursor background color and opacity (hex, rgb, hsl, hsv, hwb or cmyk)
    cursorColor: 'rgba(248,28,229,0.8)',

    // terminal text color under BLOCK cursor
    cursorAccentColor: '#000',

    // `'BEAM'` for |, `'UNDERLINE'` for _, `'BLOCK'` for █
    cursorShape: 'BLOCK',

    // set to `true` (without backticks and without quotes) for blinking cursor
    cursorBlink: false,

    // color of the text
    foregroundColor: '#fff',

    // terminal background color
    // opacity is only supported on macOS
    backgroundColor: '#000',

    // terminal selection color
    selectionColor: 'rgba(248,28,229,0.3)',

    // border color (window, tabs)
    borderColor: '#333',

    // custom CSS to embed in the main window
    css: '',

    // custom CSS to embed in the terminal window
    termCSS: '',

    // if you're using a Linux setup which show native menus, set to false
    // default: `true` on Linux, `true` on Windows, ignored on macOS
    showHamburgerMenu: '',

    // set to `false` (without backticks and without quotes) if you want to hide the minimize, maximize and close buttons
    // additionally, set to `'left'` if you want them on the left, like in Ubuntu
    // default: `true` (without backticks and without quotes) on Windows and Linux, ignored on macOS
    showWindowControls: '',

    // custom padding (CSS format, i.e.: `top right bottom left`)
    padding: '12px 14px',

    // the full list. if you're going to provide the full color palette,
    // including the 6 x 6 color cubes and the grayscale map, just provide
    // an array here instead of a color map object
    colors: {
      black: '#000000',
      red: '#C51E14',
      green: '#1DC121',
      yellow: '#C7C329',
      blue: '#0A2FC4',
      magenta: '#C839C5',
      cyan: '#20C5C6',
      white: '#C7C7C7',
      lightBlack: '#686868',
      lightRed: '#FD6F6B',
      lightGreen: '#67F86F',
      lightYellow: '#FFFA72',
      lightBlue: '#6A76FB',
      lightMagenta: '#FD7CFC',
      lightCyan: '#68FDFE',
      lightWhite: '#FFFFFF',
    },

    // the shell to run when spawning a new session (i.e. /usr/local/bin/fish)
    // if left empty, your system's login shell will be used by default
    //
    // Windows
    // - Make sure to use a full path if the binary name doesn't work
    // - Remove `--login` in shellArgs
    //
    // Bash on Windows
    // - Example: `C:\\Windows\\System32\\bash.exe`
    //
    // PowerShell on Windows
    // - Example: `C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`

    // 윈도우 깃 배쉬 설정
    shell: 'C:\\Program Files\\Git\\git-cmd.exe',

    // for setting shell arguments (i.e. for using interactive shellArgs: `['-i']`)
    // by default `['--login']` will be used
    shellArgs: ['--command=usr/bin/bash.exe', '-l', '-i'],

    // for environment variables
    env: {
      TERM: 'cygwin'
    },

    // set to `false` for no bell
    bell: 'SOUND',

    // if `true` (without backticks and without quotes), selected text will automatically be copied to the clipboard
    copyOnSelect: true,

    // if `true` (without backticks and without quotes), hyper will be set as the default protocol client for SSH
    defaultSSHApp: true,

    // if `true` (without backticks and without quotes), on right click selected text will be copied or pasted if no
    // selection is present (`true` by default on Windows and disables the context menu feature)
    // quickEdit: true,

    // URL to custom bell
    // bellSoundURL: 'http://example.com/bell.mp3',

    // for advanced config flags please refer to https://hyper.is/#cfg

    // 기본 창 크기
    windowSize: [800, 500],

    // 시작 경로 (절대경로) => hypercwd 쓸 경우 여기에 설정
    // workingDirectory: 'D:\\',

    // hypercwd 플러그인 설정
    hypercwd: {
      initialWorkingDirectory: 'D:\\',
    },
  },

  // a list of plugins to fetch and install from npm
  // format: [@org/]project[#version]
  // examples:
  //   `hyperpower`
  //   `@company/project`
  //   `project#1.0.1`
  plugins: ["hyper-opacity", "hyper-search", "hypercwd"],

  // in development, you can create a directory under
  // `~/.hyper_plugins/local/` and include it here
  // to load it and avoid it being `npm install`ed
  localPlugins: [],

  keymaps: {
    "window:devtools": "f12",
    "window:reload": "ctrl+shift+r",
    "window:reloadFull": "ctrl+shift+f5",
    "window:preferences": "ctrl+,",
    "window:hamburgerMenu": "alt+f",
    "zoom:reset": "ctrl+0",
    "zoom:in": "ctrl+=",
    "zoom:out": "ctrl+-",
    "window:new": "ctrl+shift+n",
    "window:minimize": "ctrl+shift+m",
    "window:zoom": "ctrl+shift+alt+m",
    "window:toggleFullScreen": "f11",
    "window:close": [
      "ctrl+shift+q",
      "alt+f4"
    ],
    "tab:new": "ctrl+shift+t",
    "tab:next": [
      "ctrl+tab"
    ],
    "tab:prev": [
      "ctrl+shift+tab"
    ],
    "tab:jump:prefix": "ctrl",
    "pane:next": "ctrl+pageup",
    "pane:prev": "ctrl+pagedown",
    "pane:splitRight": "ctrl+shift+d",
    "pane:splitDown": "ctrl+shift+e",
    "pane:close": "ctrl+w",
    "editor:undo": "ctrl+z",
    "editor:redo": "ctrl+shift+z",
    "editor:cut": "ctrl+x",
    "editor:copy": "ctrl+shift+c",
    "editor:paste": "ctrl+v",
    "editor:selectAll": "ctrl+a",
    "editor:search": "ctrl+f",
    "editor:search-close": "esc",
    "editor:movePreviousWord": "",
    "editor:moveNextWord": "",
    "editor:moveBeginningLine": "Home",
    "editor:moveEndLine": "End",
    "editor:deletePreviousWord": "ctrl+backspace",
    "editor:deleteNextWord": "ctrl+del",
    "editor:deleteBeginningLine": "ctrl+home",
    "editor:deleteEndLine": "ctrl+end",
    "editor:clearBuffer": "ctrl+k",
    "editor:break": "ctrl+c",
    "plugins:update": "ctrl+u"
  },
};
profile
개발 너무 재밌다 재밌어❤️‍🔥

0개의 댓글