タグ

grepに関するopparaのブックマーク (10)

  • えっちな grep をつくった - はやくプログラムになりたい

    H(uman-friendly) な grep コマンド hgrep をつくりました. github.com '\w+ で検索した時の出力 ファイルを特定のパターンで検索し,マッチした箇所を構文ハイライトしたコード片で表示します.超ざっくり言うと,ripgrep で検索して bat でマッチ箇所付近を表示するような感じです. grep -C によるコンテキスト表示に似ていますが,マッチ行が近い時は1つのコード片にまとめる,周囲何行を表示するかをヒューリスティックに少し賢く決めているなど,ちょっと出力は工夫しています. 動機 手元のリポジトリでコードを検索する時は 単純に grep で検索してマッチ結果を眺める grep | fzf のように検索結果を fzf で絞り込んだりプレビューする vim $(grep -l ...) のように検索結果をエディタで開く あたりを使い分けているのですが

    えっちな grep をつくった - はやくプログラムになりたい
  • GitHub上にあるリポジトリに対してAPIを通じてgit grepライクに走査できるツール gh-grep (gh grep) を作った - Copy/Cut/Paste/Hatena

    git grep 便利ですよね。 私は git grep と git gsub は当によく使います。 ところで git grep はローカルリポジトリがないと実行できません。 ローカルにリポジトリがなければ git clone して、 git grep すればいいのですが、もう少し簡単にgrepするために gh-grep を作りました。 github.com gh-grep gh-grepはGitHub APIを使ってGitHub上のリポジトリに対してgrepをするツールです。 特徴は、全てGitHub APIを通じて実行するためローカルに git clone することなくgrepできることです。 また、APIを使っている特徴を活用して複数リポジトリに対してgrepすることなども可能になっています。 あと実行が遅いです。ひたすらGitHub APIを叩いているので...*1。 インストー

    GitHub上にあるリポジトリに対してAPIを通じてgit grepライクに走査できるツール gh-grep (gh grep) を作った - Copy/Cut/Paste/Hatena
  • git-grepの使い方 - Qiita

    この記事なに? gitで管理されているソースだけgrepするのに使えるgit-grepコマンドを紹介する記事 IDEのgrepも便利だけど、Githubのプルリクに貼るのには不便 でも、git-grepコマンドであれば、プルリクに貼ることもできて便利!!

    git-grepの使い方 - Qiita
  • VimのソースコードをVimで解析しよう(Part1-1) - yeast’s blog

    Vimはご存知の通りC言語で書かれています。 ちょっと解析してみましょう。 題材はvim-jpのIssue#94 相対行表示にするとカーソルの表示位置がずれるで。 現象はMacOSXで発生してますが、持ってないので作業はlinux(fedora)でやります。 (追記)来は先ず現象の発生した環境(OS, Vim ver., etc...)で現象の再現手順を確立すべきです。今回のアプローチはイレギュラーです><。 Vimのソースコードの取得 Vim家を参考にしてゲットします。(詳細は割愛) 下準備 .vimrc " <C-]>でタグジャンプ時にタグが複数あったらリスト表示。カーソルがウィンドウの中心行になるようにジャンプ nnoremap <C-]> g<C-]>zz " タグファイルはカレントファイルのパスを基準に上向き検索 set tags=./tags; " grepは再帰検索、行番

    VimのソースコードをVimで解析しよう(Part1-1) - yeast’s blog
  • Big Sky :: 日本語grepが出来るjvgrepというのを作った。

    語を扱っていて困るのがgrep。正規表現パターンにマルチバイト文字を混ぜられなかったり、windowsで動かすと"表"の様に2バイト目にbackslashが混じる文字で動作しなくなったりします。 さらに複数のエンコーディングで書かれたファイルが散らばっていると一度のgrepで検索出来なかったりもします。 vimに限っては、内蔵のvimgrepを使う事で解決出来ますが、見つかったファイルをバッファに開いてしまうという挙動がある為、grepオリジナルの動作を求めている人にとっては都合の悪い物だったりもします。 vimgrepの様に複数のエンコーディングに対応していて、検索パターンにマルチバイト文字を含んだ正規表現が使えて、windowsでもちゃんと動いて、ついでといっちゃあなんだが、"**/*.txt"で再帰検索してくれる様なgrep無いかなぁと思ってたんですが、やっぱり無いので作りました

    Big Sky :: 日本語grepが出来るjvgrepというのを作った。
  • Vim: 複数ファイル検索/置換をもうちょい詳しく - Archiva

    Make a note of it: Web tech, montaineering, and so on. Note: この記事は、3年以上前に書かれています。Webの進化は速い!情報の正確性は自己責任で判断してください。 こんちわSig.です。今回は第29回Sugamo.cssで発表したネタ。スライド出せば良いや−、と思っていたのだけど@soh335がピュアな視線で訴えてくるので、重い腰を上げてBlog記事にしてみることにしました。 さて、Vimにおいて多数のファイルを対象に検索→置換する場合、だいたい2つの方法があります。 :argdo %s/FooBar/BarBaz/gce | update :bufdo %s/warnings/warningssss/gce | update 順に、引数リストを使う方法、バッファリストを使う方法です。:bufdoの類似で:tabdoとか:win

  • Vimで複数ファイルを纏めて編集する - Archiva

    Make a note of it: Web tech, montaineering, and so on. Note: この記事は、3年以上前に書かれています。Webの進化は速い!情報の正確性は自己責任で判断してください。 いわゆるGrep検索→置換みたいなこと。普通のエディタにはだいたい付いているけど、Vimでやるってあんまり馴染みが無いかもってことでメモってみる。UNIXなら外部のgrepコマンドを実行する方法もあるけれど、Vim内部で行う方法として、vimgrepを使う方法とアーギュメントリストを用いる方法を紹介します。 「Vim操作まとめ」のほうに書こうかと思ったけど、尺が半端なのでこっちに書くことにした。 2009.06.02 id:gabaの要望に応えて、「:bufdo」を追加。 2009.06.02 アーギュメントリストに関しては、vim-user.jpに詳しく載ってい

  • grepの正規表現 - satospo

    grepの正規表現でIPv4アドレスにマッチさせる例。 [root]# grep -e "[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+" secure 一致した部分だけ抜き出すには?「-o」を付けると、パターンにマッチした部分のみを表示してくれる。 [root]# grep -o -e "[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+" secure 192.168.1.50 192.168.1.50 SSHでパスワード間違いしたホストIPアドレスを一覧するパターンの例。(CentOS 5) [root]# grep -E "Failed|Invalid" /var/log/secure | grep -o -e "[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+" SSHでパスワード間違いしたホストIPアドレスを一覧し

  • 【 どのような正規表現があるのか 】

    Linuxのコマンドを「やりたいこと」でまとめました。「やりたいこと」を実行するためのコマンドと使用例を掲載しています。コマンドの基を学びたい方は「Linuxコマンド道場」を参照ください。ファイルの操作からテキスト・ファイルの処理方法まで,例題に基づいて学べます。

    【 どのような正規表現があるのか 】
  • vimgrepが便利 (それなりブログ)

    それなりブログ 20台後半からWebエンジニアに転生した人が書く、プログラム・無駄口とかのそれなりのブログ 管理人: kjirou  座右の銘: 「三度の飯より、四度の飯」 Railsのメソッド詳細は、ググるよりソースのコメントを見た方が楽なので、ひたすらgrepを打って探してた。 んでgrepがだるくなったので、あんまり使ってなかったvimgrepを少しだけ調べたら非常に便利に使えるようになった。 ・・・なぁぜ、もっと早くやらんのかと! ということで、コマンドのテンプレ↓ :vimgrep /pattern/j path/to/**/*.txt | cwin ※j修飾子・・・最初にマッチしたファイルを自動で開かない ※ファイル指定・・・ "**"で再帰的に探す、"*"は普通と同じ ※| cwin ・・・別ウィンドウでファイル一覧が出て、選択でファイルが開けるようになる 参考

  • 1