タグ

zshに関するrichard_rawのブックマーク (35)

  • Macがzshになるなら、ZLEを習得するっきゃない! | DevelopersIO

    こんにちは、平野です。 WWDC 2019にて、macOS Catalinaではzshがデフォルトのシェルとして採用されることが発表されました。 https://support.apple.com/en-ca/HT208050 もちろんデフォルトが変わるというだけで、使い慣れたシェルを使い続けることができますが、 せっかくなのでそれにかこつけて、zshの機能の一つであるZLEをご紹介したいと思います。 zshというと「補完がすごい!」と紹介されることが多いように感じますが、 補完の機能は使いこなすのが難しくて、正直私には手に負えないと感じています。 一方ZLEは上辺をちょっと理解しただけで、 めちゃくちゃ簡単にインタラクティブシェルに機能追加ができちゃいます!! これを機会にzshを使い始めてもいいのよ? なお、あくまでもzshの機能の紹介であり、bashとzshの比較とかそういう内容では

    Macがzshになるなら、ZLEを習得するっきゃない! | DevelopersIO
    richard_raw
    richard_raw 2019/06/07
    zle気になってたけどこういうものなのか……。
  • 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, starting witmacOS Catalina. bash is the d

    Use zsh as the default shell on your Mac
    richard_raw
    richard_raw 2019/06/05
    Catalinaからzshがデフォルトになるそうな。/なるほど最新版bashがGPL3だから……。
  • vim も zsh も捨てた - AnyType

    プロジェクト移行期に入って暇な時間ができたので、開発環境をリフレッシュすることにした。vim や zsh の設定が少しずつ壊れてきていたのだった。 .vimrc や .zshrc を眺めてみると、かつて意識が高かった頃に施した設定が何のためのものだったのか忘れてしまっていた。別人が書いたスパゲティコードのようだった。 また vim や zsh の設定を検索して理解するべきなんだろうか。ここで覚えた知識はまたすぐに忘れてしまうんじゃないだろうか。設定が洗練されるほどに、それを更新する機会もまた少なくなってくる。設定が必要になるきっかけは忘れた頃にやってくるもんだ。 やり方を根的に見直す時期なのかもしれない。新しいツールもいまなら選択できる。 まず、vim から atom に移行した。git のコミットメッセージやちょっとしたファイルの修正ではまだ vim を使うものの、細かい設定が必要にな

    vim も zsh も捨てた - AnyType
    richard_raw
    richard_raw 2017/04/20
    わかる。一時期.zshrcを自分好みにしたけど環境作りなおした際に見返すと意味がわからないっていう……。
  • ターミナルに雨雲を表示する - cuspy diary

    東京アメッシュ便利ですよね。 1日の天気予報が知りたいのではなく、「今」降っているのか、とか5分後に雨が降るのかどうか知りたいって時は天気予報を見るよりもアメッシュで雨雲の動きを自分で予測するほうが確実です。 あとゲリラ豪雨がやってくる季節になると、天気予報が役にたたなくなります。 そんなときアメッシュを見ながら外に出るタイミングを見計らったりしていますが、わざわざブラウザを起動するのが面倒なのでつくりました。 ターミナル上に雨雲を表示するシェルスクリプトame.shです! (これが言いたかっただけです…) 動作環境はSixel対応のImageMagickとmlterm、bashかzshで動作するはずです。 コード: https://github.com/hamano/ame.sh 実行: % curl -s https://raw.githubusercontent.com/hamano

    ターミナルに雨雲を表示する - cuspy diary
    richard_raw
    richard_raw 2016/12/02
    いいセンスだ……。
  • シェルスクリプトのreadでControl-a等を読み取る: ANSI C quoting

    B! 26 0 0 0 trashコマンドを拡張 している時に、選択画面で上下するときにVimみたくCtrl-F で1画面進む、みたいなことしたいな、と思って Controlキーを含んだ入力をreadで読み取って扱う方法を取り入れたのでそのメモ。 入力キー1つを受け取る Controlと同時押しのキーを受け取る Tips 8進数または16進数で書くときの注意 Ctrl-Cを使いたい場合 水平タブ(Ctrl-I)等を使いたい場合 使えない文字 ESCを判断する まとめ 入力キー1つを受け取る 入力キーを1つ受け取るにはBashでは read -s -n 1 c Zshでは read -s -k 1 c とします。 スクリプトがこの時点まで進んだ時に入力待ちになって、 何か1つでもキーを押すと、そのキーがcに入ります。 必要なら直前に echo -n "input: " とでも出しておけばわか

    シェルスクリプトのreadでControl-a等を読み取る: ANSI C quoting
    richard_raw
    richard_raw 2015/12/01
    ああ、たまに見る「$'string'」ってそういうことだったのか。
  • さいつよのターミナル環境を構築しよう - Qiita

    昔に書いたものなので余り参考になさらずに 僕はターミナルに引きこもっています。たまに外出しても最寄りのブラウザ程度です。そんな僕は Mac を使っています。綺麗な UNIX だからです。ターミナルアプリとしてターミナル.app を使っています。iTerm2 含めいろいろ試しましたがコレがさいつよでした。そして、僕は 2 年半かけてさいつよ環境を築き上げました。 tl;dr 最強のターミナル開発環境の構築する 最強の開発環境を目指して タイトルで豪語しすぎた感はありますが、気で構築中です。僕がターミナル環境の整備に目覚めたのは学生の時でした。特に何かのプロジェクトに携わるといったこともなく、たまに講義の課題を解いたり趣味のアプリを作成したりといった程度での開発だったので、環境構築や整備に割く時間がありました。 まずは現状 普段のターミナル環境は次のとおりです。 ターミナル.app(全画面)

    さいつよのターミナル環境を構築しよう - Qiita
    richard_raw
    richard_raw 2015/10/29
    dockerでさいつよ環境作ろう!と意気込んでいたらプロキシでdocker pullできなくて詰んだので参考にします。
  • bash/zshのコマンドライン履歴機能。直前のコマンド、直前の引数。 - ミームの死骸を待ちながら

    よく忘れるので例示と共にメモ。ここらへん押さえておくと作業効率が上がる。bashのページで発見したものを載せている。zshでも確認した。 実行系 !! 直前に実行したコマンドを再現 !+何かの文字 !sudoとすれば、sudoで始まる直近の実行コマンドを再度実行。他にヒットしないのがわかってれば、!suとか!sでもいい。最短マッチ。 !:s/foo/bar 直前に実行したコマンドのfooをbarにして実行。gsにするとすべて置換 これは便利!! $ vim ../../.zshrc $ !:s/zsh/vim !n n番目のコマンドを実行。 hisotry | grep hogeして確認してから使うなど*1 代わりの名前系(単語指示子、というらしい) 使うケースは多い。 $ ls /etc/hoge/fuga/ $ cd !^ とか。!^が最初の引数、!$で最後、!:nでn番目、!*ですべ

    richard_raw
    richard_raw 2015/09/09
    "!$"はよく使ってますが、それ以外にも色々あるんですな。
  • Linuxでextglobを有効にして「指定したパターン以外のファイル」を指定する | 俺的備忘録 〜なんかいろいろ〜

    仕事などで日常的にLinuxを利用しているのであれば、ほぼ大半の人がglobを利用した事があるだろう。 globという名前にはあまり馴染みが無いかもしれないが、以下のようにワイルドカードや複数のファイル名を指定したりする機能は使ったことがあるはずだ。 例)「/work」フォルダ配下のファイルを「/work2」に移動する mv /work/* /work2/ 例)「/work」フォルダ配下の「aaa.txt」「bbb.txt」のみを削除する rm /work/{aaa.txt,bbb.txt} このような指定方法を可能にしているのがglobという機能になる。 そんなglobを拡張したのが、今回紹介するextglobだ。 このextglobを利用すると、globでは指定が難しかった事、例えば"特定のフォルダ以外を指定する"といった事が簡単に行える。 bashやzshで有効になっているかどうか確

    richard_raw
    richard_raw 2015/06/08
    パイプでOR指定できるのか。
  • ターミナルのコマンド履歴入力がスーパー楽になるzsh + oh-my-zsh + pecoの導入手順メモ。 – 和洋風KAI

    zsh + oh my zsh + pecoの利点。 bushのみに比べて、zsh + oh my zsh + pecoを導入すると飛躍的にコマンドが打ちやすくなります。 どういうことかというとこういうこと。↓↓ つまりcontrol + Rによるコマンド履歴検索がものすごく便利になります。 1文字ずつコマンド履歴を検索し、それをリストアップしてくれます。一度打ったコマンドはすべてもうフルに入力する必要がなくなるくらい快適になります。 ただこの機能を使うだけなら、oh-my-zshはいらないのですが、git回りが便利になりますし、zshが自動アップデートされますし、なにしろ設定しておかないとpecoとoh-my-zshが両立できないので、oh-my-zshの導入方法も書いておきます。 STEP 1. zshを導入する。 zshを導入するのは簡単です。 CentOSの場合は、以下のコマンドを

    richard_raw
    richard_raw 2015/03/25
    oh-my-zsh重そうだからpreztoにしようかなーと思ったけどbashのままでいいかなと思い始めています。pecoは使おう。
  • [D] Windowsはターミナルがダメだから使えないってのは過去の話?

    気づいたら自宅でもオフィスでもすっかりWindowsユーザーになっちゃって、Win10情報にも一喜一憂してるという、完璧なる転びマカーぶりを発揮してるドリキンです。 基的にWinである不便もほとんどなくなってしまった(というかむしろ快適に感じる)今日この頃なんですが、唯一にして最大とも言えるWindowsの弱点はいうまでもなくまともなターミナルコンソールがないことですよね? とはいえ、最近はコンソールではNodeJSだけが動けばいいやという状態だったので、コマンドプロンプトでごまかしたりはしてたんですが、流石にコマンド履歴どころかコピペすらまともに出来ないのはどうかなと一念発起してWindowsでZshくらいは使えないかなとググってみたらよさげなモノを発見! Babun | A windows shell you will love! それがBabunというWindows用のターミナルア

    [D] Windowsはターミナルがダメだから使えないってのは過去の話?
    richard_raw
    richard_raw 2015/01/30
    チューンしたCygwinですか……。/私はVagrant上のFedoraがメインです。でもUSBカメラ使うときはWindowsでどうにかせざるを得ない……orz
  • シェルスクリプトを簡単にチェックできるShellCheck, Vimでも使える

    B! 119 0 0 0 前から気になってた ShellCheck を使ってシェルスクリプトや.bashrc等直してみました。 ShellCheck コマンドライン版 日語を含んだファイル Vimでは ShellCheck ShellCheck はシェルスクリプトの文法をチェックしてくれるオンラインサービスです。 ShellCheckのページに行って 試したいスクリプトを書き込むと文法をチェックして エラーや注意を表示してくれます。 指摘してくれるものとしては、明らかな文法違反な物は勿論、 実際にスクリプトを回して毎回エラーになるものでなくても、 変数が空の場合に""で囲ってないとエラーになる場合なども チェックしてくれるので思わぬ事故も防いでくれます。 コマンドライン版 ShellCheckのソースコードはGitHubで公開されていて、 さらにコマンドライン版のshellcheckを使

    シェルスクリプトを簡単にチェックできるShellCheck, Vimでも使える
    richard_raw
    richard_raw 2014/11/28
    おお、これは便利かも!……Windowsで使うのは難しいか。
  • Zsh + Prezto で快適コマンド環境を構築する | DevelopersIO

    Prezto 今回はコマンドライン環境の話です。私は以前より oh-my-zsh を利用していましたが、テーマの調子が悪かったので Prezto に乗り換えてみました。結構快適だったので、いまは Prezto を使っています。 稿では Zsh + Prezto で快適なコマンドライン環境を構築する方法について簡単ですがご紹介します。 Zsh + Prezto 環境を構築する 環境構築の手順については README に書いてありますので、手順通り進めれば問題なく環境づくりができると思います。なお、コマンド実行すると .zlogin .zlogout .zprofile .zshenv .zshrc のシンボリックリンクを貼るので、oh-my-zsh から乗り換える場合など、既存の Zsh 環境を引き継ぎたい場合は各設定ファイルを退避させておきましょう。 // Zsh起動 $ zsh //

    Zsh + Prezto で快適コマンド環境を構築する | DevelopersIO
    richard_raw
    richard_raw 2014/09/01
    漢のzshで入門したっきりでoh-my-zshとか見向きもしなかった私……。Preztoを試してみようかしら。
  • CentOSの初期設定で最低限やること(@さくらのVPS) - Qiita

    続いてrootに関する設定を行います。 以下ではrootになれるユーザーおよびsudoコマンドの実行ユーザーの設定を行っています。 # vim /etc/pam.d/su # 以下の行のコメントを外す auth required pam_wheel.so use_uid # visudo # 以下の行のコメントを外す %wheel ALL=(ALL) ALL

    CentOSの初期設定で最低限やること(@さくらのVPS) - Qiita
    richard_raw
    richard_raw 2014/05/21
    参考になります。
  • zshの個人的に便利だと思った機能(suffix alias、略語展開) - Qiita

    のような形式で実行できる。 こちらで紹介されている.cファイルを実行すると自動でビルド->実行までしてくれるような設定が可能で、もはやなんでもできそうな感じがする。スゴイ 現在は下のように設定している。練習がてらjavaを追加。 alias -s txt='cat' alias -s html='google-chrome' alias -s rb='ruby' alias -s py='python' alias -s hs='runhaskell' alias -s php='php -f' alias -s {gz,tar,zip,rar,7z}='unarchive' # preztoのarchiveモジュールのコマンド(https://github.com/sorin-ionescu/prezto/tree/master/modules) alias -s {gif,jpg,j

    zshの個人的に便利だと思った機能(suffix alias、略語展開) - Qiita
    richard_raw
    richard_raw 2014/05/19
    suffix aliasいいかも。
  • Zsh 入門者のための超速設定ガイド - Qiita

    はじめに このガイドでは、はじめて Zsh を使う人や Zsh の便利な使い方を知らない人に向けて、いくつかの便利な設定と操作方法を紹介します。また、 Zsh についての疑問を素早く解決できるよう、マニュアルの調べ方や他のドキュメントへのリンクも盛り込んであります。 このガイドでカバーしきれていない設定や分かりやすいドキュメントをご存知でしたら、ぜひ編集リクエストやコメントでお知らせください。 設定ファイル ここでは主に普段のキー入力数を大幅に減らせるような設定を紹介します。 .zshrc ~/.zshrc は Zsh のインタラクティブシェル(ユーザーがコマンドを入力する画面)が起動した際に読み込まれる設定ファイルです。 Zsh スクリプトを実行したり、 zsh -c 'command...' でコマンドを実行したりしたときには読み込まれません。このファイルには主に Zsh の操作に関す

    Zsh 入門者のための超速設定ガイド - Qiita
    richard_raw
    richard_raw 2014/02/03
    自分は「漢のzsh」の設定で満足しちゃってるなあ……。
  • Macで時間のかかるコマンドが終わったら、自動で通知するzsh設定 - Qiita

    概要 実行時間の長いコマンドが終わったら、Mac の Notification Center (Growl にするのも可能) で通知がくる。Terminal.app と iTerm 2 に対応している。 通知の様子。30秒を超えるコマンドが通知されている。 30秒を超えないコマンドでも、失敗したら通知される。 どちらもターミナルがバックグラウンドのときのみ通知される。長いコマンドを投げてから twitter とか見てたらいつのまにか時間が経ってしまうような人に便利。 1. 準備 Notification Center に通知する場合 alloy/terminal-notifier をインストールする。コマンドから Notification Center に通知をするためのアプリ。 Releases から .app をインストールしてもよいし、Download にあるように RubyGems

    Macで時間のかかるコマンドが終わったら、自動で通知するzsh設定 - Qiita
    richard_raw
    richard_raw 2014/01/29
    おお、通知センターに出す方法ですか。
  • Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.

    A new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team

    Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.
    richard_raw
    richard_raw 2013/12/24
    zshでやってるのか……。色々と参考にします。
  • シェルスクリプトのデバッグは typeset または declare を使うと良いかも - よんちゅBlog

    はじめに つい最近知った便利なデバッグ方法 (長年シェルスクリプトを書いているのに知らなかった。これが常識だったら恥ずかしい…) シェルスクリプトのデバッグでは echo で変数の中身を見るという原始的な方法をよく使うかと思います。 いわゆる プリントデバッグ というやつですね。 もう少し詳しいデバッグが必要な場合は、 set -x と set +x でデバッグしたい部分を囲むという方法もあります。 今回は プリントデバッグ で使う echo の代わりに typeset or declare を使うと良いというお話です。 プリントデバッグは typeset or declare を使おう typeset or declare は変数宣言などでよく使うコマンドですが、変数の中身を見るのにも使えます。 echo と比べて何が良いのかというと、変数の中身はもちろん変数名や変数の型も表示してくれ、

    シェルスクリプトのデバッグは typeset または declare を使うと良いかも - よんちゅBlog
    richard_raw
    richard_raw 2013/07/10
    "set +x" 一辺倒なのが私です。declareは使ったことなかった……。そしてzshの変数展開は複雑だなあ。
  • Enter で ls と git status を表示すると便利 - Qiita

    とある方の "エンターだけで ls と git status 表示するようにしてある" というつぶやきを見て便利そうだと思ったのでやってみました。 基的なやり方は以下の記事が参考になりました。 zshでコマンドが空の状態でenter押したときに任意のコマンドを実行する方法 - kei_q ただ、上記方法では私の環境の場合、プロンプトが1回余分に表示されてしまって気持ちが悪いので、その辺りも手を加えました。 Installation 以下スクリプトを .zshrc に記述すれば、何も入力されていない状態で Enter を打つだけで ls と git status が表示されるようになります。 function do_enter() { if [ -n "$BUFFER" ]; then zle accept-line return 0 fi echo ls # ↓おすすめ # ls_abb

    Enter で ls と git status を表示すると便利 - Qiita
    richard_raw
    richard_raw 2013/07/04
    こんなこと出来るのか。
  • Why Zsh is Cooler than Your Shell

    Đề tài: Tìm hiểu thuật toán quy hoạch động cho tính khoảng cáchDịch Vụ Viết Bài Trọn Gói ZALO 0936 885 877

    Why Zsh is Cooler than Your Shell
    richard_raw
    richard_raw 2013/05/12
    path replacement知らんかった!もしかしてcdする度にawkが動いているのはそのため……?