ハイパーマッスルエンジニア

Vim、ShellScriptについてよく書く

2019-01-01から1年間の記事一覧

ライブラリのソースを追いたいならCarthageよりもPodsがいい

ビルドも早い、生成ファイルもシンプル、ゆえの管理の楽さでCarthage一択だろと思っていたが、CocoaPodsに軍配が上がる事柄を発見した。 ライブラリのソースを追っていくときはPodsのほうがいい Carthageだとプロジェクト内にインストールされるのはframewor…

業務で使うツール(iTerm2,SequelPro,Chrome)をShellScriptでハイパーテクニックする

業務で使うツール(iTerm2,SequelPro,Chrome)をShellScriptでハイパーテクニックする はじめに この記事は今年イチ!お勧めしたいテクニック by ゆめみ feat.やめ太郎 Advent Calendar 2019の20日目の記事です。 今年は「お勧めテクニック」ということで、業…

Vimに生命を吹き込む(NeoVim×FloatingWindow)

Vim

Vimに生命を吹き込む(NeoVim×FloatingWindow) はじめに この記事はHameeアドベントカレンダー13日目の記事です。 最近VimからNeoVimに乗り換えた。 VimPluginの王ShougoさんのPluginもいくつかNeoVim対応が増えてきていた(というかNeoVimにした方が楽な状態…

NeoVimのFloating Windowで遊ぶためのTips

Vim

NeoVimのFloating Windowで遊ぶためのTips この記事はVim3 Advent Calendar 2019 6日目の記事です。 NeoVimに乗り換えるきっかけにもなった、Floating Window。 このFloating Window、めちゃくちゃ遊べる要素があるなと思い、こんなものを作って遊んでいた。…

SSHのデフォルトログインユーザーをrootにする

シンプルに下記の1行を.bashrcに追加するだけで終わる。 sudo su - zshの人は.zshrcなど適宜読み替えて追加するべし。 .XXXshrc系のファイルはログイン時に自動で読み込まれるので、自動でsudo su -を実行してくれるって感じ。 何がしたかったのか kali-linu…

【備忘録】Homebrewで自作ツールを配布する

Homebrewでの配布は簡単だが毎回忘れる Goでバイナリ作ったり、ShellScript書いて配布したいなと思ったときにHomebrew使うことが割とある。 が、その都度毎回調べてやり方を思い出しながらするのが億劫だったので、一回まとめてみる。 ざっくり手順 Homebrew…

fzfでChromeのtab移動をする

VimでWeb開発してるとブラウザとTerminalを行ったり来たりすることが多い。 ブラウザのタブ切り替えをブラウザでやるのではなく、Terminalでできればノンストレスな開発ができるのではないか。そうだろう。 fzfで実現した github.com 追記:fzf本家の方、Jun…

Kali-Linux × Airgraph-ngで周辺のWifiを丸裸にする

中学生の頃からずっとクラッカーに憧れていて、久しぶりに「おおお!!?おおおん!!」とあの頃の気持ちが蘇るツールがあったので試してみた。 周辺のアクセスポイントにどの端末が繋がっているのか、周辺の端末が過去にどのアクセスポイントに繋いだことが…

kali-linux/rolling × Vagrant × AnsibleでKali-Linuxの環境作る

以前もkali-linuxの構築について書いたが、余分な設定とかも書いていたのでまとめる。 github.com Mac環境 $ vagrant -v Vagrant 2.2.3 $ VBoxManage -v 5.2.26r128414 vagrant構築 Vagrantfile Vagrant.configure("2") do |config| config.vm.box = "kalili…

アウトプットを気軽にするために作ったコマンド

記事書くときはVimで大体書いてからはてぶで整形するというのを繰り返しているが、最初の「Vimで記事を書き始める」という障壁をできるだけ低くし、なんとなくモチベーションが続きそうなやり方をコマンドで実践してる。 どんな感じ こんな感じ。 コマンドを…

VimのMarkdownPreviewプラグイン「iamcco/markdown-preview」がグラフ、UML、Latexが描画できて色々やばい

Vim

「vim markdown」とか「vim plantuml」って調べると2015年とか古い記事が多く見つかる。 なんか直近で良い感じのないかな〜と探していたら素晴らしいプラグインを見つけた。 GitHub - iamcco/markdown-preview.nvim: markdown preview plugin for (neo)vim …

SwiftUIやPlaygroundもいいけどUIのデバッグぐらいLLDBでやっちゃおうぜ

PlaygroundやSwiftUIの登場によってだいぶUIのデバッグがしやすくなってきたと思うけど、 Playgroundはいちいちそれ用のファイル開かないといけないし、SwiftUIはまだXcode11がBeta版なので使う機会が少ない。 UIの確認をするために一々ビルドするのも気が重…

Carthageをupgradeしてもバージョンが変わらない

carthageのバージョンを確認すると最新にしろと言われていたのでbrew upgrade carthageしたが、 何故かバージョンが上がらない。 # 最新に上げろと言われる $ carthage version Please update to the latest Carthage version: 0.33.0. You currently are on…

rakyll/statikでGoで扱うファイルリソースを一緒にビルドする

Go

テンプレート用CSVを読み込んでその値を元に新しくCSVを作る、みたいな処理をするコマンドをGoで作った。 go installしてコマンドとして使えるようになったがいいものの、main.goがある場所じゃないとno such fileと出て実行ができなかった。テンプレートCSV…

Webのリクエスト方法についてやんわりと考えてみる

先日GoでInstagramぶっこ抜きというものを作った時、リクエスト方法について少し悩んだ。 個人開発で大規模なものじゃないから、リソースについてそんなにシビアにならなくてもいいのだが、一度考えてみた。 rasukarusan.github.io 全体の動き サーバーにaja…

oh-my-zshからの脱却

今更マサラタウンだけどoh-my-zshから脱却した。 全然遅さとか感じていなかったが、Profileしてみるとoh-my-zsh関連がビビるほどの遅延を発生させており、腹がたったからやった。 oh-my-zshを脱却して困ったこと oh-my-zshを入れていると、色々と勝手に設定…

phpで書いたスクリプトをGoで書いたら7倍になった(phpとgoではビルトインサーバーが違うからだった)

Go

Instagramぶっこ抜きを作った instagramのページURLを与えると投稿画像、投稿文、ユーザー名を取得するシステム(?)を作った。 当初はphpで作っていたが、勉強がてらGoで書き直してみたら57秒→8秒と約7倍になった出来事を話したい。 結論から言うと、GoとPHP…

コマンド履歴(history)を全く痕跡を残さず消す

自分の打ったコマンド履歴を消したい時、消したことさえ残したくない時に使える。 流れ vim .bash_historyでコマンド履歴を削除 kill -9 $$で1で打ったコマンドの履歴を残さずログアウト コマンド履歴を削除する まず現在のhistoryを確認。 root@kali-linux-…

【Apple】MacBook(12インチ)にmacOS「Catalina」をインストールしたら止まった

WWDC2019で発表された「SwiftUI」をどうしても試したくて2台目のMacBookにCatalinaをインストールした。 が、正常にインストールできなかったので現象をまとめる。 追記:2019/06/26 Catalina Public Betaが発表され、こちらをインストールしたらセーフモー…

Finderで開いているディレクトリにコマンドで移動する(open . ではない)

ShellScriptでドヤりたいGWアドベントカレンダー6日目いくで。 よくある「open .」でFinderで開く方法ではなく、逆にFinderで開いているディレクトリをTerminalで開く。 何を言っているかよくわからないのでとりあえず動作デモ。 Finderで開いているディレク…

ShellScriptでクリップボードの履歴管理する(ついでに水平連結もする)

ShellScriptでドヤりたいGWアドベントカレンダー5日目いくで。 クリップボード管理アプリをShellScriptで作った。 そもそもはスプレッドシートから列をコピーしてA列とB列を入れ替えて貼り付けたいと思ったのが発端で、 どちらかというと副産物的な感じでク…

Shellで定義済みの関数を流し読みしながら表示する

ShellScriptでドヤりたいGWアドベントカレンダー4日目いくで。 皆さん.zshrcや.bashrcは充実していますか? Vimの世界では「.vimrcの量=vim力」と言われているらしいですが、shellも似たようなものでしょうか。 それはさておきshellには様々な関数がありま…

コマンドで文字列画像を生成する

ShellScriptでドヤりたいGWアドベントカレンダー3日目いくで。 適当な画像が必要なときって結構あると思う。 そんな時一々Googleで画像検索するのが億劫になったのでコマンド一発で作れるようにした。 デモ こんな感じで好きな文字列の画像を生成する。 方法…

Chromeの履歴をShellScriptで弄り倒す

ShellScriptでドヤりたいGWアドベントカレンダー1日目いくで。 ブラウザの履歴ってその人がその日何をやっていたのか示すものとして結構な情報詰まってると思うのよね。 「俺今日何やってたっけ・・・」っていう時の思い出し作業や、「さっき見てたページも…

俺よりiTerm使いこなしてるやつおる?

お前らはまだiTermの本当の力を知らない 純正Terminal、Hyper、Alacritty等を使ってるやつ、今すぐ捨ててiTermに乗り換えたほうが良い。 iTermから乗り換えた人も今一度iTermのことを知ってほしい。きっと知らない機能があるはず。 目次 Shell統合をさっさと…

iTermをAppleScriptで操作する

基本的には以下の公式ドキュメントがわかりやすいし参考になる。 www.iterm2.com ただ実際使う時どうなるの、どうすんの?っていうのを紹介する。 AppleScriptでiTermを操作する基本的な構文 iterm.sh #!/usr/bin/osascript tell application "iTerm" activa…

Macでggrepをgrepとして扱う

GNU版のgrepをインストールするとggrepになる brew install grepでインストールしたgrepはggrepとして登録される。 ggrepではなくgrepとして扱いたい場合、PATHを追加してあげるといい。 PATHを追加 .zshrcに以下を記載 export PATH="/usr/local/opt/grep/li…

Shellでランダムな文字列を生成する(文字列/数字文字列/乱数)

ふとした瞬間に「あ、ランダムな文字列生成したい」というときがあると思う。 そんなときのShellコマンドを紹介。 ランダムな文字列にも色々種類がある 今回生成するのは以下。 ランダムな文字列生成(例:'ex792Lhk') ランダムな数字文字列生成(例:'189765'…

【エンジニアのプレゼンで使いたい】プレゼンでよく使うアイコンをKeynoteで作った(マイシェイプに登録できる)

エンジニアのプレゼンで使いたくなる図形をKeynoteでまとめました。 マイシェイプに登録できる形で作成したので、自分の環境にすぐ取り入れることができます。

VagrantでKaliLinux環境構築(USB-Wifiの認識、NatNetworkの設定)

前回でとりあえずの環境は整ったので、今回は無線LANハックをする環境を整える。 最終的なVagrantfileなどはGithubに上げておいた。 死ぬほど参考にさせていただいたサイト medium.com 基本的には上記のサイトのままいけば大丈夫。(タメになる記事ありがとう…