vim-jp / vimdoc-ja / pi_logipat

pi_logipat - Vim日本語ドキュメント

メインヘルプファイルに戻る English | 日本語 | 編集
pi_logipat.txt        論理パターン                    May 01, 2019

Author:  Charles E. Campbell  <NcampObell@SdrPchip.AorgM-NOSPAM>
Copyright: (c) 2004-2016 by Charles E. Campbell logiPat-copyright
           The VIM LICENSE applies to LogiPat.vim and LogiPat.txt
           (see copyright) except use "LogiPat" instead of "Vim"
           No warranty, express or implied.  Use At-Your-Own-Risk.

==============================================================================
1. 目次                                         logiPat logiPat-contents

        1. 目次.....................: logiPat-contents
        2. LogiPat マニュアル.......: logiPat-manual
        3. LogiPat 使用例...........: logiPat-examples
        4. 注意.....................: logiPat-caveat
        5. LogiPat 変更履歴.........: logiPat-history

==============================================================================
2. LogiPat マニュアル                   logiPat-manual logiPat-man


        logiPat-arg logiPat-input logiPat-pattern logiPat-operators
        Boolean logic pattern (論理集合演算パターン) は以下によって構成される

                        オペレータ    ! = 否定
                                      | = 論理和
                                      & = 論理積
                        グルーピング  ( ... )
                        パターン      "pattern"

        logiPat-cmd
        :LogiPat {boolean-logic pattern}                :LogiPat
                :LogiPat は論理集合演算を引数に取るコマンドである
                (logiPat-arg)。

        :LP {boolean-logic pattern}                     :LP
                :LP は :LogiPat の省略形式コマンドである (logiPat-cmd)。

        :LPE {boolean-logic pattern}                    :LPE
                検索は行わないが論理集合演算パターンから正規表現への変換を行い
                画面に表示する。

        :LogiPatFlags {search flags}                    LogiPat-flags
                LogiPat は search() コマンドを使用する。search() に指定され
                るフラグを :LogiPatFlags に渡す。

        :LPF {search flags}                             :LPF
                :LPF は :LogiPatFlags の省略形式である。

        :let pat=LogiPat({boolean-logic pattern})       LogiPat()
                LogiPat() を直接呼び出す場合は検索は行わない。しかし論理集合演
                算パターンから正規表現への変換が行われ返却される。

        パターン内部で " をマッチしたい場合はパターンにデリミタを用いるのでは
        なく 2 重にする。


==============================================================================
3. LogiPat 使用例                                       logiPat-examples

        LogiPat は論理集合演算を引数に取り抜き出す為の正規表現を提供する。
        以下に例を列挙する:

        :LogiPat "abc"
                文字列 :abc: を含む行を検索する

        :LogiPat "ab""cd"
                文字列 :ab"cd: を含む行を検索する

        :LogiPat !"abc"
                文字列 :abc: を含まない行を検索する

        :LogiPat "abc"|"def"
                文字列 :abc: もしくは :def: のどちらかを含む行を検索する

        :LogiPat !("abc"|"def")
                文字列 :abc: または :def: をどちらも含まない行を検索する

        :LogiPat "abc"&"def"
                文字列 :abc: と :def: を両方含む行を検索する

        :let pat= LogiPat('!"abc"')
                文字列 :abc: を含む全ての行にマッチする正規表現を返す。ダブル
                クォートを通常のパターンとして LogiPat へ渡すには論理集合オペ
                レータと区別する為にネストして渡す。


==============================================================================
4. 注意                                                 logiPat-caveat

        "not" オペレータは脆いかもしれない。つまり、& (論理積) と | (論理和)
        のオペレータとの組み合わせでは、必ずしもうまく動作しない可能性がある。
        期待通りにマッチさせる為には、できれば :set hls でパターンを良く試して
        ほしい。

==============================================================================
5. LogiPat 変更履歴                                     logiPat-history

        v4 Jun 22, 2015 * LogiPat has been picked up by Bram M for standard
                          plugin distribution; hence the name change
        v3 Sep 25, 2006 * LP_Or() fixed; it now encapsulates its output
                          in \%(...\) parentheses
           Dec 12, 2011 * :LPE added
                        * "" is mapped to a single " and left inside patterns
        v2 May 31, 2005 * LPF and LogiPatFlags commands weren't working
        v1 May 23, 2005 * initial release


==============================================================================
vim:tw=78:ts=8:noet:ft=help