タグ

ブックマーク / syossan.hateblo.jp (4)

  • GoでSSH Managerを作成した際の知見 - 生涯未熟

    この記事は Go Advent Calendar 2018 の23日目の記事です。 今回は過去に作成したSSH Managerのお話をさせて頂きます。 github.com どんなツールなのか? ざっくり言うとSSH接続情報を管理するツールになります。 今の所パスワード認証のみ対応しておりますが、ゆくゆくは公開鍵認証にも対応していく予定です。 簡単に使い方ですが、まずはSSH接続先設定を追加し、 以下のように設定したSSH設定の名前を指定して、実行することでSSH接続が可能になります。 何故作ったか? 所属している会社で運用しているサーバが、パスワード認証で管理されており、毎回user/passwordを入力するのが面倒だなと思ったのがキッカケでした。 パスワード認証の場合、 .ssh/config での接続管理も出来ないので、だったらサクッとGoでSSH Managerを作ってしまおうと

    GoでSSH Managerを作成した際の知見 - 生涯未熟
    mattn
    mattn 2018/12/25
  • pecoっぽいものを作りたい人生だった - 生涯未熟

    Go3 Advent Calendar 2017の16日目です。 皆さんはGo製のツールで好きなツールといったらなんでしょうか? 色々あるかと思いますが、僕はpecoがいちばん好きです。 ということである日に「そうだ、pecoっぽいものを作ろう」という欲求がムクムク湧いてきましたので、やってみました。 pecoの構成要素 pecoの大まかな構成要素としては 検索フォーム 検索結果 上下矢印キーで選択対象を移動 Enterを押したら対象を実行 という感じになります。 そして新しいツールを閃いた これらの構成要素を使うような新しいツールをウンウン唸って考えて、捻り出したのがこれです。 github.com どんなツールかというと、shellの履歴ファイルを参照し、選択したコマンドを元にシェルスクリプトを生成するというツールになっています。 こんな感じのイメージです。 > mino create

    pecoっぽいものを作りたい人生だった - 生涯未熟
    mattn
    mattn 2017/12/16
  • mattnさんのリファクタリングを読み解く - 生涯未熟

    現在絶賛開発中のkirimoriですが、なんとGolang界隈で有名なmattnさんにリファクタリングをして頂くという、とても嬉しい事態がありました✨ kirimoriについてはこちら↓ syossan.hateblo.jp リファクタリング前提でかなり雑に書いていたのですが、めちゃくちゃ良い感じにコードを直して頂けたので自分の勉強のために読み解いてみます👏 リファクタリング前 kirimoriは以下の機能を有しています。 initコマンドでkirimoriの設定ファイル(toml形式)を作成します addコマンドでコマンドライン引数に指定したプラグインを追加します removeコマンドでコマンドライン引数に指定したプラグインを削除します listコマンドでプラグインの一覧を表示します で、構成的には kirimori.go に全てのコマンドの処理をベタ書きにしてある感じになっております

    mattnさんのリファクタリングを読み解く - 生涯未熟
    mattn
    mattn 2017/01/23
  • vimののキーマッピング - 生涯未熟

    30分ばかし詰まっていたので備忘録として。 shift+◯◯ってな感じであるコマンドを動かそうと、.vimrcに nmap <S-Right> ◯◯と書いたらvim上で反応しなかったので、アルェー?と思って調べたらあるサイトにこんな記述が。 とはgVimでしか使えないマッピングなので、 Tabを動かす - bless {category => 'vim'}, shift なんと! はgVim専用のキーマッピングだったので動かなかったんですな・・・ また一つお勉強になりました。 追記: 以下の方法でvimでもが出来る模様 Mac + ターミナル + S-Right Web屋のためのHow to Vim (チラ裏) gVim専用とかそういう話ではなく、vimには矢印キーに既にマッピングがされてるから出来ないのかな? んーよく分からん。

    vimののキーマッピング - 生涯未熟
    mattn
    mattn 2013/02/12
    専用違います → 「<S-◯◯>はgVim専用のキーマッピングだったので」
  • 1