タグ

zshに関するhush_inのブックマーク (12)

  • 2023年のシェル環境構築

    tl;dr fig starship zsh fzf sheldon なぜ vscode の .vscode/tasks.json が fishと非常に相性が悪い。とくに fish-nvm を使っていると、fish 経由のパス実行時に node と npm へパスが通らない。 そもそも fish を使っていた理由は autocomplete を快適にするためだったが、1年ぐらい Fig を使っていて、補完はこれを任せていいと気づいた。 Fig はこういうやつ そもそも fish の拡張コマンドを使わないように生活していた。方言を覚えたくない。というか bash 拡張や zsh 拡張もあんまり覚えたくない。

    2023年のシェル環境構築
  • zshでPATHが壊れないようにPATHに新しいディレクトリを通す - Acme::AnaTofuZ->new;

    TL;DR 特に順番は気にしないとき path+=('/hoo/bar/baz'); 最初にいれたいとき path=('/hoo/bar/baz' $path) PATH通そうとして壊れるヤツ UNIXを使っている上で避けて通れないのが環境変数$PATHでしょう。 :区切りにディレクトリを列挙して、列挙されているディレクトリ直下に置かれているバイナリファイルをコマンドとして使えるようにするアレですね。 そんな$PATHに新しいディレクトリを追加しようとして、ついつい次のような事故がよく置きます。 export PATH="/hoo/bar/baz" こうしてしまうと最初から$PATHに設定していたデータが吹っ飛んで、PATHの中身が/hoo/bar/bazだけになってしまいます。こうなるとlsとかのコマンドが使えなくなる訳ですね。 zshだと$pathで配列として扱える この問題は何が原因

    zshでPATHが壊れないようにPATHに新しいディレクトリを通す - Acme::AnaTofuZ->new;
    hush_in
    hush_in 2023/01/09
  • dotfiles 振り返り2022

    まだまだ 2022 年の振り返りが終わらないぜということで今日は dotfiles の振り返り。dotfiles はその変遷を見ると面白いので、毎年やろうと思い早速やっていきたい。 ちょっと前に M2 の MBA 買って、dotfiles を一新した。 これが今の dotfiles だ。 https://github.com/sadnessOjisan/dotfiles コンセプト 自分は Mac しか使わない が、WSL 環境も持ってるのでシェル周りの環境は移せるように作っておく(原神しかしないけど・・・) make all だけでセットアップが完結する 手作業はしない なるべく標準に準拠し、プラグインやライブラリへの依存を減らす。入れる場合も単体で剥がせるものを選ぶ。 シンボリックリンクを貼って、dotfiles の変更が即時に反映されるようにする .config など XDG に準拠

    dotfiles 振り返り2022
  • ひさしぶりにzshに戻りました - ちなみに

    仕事用のマシンをM1 MacBook Proに交換してもらったので、開発環境を整え直しました。 2年ほど fish を使ってきたのだけれど、普段は良いのだけれど、ちょっと自動化したくなったときに、やはりPOSIX準拠じゃないシェルはなかなか難しかった。macOSの標準も zsh になったことだし、久しぶりに戻ってみることにした。 導入 現代なので XDG Base Directory Specification に乗っかっておくことにする。 Arch Linux の Wiki がよくまとまっていて助かるのでこれを参考にして進めた。 zshの場合は ZDOTDIR を指定するといいのだけれど、これをどこで指定するのかという問題がある。zshの起動時に最初に読み込まれるユーザー設定は ~/.zshenv なのだけれど、ここに ZDOTDIR を書くということは .zshenv だけホームディレ

    ひさしぶりにzshに戻りました - ちなみに
    hush_in
    hush_in 2022/03/22
  • GitHub Actions で zsh の起動時間を定点観測する

    概要 zsh に限らず各シェルはカスタマイズが可能ですが、カスタマイズの仕方によってはシェルの起動が遅くなることがあります。シェルは毎日起動するため、起動時間の劣化に気付きにくいですが、劣化したときに知らずに浪費してしまう時間は大きくなりがちです。 そのため、シェルの起動時間を定点観測することは日々の時間の浪費を防ぐために効果があります。 今回は GitHub Actions でこれを行う方法を紹介します。 zsh の起動時間の計測 zsh の起動速度はの計測方法は適当にググれば出てくる通り、次のコマンドを実行することで行なえます。 今回はパースのしやすさを考えて、--format オプションが使える GNU の time コマンドを使用しました。macOS において GNU の time コマンドは brew で gnu-time をインストールすれば gtime コマンドとして使用する

    GitHub Actions で zsh の起動時間を定点観測する
  • Use zsh as the default shell on your Mac - Apple Support (CA)

    Use zsh as the default shell on your Mac Starting with macOS Catalina, your Mac uses zsh as the default login shell and interactive shell. You can make zsh the default in earlier versions of macOS as well. By default, your Mac uses either zsh or bash as the command-line interpreter for the login shell and interactive shell: zsh (Z shell) is the default shell for all newly created user accounts, st

    Use zsh as the default shell on your Mac - Apple Support (CA)
    hush_in
    hush_in 2019/06/16
  • zshの外部プラグインまとめ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    zshの外部プラグインまとめ - Qiita
    hush_in
    hush_in 2015/12/26
  • もっと便利になれる zsh プラグインによる CLI ライフ - Qiita

    最近、zsh + Vim + tmux でコマンドラインライフを過ごしている方も多くなってきたように思う。その豊かな CLI ライフを支えているのは数多くの優れたプラグインであることには間違いない(もちろんプラグインを使わない派閥も一定数いるでしょう)。 今回はとりわけ zsh に絞って有用であるプラグインを紹介していく。 zsh のプラグイン プラグインマネージャ まずは管理の要となるプラグインマネージャだろう。 今イチオシなのは zplug(neobundle + vim-plug の zsh 版)なのだが定番である Antigen も一応挙げておく。 zplug - A next-generation plugin manager for zsh Antigen - A plugin manager for zsh, inspired by oh-my-zsh and vundle.

    もっと便利になれる zsh プラグインによる CLI ライフ - Qiita
    hush_in
    hush_in 2015/12/26
  • gnupack(Cygwin) + oh-my-zsh + tmuxの環境を構築する - yuukiar.co

    Windowsでターミナル環境を構築する手順です。 Windowsのターミナルツールはいろいろあって、どれにしようか悩むところではありますが、 個人的にMacの環境(oh-my-zsh,tmuxあたり)をなるべくそのまま使いたかったので、それに一番合うものを探しました。 とはいうものの、3月末あたりからいろいろ試してみて2ヶ月ほど経った今でも「これがベスト!」と思えるものがないのが実情なのですが、 妥協点には至りましたので、このあたりで記事を書いておこうと思います。 Windowsターミナル環境について ConEmu / MobaXterm / Babun / Cygwin(純正 / gnupack) 1. ターミナル環境:gnupack(Cygwin)のセットアップ パッケージダウンロード configファイル編集 2. シェル環境:zsh(oh-my-zsh)のセットアップ zshイン

    gnupack(Cygwin) + oh-my-zsh + tmuxの環境を構築する - yuukiar.co
  • ターミナルのディレクトリ移動を高速化する - Qiita

    tl;dr よく使われるコマンドの一つに cd コマンドがあります。ターミナル生活の 80% 近くは cd と ls である、という英文記事を何処かで見かけました。それを効率化しようという Tips です。 目的 cd はよく使われるのに使い勝手が悪いコマンドである気がしてなりません。cd コマンドは有効なパス(相対パス、絶対パスは問わず)しか解釈してくれないからです。つまり、存在していて尚且つパスが解決できるものに限るのです。例えば、ホームディレクトリにいるときに、/home/lisa/work/dir に行こうとして cd dir とだけタイプしても no such file or directory (そんなディレクトリは見当たらないよ!)と言われてしまいます。きちんとした経路でなければならないのです。いちいちパスを覚えていない場合や、部分的にしか思い出せない場合には結構面倒ですよね

    ターミナルのディレクトリ移動を高速化する - Qiita
  • zshにpeco + ghqを導入したメモ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    zshにpeco + ghqを導入したメモ - Qiita
  • 私のpeco活用事例 - k0kubun's blog

    pecoというインタラクティブに入力をフィルタして出力するコマンドがあって、使い始めてからシェルの操作方法が大幅にかわり、だいぶライフチェンジングだった。 最近このへんが流行ってるのでやたら記事あるけど、せっかくなので僕も使い道を紹介しようと思う。 pecoをzshで使う 1. peco ghq ghqを使ったローカルリポジトリの統一的・効率的な管理についてのこと。 僕も$GOPATHは$HOMEにしていて、今のところ別に困ることはない。 go getしたりghq getしたりして美しくディレクトリ切った上で、pecoに割り当てておいたC-sですぐ目的のディレクトリ開けるようにしてあるので、めちゃくちゃソース管理が楽になった。 function peco-src() { local selected_dir=$(ghq list | peco --query "$LBUFFER") if

    私のpeco活用事例 - k0kubun's blog
  • 1